31

SCADA для LINUX. Есть ли жизнь на ARM е?

Серия Контроллер интернет вещей AntexGate

Имея достаточно большой опыт работы в области промышленной автоматизации, мы вечно находимся в поиске оптимальных вариантов для решения своих задач. В зависимости от технического задания заказчика, приходилось останавливаться на той или иной программно-аппаратной базе. И если не было каких-то жестких требований по установке оборудования Siemens в связке с TIA-portal`ом, то, как правило, выбор падал на MasterSCADA 3.XX. Однако ничто не вечно под луной…


О своём опыте перехода на MasterSCADA 4D, предпосылках, особенностях её работы на встраиваемых компьютерах архитектуры ARM под катом данной статьи.


Предпосылки


Мы начали тестировать относительно новую разработку компании Insat – MasterSCADA 4D – не так давно. Предпосылок для этого было несколько. Во-первых, мы провели несколько независимых опросов среди специалистов в области промышленной автоматизации с целью выяснить, какие SCADA-системы наиболее популярны (рисунок 1). По результатам опроса первое место среди отечественных систем занимает система MasterSCADA.

Рисунок 1 — Результаты опроса наиболее популярных SCADA-систем


Второй предпосылкой можно считать…


Теперь перейдем непосредственно к самой MasterSCADA 4D. Она состоит из двух программных продуктов, а именно: среда разработки и среда исполнения. О работе каждой из этих частей поговорим ниже.


Среда разработки


Проект системы создается в среде разработки MasterSCADA 4D, для этого необходимо получить бесплатную версию на сайте компании Insat и установить, следуя подсказкам.

Рисунок 2 — Интерфейс среды разработки


Первое, что бросается в глаза — это приятный интерфейс среды разработки и удобная иерархическая структура построения проекта. Теперь в одном проекте можно создавать программу не только под АРМ, но и под весь объект, начиная с контроллера — заканчивая сервером или рабочим местом оператора.


Среда разработки работает только на ОС Windows, это относительно привычно и терпимо, а вот среда исполнения (RunTime) приятно удивила своей возможностью интегрироваться в различные операционные системы и архитектуры процессоров, но об этом дальше.


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

Рисунок 3 — Элементы визуализации


Коммуникационные протоколы


В системе поддерживаются различные драйверы (протоколы обмена), которые по умолчанию интегрированы в MasterSCADA 4D:


Modbus TCP/RTU, RTU поверх TCP

DCON

OPC UA/DA/HDA

IEC61850

SNMP

PostgreSQL

MQTT

IEC104

MSSQL

MySQL

Меркурий (отдельная библиотека) и др.


Среда исполнения


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


Устройство AntexGate


MasterSCADA Runtime предустановлена отдельной опцией на встраиваемый ПК AntexGate с архитектурой процессора ARM и операционной системой Debian, тесты будем проводить на этом устройстве.

Рисунок 4 — Устройство AntexGate


Характеристики:


ЦПУ: 4-ядерный x64 ARM v8 Cortex-A53

1.2Mhz Оперативная память: LPDDR2 1024MB

Энергонезависимая память: 8/16/32GB eMMC


Подробнее об устройстве можно прочитать здесь.


Запустим программу в исполнительном устройстве. Для примера мы создали опрос и управление устройством по протоколу Modbus RTU, процесс настройки опроса интуитивно понятный и чем-то похож на настройку привычного OPC-сервера. Правда сейчас в RunTime встроены драйверы протоколов для обмена данными.


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

Рисунок 5 — Проект в среде разработки


В итоге у нас получилась простая мнемосхема (рисунок 6), которая работает в любом браузере с поддержкой HTML5.

Рисунок 6 — Мнемосхема


Варианты отображения информации HMI


Есть возможность подключиться к среде исполнения через WEB, этот вариант не ограничивает нас в выборе клиента для просмотра данных на мнемосхеме.

В нашем случае на устройстве предусмотрен вывод информации через HDMI, Ethernet, 3G.

При подключении через HDMI мы обращаемся на LocalHost 127.0 0.1:8043 через встроенный браузер в AntexGate, либо подключаемся к фиксированному IP:8043 адресу в интернете или локальной сети предприятия другим «Тонким клиентом».

Рисунок 7 — Структура мониторинга WEB


Интересной новостью стал долгожданный MQTT протокол, которого обычно не хватало для мониторинга удаленных объектов в SCADA системах.

На сегодняшний день каждый имеет возможность получить недорогой VDS-сервер в интернете с фиксированным IP-адресом (например, сервер сайта компании) и развернуть на нем MQTT Broker (например, Mosquito).

Получив один сервер с MQTT брокером, мы легко можем отвязаться от дорогих услуг оператора — фиксированного IP и платить в год 900 рублей вместо 4000 рублей за связь 3G, т.е. при подключении 500 устройств экономия в год более 1,5 млн.руб..

Рисунок 8 — Структура мониторинга MQTT


Такое построение сети позволит не только экономить на трафике, но и обезопасит данные, так как передача данных по протоколу Modbus TCP в сети интернет не гарантирует безопасность и качество связи.

Таким образом, вы можете продавать тиражируемые проекты, в которых клиент сам выбирает поставщика интернета. И ни у кого не болит голова с настройкой и выделением IP адресов: клиент сам вставляет любую SIM-карту или подключается к маршрутизатору с DHCP-сервером.


Быстродействие


Для проекта главное быстродействие, в этом нам помогут так называемые «Задачи». По умолчанию у каждого узла при его создании только одна — Основная задача. Разработчик проекта может создать их столько, сколько необходимо для работы конкретного проекта. Особенности вычисления, например, цикл вычисления, будут зависеть от настроек той или иной задачи. Каждая из них будет работать независимо от других в устройстве. Создание нескольких задач целесообразно, если необходимо обеспечить разные циклы вычисления разных программ проекта.


Данная функция особенно интересна для устройств, на борту которых процессор с несколькими ядрами. Каждая «Задача» запускается как отдельный процесс в системе и нагрузка распределятся равномерно на работу процессора. В устройстве AntexGate установлен процессор ARM с 4-мя ядрами по 1.2ГГц и 1ГБ оперативной памяти, что позволяет создать как минимум 4 крупные задачи и распределить нагрузку по ядрам. В сравнении с ПЛК, устройство AntexGate может предоставить как минимум в 4 раза больше вычислительных способностей за такую же цену.

Рисунок 9 — Загрузка вычислительных способностей AntexGate в режиме исполнения


Как мы видим из рисунка 9, загрузка ЦП не более 2,5%, а памяти выделено всего 61Мб. Таким образом, небольшой проект в режиме исполнения потребляет очень мало встроенных ресурсов.

Устройство может использоваться не только как контроллер, но уже и как полноценный сервер с опросом более 2000 точек ввода-вывода и возможностью поддержки более 100 WEB-клиентов.


Для примера подключим 9 WEB-клиентов к устройству и посмотрим прогресс потребления ресурсов (рисунок 10).

Рисунок 10 — Загрузка вычислительных способностей AntexGate при подключении 9-ти WEB-клиентов


Как видно из рисунка выше, загрузка ЦП поднялась в среднем с 2,5% до 6%, а памяти выделено всего на 3Мб больше.

Благодаря большому запасу вычислительных ресурсов устройства, разработчику нет необходимости экономить на качестве программы, созданной в MasterSCADA 4D.


Кроссплатформенность


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


Заключение


MasterSCADA 4D — относительно новый продукт компании Insat. На сегодняшний день информации по работе с этим программным продуктом не так много, как хотелось бы. Однако можно скачать бесплатную среду разработки с официального сайта компании, она имеет весьма подробную справку по работе с программой.

Рисунок 11 — Окно справки


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


Хотелось бы увидеть в комментариях, какие вопросы больше всего интересуют Вас. И самые часто задаваемые мы по возможности превратим в урок по созданию проектов в MasterSCADA 4D.

Arduino & Pi

1.5K поста20.9K подписчиков

Правила сообщества

В нашем сообществе запрещается:

• Добавлять посты не относящиеся к тематике сообщества, либо не несущие какой-либо полезной нагрузки (флуд)

• Задавать очевидные вопросы в виде постов, не воспользовавшись перед этим поиском

• Выкладывать код прямо в посте - используйте для этого сервисы ideone.com, gist.github.com или схожие ресурсы (pastebin запрещен)

• Рассуждать на темы политики

• Нарушать установленные правила Пикабу

0
Автор поста оценил этот комментарий
А каким образом ваше устройство можно связать с плк Simens?
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

По profinet есть возможность, через node-red например. https://www.npmjs.com/package/node-red-contrib-s7

3
Автор поста оценил этот комментарий

На вкус и цвет все фломастеры разные. ИМХО, если хочешь по..аться на объекте, то выбирай MasterSCADA.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Из России к сожалению ничего лучше нет, а тем более web версий на linux.

показать ответы
0
Автор поста оценил этот комментарий

Добрый день, как у Вас реализован Modbus RTU, с использование промежуточных серверов или сервер пульт - сам собирает информацию с датчиков, допустим у меня 30 датчиков по PCI VXC-148(i), работать будет??? Очень интересно как с поддержкой этого в линуксе???

раскрыть ветку (1)
Автор поста оценил этот комментарий

Простите, давно не заходил сюда.

Modbus rtu самое простое, вот три продукта как минимум которые можно использовать :

Node-red бесплатный

Home-assistant бесплатный

HomeKit бесплатный

Openscada бесплатный

Rapidscada бесплатный

Codesys 50евро

Masterscada 4d 4000р

Зайдите в профиль, посмотрите там по этим продуктам есть статьи с примерами.

0
Автор поста оценил этот комментарий

Отличный продукт!


У меня пара вопросов.


1. Когда ждать MQTT?

2. Можно ли добавить выбор экранов/мнемосхем как трендов? Т.е. окно со списком экранов и возможностью поиска. Если большое количество экранов, то рыскать по списку глазами затруднительно, куда проще это сделать при помощи поиска.

раскрыть ветку (1)
Автор поста оценил этот комментарий

Добрый день. На счёт скады видимо вопрос? Там вроде реализован mqtt. Собственно мы писали о возможности использовать master scada на нашем устройстве. У инсата скачайте на сайте и попробуйте, вроде там были примеры даже.

0
Автор поста оценил этот комментарий
А каким образом ваше устройство можно связать с плк Simens?
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Спасибо, мы все с нуля начали делать и с ориентиром на максимальную производительность и минимальное потребление ресурсов. Поэтому у нас бэкэнд на чистом Си (начиная от собственного веб-браузера) и фронтэнд без единого фреймворка - как результат, можно систему целиком поставить на кофеварку, если она под Линуксом :) Текущая версия у нас заточена на работу с Модбасом, мы ее поэтому пока активно не продвигаем, а вторую делаем уже с заложенной мультиязычностью, темной/светлой цветовой схемами и возможностью подключения разных драйверов протоколов. Так что, да, работаем, о новой версии вам сообщим обязательно.

раскрыть ветку (1)
Автор поста оценил этот комментарий

Давайте, будем ждать. Кстати как минимум mqtt добавить надо, а ещё было бы неплохо модуль стыковки с node-red (хотя можно через mqtt) но это моя личная любовь к этому колоссальному инкубатору протоколов. Просто в node-red не хватает привычной всем визуализации, которую можно Вашим средством сделать. Просто такая стыковка вам даст быструю поддержку множества протоколов modbus, profinet, opc и других. Продукт конечно и модули открытого происхождения, и никто ответственность не несёт, но колоссальное сообщество из разных стран помогало мне решать задачи, на которые невозможно получить ответ даже у платных ПО.

5
Автор поста оценил этот комментарий

Если хотите поставить всю скаду (вместе со средой разработки) прямо на контроллер или на Raspberry - посмотрите на наш продукт: https://pult.online


Куча плюсов:

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

раскрыть ветку (1)
Автор поста оценил этот комментарий

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

показать ответы
0
Автор поста оценил этот комментарий
Сервер:https://demo.pult.onlineЛогин:demoПароль:pultonline
раскрыть ветку (1)
Автор поста оценил этот комментарий

Да разобрался, пообщался с Вашим представителем. В общем идея мне очень нравится.

0
Автор поста оценил этот комментарий
раскрыть ветку (1)
Автор поста оценил этот комментарий

почему то демо не работает (((

Иллюстрация к комментарию
показать ответы
0
Автор поста оценил этот комментарий
раскрыть ветку (1)
Автор поста оценил этот комментарий

протестируем, интересно.

5
Автор поста оценил этот комментарий

Что, у мастерскада так все плохо, что надо себя уже и на Пикабу рекламировать?

раскрыть ветку (1)
Автор поста оценил этот комментарий

Что, у мастерскада так все плохо, что надо себя уже и на Пикабу рекламировать?

По коммерческой отдаче Пикабу выше хабра))) Поржал и сдаду прикупил. Правда это не мастер скада рекламируется.
2
Автор поста оценил этот комментарий

Из всех, приведенных на рисунке 1, SCADA-систем не разу и ни на одном объекте за более чем 10 лет практической работы не встречал ни OpenSCADA, ни RapidSCADA, ни Vijeo Sitech. Всего пару раз видел Simpe SCADA и один раз Trace Mode. Чуть чаще видел Genesis и CoDeSys. Наиболее часто встречаются  Intouch и MasterSCADA, ну и разумеется абсолютный лидер применяемых систем на объектах - WinCC.

раскрыть ветку (1)
Автор поста оценил этот комментарий

Один Siemens и CodeSys на иглу подсадил! Вот и плохо, надо второй раз немцев победить!

показать ответы

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества

Недвижимость и ремонт

Теги

Популярные авторы

Сообщества