
EES-401 Series Ultrasonic Energy Meter
Revision: 3.0.1
Page 76 of 90
Pay attention to the data storage order of the above example. Using C language to explain the data, pointers can be
used directly to input the required data in the corresponding variable address, the low byte will be put at the
beginning, such as the above example 1.2345678 m/s, 3F 9E 06 51 data stored in order as 06 51 3F 9E .
Example 2. In RTU mode, read the positive accumulation (m3) of the meter with address 1 (0x01) in m3, that is,
read the data of the three registers of register address 0008, 0009, 000A, the read command is as follows:
0x01
0x03
0x00 0x08
0x00 0x03
0x84 0x09
Meter Address Function Code Register First Address Number of Register CRC Check Code
The data returned by the meter is (assuming the current positive cumulative amount = 2.46m3):
0x01
0x03
0x06 0x00 0xF6 0x00 0x00 0xFF 0xFE
0x29 0x10
Meter Address Function Code Number of Data Bytes Data(246*10-2)
CRC Check Code
Among them, the four bytes of 00 00 00 F6 are 246 hexadecimal, that is, directly convert the hexadecimal data
into decimal.
The two bytes of FF FE are 10 to the power of -2. As shown in the table below:
MODBUS Data
Corresponding Index Unit
FFFD
x0.001(1E-3)
10
-3
FFFE
x0.01
10
-2
FFFF
x0.1
10
-1
0000
x1
10
0
0001
x10
10
1
0002
x100
10
2
0003
x1000
10
3
0004
x10000(1E+4)
10
4
Include positive, negative, net accumulation and energy accumulation
13.3.2.3
Error Check
①
0x03 When reading data, if there is an error, the following response will be returned
Slave address
Error code
Error type
Check code
0x01 - 0xF7
0x83
1(Register address error)
CRC-16/MODBUS
0x01 - 0xF7
0x83
2(Register length error)
CRC-16/MODBUS
0x01 - 0xF7
0x83
3(Check code error)
CRC-16/MODBUS
1 byte
1 byte
1 byte
2 byte
②
0x06 When reading data, if there is an error, the following response will be returned
Slave address
Error code
Error type
Check code
0x01 - 0xF7
0x86
1(Register address error)
CRC-16/MODBUS