Программное обеспечение контроллера SEM NEXT

Платформа SEM NEXT реализована по архитектуре edge computing или fog computing. У платформы есть важный и ключевой элемент - контроллер (edge), который приближает архитектурные элементы платформы непосредственно к объекту управлению (things). Более того, на edge уровень SEM NEXT отдает часть важных функций, связанных с анализом и принятия решений для управлению объектами (things). Архитектура обеспечивает ряд технологических преимуществ, по сравнению с жестко центричными системами:

  • более быстрая реакция на поведение объекта;
  • независимость от состояния канала связи с серверной компонентой;
  • селективное взаимодействие с сервером (по необходимости, по событию, по правилам и т.д.).

Безусловно, это не означает, что в серверной компоненте отпадает необходимость проведения обработки данных. Разделы с описанием Процедур контроля и Правил показывают, что платформа SEM NEXT позволяет органично поделить «интеллект» между контроллером и сервером платформы.
Для полного понимания роли контроллера в архитектуре SEM NEXT ниже приведена абстрактная модель edge элемента из книги «Foundation Elements of an IoT Solutions»:
Кратко дадим характеристику каждому элементу:

  1. Things - объект управления системы IoT, под ним может подразумеваться от отдельного устройства, до технической инфраструктуры, которые должна контролироваться и управляться. Именно для этих целей применяются технологии IoT.
  2. Sensor and Actuator - датчики,сенсоры, контакторы, реле и т.д. Все измерительные и исполнительные элементы, которые могут считывать и воздействовать на объекты управления на физическом уровне, свойственнном и понятном для этих объектов управления. Когда речь идет о воздействии на объекты управления, то в общем случае подразумевают электрическое или электро-механическое воздействие на объекты, поскольку это наиболее распространенный вариант исполнения актуаторов, например: реле, задвижки, контакторы.
  3. Controller - аппаратный или программный слой, который осуществляет программную коммуникацию на нижнем уровне с сенсорами и актуаторами. Основная задача этого логического слоя состоит в поддержке основных стандартов протоколов. Наиболее распространенными вариантами таких протоколов являются реализации ModBus-RTU, ModBUS-TCP/IP, ODB-II (для автомобильной промышленности), DEX или MDB (для вендинговых систем), OPC (для SCADA систем). Стандарты протоколов предназначены только для локального взаимодействия с устройствами их структура, адресация не предполагает их использования в глобальной сети. В SEM NEXT этот уровень мы называем слоем драйверов. Для контроллеров Inspark реализованы драйвера наиболее востребованных протоколов (ModBus, GPIO, SNMP). Для контроллеров партнеров за слой драйверов отвечают партнерские решения.
  4. Agent - программные модули, обеспечивающие локальный прием данных от слоя драйверов, их предобработку (при необходимости) и принятия решений по отправке измерений серверной компоненте. В платформе SEM NEXT на этом уровне реализованы два модуля: vmon - модуль мониторинга, и vplan - модуль управления.
  5. Long-haul communication - слой программного обеспечения, реализующий транспорт прикладного уровня между агентами и серверной компонентой SEM NEXT. В SEM NEXT используется протокол MQTT.

Ниже представлено описание архитектуры и информационного взаимодействия для контроллера SEM NEXT, которая затрагивает три основных слоя : controller, agent, long-hault communication.

Модули и протоколы взаимодействия контроллера SEM NEXT
Раздел описывает все форматы информационного взаимодействия модулей контроллера.

Настройка программных компонент контроллера
Раздел описывает структуру конфигурационных файлов и их атрибутов.