Data
type
Length
Data type
number
Data range
double 64 bits 8
-1.7976931348623158e+308 to -2.2250738585072014e-308
+2.2250738585072014e-308 to +1.7976931348623158e+308
ascii-text
8 bits /
char
9
Examples:
Example
Data
type
Function
type
Start
address
Variable
type
Response
Address
Offset
Response
Quantity
Reading the first Holding Register, number
40001, has the start address 0.
int
Read
Holding
Registers
0
unsigned
short or
short
0 1
VariableType: 4 or 3 (unsigned short or
short)Reading the second Input Register,
number 30002, has the start address 1.
int
Read
Input
Registers
1
unsigned
short or
short
0 1
Reading a float (32 bits) from Input Register
30108 / 30109, has the start address 107.
double
Read
Input
Registers
107
float
(reads
two
registers)
0 1
Reading a string. This example describes to
read four letters from register 40006 and
40007. Each register contains two characters.
string
Read
Holding
Registers
5
unsigned
short
0
2
(registers)
Reading a Boolean from the Holding Register
40011, has the start address 10. If the hole
Holding Register has the value 0 then it is
displayed as 0. If one bit(or more) has the
value 1 then it will be displayed as 1.
Boolean
Read
Holding
Registers
10
unsigned
short or
short
0 1
Using Modbus register addresses directly
Usually, it is necessary to enter Modbus registered address decremented by 1 as "start address",
but it may lead to confusion when comparing the data point's "start address" with the registered
address from Modbus device's manual. Therefore, enter a negative value in the "response
address offset" field to directly use the registered address from the Modbus device's manual as
"start address". In case a negative value has been entered as "response address offset", this value
will internally be subtracted from the given "start address" number to read the data from
Modbus device. Positive "response address offset" values will be handled to address specific data