Chapter 4
Configuration
MAN_105G_1.5
Page
52
•
If the Modbus Master sends the 105G a “write” command for Modbus output 02650, then
the 105G will write the value to I/O register 2650.
•
If the Modbus Master sends the 105G a “read” command for Modbus input 30142, then
the 105G will respond with the value in I/O register 142.
•
If the Modbus Master sends the 105G a “write” command for Modbus output 40105, then
the 105G will write the value to I/O register 105.
The 105G will respond to the following Modbus commands from a Modbus master:
CODE
ACTION
01
Read the state of multiple digital output points
02
Read the state of multiple digital input points
03
Read the value of multiple output registers
04
Read the value of multiple input registers
05
Set a single digital output ON or OFF
06
Set the value of a single output register
07
Read Exception Status - compatibility - returns zero
08
Loopback test
Supported codes 0 return query data
10 clear diagnostic counters
11 bus message count
12 CRC error count
14 slave message count
15
Set multiple digital output points ON or OFF
16
Set multiple output registers
The 105G I/O register values are 16 bit (hexadecimal values ‘0000’ to ‘FFFF’, or decimal 0 to
65535), regardless of whether the register represents a discrete, analogue or count point.
The value of a discrete (digital) I/O point is stored in the 105G database as a hexadecimal '0000'
(“off”) or hex 'FFFF' (“on”). However the 105G will respond with either a ‘0’ (“off”) or ‘1’
(“on”) to a digital read command from the Modbus master - these are commands 01 and 02.
Similarly, the 105G will accept ‘0’ or ‘1’ from the Modbus master in a digital write command
and store ‘0000’ or ‘FFFF’ in the database location - these commands are 05 and 15.
Analogue I/O are 16 bit register values. A value of decimal 8192 (hex 2000) represents 0mA. A
value of 49152 (hex C000) represents 20mA. Each 1 mA has a value of 2048 (hex 0800) - a
change of 4096 (hex 1000) is equivalent to a change of 2mA. A 4-20mA signal will vary
between 16384 (hex 4000) and 49152 (hex C000). A 0-20mA signal will vary between 8192
(hex 2000) and 49152 (hex C000).
Pulse counts are stored as a 16-bit register. When the register rolls over, from ‘FFFF’ (hex),
the next value will be ‘0001’. The register will only have a value of ‘0000’ when the remote
module starts up, and the previous count is lost. This value will indicate that the counter has
reset.