Сравнение производительности ПЛК210 модификаций 1х и 0х
В данной статье рассмотрим возможности сетевого обмена ПЛК210 модификаций 1х и 0х с точки зрения нагрузки. Для примера системы был взят реальный объект одного из клиентов ОВЕН. Общее количество сигналов, обрабатываемых контроллером, 5000.
В рамках теста построена следующая модель.
Испытуемый ПЛК является ModbusTCP-Master для 80 Slave-устройств (модули ввода-вывода), ModbusTCP-Slave для панели оператора, OPCUA-сервером для клиента на ПК. Настройка ModbusTCP производится через стандартную конфигурацию в дереве проекта CODESYS. Количество передаваемых сигналов по каждому виду связи приведено на рисунке ниже. При этом в таблице с результатами указано уже фактическое количество регистров памяти сетевого обмена. Направление стрелки показывает чтение/запись тегов. Режим чтения/записи во всех протоколах – циклический.
В проекте ПЛК производится «упаковка» получаемых данных в формат REAL, «распаковка» битовых масок, копирование данных между областями памяти ModbusTCP-Master и ModbusTCP-Slave, подсчёт времени обновления по каждому каналу ModbusTCP-мастера (2000 функциональных блоков). Данные размещены таким образом, чтобы формировать групповые Modbus-запросы.
Визуализация CODESYS не используется (из дерева удалён менеджер визуализации, удалена соответствующая задача).
Рис. 1. Схема модели испытуемого ПЛК
В тесте фиксируется загрузка ЦП (по узлу Debug в дереве проекта), среднее и максимальное время исполнения задачи MainTask, а также периоды опроса по всем протоколам.
Результаты сравнения модификаций ПЛК210-1х и ПЛК210-0х приведены в таблице ниже.
Таблица. Сравнения модификаций ПЛК210-1х и ПЛК210-0х
Загрузка ЦП, % | Заданное время цикла задачи, мс | Среднее / Максимальное время цикла задачи, мс | Протокол, количество точек | Заданный период опроса, мс | Фактический период опроса, мс | |
ПЛК210-11-CS (3.5.1023.2023) | 20-30 | 10 | 4,7 / 9,8 | ModbusTCP-Master 960 регистров | 500 / 100 | 480 / 90 |
Modbus TCP-Slave 1000 регистров | 200 | 200 | ||||
OPC UA-сервер 2000 тегов | 100 | 300 – 600 | ||||
ПЛК210-03-CS (2.4.0601.0905) | 100 | 10 | 6,4 / 10,8 | ModbusTCP-Master 960 регистров | 500 / 100 | 480 / 90 |
Modbus TCP-Slave 1000 регистров | 200 | 300 | ||||
OPC UA-сервер 2000 тегов | 100 | 500 – 900 |
Выводы:
- В одинаковых задачах ПЛК210-1х оказывается более производительным за счёт обновлённого центрального процессора. Для ПЛК210-0х такая нагрузка критична (100% загрузки ЦП).
- Заданное время опроса slave-устройств по ModbusTCP выдерживается на обоих ПЛК.
- ПЛК210-0х в силу полной загрузки ЦП показывает более медленный обмен с ModbusTCP- и OPCUA клиентами.
Следует отметить, что в реальной задаче получаемые результаты могут отличаться в силу различных факторов: наличие визуализации и её сложность, более сложные алгоритмы в программе, нагруженность ПЛК другими задачами (обмен с БД, выполнение Python-скриптов и т.п.), оптимизация обмена (групповые запросы) и пр.