Описание заголовка mbap, Обработка ошибок и ответные сообщения – Инструкция по эксплуатации Basler Electric DECS-250N
Страница 236
218
9440573990 Bep C1
Коммуникация Modbus™
DECS-250N
•
Все запросы и ответы Modbus построены в таком виде, что получатель может проверить,
что сообщение завершено. Для функциональных кодов, где Modbus PDU имеет
фиксированную длину, достаточно одного функционального кода. Для функциональных
кодов несущих переменное число данных запроса или ответа, поля данных включают в
себя число передаваемых байт.
•
Когда Modbus работает через TCP, в заголовке сообщения MBAP размещается
дополнительная информация по длине сообщения, что позволяет получателю
распознавать границы сообщений, даже если сообщение разбивается на несколько
пакетов при передаче. Существоване явных и неявных правил длины и использование
проверки кода ошибки CRC-32 (в Ethernet) позволяет избежать потери данных при
передаче сообщения.
Описание заголовка MBAP
Заголовок MBAP содержит поля, перечисленные в таблице 18.
Таблица 21. Поля заголовка MBAP
Поля
Длина
Описание
Клиент
Сервер
Идентификатор
транзакции
2
байта
Идентификатор
транзакции
запроса/ответа
Modbus.
Инициализируется
клиентом.
Копируется
сервером из
полученного
запроса.
Идентификатор
протокола
2
байта
0 = протокол
Modbus.
Инициализируется
клиентом.
Копируется
сервером из
полученного
запроса.
Длина
2
байта
Число следующих
байт.
Инициализируется
клиентом (запрос).
Инициализируется
сервером (ответ).
Идентификатор
устройства
1 байт Идентификатор
удаленного
ведомого
устройства
подключенного к
последовательной
линии или другим
шинам.
Инициализируется
клиентом.
Копируется
сервером из
полученного
запроса.
Заголовок 7 байт в длину:
•
Идентификатор транзакции — используется для спаривания транзакции, сервер Modbus
копирует в ответ идентификатор транзакции запроса.
•
Идентификатор протокола — используется для мультиплексировния. Протокол Modbus
идентифицируется значением 0.
•
Длина – число байт следующих полей, включает идентификатор устройства и поля данных.
•
Идентификатор устройства — используется для маршрутизации. Обычно используется
для связи через Modbus или со шлюзом ведомого устройства через последовательную
линию Modbus и Ethernet TCP/IP. Это поле выставляется клиентом Modbus в запросе и
должно возвращаться с тем же значением в ответе сервера.
Примечание. Все данные Modbus/TCP ADU посылаются через TCP на порт 502.
Обработка ошибок и ответные сообщения
Любой запрос, который содержит адрес несуществующего устройства, ошибку структуры
сообщения или ошибку проверки на ошибки будет проигнорирован. Отклик передан не будет.
Запросы, адресованные DECS-250N с неподдерживаемым кодом функции, неподдерживаемыми