Протоколы в ПО SCADA
В полной версии ПО SCADA компании ENGITEX пользователь может настраивать, каким образом данные попадают в "нижестоящий" SCADA-хост с контроллеров полевого уровня.
Между SCADA-хостами данные передаются по внутреннему протоколу нашего ПО, что не требует дополнительной настройки пользователем.
Добавление поддержки ЛЮБОГО протокола на полевом уровне возможно за счет так называемого прокси-паттерна. SCADA-плагин вызвает методы класса PollerProxy. Именно данный класс пользователь должен модифицировать и затем его скомпилировать программой javac.
В данном классе пользователь задает:
1. Имена различным IP полевых контроллеров (например, 192.168.0.100 будет "PLC-main-2").
2. Привязку протоколов полевого уровня к IP (например, Modbus TCP для 192.168.0.100).
Продвинутый пользователь, хорошо знакомый с Java, может реализовать собственный класс с именем, например, PollerCustom для какого-либо нестандартного протокола. ENGITEX в полной версии SCADA предлагает реализации Modbus TCP (класс PollerModbusTCP) и Mqtt (класс PollerMqtt).
Классы, отмеченные C на схеме выше, лежат в дистрибутиве как пре-компилированные и не требуют каких-либо изменений.