15 ноября 2023 года в рамках Восемнадцатого чемпионата по спортивному программированию компания АдАстра (Москва) провела Одиннадцатый студенческий SCADA-чемпионат по скоростному программированию в SCADA-системе.
На этот раз, перед участниками чемпионата была поставлена задача из мира Интернета вещей и Индустрии 4.0. При помощи базовой версии TRACE MODE 7.1, считать данные по протоколу IoT MQTT, накопить их и отобразить на экране ПК с помощью нового графического элемента SCADA TRACE MODE 7 - "Профиль". Бесплатный нативный драйвер MQTT встроен в SCADA TRACE MODE 7, а в качестве брокера MQTT использовался сайт mosquitto.org.
С технологиями четвертого промышленного уклада справилось большинство участников. Подключением по MQTT к SCADA TRACE MODE 7 прошло без проблем, даже несмотря на то, что в процессе соревнований брокер MQTT на сайте mosquitto.org вдруг перестал отвечать. А вот накопление буфера данных в аргументах канала CALL и передача его для отображения на профиле почему-то вызвало затруднения - с задачей не справились 90% (!) участников. По-видимому, свою роль сыграла традиционное для SCADA-систем представление - ось абсцисс тренда - это время. В ГЭ Профиль - это не так - по горизонтали отображаются порядковые номера временного ряда, а не время события.
В итоге, с заданием справились 4 участника - три специалиста и один студент ФГБОУ ВО "Донецкий государственный университет".
Главный приз студенческого SCADA-чемпионата этого года: смартфон Смартфон Xiaomi 12 8/128Gb и профессиональная версия SCADA TRACE MODE 7 на 32000 источников присужден Скрибченко Арсению Владиславовичу, студенту ФГБОУ ВО "Донецкий государственный университет" и его преподавателю - Ломоносу Г.Т.
Остальные студенты, к сожалению, с заданием не справились. Поэтому второй и третий приз студенческого чемпионата в этом году вручаться не будут, а перейдут на следующий год в качестве джекпота (увеличение призового фонда).
Характерными ошибками студентов были:
- применение каналов класса CALL;
- отображение значений аргументов канала CALL.ChGrReq с помощью ГЭ Профиль.
Данные, поступающие от процесса, можно было набирать на аргументы каналов трех типов – ChGrReq, Data и TVC. Отличие лишь в структуре аргументов – в случае TVC аргументы создаются парными - «значение/метка времени».
Однако поскольку ГЭ Профиль работает лишь с ChGrReq, то выбирать надо было именно данный тип. Сам набор данных на аргументы был возможен как непосредственно – по привязке к каналу, получающего данные по активным подключениям к брокеру, либо те же данные можно набирать непосредственно в одномерный массив через входной аргумент программы , написанной исключительно на языке ST. А потом пересылать элементы накопленного и обработанного массива на аргументы ChGrReq с помощью специальной функции SetChannelVF. Временной интервал набора данных задается программно или на ST, или на FBD.
Размещенный на графическом экране ГЭ Профиль должен иметь привязку к атрибуту Реальное значение ChGrReq. Для обновления данных на ГЭ Профиль надо направить ненулевое значение в атрибут Входное значение ChGrReq.
Интерфейс и файл проекта победителя - Скрибченко А.В. приведены ниже.
Проект победителя можно скачать на новом сайте TRACE MODE.
Результаты чемпионата опубликованы в Турнирной таблице.
Основной SCADA-чемпионат продолжается. 22 ноября 2023 нас ждет второй тур. Арсений Скрибченко теперь может бороться за главный приз чемпионата для специалистов - игровой ноутбук.
Пожелаем успехов нашим киберспортсменам!
|