52
• Note that various manufacturers will document their Modbus slave
products in different ways. In particular, according to the Modbus
specification, registers have two different indices at which they can be
referenced: their “known as” value (which starts at number 1) and their
“addressed as” value (which is always 1 less than the “known as” value).
The “known as” value is typically the number that is presented for human
entry or consumption, while the “addressed as” value is the number that
appears “on the wire” when the Modbus packet is sent from master to
slave. This gateway follows this generally-accepted industry paradigm,
where a point’s configured Modbus master “register” value is decremented
by 1 before it is placed “on the wire”. Some vendors, however, will
document their slave device’s “addressed as” values in their literature,
which means that these register indices must have 1 added to them when
entered into the gateway’s “Modbus master register” field.
For example, the Toshiba VF-AS1/G9 drive’s Modbus RTU slave protocol
implementation & corresponding user’s manual references all internal ASD
parameters using “addressed as” values. This means that (in addition to
the required conversion from Toshiba’s native hexadecimal radix to the
Modbus protocol’s natural decimal radix) these parameter values must
have 1 added to them when they are to be accessed via an ICC gateway
executing the Modbus RTU master protocol.
e.g.
VF-AS1/G9 “command 1” parameter is documented to be FA00 in the
Toshiba literature. Converting this to decimal, we arrive at a value of
64000. To allow a point in the gateway’s database to correctly access the
“command 1” parameter via Modbus RTU, therefore, that point’s Modbus
master “register” attribute must be set to 64001 (which will result in an
address value of 64000 (0xFA00) “on the wire”).