The WM80 interface supports Modbus RTU.
Data encoding
In the data registers, the numeric values are available in one or two formats with separate register addresses: 32-bit IEEE floating point format and/or 16-bit signed integer format.
32-bit floating point or 32-bit integer format
Registers using 32-bit float data format are encoded using the binary32 encoding defined in IEEE 754. The format is also known as single-precision floating point format.
The least significant 16 bits of a floating point number are placed at the Modbus register listed in the table, while the most significant 16 bits are placed in the register with number/address + 1, as specified in Open Modbus TCP Specification, Release 1.0. This is also known as little-endian or Modicon word order.
Despite the specification, some Modbus clients may expect a big-endian word order (most significant word first). In such case, you must select "word-swapped" floating point format in your Modbus client for the Modbus registers of the device.
A complete 32-bit floating point or 32-bit integer value should be read and written in a single Modbus transaction.
CAUTION Reading the measurement data registers with incorrect floating point format setting may occasionally result in correct-looking, but nevertheless incorrect values. |
Verify that you have configured the floating point format correctly on your Modbus host system by reading a floating point value from a test value register. |