Skip to content

Latest commit

 

History

History
24 lines (15 loc) · 1.07 KB

README.md

File metadata and controls

24 lines (15 loc) · 1.07 KB

ModbusTCP

Library for Arduino for work on UART by the ModbusTCP protocol.

Кадр данных в ModbusTCP отличается от ModbusRtu. Пакет протокола, так называемый PDU (Protocol Data Unit) у обоих протоколов одинаковый:

PDU = [Function (1 byte)] | [Data (2..252 bytes)]

Для ModbusRtu кадр данных:

[ID (1 byte)] | [PDU (3..253 bytes)] | [CRC16 (2 bytes)]

Для ModbusTCP кадр данных:

[MBAP (7 bytes)] | [PDU (3..253 bytes)]

MBAP Header (Modbus Application Header):

[IDTRAN (2 bytes)] | [IDPROT (2 bytes)] | [LENGTH (2 bytes)] | [UID (1 byte)]

  • IDTRAN - уникальный ID Transaction (не изменяется при ответе)
  • IDPROT - ID протокола (всегда 0 - для дальнейшего использования)
  • LENGTH - Длина следующих данных: PDU + 1 (UID) (изменяется в зависимости от PDU)
  • UID - адрес ведомого устройства, = ID в ModbusRtu