Другие языки

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

Большая часть языков, таких как Java или Python, предполагают текстовое написание кода и его отладку в специализированных редакторах с подсветкой синтаксиса. Другая их часть - визуальная, и позволяет реализовывать необходимую логику простым перетаскиванием компонентов.

Языки управления процессами

Некоторыми вертикальными решениями, основанными на платформе AggreGate, поддерживается семейство языков управления процессами МЭК 61131-3. Среды выполнения этих языков также называют программными ПЛК, поскольку они предоставляют те же возможности, что и аппаратные программируемые логические контроллеры (ПЛК).

Наборы компонентов для программных ПЛК включают инструменты разработки, отладки и выполнения для четырёх языков:

  • ST - Структурированный текст
  • FBD - Функциональные блоковые диаграммы
  • SFC - Последовательностные функциональные диаграммы
  • LD - Релейно-контактные схемы

Главной целью которую мы преследовали при добавлении поддержки языков управления процессами в AggreGate, было предоставление пользователям удобного инструмента для реализации приложений, работающих во встраиваемых средах, таких как IoT шлюзы, ПЛК под управлением Linux и одноплатные компьютеры. Это сделало нашу платформу ещё более привлекательной для миллионов инженеров АСУ ТП, уже имеющих опыт в программировании «классических» аппаратных ПЛК.

Язык Expect

Cобственная реализация языка Expect в AggreGate предоставляет возможность управления устройствами через командную строку (CLI). Скрипты Expect отправляют на устройство специальные сообщения и ожидают получения одного из предопределённых вариантов ответа. Подобным образом могут быть реализованы скрипты для мониторинга, управления, конфигурирования и обновления устройств.

Скрипты

Сервер AggreGate позволяет выполнять скрипты - говоря простым языком, небольшие программы, написанные на разнообразных языках программирования, таких как Java, Python и R. Также существует возможность запуска скриптов, написанных на других языках (например, PHP или Javascript), как внешних приложений.