Описание заголовка mbap – Инструкция по эксплуатации Basler Electric BE1-11 Modbus Protocol

Страница 10

Advertising
background image

4

9424273774, ред. B

Рис. 2. Запрос/ответ Modbus через TCP/IP

Для обозначения блока ADU Modbus через TCP/IP используется специальный заголовок, который

называется заголовком MBAP (заголовок прикладного протокола Modbus).
Он отличается от блока ADU протокола Modbus RTU, используемого на последовательной линии.

Поле адреса ведомого устройства в Modbus, которое обычно использовалось

на последовательных линиях связи Modbus, заменяется на однобайтовый идентификатор

блока внутри заголовка MBAP. Идентификатор блока используется для передачи данных

через такие устройства, как мосты, маршрутизаторы и шлюзы, использующие один
IP-

адрес для поддержания нескольких независимых конечных блоков Modbus.

Все запросы и ответы Modbus построены таким образом, чтобы получателю сообщения

сразу было понятно, что сообщение закончено. Для кодов функций, в которых блок PDU
Mod

bus имеет фиксированную длину, достаточно только кода функции. Для кодов

функций, содержащих варьирующийся объем данных в запросе или ответе, поле данных

содержит количество байтов.

При использовании Modbus TCP в заголовке MBAP передается дополнительная

информация о длине, что позволяет получателю распознавать границы сообщения, даже

если для передачи оно было разбито на несколько пакетов. Наличие правил явной

и неявной длины, а также использование кода обнаружения ошибок CRC-32 (в сети

Ethernet) обеспечивают бесконечно малую вероятность появления нераспознанной ошибки

в сообщении запроса или ответа.

Описание заголовка MBAP

Заголовок MBAP содержит поля, перечисленные в таблице 2.

Таблица 2. Поля заголовка MBAP

Поле

Длина

Описание

Клиент

Сервер

Идентификатор

транзакции

2 байта

Идентификатор транзакции

запроса/ответа Modbus.

Запускается

клиентом.

Повторно

копируется

сервером из

полученного

запроса.

Идентификатор

протокола

2 байта

0 = протокол Modbus.

Запускается

клиентом.

Повторно

копируется

сервером из

полученного

запроса.

Длина

2 байта

Разрешенное количество

байт.

Запускается

клиентом

(запрос).

Запускается

сервером (ответ).

Идентификатор

блока

1 байт

Идентификатор удаленного

ведомого устройства,

подключенного по

последовательной линии

или по другим каналам.

Запускается

клиентом.

Повторно

копируется

сервером из

полученного

запроса.

Блок PDU

Блок ADU Modbus TCP/IP

Код функции

Данные

Заголовок MBAP

Общая информация

BE1-11

Advertising