4
| MODBUS RTU PROTOCOL | GEOKON
Use device address 0 to “broadcast” the trigger command to all drops
simultaneously. Measurements between successive address are staggered by
50 milliseconds to prevent excess current draw from simultaneous activation.
The Read Holding Registers function can be used to read one or more 16-bit
registers (two bytes each), starting at the Data Address that was sent in the
command packet. Temperatures can be retrieved in two alternate formats; one
as a raw 16-bit ADC value, the other as a 32-bit floating point (decimal) number
that is the computed resistance of the on-board thermistor. For ease of use and
program simplicity, the 32-bit floating-point reading is recommended. An
example of this query and response is shown in the tables below.
TABLE 4:
Example Query - Floating Point Resistance Reading
TABLE 5:
Example Response - Floating Point Resistance Reading
FIGURE 5:
PC Terminal Program Screen Capture
The table above shows the IEEE-754 floating-point response as two parts—each
one is composed of two bytes. Because of how this information is stored in
memory, the two parts are received in reverse order; the complete floating-point
number in HEX is 0x4628C87C (10,802.12 Ohms).
Device Address
Function Code
Data Address
Number of Registers
CRC
HEX
16
02
03
0102
0002
6404
DEC
10
2
3
258
2
25,604
Device Address
Function Code
Byte Count
Lower 16-bits
Upper 16-bits
CRC
HEX
16
02
03
04
C87C
4628
04F5
DEC
10
2
3
4
floating point result
1,269