Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial Internet of Things >> Teknologi Internet of Things

Eclipse Vorto:Langkah selanjutnya dalam integrasi perangkat IoT

Alexander Edelmann

(Bahasa Cina untuk “Halo”), saya berbasis di Singapura dan telah bekerja sebagai insinyur perangkat lunak untuk Robert Bosch sejak tahun 2006. Saya bersemangat tentang IoT dan percaya pada standar terbuka yang menentukan interaksi yang sukses antara perangkat di berbagai platform IoT . Itulah sebabnya saya secara aktif berkontribusi pada proyek Eclipse IoT Vorto, yang bertujuan untuk menyediakan alat berbasis cloud untuk menggambarkan perangkat IoT secara seragam dan mengintegrasikannya ke dalam berbagai platform IoT berdasarkan standar IoT terbuka. Sisi culun IoT saya terpisah, saya menikmati masakan Asia yang memungkinkan saya untuk melatih keterampilan sumpit saya. Anda juga dapat menemukan saya di lapangan memukul beberapa bola tenis dengan teman-teman saya.

Melihat contoh seperti pabrik dan rumah pintar, perangkat yang terhubung tidak hanya meningkatkan efisiensi biaya dan sumber daya perusahaan, tetapi juga meningkatkan keamanan dan kenyamanan hidup. Dengan banyaknya produsen perangkat dan sensor, tantangan baru muncul untuk produsen, platform, dan integrator.

Masalah utamanya adalah bagaimana memastikan perangkat yang terhubung dapat berkomunikasi dengan lancar dengan platform cloud, terlepas dari produsen, teknologi, dan sistem yang berbeda. Di masa lalu, pengembang telah membangun solusi IoT yang dirancang khusus untuk perangkat terbatas yang memiliki API yang sama. Saat mengubah jenis perangkat atau mengganti produsen perangkat, integrasi perangkat memerlukan pemfaktoran ulang yang memakan waktu agar berfungsi dengan perangkat baru.

Bayangkan Anda berencana untuk mengintegrasikan solusi IoT untuk pelacakan aset di pertanian tanaman besar. Anda tidak hanya ingin melacak lokasi saat ini, tetapi juga suhu dan percepatan traktor, bajak, dan perangkat pertanian lainnya.

Dua pertanyaan muncul ketika berpikir tentang memilih perangkat IoT yang tepat:

Di sinilah Eclipse Vorto open source masuk.

Memperkenalkan Eclipse Vorto

Sumber:Eclipse Vorto

Eclipse Vorto menyediakan lapisan abstraksi yang disebut Model Informasi Vorto, dan bahasa khusus domain (DSL) yang menjelaskan semua informasi meta, seperti properti dan fungsi, dari perangkat yang terhubung.

Dengan menambahkan lapisan abstraksi, kami membuat antarmuka yang konsisten yang memungkinkan kami menggunakan berbagai jenis perangkat dengan fungsi serupa.

Proyek Eclipse Vorto dibangun di atas empat komponen utama:

Eclipse Vorto sepenuhnya open source dan dikembangkan dalam Kelompok Kerja Eclipse IoT di bawah pengawasan Bosch.

Tim Grossmann

Sebagai mahasiswa ilmu komputer Jerman, saya telah mengambil tugas di 3 departemen berbeda di Bosch selama satu setengah tahun terakhir. Saya sangat tertarik dengan teknologi Open Source dan EduTech. Saya percaya bahwa IoT dan otomatisasi memiliki potensi besar untuk mengubah dan meningkatkan cara orang hidup, bekerja, dan menikmati hidup. Seorang pembelajar dan pengembang yang bersemangat, saya selalu ingin mempelajari keterampilan dan alat baru. Selain pekerjaan rutin saya, saya telah membangun dan sekarang memelihara bot otomatisasi sumber terbuka gratis terbesar di dunia untuk Instagram. Di waktu luang saya, saya menikmati acara pendakian bersama teman dan bepergian ke luar negeri.

Eclipse Vorto dalam latihan

Mari kita lihat contoh yang lebih spesifik untuk memahami abstraksi ini dengan lebih baik. Bayangkan sebuah bisnis pertanian yang ingin melacak kendaraan dan aset yang digunakan untuk mengumpulkan hasil panen gandum. Di peternakan yang lebih besar dengan beberapa pemanen, traktor, dan aset lainnya, kami ingin mengetahui berapa lama setiap kendaraan digunakan dan riwayat lokasinya.

Saat menggabungkan informasi semacam ini dengan nilai suhu dan kelembaban, kami dapat mengaktifkan rencana perawatan yang cerdas untuk semua kendaraan dan aset. Lokasi setiap kendaraan dan aset juga memberi kami kemampuan anti-pencurian.

Salah satu solusi yang menyediakan fungsionalitas semacam ini adalah Solusi Penelusuran Aset (TRACI) dari Bosch.

Sumber:Bosch.IO

Untuk membuat model digital dari perangkat khusus ini, kita perlu memiliki beberapa blok bangunan dasar yang akan digunakan untuk merakit Model Informasi TRACI.

Salah satu komponen terpenting dari alat pelacak adalah baterai. Untuk dapat memantau status baterai setiap perangkat, kami dapat menggambarkan status dalam apa yang disebut, Blok Fungsi.

Blok Fungsi adalah model umum yang dapat digunakan kembali nanti di Model Informasi perangkat lain.

Kita dapat mendefinisikannya seperti ini:

namespace org.eclipse.vorto versi 1.0.0 nama tampilan "Baterai" deskripsi "Blok Fungsi untuk Baterai" kategori periferal menggunakan org.Eclipse.vorto.Voltage; 1.0.0 functionblock Baterai meluas org.Eclipse.vorto.Voltage { status { sisa kapasitas wajib sebagai float } }

Di sini kami menjelaskan Blok Fungsi yang secara abstrak menggambarkan beberapa entitas yang berisi nilai numerik wajib antara 0 dan 100.

Karena status kami adalah nilai persentase, kami selanjutnya dapat mengabstraksikan ini untuk, sekali lagi, membuat komponen yang berbeda dapat digunakan kembali. Oleh karena itu, kita akan membuat apa yang disebut Datatype . Di sini kita dapat mendefinisikan entitas (Persentase dalam kasus ini) yang memiliki batasan yang sama menjadi nilai numerik antara 0 dan 100.

namespace org.eclipse.vorto.types versi 1.0.0 nama tampilan "Persentase" deskripsi "Tipe Data untuk Persentase" unit kategori entitas Persentase { nilai wajib sebagai float }

Setelah kami membuat Datatype ini, itu dapat diimpor dan digunakan di dalam Blok Fungsi Baterai kami dan menggantikan implementasi konkret.

namespace org.eclipse.vorto versi 1.0.0 nama tampilan "Baterai" deskripsi "Blok Fungsi untuk Baterai" kategori periferal menggunakan org.Eclipse.vorto.types.Percentage; 1.0.0 menggunakan org.Eclipse.vorto.Voltage; 1.0.0 functionblock Baterai meluas org.Eclipse.vorto.Voltage { status { sisa kapasitas wajib sebagai Persentase } }

Kami dapat mengulangi proses ini untuk semua sensor yang terintegrasi ke dalam perangkat TRACI kami seperti sensor suhu , GPS , percepatan , dan modul konektivitas . Semua Blok Fungsi tersebut kemudian dapat dirakit dalam Model Informasi Vorto yang kemudian dapat digunakan sebagai titik awal pembuat kode untuk menghasilkan rintisan kode integrasi perangkat untuk Anda.

namespace com.bosch.ps versi 1.0.0 nama tampilan "Traci" deskripsi "Model Informasi untuk Traci" menggunakan org.Eclipse.vorto.Geolocation; 1.0.0 menggunakan org.Eclipse.vorto.Acceleration; 1.0.0 menggunakan org.Eclipse.vorto.MagneticStrength; 1.0.0 menggunakan org.Eclipse.vorto.Temperature; 1.0.0 menggunakan org.Eclipse.vorto.Battery; 1.0.0 menggunakan org.Eclipse.vorto.Connectivity; 1.0.0 infomodel Traci { blok fungsi { baterai sebagai Baterai lokasi sebagai Geolokasi percepatan sebagai Percepatan suhu sebagai Suhu MagnetStrength sebagai MagneticStrength Konektivitas bluetooth sebagai Konektivitas lorawanKonektivitas sebagai Konektivitas } }

Baiklah, jadi untuk apa kita melakukan semua ini?

Katakanlah kita sekarang ingin menggunakan perangkat dari produsen lain dengan fitur serupa dengan perangkat TRACI. Kami telah membuat solusi IoT yang mengintegrasikan perangkat TRACI dan akan sangat merepotkan untuk memfaktorkan ulang sistem kami agar berfungsi dengan perangkat dari produsen yang berbeda.

Karena kita sudah memiliki Blok Fungsi dan Tipe Data yang ditentukan, kita dapat mendefinisikan Model Informasi baru untuk perangkat baru kita yang menggunakan Blok Fungsi yang sama dengan model TRACI.

Mari kita bandingkan model TRACI dengan produk dengan fungsionalitas yang sebanding, NL-AT2VS dari NimbeLink.

namespace com.nimbelink.nl versi 1.0.0 nama tampilan "NLAT2VS" deskripsi "Model Informasi untuk NLAT2VS" menggunakan org.Eclipse.vorto.Geolocation; 1.0.0 menggunakan org.Eclipse.vorto.Battery; 1.0.0 menggunakan org.Eclipse.vorto.Connectivity; 1.0.0 menggunakan org.Eclipse.vorto.Temperature; 1.0.0 menggunakan org.Eclipse.vorto.Humidity; 1.0.0 menggunakan org.Eclipse.vorto.Acceleration; 1.0.0 infomodel NLAT2VS { blok fungsi { baterai sebagai Baterai percepatan sebagai Percepatan lokasi sebagai Geolokasi suhu sebagai Suhu kelembaban sebagai Kelembaban wifiKonektivitas sebagai Konektivitas Konektivitas seluler sebagai Konektivitas } }

Kita dapat melihat bahwa bahkan modul konektivitas berbeda dalam model ini tetapi masih menggunakan Blok Fungsi Konektivitas abstrak. Abstraksi memungkinkan kita untuk mengganti atau menggabungkan perangkat yang berbeda dengan fungsi yang sama tanpa banyak integrasi overhead.

Siapa yang harus menggunakan Eclipse Vorto?

Mengingat keragaman entitas yang terlibat dalam pembuatan, integrasi, dan pengembangan solusi IoT, entitas yang paling diuntungkan dari Eclipse Vorto adalah:

Produsen perangkat

Eclipse Vorto dapat membantu produsen perangkat mengaktifkan interoperabilitas dengan perangkat lain di infrastruktur yang ada. Fleksibilitas adalah keuntungan besar bagi pelanggan saat memilih perangkat yang akan diintegrasikan.

Dengan menggunakan Model Informasi teknologi independen, produsen perangkat menghindari overhead menghasilkan cara implementasi untuk semua jenis platform target. Ini menghemat uang dan waktu dengan menerbitkan Model Informasi yang dapat diubah menjadi integrasi nyata menggunakan pembuat kode.

Keuntungan besar menggunakan Eclipse Vorto adalah evolusi lebih lanjut dari lapisan protokol perangkat dipisahkan dari logika pengontrol perangkat.

Sumber:Eclipse Vorto

Platform IoT

Platform IoT harus menghubungkan berbagai macam perangkat IoT yang berbeda dari berbagai produsen dan mendukung semua protokol dan format yang berbeda. Dengan menggunakan pembuat kode Eclipse Vorto, upaya ini dapat dikurangi secara drastis melalui pembuatan kode sumber sebagian atau penuh.

Selain itu, Repositori Vorto bertindak sebagai repositori runtime yang memungkinkan platform untuk mengambil kemampuan perangkat sebagai skema JSON. Skema ini kemudian dapat diinterpretasikan dan divalidasi dalam kembar digital atau digunakan untuk bootstrap konektor untuk komunikasi.

Meskipun ini berarti peningkatan pekerjaan pengembangan awal, hal ini akan terbayar seiring waktu mengingat banyaknya jumlah perangkat dan pertumbuhan IoT.

Pengembang solusi

Saat mengintegrasikan perangkat yang terhubung dan sensor pintar ke dalam solusi IoT, pengembang perlu mencakup berbagai API perangkat yang berbeda yang menghasilkan overhead pengkodean yang besar. Eclipse Vorto dapat mengurangi jumlah pekerjaan pengembangan yang terlibat dengan menyediakan pembuat kode yang menyediakan stub kode generik yang menyederhanakan integrasi perangkat.

Sumber:Eclipse Vorto

Melihat ke masa depan IoT

Dengan menjamin interoperabilitas dan menyelaraskan antarmuka perangkat, Eclipse Vorto berpotensi mengubah cara produsen perangkat, operator platform IoT, dan pengembang aplikasi bekerja dengan perangkat IoT.

Ini dapat mengurangi pekerjaan pengembangan untuk produsen dan memudahkan integrasi perangkat untuk penyedia platform dan integrator sambil mengatasi banyak tantangan pengembangan IoT yang disebutkan.

Jika Anda ingin mempelajari lebih lanjut tentang proyek ini, pastikan untuk memeriksa repositori GitHub dan beri bintang.

Anda juga dapat mencobanya dan gunakan tutorial canggih untuk pembuatan, integrasi, dan visualisasi perangkat yang disediakan di Vorto Repository.


Teknologi Internet of Things

  1. Otentikasi perangkat berbasis X.509 di Eclipse Hono
  2. Data pintar:Perbatasan berikutnya di IoT
  3. Ancaman yang berkembang dari Wi-Fi memungkinkan IoT
  4. Jangan percaya hype:Mengapa IoT terhenti
  5. Menghubungkan IoT – Peluang jalur sempit
  6. Kami meletakkan dasar untuk IoT di perusahaan
  7. 5 tantangan yang masih dihadapi Internet of Things
  8. Peran IoT dalam perawatan kesehatan selama Covid-19
  9. Mengapa koneksi langsung adalah fase berikutnya dari IoT industri
  10. Mengungkap titik buta IoT di dunia pascapandemi