1) Introduction
In addition to communicating with APR03 protocol, ATOS’s controllers can also establish communication with Modbus protocol (which can be set at ATOS’s programming tool) on RTU mode via RS-485 network.
However, to be able to connect with ATOS’s controllers via Elipse’s Modbus Master driver, some specific settings are required. These settings are described in this article.
2) Frames’s size limits for Modbus protocol
Modbus protocol sets a simple data unit called PDU (Protocol Data Unit), which remains unchanged in the protocol’s several modes and communication layers.
The full communication frame, including PDU and other additional header fields, is called ADU (Application Data Unit).
A complete Modbus frame (ADU) can have a PDU that is no larger than 253 bytes.
3) ATOS’s Modbus Protocol
ATOS’s controllers implement a default Modbus protocol, with little variation.
In newer controllers, using A1 configuration protocol, the only difference from the default Modbus protocol is regarding their sizes.
Older controllers, using WinSUP, also have another difference: registers are addressed byte by byte, and superblocks (EnableReadGrouping) cannot be used.
All limits accepted by ATOS’s PLCs, as well as a detailed view of the protocol, are found at PR3 – 01/2001 technical newsletter, which can be downloaded from ATOS’s website. A thorough read of this document is highly recommended.
4) Byte order
Modbus protocol sets how bytes sent to the PDU’s data area must be sorted out, where each Word’s most significant byte must appear first in each register.
ATOS’s older controllers, which use WinSUP software, sort their bytes according to the protocol’s specifications. 32-bit types, however, are not defined by the protocol, and use the reverse sorting order for its Words; this order demands the driver’s Swap Word option to be enabled.
More recent controllers, using A1 software, allow you to configure their byte order. To use the protocol’s default, choose Motorola option on the PLC’s settings.
5) Final remarks
The table below summarizes the settings discussed in this article:
Contoller type | Recommended settings |
PLC with Blackfin processor (using A1 programming tool) |
|
Controller using other processors (with WinSUP software) |
|
If you need to group the tags into blocks manually, thus turning off superblocks option, use the table below to determine the maximum amount of elements per block, depending on the Modbus function being used.
Modbus’s read function | Datatype size | Maximum number of elements |
3 or 4 | 16 bits | 30 |
3 or 4 | 32 bits | 15 |
1,2 | 1 bit | 64 |
The table above presents only Modbus’s read functions, since write functions are usually performed in individual elements, and not in block. Modbus’s write functions have a smaller register limit.
If you occasionally need to write whole blocks, the limits are the following:
Modbus’s write functions | Datatype size | Maximum number of elements |
16 | 16 bits | 27 |
16 | 32 bits | 13 |
15 | 1 bit | 64 |