В данной статье рассматривается пример построения системы на базе панели оператора с сенсорным экраном Maple Systems серии HMI5000 и ПЛК FASTWEL I/O, которые обмениваются данными по протоколу Modbus RTU и Modbus TCP/IP.
Визуализация процессов является неотъемлемой частью систем человеко-машинного интерфейса (ЧМИ). Наиболее актуальное решение в данной области — использование такого класса устройств, как панели оператора. В отличие от компьютеров, в том числе и панельных, панели оператора представляют собой готовое к применению и легко интегрируемое решение.
Американская компания Maple Systems предлагает несколько линеек промышленных панелей оператора, имеющих не только широкие функциональные возможности, но и приемлемую цену. Устройства предназначены как для небольших систем автоматизации, так и для систем со сложной архитектурой. Панели поставляются с предустановленной операционной системой и средой исполнения. Проект разрабатывается с помощью программного пакета EZware с использованием готовых конфигурируемых блоков. Пакет имеет интуитивно понятный интерфейс и поддерживает библиотеку драйверов для широкого спектра ПЛК таких производителей, как Allen-Bradley, Siemens, Omron, Advantech, VIPA, WAGO, FASTWEL и др.
В данной статье рассматриваются основные принципы построения системы ЧМИ на базе панели оператора Maple Systems и распределённой системы управления FASTWEL I/O российской компании FASTWEL, которая не имеет в своей линейке продукции панелей оператора.
Рассмотрим задачу организации обмена данными между панелью оператора Maple Systems и контроллером FASTWEL I/О по протоколам Modbus RTU и Modbus TCP/IP. Для примера используется 8-дюймовая панель HMI5080T c двумя последовательными портами RS-485/232 и RS-232 и интерфейсом Ethernet. Для иллюстрации подключения по сети Modbus RTU применяется контроллер CPM702 с двухпроводным интерфейсом RS-485, а по сети Modbus TCP/IP — контроллер CPM703 с интерфейсом Ethernet. В качестве модулей расширения используются модуль ввода питания OM751, модули дискретного вывода DIM718 и дискретного ввода DIM717, а также оконечный модуль OM750 (рис. 1).
Подача питания как для панели оператора, так и для ПЛК осуществляется с помощью источника питания с выходным напряжением 24 В постоянного тока.
Пример. На вход DI1 модуля дискретного ввода DIM717 подаётся сигнал от датчика. Данные передаются по сети Modbus RTU или Modbus TCP/IP в панель оператора HMI5080T и отображаются в виде графического индикатора. С помощью графического объекта «кнопка» осуществляется передача дискретного сигнала от панели оператора в контроллер на выход DO1 модуля дискретного вывода DIM718.
Для работы с ПЛК FASTWEL I/O необходимы следующие компоненты:
кабель для конфигурирования ACS00019;
программное обеспечение конфигурирования Codesys фирмы 3S-Smart Software Solutions с адаптационным пакетом. Данное ПО распространяется бесплатно, скачать его можно с ftp-сервера ПРОСОФТ: ftp://ftp.prosoft.ru/pub/Hardware/FASTWEL/.
Замечание. Рекомендуется обновить прошивку (firm-ware) ПЛК. Новая версия доступна также на ftp-сервере ПРОСОФТ.
Для работы с панелью оператора Maple Systems HMI5080T понадобятся:
кросс-кабель Ethernet для конфигурирования;
программное обеспечение конфигурирования EZware-5000.
Замечание. Рекомендуется обновить программное обеспечение EZware-5000 до новой версии. Установочный файл доступен на ftp-сервере ПРОСОФТ: ftp://ftp.prosoft.ru/pub/Hardware/MapleSystems.
Для подключения ПЛК к панели оператора используется Ethernet кросс-кабель (для CPM703) и соединительный кабель (для CPM702).
Последний можно изготовить, используя данные о назначении контактов соединителей, представленные в таблице 1, и схему подключения контактов со стороны соединительного кабеля, представленную на рис. 2.
Замечание. Проверьте назначение контактов порта вашей панели, используя «Руководство пользователя».
Перед началом работы необходимо произвести настройку IP-адреса панели оператора. Для этого подключите к панели мышь с интерфейсом USB, передвиньте курсор в правый нижний угол. В появившейся панели инструментов нажмите кнопку Settings, после чего введите пароль 111111 с помощью виртуальной клавиатуры. Во вкладке Network введите необходимый IP-адрес панели оператора и маску подсети. В рассматриваемом примере IP-адрес равен 192.168.0.201, а маска подсети — 255.255.255.0.
Прикладная программа для ПЛК FASTWEL I/O, реализующая алгоритмы сбора данных и управления, разрабатывается с помощью среды CoDeSys с адаптационным пакетом.
Откройте среду разработки CoDeSys. Через пункт меню File → New создайте новый проект. В появившемся диалоговом окне Target settings выберите FASTWEL I/O System with Multitasking Runtime и нажмите ОК. В новом диалоговом окне выберите тип Program программного модуля Type of POU и язык программирования ST (Structured Text).
Настройка системы FASTWEL I/O заключается в конфигурировании контроллера узла, конфигурировании модулей ввода-вывода и конфигурировании внешней сети Modbus в редакторе PLC Configuration. На рис. 3 представлена схема подключения модулей расширения, блока питания и соединительного кабеля к ПЛК.
Во вкладке Resources запустите редактор конфигураций PLC Configurations. В древовидном списке выберите контроллер CPM702 или CPM703 (рис. 4), после чего раскройте вложенный список ПЛК и выберите пункт I/O modules.
Щелчком правой клавиши мыши вызовите меню, выберите пункт Append Sublement и добавьте все используемые в системе модули ввода-вывода в порядке их расположения на DIN-рейке: OM751, DIM718 и DIM717.
Замечание. Оконечный модуль OM750 в редактор не добавляется.
Для работы с дискретным выходом модуля DIM718 и дискретным входом модуля DIM717 необходимо объявить соответствующие переменные. Это осуществляется с помощью символических ссылок на каналы регистров в редакторе конфигураций PLC Configuration. Откройте древовидный список модуля DIM718, выберите подпункт Outputs [FIX]. Данные первого канала дискретного вывода отображаются в выходном регистре %QX2.8. После двойного щелчка в начале строки AT %QX2.8: BOOL; (* Bit 0*) введите имя переменной DO1 (рис. 5).
Аналогично объявите переменную DI1 в древовидном списке модуля дискретного ввода DIM717 в строке AT %IX21.0: BOOL; (* Bit 0*).
Для обмена данными между ПЛК CPM702 и панелью оператора используется протокол Modbus RTU. При этом работа осуществляется через коммуникационный порт COM2 интерфейса RS-485. Для конфигурирования внешней сети Modbus выберите пункт Modbus[FIX] в редакторе PLC Configuration. Введите параметры сети в соответствии со значениями в таблице 2.
Для обмена данными между ПЛК CPM703 и панелью оператора используется протокол Modbus TCP/IP. Для конфигурирования внешней сети Modbus выберите пункт Modbus-TCP[FIX] в редакторе PLC Configuration. Введите параметры сети в соответствии со значениями в таблице 3.
Диапазоны адресов регистров для работы ПЛК FASTWEL I/O по внешней сети Modbus RTU или Modbus TCP/IP представлены в таблице 4.
Для передачи данных канала дискретного ввода по сети Modbus необходимо использовать делимый входной регистр Bitwise Input Register, который добавляется с помощью правого щелчка мыши в поле Modbus[FIX] для CPM702 или ModbusTCP[FIX] для CPM703. В окне настройки параметров Bitwise Input Register выберите адрес Modbus, например, 100. Используем для отображения данных регистр %QX3.0, определим его как OUT1 (рис. 6).
Рассчитаем адрес битового поля по формуле, приведённой в таблице 3:
DiscreteInputAddress = (RegisterAddress — 1) × 16 + n = (100 — 1) × 16 × 1 = 1585.
Для получения данных от панели оператора по сети Modbus необходимо использовать делимый выходной регистр Bitwise Holding Register. Конфигурация осуществляется аналогичным образом: в окне настроек параметров Bitwise Holding Register выберите адрес Modbus, например, 200. Используйте регистр %IX21.8 для записи значения сигнала, определив его как INP1. Рассчитаем адрес битового поля по формуле, приведённой в таблице 3:
CoilAddress = (RegisterAddress — 1) × 16 + n = (200 — 1) × 16 +1 = = 3185.
Для того чтобы во время исполнения программы в контроллере происходило обновление значений каналов, соответствующих регистрам в конфигурации Modbus, необходимо, чтобы ссылающиеся на них переменные хотя бы один раз были использованы в теле программы. Таким образом, программа будет иметь вид (рис. 7):
OUT1:=DI1;
DO1:=INP1;
Замечание. Переменные были обозначены ранее в редакторе конфигураций PLC Configuration, поэтому необходимость определения их в модуле POU отсутствует.
Кроме того, необходимо добавить задачу в конфигураторе задач (Task Configuration) с помощью щелчка правой клавишей мыши и выбора пункта Append Task. Назовите созданную задачу Main, выберите циклический тип (cyclic) и период T#10ms. Для вызова главной программы используйте пункт Append Program Call (Добавить вызов программы), доступный через щелчок правой клавишей мыши на задаче Main. В появившемся окне выберите программу PLC_PRG.
Для подключения контроллеров CPM702 и CPM703 к ПК используется порт консоли контроллера COM1 (RS-232C) и соединительный кабель ACS00019.
Для создания канала связи между средой разработки и контроллером вызовите диалоговое окно через пункт меню Online → Communication Parameters... Добавьте новый коммуникационный канал с помощью кнопки New. Введите имя канала в поле Name, например CPM702_P2P, и выберите в списке Device драйвер FASTWEL P2P driver (рис. 8). Новый канал связи добавится после нажатия кнопки ОК.
Выберите последовательный порт ПК, к которому будет подключаться контроллер (дважды щёлкните мышью на пункте Port и выберите нужный порт с помощью клавиш ↑ «стрелка вверх» или ↓ «стрелка вниз»). Для завершения работы нажмите кнопку OK.
Сохраните программу, после чего загрузите в контроллер с помощью пункта меню Online → Login.
Конфигурация панели оператора HMI5080T осуществляется с помощью программного пакета EZware-5000. Откройте среду разработки EasyBuilder (рис. 9).
Создайте новый проект с помощью пункта меню File → New. В появившемся диалоговом окне выберите тип панели HMI5080T/HMI5104T (640×480). После нажатия кнопки OK возникнет окно, позволяющее добавить новый коммуникационный драйвер с помощью кнопки NEW.
Для работы с ПЛК CPM702 выберите коммуникационный драйвер Modbus RTU Master в поле PLC type и порт RS-485 2W в поле PLC I/F. Параметры порта панели устанавливаются в соответствии с параметрами порта контроллера, поэтому используйте значения, указанные ранее в таблице 2.
В таблице 5 указаны рекомендуемые значения параметров для панели оператора.
Для работы с ПЛК CPM703 выберите коммуникационный драйвер Modbus TCP/IP Master в поле PLC type и порт Ethernet в поле PLC I/F. Параметры порта панели устанавливаются в соответствии с параметрами порта контроллера, поэтому используйте значения, указанные ранее в таблице 3.
В таблице 6 указаны рекомендуемые значения параметров для панели оператора.
Адресация входных и выходных регистров панелей оператора серии HMI5000 для драйверов Modbus RTU Master и Modbus TCP/IP Master представлена в таблице 7.
Добавьте заголовок на экран «Дискретный вход DI1» с помощью пункта меню Draw → Text или кнопки Text на панели инструментов. Для отображения сигнала дискретного ввода ПЛК установите элемент Bit Lamp с помощью пункта меню Objects → Lamp → Bit Lamp или кнопки на панели инструментов. В появившемся диалоговом окне в поле PLC name выберите Modbus RTU Master для работы с ПЛК СPM702 или Modbus TCP/IP Master для работы с ПЛК СPM703, а также установите в поле Device type значение 1х. Это позволит обращаться к дискретным входным регистрам памяти панели оператора (таблица 7). Введите в поле Address адрес делимого входного регистра ПЛК DiscreteInputAddress, рассчитанного ранее, — 1585 (рис. 10).
Перейдите на закладку Shape для выбора графического изображения индикатора. Поставьте признак в поле Use Shape и нажмите кнопку Shape Library. Выберите из списка подходящее изображение и нажмите OK.
Добавьте заголовок на экран «Дискретный выход DO1» с помощью кнопки Text . Для формирования выходного сигнала 1 или 0 используйте элемент Set Bit, добавляемый с помощью пункта меню Objects → Button → Set Bit или кнопки на панели инструментов. В появившемся диалоговом окне в поле PLC name выберите Modbus RTU Master для работы с ПЛК СPM702 или Modbus TCP/IP Master для работы с ПЛК СPM703. Установите в поле Device type значение 0х, что позволит обращаться к дискретным выходным регистрам памяти панели оператора (таблица 7). Внесите в поле Address адрес делимого выходного регистра ПЛК CoilAddress, рассчитанный ранее, то есть 3185. Для того чтобы элемент Set Bit выполнял функции кнопки, выберите параметр Toggle в поле Set Style. Необходимое изображение кнопки загружается из библиотеки Shape Library.
Установите элемент Bit Lamp с помощью кнопки и выберите параметр Device type, равный 0х, и Address 3185. Данный индикатор будет графически отображать сигнал, подаваемый на дискретный выход ПЛК DO1.
Сохраните проект и произведите компиляцию с помощью пункта меню Tools → Compile… Протестировать проект в режиме off-line можно с помощью пункта меню Tools → Off-Line Simulation.
Подключите панель оператора к порту Ethernet компьютера, используя кросс-кабель. С помощью пункта меню Tools → Download откройте диалоговое окно. Введите IP-адрес панели в поле HMI IP (в рассматриваемом примере 192.168.0.201) и пароль 111111 в поле Password. Загрузите проект в панель с помощью кнопки Download.
Используя соединительный кабель (CPM702) или Ethernet кросс-кабель (CPM703), подключите ПЛК к панели оператора. При корректной работе светодиодный индикатор COMM ПЛК загорится зелёным цветом, а индикатор COM панели оператора замигает красным.
Рассмотренные в статье рекомендации иллюстрируют удобство и простоту построения системы ЧМИ на базе панелей оператора Maple Systems. Использование готовых конфигурируемых блоков не только сокращает время разработки проекта, но и исключает вероятность возникновения нестыковок и ошибок в системе. Для нестандартных проектов существует возможность использования макросов, которые пишутся на языке программирования, подобном С++. Отладка проектов может осуществляться как на реальной панели, так и в режиме её эмуляции на ПК пользователя.
Кроме того, благодаря поддержке основных сетевых протоколов и большому набору коммуникационных драйверов устройства могут работать с широким спектром контроллеров различных производителей. В совокупности с невысокой ценой это делает панели Maple Systems прекрасным решением для систем человеко-машинного интерфейса разного уровня сложности. ●
Автор — сотрудник фирмы ПРОСОФТ
Телефон: (495) 234-0636
E-mail: info@prosoft.ru
Контроллер, программируемый с помощью условий
Возможно ли создать алгоритм для задач автоматизации технологического процесса, не используя язык программирования? Предлагается описание системы создания алгоритма работы ПЛК для устройств малой автоматизации без использования специальных языков программирования. 01.09.2024 СТА №3/2024 274 0 0Как биометрия и искусственный интеллект помогают быстро и безопасно обслужить пассажиров в аэропортах
В условиях современных аэропортов идентификация пассажиров является одной из самых важных функций быстрого и безопасного обслуживания. Передовая биометрия помогает в этом, надёжно контролируя все этапы и существенно повышая пропускную способность транспортных узлов. 28.07.2024 СТА №3/2024 456 0 0Граничные вычисления: революция в обработке данных
В последние годы мы наблюдаем стремительный рост объёмов данных, генерируемых устройствами Интернета вещей (IoT) и различными приложениями. Традиционные облачные вычисления, при которых данные передаются в централизованные дата-центры для обработки, становятся менее эффективными в таких условиях. Именно здесь на сцену выходят граничные вычисления (Edge Computing) – новая парадигма, призванная решить эти проблемы. 28.07.2024 СТА №3/2024 512 0 0Специальные решения по бесперебойному питанию от POWERCOM
В настоящее время в связи с тотальной цифровизацией актуальность обеспечения надёжным, бесперебойным питанием постоянно возрастает. В этой статье мы расскажем об одном из интересных решений по обеспечению бесперебойного питания от компании POWERCOM. 28.07.2024 СТА №3/2024 395 0 0