7.3.2 Задачи связи Modbus
Modbus – открытый коммуникационный протокол связи, широко применяемый в системах промышленной автоматизации и управления для организации клиент-серверного взаимодействия между промышленными устройствами. Протокол основан на архитектуре ведущий (Master) – ведомый (Slave), где Master-устройство может направлять запросы на получение данных, а Slave-устройства в ответ на запрос предоставляют требуемые данные или выполняют указанные в запросе действия. Направление широковещательного запроса исполнительной системой Unimod PRO 2 не предусмотрено.
Установленная в контроллере TREI исполнительная система Unimod PRO 2 позволяет использовать два популярных варианта протокола: Modbus RTU и Modbus TCP. Modbus RTU используется для последовательной связи через интерфейсы RS-485, RS-422 или RS-232, а Modbus TCP использует сети Ethernet и стек протоколов TCP/IP для клиент-серверного взаимодействия.
Для организации обмена по протоколу Modbus должны быть запущены соответствующие задачи связи. Их создание и настройка осуществляется двумя способами: в разделах дерева конфигурации или в одном из программных компонентов с использованием функциональных блоков.
Правила организации связи по протоколу Modbus:
-
задачи связи разделены по типу используемого протокола (RTU или TCP) и режиму работы устройства в процессе обмена (Master или Slave);
-
для каждой комбинации используемого протокола и режима работы созданы соответствующие разделы в дереве конфигурации и функциональные блоки в системной библиотеке;
-
поддерживается одновременное создание задач связи в дереве конфигурации и программно с использованием блоков;
-
одна задача связи используется только для приема или передачи данных;
-
номер задачи должен быть уникальным среди всех задач связи Modbus;
-
для разных задач связи в рамках всего приложения номера портов не должны пересекаться;
-
на взаимодействующих устройствах должны быть созданы задачи связи с одинаковым типом протокола, но противоположными ролями;
-
в режиме Master контроллер направляет запросы на Slave-устройства и получает ответы. В режиме Slave контроллер только отвечает на запросы;
-
для идентификации переменных по протоколу Modbus используются Modbus-адреса, которые указываются в атрибуте переменных;
-
суммарный объем передаваемых/принимаемых данных в рамках одной задачи не должен превышать 65 Кбайт.
