Addressing and messaging
Modbus memory addressing is ordered around
16-bit registers that contain 16 coils or on/off states or integer values
in 16-bit registers (input/output or holding registers) also some devices use their own Modbus addressing, typical Modbus addressing can be seen in the above image.
Modbus messaging is based on Application Data Unit (ADU) and a Protocol Data Unit (PDU). The Modbus message includes the
slave/server address for the slave/server involved, a function code, data start
addresses, and the data being sent to (written) or to be send back (read) to
the master/client, with an error checksum at the end (CRC/LRC/Checksum).
The size of the serial Modbus PDU is limited by the size
constraint that was inherited from the first Modbus serial network
implementation of 256 bytes. Modbus slave addresses are limited to 1-255.
Addresses 1-247 are available to the user and addresses 248-255 are reserved.
The Modbus TCP data transactions are essentially the same except the server
address is an IP address, there is some Ethernet overhead, and the error
checksum is different. Modbus data can include starting data addresses, data
quantity or count, and actual data that is read or is to be written. If the
Modbus slave/server has a problem with the master/client request, the
slave/server will issue an error response back to the master/client.

Comments
Post a Comment