Научная статья на тему 'ПРОГРАММНАЯ РЕАЛИЗАЦИЯ СВЯЗИ МЕЖДУ КЛИЕНТОМ-ОКРУЖЕНИЕМ И СЕРВЕРОМ-ВИРТУАЛЬНЫМ ПЛК ПРОМЫШЛЕННЫМИ ПРОТОКОЛАМИ И ТЕХНОЛОГИЯМИ'

ПРОГРАММНАЯ РЕАЛИЗАЦИЯ СВЯЗИ МЕЖДУ КЛИЕНТОМ-ОКРУЖЕНИЕМ И СЕРВЕРОМ-ВИРТУАЛЬНЫМ ПЛК ПРОМЫШЛЕННЫМИ ПРОТОКОЛАМИ И ТЕХНОЛОГИЯМИ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
4
0
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
OpenPLC / Modbus / OPC / ПЛК / Протокол / OpenPLC / Modbus / OPC / PLC / Protocol

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — С.Р. Федорук, А.В. Лаврищев

В процессе обучения будущих специалистов по автоматизации ощущается нехватка практики, лабораторных стендов, недостаточность наглядности. В качестве варианта решения проблемы была создана учебная система проектирования простых автоматизированных процессов, которая позволяет создавать и выполнять FBD код, эмулирует поведение управляемых объектов, предоставляет 3D-пространство для наблюдения за автоматизированными процессами. В данной статье рассмотрены потенциально применимые к реализации промышленные технологии и протоколы для связи данной программы с виртуальными ПЛК CoDeSys PLCWinNTv2.4 на Windows от версий 2.3 и 3.5, и OpenPLC на Linux и Windows.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — С.Р. Федорук, А.В. Лаврищев

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

SOFTWARE IMPLEMENTATION OF COMMUNICATION BETWEEN THE CLIENT-ENVIRONMENT AND THE SERVER-VIRTUAL PLC BY INDUSTRIAL PROTOCOLS AND TECHNOLOGIES

In the process of training future automation specialists, there is a lack of practice, laboratory stands, and lack of visibility. As a solution to the problem, a training system for designing simple automated processes was created, which allows you to create and execute FBD code, emulates the behavior of controlled objects, and provides a 3D space for monitoring automated processes. This article discusses potentially applicable to the implementation of industrial technologies and protocols for communicating this program with virtual PLCs CoDeSys PLCWinNTv2.4 on Windows for versions 2.3 and 3.5, and OpenPLC on Linux and Windows.

Текст научной работы на тему «ПРОГРАММНАЯ РЕАЛИЗАЦИЯ СВЯЗИ МЕЖДУ КЛИЕНТОМ-ОКРУЖЕНИЕМ И СЕРВЕРОМ-ВИРТУАЛЬНЫМ ПЛК ПРОМЫШЛЕННЫМИ ПРОТОКОЛАМИ И ТЕХНОЛОГИЯМИ»

УДК 004.42

ПРОГРАММНАЯ РЕАЛИЗАЦИЯ СВЯЗИ МЕЖДУ КЛИЕНТОМ-ОКРУЖЕНИЕМ

И СЕРВЕРОМ-ВИРТУАЛЬНЫМ ПЛК ПРОМЫШЛЕННЫМИ ПРОТОКОЛАМИ

И ТЕХНОЛОГИЯМИ

*

С. Р. Федорук Научный руководитель - А. В. Лаврищев

Сибирский государственный университет науки и технологий имени академика М. Ф. Решетнева Российская Федерация, 660037, г. Красноярск, просп. им. газ. «Красноярский рабочий», 31

*E-mail: fedoruk_semen@mail.ru

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

В данной статье рассмотрены потенциально применимые к реализации промышленные технологии и протоколы для связи данной программы с виртуальными ПЛК CoDeSys PLCWinNTv2.4 на Windows от версий 2.3 и 3.5, и OpenPLC на Linux и Windows.

Ключевые слова: OpenPLC, Modbus, OPC, ПЛК, Протокол.

SOFTWARE IMPLEMENTATION OF COMMUNICATION BETWEEN THE CLIENTENVIRONMENT AND THE SERVER-VIRTUAL PLC BY INDUSTRIAL PROTOCOLS

AND TECHNOLOGIES

S. R. Fedoruk* Scientific supervisor - A. V. Lavrishchev

Reshetnev Siberian State University of Science and Technology Krasnoyarskii rabochii prospekt, Krasnoyarsk, 660037, Russian Federation *E-mail: fedoruk_semen@mail.ru

In the process of training future automation specialists, there is a lack of practice, laboratory stands, and lack of visibility. As a solution to the problem, a training system for designing simple automated processes was created, which allows you to create and execute FBD code, emulates the behavior of controlled objects, and provides a 3D space for monitoring automated processes.

This article discusses potentially applicable to the implementation of industrial technologies and protocols for communicating this program with virtual PLCs CoDeSys PLCWinNTv2.4 on Windows for versions 2.3 and 3.5, and OpenPLC on Linux and Windows.

Keywords: OpenPLC, Modbus, OPC, PLC, Protocol.

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

Секция «Информационно-управляющие системы»

построения виртуальных установок позволяет создавать системы, в приближении аналогичные реальным. Поэтому в качестве пути решения проблемы была разработана учебная система проектирования простых автоматизированных процессов - программа, выполняющая роль как окружения с объектами контроля, так и простого программного ПЛК.

Недостаток проекта заключается в замкнутости системы и связанным с этим ограничением возможностей: создавать программу можно только на ограниченной версии языка FBD (Function Block Diagram) без возможности импорта и экспорта, системы SCADA (Supervisory Control And Data Acquisition — диспетчерское управление и сбор данных) подключить невозможно. Чтобы устранить этот недостаток принято решение о добавлении программе механизмов работы со стандартными промышленными технологиями и протоколами, чтобы связать программу как управляемое виртуальное окружение со внешними программными ПЛК.

SoftPLC или Программный ПЛК — программная технология, позволяющая использовать компьютер как полнофункциональный программируемый логический контроллер [1].

На сегодня выбор программных комплексов, сочетающих функционал программного ПЛК и среды разработки практически отсутствует. Для Linux-систем есть только пакет OpenPLC с виртуальным ПЛК OpenPLC Runtime (либо его вариация YAPLC, использующая ту же интегрированную среду разработки Beremiz и те же стеки протоколов). Для Windows кроме него есть также PLCWinNT от CODESYS — мирового лидера среди МЭК-комплексов.

Подключение к PLCWinNT осуществляется посредством OPC технологии. ОРС (Open Platform Communications) — семейство программных технологий, предоставляющих единый интерфейс для управления объектами автоматизации и технологическими процессами [2].

Существует несколько спецификаций OPC. Спецификации OPC Classic основаны на технологии Microsoft Windows с использованием COM/DCOM (Distributed Component Object Model - объектная модель распределенных компонентов) для обмена данными между программными компонентами. Спецификации предоставляют отдельные определения для доступа к данным процесса (DA), аварийным сигналам (AE) и историческим данным (HDA). В 2008 году OPC Foundation выпустила унифицированную архитектуру OPC (OPC UA), независимую от платформы сервисно-ориентированную архитектуру, которая объединяет все функциональные возможности существующих спецификаций OPC Classic.

Для настройки OPC-сервера внутри CoDeSys достаточно задать соответствующую конфигурацию (3S CoDeSys SP PLCWinNT V2.4), включить генерацию символьного файла, настроить символьную конфигурацию: разрешить создавать описания, чтобы выгружать в символьный файл необходимую информацию, а также настроить содержание символьного файла. Для использования виртуального ПЛК требуется настройка параметров связи.

Проблема в том, что CoDeSys 2.3 поддерживает только классические OPC-спецификации, что означает привязку к технологиям ОС Windows. Написать простой консольный клиент, подписывающийся на группы передаваемых тегов, и реализовать OPC-клиент внутри игрового движка Unity3D это разные задачи, так как среда исполнения Unity «Mono» не вполне способна корректно работать с DCOM.

Версия CoDeSys 3.5 поддерживает OPC UA. Вследствие независимости технологии от платформы, реализовать UA-клиент в Unity на практике возможно. Однако теряется сам смысл кроссплатформенности, потому что CoDeSys не имеет версии для Linux.

Иначе дело обстоит с OpenPLC. Стандартная версия не поддерживает OPC ни в каком виде. Однако в Runtime встроена поддержка протоколов DNP3 и Modbus. Так как DNP3 не поддерживается на Windows, подробнее остановимся на Modbus.

Протокол был разработан Modicon в 1979 году специально для использования в ПЛК для промышленного применения. Сегодня это открытый протокол, используемый в широком спектре продуктов автоматизации. Modbus основан на архитектуре «ведущий - ведомый». Подчиненные устройства не передают информацию без команды на это от ведущего. В сети

может быть до 247 подчиненных устройств с уникальными идентификаторами от 1 до 247. Протокол имеет 8 основных функций, отвечающих за чтение или запись в определенный ввод-вывод. Адресное пространство ввода-вывода в ОрепРЬС сопоставляется с адресным пространством МоёЬш в соответствии с таблицей 1:

Таблица 1

Адресное пространство Master Mod bus OpenPLC

Тип регистра Применение Адрес ПЛК Адрес Modbus Размер Доступ

Регистры флагов (Coils) Цифровой Выход (БО) %QX0.0 -%QX99.7 00000 - 00799 1 бит RW

Дискретные входы (Discrete Inputs) Цифровой Вход (Б1) %IX0.0 -%IX99.7 10000 - 10799 1 бит R

Регистры ввода (Input Registers) Аналоговый Вход (А1) %IW0 -%IW99 30000 - 31023 16 бит R

Регистры хранения (Holding Registers) Аналоговый Выход (АО) %QW0 -%QW99 40000 - 41023 16 бит RW

Общий 16-разрядный регистр %MW0 -%MW1023 41024 - 42047 16 бит

Общий 32-разрядный регистр %MD0 -%MD1023 42048 - 44095 32 бит

Общий 64-разрядный регистр %ML0 -%ML1023 44096 - 48191 64 бит

Modbus использует порт 502 для связи по протоколу TCP/IP по умолчанию. Это важно, если данные должны проходить через брандмауэр или если предполагается запуск сервера и сопровождение эмулятора Slave-устройства в OpenPLC с одного компьютера, так как они будет конфликтовать между собой и порт на симуляторе потребуется сменить [3].

Проблемой применения Modbus для среды виртуальных стендов является ограничение на доступ к дискретным и аналоговым входам на уровне протокола: невозможно передать из программы значение на вход, считанное с виртуального датчика, если адрес в пространстве ограниченном для чтения. Рабочим решением является использование в качестве входов допустимых к редактированию адресов ПЛК, обладающих сходной размерностью: разделить пространство MW для использования IW, а для дискретных значений QX. Но очевидна не оптимальность такого подхода, для пользователя это дополнительная сложность с сопоставлением адресов.

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

Библиографические ссылки

1. Максименко, А. О. Технология OPC для связи контроллеров со SCADA системами // Евразийский научный журнал. 2017. № 10. С. 144-145.

2. Underwood, D. Understanding Soft PLC Features and Requirements // Association for Advancing Automation [Электронный ресурс]. URL: https://www.automate.org/tech-papers/understanding-soft-plc-features-and-requirements (дата обращения: 25.03.2022).

3. OpenPLC Community Forum. Openplc runtime with modbus simulator [Электронный ресурс]. URL: https://openplc.discussion.community/post/openplc-runtime-with-modbus-simulator-10467597 (дата обращения: 20.03.2022).

© Федорук С.Р., 2022

i Надоели баннеры? Вы всегда можете отключить рекламу.