Each controller can process up to 10 communication requests at a single time.
17.2.3 Controller identifier
The Modbus TCP protocol will always use the controller IPv4 address to identify the controller that the master wants to communicate
with. However, some Modbus communication tools will still require/automatically add a Modbus Slave ID, also known as a unit
identifier, for the unit that the server is communicating with. For these cases the controller accepts Modbus Slave IDs from 1 to 247.
This is the case for all ML 300 controllers in the network that communicate using the Modbus TCP protocol.
If two Modbus servers are enabled at the same time that use the same communication port, then a unique Modbus Slave ID must
be configured for each server.
Specific controller identifiers can be selected for the controller when you configure a custom server.
17.2.4 Data handling
CAUTION
Check the Modbus protocol address information using PICUS to ensure that you are referencing the correct Modbus
address for the function that you are executing.
INFO
Always document and store changes that you make to the way that the controller interprets Modbus data.
Data format (endian)
To ensure that the correct data is retrieved from the controller, the request from the Modbus master must match the data format of
the selected address. The data format is configured in the Modbus server, and are applied to the
Holding register
and the
Input
register
.
Sign
In general, the integer data (16-bit and 32-bit) that is accessed from the controller through Modbus TCP are signed integer values.
Conversion
Data in the
Holding register
and
Input register
of the Modbus table is converted according to the conversion template selected for
that address. When data is read using Modbus, then the
Formula
is used to convert the Modbus data. When data is written using
Modbus, then the
Reverse formula
is used to convert the data into a form that can be stored in the Modbus protocol.
Conversions can also be used to force unit conversions on specific addresses.
INFO
Reverse formulas
are NOT automatically determined.
Modbus data conversion example
The parameter nominal power factor is assigned to an unused address in a custom Modbus protocol. The controller can
process inputs to the forth decimal value (for example, 0.8002) for the nominal power factor. To read and write values
correctly using Modbus a conversion template
X * 10000
is assigned to the address. The
Formula
equal to
x*10000
and a
Reverse formula
equal to
x*0.0001
.
This means that when a value of 0.8002 is read from the controller, the displayed value is:
Result =
Formula
=> Result = x * 10000 => Result = 0.8002 * 10000 => Result = 8002
To write a value of 0.85 to the controller using Modbus, the value that should be written to the controller is:
Result =
Reverse formula
=> Result = x * 0.0001 => 0.85 = x * 0.0001 => x = 8500
DESIGNER'S HANDBOOK 4189340911K UK
Page 479 of 521