User's Guide _______________________________________________________________________
104 __________________________________________________________________ M211399EN-F
Register Map
All data available via the Modbus interface is grouped in five contiguous
blocks of registers as described in Table 40 below.
Table 40
HMW90 Modbus Register Blocks
Metric
address
Non-metric
address
Data Format
Description
0001…0006
6401…6406
32-bit IEEE float
Measurement data
(read-only)
0257…0259
6657…6659
16-bit signed integer
0513…0513
6913…6913
Bit field
Status registers
(read-only)
0769…0782
7169…7182
32-bit IEEE float
Configuration
settings
1025…1031
7425…7431
16-bit signed integer
As can be seen from the table above, the address space has been split to
two blocks: metric block at 1..1031, non-metric block from 6401…7431.
The addresses are 1-based decimal Modbus data model addresses without
the first digit (for example, 1xxxx, 6xxxx, or 7xxxx). Subtract 1 to get
address field values used in Modbus Protocol Data Unit (PDU).
The register map is the same for all Modbus function codes. For
example, function codes 03 and 04 return exactly same result.
Data Encoding
All numeric values are available both in 32-bit IEEE floating point and
16-bit signed integer formats.
32-Bit Floating Point Format
Floating point values are represented in standard IEEE 32-bit floating
point format. Least-significant 16 bits of floating point numbers are
placed at the smaller Modbus address as specified in Open Modbus TCP
Specification, Release 1.0. This is also known as “little-endian” or
“Modicon” word order.
NOTE
Despite the specification, some Modbus masters may expect
“big-endian” word order (most-significant word first). In such case, you
must select “word-swapped” floating point format in your Modbus
master for HMW90 Modbus registers.
A “quiet NaN” value is returned for unavailable values. Writing any NaN
or infinite value is silently ignored. A Quiet NaN is, for example,
0x7FC00000; however, the master should understand any NaN value.