Модель объекта контроля

Модель объекта контроля - это формализованное представление логических и аппаратных функций устройств, управляющих объектом контроля. Модель обладает древовидной структурой, состоящей из подсистем, аргументов, событий и действий.

Основная задача модели - поднять уровень абстракции с уровня протоколов и аппаратной реализации до читабельных, понятных человеку наименований функций объекта, с которыми становится удобно работать программисту без необходимости разбираться в протоколе. Преобразованные таким образом данные принимают форму запроса RESTful API в формате json, привычную для мобильных разработчиков приложений.

Модель устройства используется для сериализации и десериализации данных, нормализации данных, рендеринга интерфейсов, а также при создании сценариев автоматизации и цепочек обработки данных.

Нет необходимости создавать модель для каждого из однотипных объектов контроля. Единожды созданная модель может быть использована как для одного, так и для нескольких объектов, если они обладают одинаковым набором считываемых параметров и выполняемых функций.

Параметры модели устройства

Процесс описания модели объекта контроля заключается в определении параметров модели в виде следующих узлов древовидной структуры:

Связь модели с базовым протоколом

При создании в модели новых команд, параметров и событий всегда производится "наследование" от базового протокола. Для создания новой команды необходимо "отнаследоваться" от базовой команды протокола, по которому работает устройство, и ввести аргументы, с которыми команда или несколько команд будут исполняться. Аналогичным образом это работает для событий и параметров. Например, если данные передаются от устройства на платформу и обратно по протоколу MQTT, то в этом случае для аргументов необходимо указывать источник данных - topic, по которому они отправляются.

Для удобства последующего использования вновь созданных параметров модели лучше присваивать им ассоциативные имена. Для нормализации в json в качестве ключа аргумента используется идентификатор вновь созданного параметра. Структура данных, полученных в результате нормализации, будет соответствовать структуре модели.

Благодаря моделям аппаратное обеспечение, работающее по разным протоколам, но установленное на одинаковых объектах контроля, может быть использовано в одном сценарии автоматизации. Сопоставляя идентификаторы узлов и структуры моделей, платформа будет нормализовывать данные в одинаковые json объекты.

Конфигурирование модели

Процесс конфигурирования модели представляет собой создание древовидной структуры, состоящей из параметров. При этом сами параметры создаются путем наследования от базовых функций протокола, по которому работает устройство.

Конфигурирование модели для конкретных протоколов подробно рассмотрено в разделе примеров.

ВНИМАНИЕ! В случае отсутствия у пользователя доступа к модели устройства, которая назначена на объект контроля, рендеринг интерфейсов, связанных с просмотром данных, производиться не будет.

Создание виртуальной модели физического устройства включает следующие шаги:

  1. Войти в меню "Модели".
  2. Вызвать диалоговое окно создания модели объектов контроля.

scheme

Далее необходимо заполнить следующие поля:

В модели широко используемых протоколов, таких как MQTT, предполагается использование представленной структуры только в качестве примера, пользователю в любом случае предстоит модифицировать ее под себя. Модификация должна производиться в зависимости от параметров, считываемых датчиками устройства, и команд, которые устройство способно выполнить.

В случае проприетарного протокола, например, Wialon IPS, модель уже представляет собой готовую к использованию структуру, включающую в себя полный перечень необходимых аргументов и действий.

После нажатия кнопки "Создать" будет создана новая модель. Теперь можно приступать к ее конфигурированию.

По умолчанию созданная модель будет выглядеть следующим образом:

MQTT

scheme

RIC HTTP

scheme

Wialon IPS

scheme

Внешние программные модули добавляются в модель по умолчанию. Они представляют собой список заранее описанных функций, с помощью которых описывается бизнес-процесс в шаблоне логики. Внешние программные модули включают в себя:

Параметры узлов модели

Любой узел модели может быть отключен снятием флажка в чекбоксе. После отключения узел перестает обрабатываться системой.

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

scheme

Общие

Аргумент

Разделы "При разборе" и "Отображение" открывают дополнительные поля.

scheme

Действие