Modbus — открытый коммуникационный протокол, основанный на архитектуре ведущий — ведомый (англ. master-slave; в стандарте Modbus используются термины client-server). Широко применяется в промышленности для организации связи между электронными устройствами. Может использоваться для передачи данных через последовательные линии связи RS-485, RS-422, RS-232 и сети TCP/IP (Modbus TCP).
Для того чтобы организовать обмен с ведомым устройством, посредством протокола Modbus, в ПЛК Allenbradley предусмотрена стандартная функция, которую можно добавить, скачав с официального сайта. В скаченном архиве есть английская инструкция по работе с функцией, и файл с расширением L5X, через который импортируется логика функции. Архив с сайта добавил себе в облако.
Последовательность шагов для импорта функции Modbus TCP (все шаги делаются в онлайн режиме):
1. Создаем новую программу, в любом из готовых Тасков (Task), где в программе нужно создать новую рутину (Routine) и в свойствах программы назначить вызов этой рутины
2. Открываем новую рутину, жмем правой кнопкой по нетворку (Rung) и выбираем Import Rung. В открывшемся диалоге выбираем файл raC_Opr_NetModbusTCPClient_Rung.L5X – выбираем клиент так как для устройства TCP ПЛК это будет клиент.
3. После выбора файла появится диалог конфигурации импорта, где можно поменять имя добавляемого устройства, в нашем случае это ПЧ VFD310. После этого в проект добавится множество функциональных блоков, функция обмена с Modbus устройством, а также структура с настройками обмена и несколькими массивами на 1000 элементов с данными обмена.
Заполнение структуры опроса:
В структуре опроса настраивается IP адрес устройства: 192.168.1.123 Тип запроса (TransType): 3 – чтение регистров (обратная связь), 6 – запись регистров (команда). ID станции: 1 – это адрес модбас устройства. Адрес начала регистра: 7100 – по документации к ПЧ группа параметров U1 – переменные мониторинга, запрашивается сразу подряд 47 параметров, следующая строка в структуре (Count). F007 – по документации к ПЧ Цифровое задание частоты. Локальный адрес: это адрес в структуре массивов для получения данных. В нашем случае данные пишутся в Data Holding registers 4xxx, c 10 элемента массива пишутся параметры мониторинга подряд, с 0 читается задание скорости (частоты), которое отправляется в ПЧ. Для начала обмена нужно взвести бит (Inp_Enable):
Комментариев нет:
Отправить комментарий