Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial Internet of Things >> Интернет вещей

Eclipse Vorto: усиление бесшовной интеграции IoT-устройств

Александр Эдельман

Привет, я Александр Эдельман, софт-инженер в Robert Bosch с 2006 года, базируюсь в Сингапуре. Моя страсть — IoT и открытые стандарты, позволяющие устройствам общаться друг с другом через разнородные платформы. Я активно вкладываюсь в проект Eclipse IoT Vorto, поставляющий облачные инструменты для унифицированного описания IoT-устройств и их интеграции в любую платформу, следующую открытым IoT-стандартам. Когда не кодим, я наслаждаюсь азиатской кухней, теннисом и исследованием новых мест.

Почему интеграция устройств важна

Умные заводы и коннектед дома революционизируют затраты, эффективность, безопасность и удобство. Однако обьем производителей устройств и сенсоров вносит ключевую проблему: обеспечение того, чтобы каждое устройство могло бесшовно коммуницировать с облачными платформами независимо от бренда или технологии. Исторически разработчики строили кастомные решения для ограниченного набора устройств с одинаковым API. Смена типа устройства или вендора требовала болезненного рефакторинга.

Представьте аграрную операцию, отслеживающую тракторы, плуги и другое оборудование. Вам нужно мониторить не только локацию, но и температуру, ускорение и здоровье батареи. Как выбрать устройства, подходящие под ваши нужды, и избежать жесткого связывания, вынуждающего к дорогостоящим редизайнам?

Представляем Eclipse Vorto

Eclipse Vorto: усиление бесшовной интеграции IoT-устройств

Eclipse Vorto предоставляет слой абстракции под названием Vorto Information Model и доменно-специфичный язык (DSL), захватывающий всю мета-информацию — свойства, функции и отношения — коннектед устройства. Определяя устройства платформо-агностичным способом, Vorto создает консистентный интерфейс, объединяющий разрозненное железо с похожей функциональностью.

Проект состоит из четырех ключевых компонентов:

Eclipse Vorto полностью open source, поддерживаемый Eclipse IoT Working Group под управлением Bosch.

Eclipse Vorto на практике

Рассмотрим большую ферму, отслеживающую использование комбайнов, тракторов и других активов. Интегрируя локацию, температуру, влажность и данные батареи, операторы могут внедрять предиктивное обслуживание и анти-кражные меры. Bosch Asset Tracing Solution (TRACI) exemplifies эту способность.

Eclipse Vorto: усиление бесшовной интеграции IoT-устройств

Создание цифрового двойника устройства TRACI начинается с переиспользуемых строительных блоков. Например, Battery Function Block описывает состояние батареи как процент между 0 и 100. Этот блок можно переиспользовать по многим устройствам.

namespace org.eclipse.vorto version 1.0.0 displayname "Battery" description "Functionblock for Battery" category peripheral using org.eclipse.vorto.Voltage ; 1.0.0 functionblock Battery extends org.eclipse.vorto.Voltage { status { mandatory remainingCapacity as float  } }

Для дальнейшей абстракции числового значения мы создаем Datatype для процентов:

namespace org.eclipse.vorto.types version 1.0.0 displayname "Percentage" description "Datatype for Percentage" category units entity Percentage { mandatory value as float  }

Этот Datatype затем включается в Battery блок, устраняя детали конкретной реализации.

namespace org.eclipse.vorto version 1.0.0 displayname "Battery" description "Functionblock for Battery" category peripheral using org.eclipse.vorto.types.Percentage ; 1.0.0 using org.eclipse.vorto.Voltage ; 1.0.0 functionblock Battery extends org.eclipse.vorto.Voltage { status { mandatory remainingCapacity as Percentage } }

Повторяя этот паттерн для температуры, GPS, ускорения и модулей коннективности, получаем комплексную Information Model, которую можно подать в генераторы кода Vorto для производства интеграционных стабов.

namespace com.bosch.ps version 1.0.0 displayname "Traci" description "Information Model for Traci" using org.eclipse.vorto.Geolocation; 1.0.0 using org.eclipse.vorto.Acceleration; 1.0.0 using org.eclipse.vorto.MagneticStrength; 1.0.0 using org.eclipse.vorto.Temperature; 1.0.0 using org.eclipse.vorto.Battery; 1.0.0 using org.eclipse.vorto.Connectivity; 1.0.0 infomodel Traci { functionblocks { battery as Battery location as Geolocation acceleration as Acceleration temperature as Temperature magneticStrength as MagneticStrength bluetoothConnectivity as Connectivity lorawanConnectivity as Connectivity } }

Предположим, другой производитель выпускает устройство с похожими фичами. Переиспользуя те же Function Blocks и Datatypes, можно определить новую Information Model без переписывания интеграционной логики.

namespace com.nimbelink.nl version 1.0.0 displayname "NLAT2VS" description "Information Model for NLAT2VS" using org.eclipse.vorto.Geolocation; 1.0.0 using org.eclipse.vorto.Battery; 1.0.0 using org.eclipse.vorto.Connectivity; 1.0.0 using org.eclipse.vorto.Temperature; 1.0.0 using org.eclipse.vorto.Humidity; 1.0.0 using org.eclipse.vorto.Acceleration; 1.0.0 infomodel NLAT2VS { functionblocks { battery as Battery acceleration as Acceleration location as Geolocation temperature as Temperature humidity as Humidity wifiConnectivity as Connectivity cellularConnectivity as Connectivity } }

Общие Function Blocks означают, что новое устройство может быть интегрировано с минимальными усилиями, демонстрируя силу Vorto в деカップлинге эволюции устройств от прикладной логики.

Кто выигрывает от Eclipse Vorto?

Производители устройств

Vorto позволяет производителям публиковать платформо-независимые Information Models, сокращая потребность в множественных таргет-специфичных реализациях. Эта гибкость экономит время и стоимость, обеспечивая интероперабельность через экосистемы. Деカップлинг протокольных слоев от контроллеров устройств позволяет непрерывной эволюции устройств без ломания существующих интеграций.

Eclipse Vorto: усиление бесшовной интеграции IoT-устройств

IoT-платформы

Платформы могут драматически снизить накладные расходы на интеграцию, используя генераторы кода Vorto для частичного или полного создания исходного кода. Vorto Repository служит runtime-источником возможностей устройств через JSON-схемы, облегчая динамическое открытие, валидацию и бутстраппинг коннекторов.

Разработчики решений

Разработчики, сталкивающиеся с гетерогенными устройственными API, могут полагаться на общие кодовые стабы и переиспользуемые модели Vorto для сокращения циклов разработки и избежания vendor lock-in.

Eclipse Vorto: усиление бесшовной интеграции IoT-устройств

Будущее IoT с Eclipse Vorto

Стандартизируя устройственные интерфейсы и обеспечивая интероперабельность, Eclipse Vorto может перестроить то, как производители, операторы платформ и разработчики коллаборационируют. Это снижает усилие разработки, облегчает интеграцию и адресует вызовы масштабируемости, присущие IoT-экосистемам.

Исследуйте проект на GitHub — поставьте звезду и погрузитесь в туториалы по созданию устройств, интеграции и визуализации.

Интернет вещей

  1. Безопасная аутентификация устройств с X.509 сертификатами в Eclipse Hono
  2. Умные данные: навигация по следующей границе IoT и Big Data
  3. Почему IoT-устройства с Wi‑Fi создают растущую угрозу безопасности
  4. Застой внедрения IoT: почему ожидания не оправдались
  5. Как узкополосные технологии питают IoT-революцию
  6. Заложение фундамента для успеха Enterprise IoT
  7. 5 ключевых вызовов, стоящих перед Интернетом вещей сегодня
  8. Как IoT революционизировал здравоохранение во время пандемии Covid-19
  9. Почему прямое подключение устройств — следующий веха в промышленном Интернете вещей
  10. Устранение слепой зоны IoT в постпандемийном мире