Гармонизация конкретных данных устройства с помощью Eclipse Vorto
Александр Эдельманн
你好 (по-китайски «Привет»), я живу в Сингапуре и работаю инженером-программистом в компании Роберта Боша с 2006 года. Я увлечен Интернетом вещей и верю в открытые стандарты, которые определяют успешное взаимодействие между устройствами на различных платформах Интернета вещей. . Вот почему я активно участвую в проекте Eclipse IoT Vorto, целью которого является предоставление облачных инструментов для единообразного описания устройств IoT и их интеграции в различные платформы IoT на основе открытых стандартов IoT. Помимо моей фанатичной стороны IoT, мне нравятся азиатские кухни, которые позволяют мне практиковать свои навыки работы с палочками для еды. Вы также можете найти меня на корте, когда я с друзьями отбиваю несколько теннисных мячей.
В технической среде без глобального стандарта производители устройств Интернета вещей, интеграторы и поставщики платформ сталкиваются с трудностями, связанными с огромным количеством различных форматов полезной нагрузки, API и проприетарных протоколов.
Проект с открытым исходным кодом Eclipse Vorto решает эту проблему, предоставляя облачные редакторы для абстрагирования полезной нагрузки устройств конкретного производителя в виде повторно используемых функциональных блоков Vorto. Затем они объединяются для описания всего устройства в форме информационной модели Vorto. Информационные модели и функциональные блоки написаны на vortolang , простая грамматика для определять интерфейсы между физическим устройством и его цифровым двойником . Решения Интернета вещей взаимодействуют с физическими устройствами только через эти абстрактные функциональные блоки и связанные с ними схемы данных. Таким образом, решения IoT не связаны с множеством различных форматов данных устройств, API-интерфейсов и кодировок. Но как преобразовать данные устройства в эти абстрактные интерфейсы функциональных блоков? Просто:с так называемыми спецификациями отображения Vorto, которые содержат все необходимые инструкции для согласования полезной нагрузки для конкретных устройств.
Нормализация полезной нагрузки в целом
Нормализация данных может выполняться на разных узлах системы в зависимости от требований варианта использования Интернета вещей. Такое разделение позволяет организациям сохранять полный контроль над тем, где они преобразовывают свои проприетарные данные в нормализованные данные.
- Нормализация на узле устройства
В этом сценарии IoT-устройство представляет собой интеллектуальное устройство, предоставляющее дополнительные услуги с использованием встроенных датчиков. Примером может служить интеллектуальная печь Bosch, которая обеспечивает встроенную аналитику нормализованных данных; данные, которые можно агрегировать в облачном озере данных. - Нормализация на узле шлюза
Шлюз, соединяющий несколько датчиков или устройств с помощью различных драйверов протокола (BLE, GPIO и т. Д.), Согласовывает данные устройства, чтобы обеспечить функциональные возможности шлюза, такие как функции аналитики или другие бизнес-функции. - Нормализация на узле платформы Интернета вещей
Как и в шлюзовом узле, облачная платформа IoT нормализует входящие данные телеметрических устройств от различных адаптеров протокола (MQTT, CoAP и т. Д.), Чтобы предоставлять дополнительные услуги для северных решений IoT. Примерами являются функции управления устройствами или анализа данных. - Нормализация на узле приложения
Приложение будет нормализовать данные, чтобы не зависеть от поддерживаемых устройств и уделять больше внимания бизнес-функциям для конкретных приложений, а не реализовывать технические декодеры данных для конкретных устройств.
Иногда устройство просто не способно выполнять отображение полезной нагрузки. Но есть и другие факторы, которые могут сыграть роль. Подумайте об ограничениях, связанных с отправкой данных в серверную часть через мобильное соединение. Часто вы хотите свести объем передаваемых данных к минимуму. Проблема в том, что после сопоставления полезная нагрузка устройства становится более раздутой из-за нормализации и преобразования из двоичных данных и аналогичной информации. Поэтому для экономии полосы пропускания имеет смысл выполнить отображение полезной нагрузки на другом узле системы; на платформе, например.
Когда отображение полезной нагрузки не выполняется на устройстве, требуется другой объект, который может выполнить этот шаг. Вы должны использовать механизм сопоставления, который позволяет преобразовывать полезные данные либо на промежуточном уровне - например, на шлюзе - платформе, либо непосредственно в приложении.
Источник:Eclipse Vorto Нормализация данных может выполняться на узле устройства (1), на узле шлюза (2), на узле платформы IoT (3) или на узле приложения (4).
Тим Гроссманн
Будучи немецким студентом, изучающим информатику, за последние полтора года я работал на трех разных факультетах компании Bosch. Меня особенно интересуют технологии с открытым исходным кодом и EduTech. Я считаю, что Интернет вещей и автоматизация обладают огромным потенциалом как для изменения, так и для улучшения образа жизни, работы и удовольствия людей от жизни. Я увлеченный ученик и разработчик, я всегда стремлюсь осваивать новые навыки и инструменты. В дополнение к моей обычной работе я создал и поддерживаю крупнейшего в мире бесплатного бота для автоматизации с открытым исходным кодом для Instagram. В свободное время я люблю заниматься скалолазанием с друзьями и путешествовать по зарубежным странам.
Как Eclipse Vorto решает проблему нормализации
Eclipse Vorto предлагает библиотеку времени выполнения, которую можно настроить с помощью информационной модели Vorto для устройства. Он включает спецификацию сопоставления, которая обогащает информационную модель правилами преобразования полезной нагрузки для конкретных устройств. На практике библиотека времени выполнения принимает полезные данные устройства в качестве входных данных, а затем выводит преобразованные и нормализованные полезные данные, применяя спецификацию сопоставления.
Спецификация сопоставления управляется и версия контролируется в репозитории Vorto вместе с информационной моделью для устройства. Это позволяет повторно использовать спецификацию сопоставления для других вариантов использования, независимо от того, выполняется ли нормализация на устройстве, шлюзе, платформе или узле приложения. Библиотека сопоставления в настоящее время поддерживается на платформе Java и Node.js. Узнайте больше о библиотеке Vorto Payload Mapping.
Пример:нормализация отраслевых данных с помощью Eclipse Vorto
Чтобы прояснить концепции, описанные ранее, мы рассмотрим конкретный пример использования информационной модели Vorto и сопоставлений.
В нашем случае мы отправляем CSV-данные от синхронного двигателя с постоянными магнитами (PMSM) на разъем Eclipse Hono MQTT.
Промежуточное ПО для нормализации полезной нагрузки Vorto использует данные из Eclipse Hono, направляет их через механизм сопоставления полезной нагрузки Vorto и представляет нормализованные данные устройства в качестве темы AMQP. Любой подписчик AMQP 1.0 теперь может получать согласованные данные устройств и обрабатывать их независимо от подключенного устройства с помощью решения цифрового двойника, такого как Bosch IoT Things.
В нашем примере мы используем Eclipse Ditto, службу цифровых двойников с открытым исходным кодом, которая получает нормализованные данные Eclipse Vorto и сохраняет их. После этого панель инструментов Vorto запрашивает данные из API цифровых двойников Eclipse Ditto и корректно отображает данные с помощью предварительно определенных виджетов пользовательского интерфейса, совместимых с Eclipse Vorto.
Источник:Eclipse Vorto Полная концептуальная настройка конвейера отображения полезной нагрузки нашего устройства.Если вы хотите увидеть, как работает весь конвейер сопоставления различных полезных нагрузок устройств с помощью Vorto Mapping Engine, не стесняйтесь переходить к демоверсии Vorto Dashboard.
В этой статье дается только краткое введение в сопоставления полезной нагрузки. Если вы хотите пройти весь процесс настройки этого конвейера для ваших собственных сценариев использования, вы можете использовать для этого наше подробное руководство. Он объяснит, как шаг за шагом сопоставить полезные нагрузки пользовательского устройства.
Интернет вещей
- Упрощение масштабной подготовки IoT
- Сохранение совместимости данных в IoT
- Интеллектуальные данные:следующий рубеж в Интернете вещей
- Как подготовиться к использованию ИИ с помощью Интернета вещей
- Приступаем к делу с помощью Интернета вещей
- Три основных проблемы подготовки данных IoT
- Кража данных:меньшая проблема, если она находится на устройстве
- Демократизация Интернета вещей
- Максимизация ценности данных IoT
- Почему прямое подключение является следующим этапом промышленного Интернета вещей