четверг, 27 октября 2016 г.

Информационные модели устройств для IoT с Eclipse Vorto

Изучая стек технологических проектов Eclipse для направления Internet of Things (IoT) (http://iot.eclipse.org/), наткнулся на проект Eclipse Vorto. Это инструмент для создания информационных моделей разнообразных устройств в направлении IoT и генерации кода на их основе для различных платформ.

Vorto изначально разработан компанией Bosh
 Vorto = DSL + ToolChain + Model Repository + Code generators
 Технологический стек : Eclipse, ЕMF, XText, 
 
Eclipse Vorto решает задачу interoperability для IoT, направлении в котором 
должны взаимодействовать различные устройства на базе различных платформ.
 
Vorto ставит задачу описания различных устройств (в терминах Vorto - функциональных блоков) от различных производителей в виде информационных моделей. Модели описываются на уровне абстракции, не привязанном к какой-либо технологической платформе. Для функционального блока определяются набор операций, который он может выполнять и набор событий, которые он обрабатывает. Информационная модель функциональных блоков создается с помощью текстового DSL (на базе XText)
вот в таком виде
Встроенное изображение 1

Информационные модели устройств создаются с помощью Vorto ToolChain (на базе Eclipse) и публикуются в репозиторий Vorto. Таким образом создается репозиторий информационных моделей устройств, которые можно использовать в новых проектах. Пример репозитория Vorto доступен по ссылке
 
Для "приземления" выбранных устройств на определенную платформу служат кодо-генераторы,которые позволяют сгенерировать код устройства для выбранной платформы. 
Полученный код может быть скомпилирован на платформе с использованием специализированного компилятора и библиотек. Платформа включает в себя midleware, используемое для коммуникаций устройств. 

Кодо-генераторы также хранятся в репозитории Vorto. Для каждого устройства 
есть свой доступный список кодо-генераторов
 
Идея создания платформенной-назависимых моделей с последующим приземлением на платформы за счет кодо-генерации стандартна. В случае с Eclipse Vorto интересно именно ее применение для направления Internet of Things.

Комментариев нет:

Отправить комментарий