Transfer Mechanism EtherCAT®¶
Seen from Ethernet view, a EtherCAT® bus is a single Ethernet participant. This participant receives and sends Ethernet telegrams. Inside this Ethernet participant there are many EtherCAT® slaves, which process data on the fly.
The telegrams are only delayed for a few micro seconds by each slave. Each telegram is processed by all the slaves until it arrives at the last slaves in the line. The processed telegram is sent back from the last slave to the first slave (see figure), which relays it back to the master.
Telegram Processing
The telegrams are processed on the fly. During forwarding the telegram to the next device, the slaves interpret the EtherCAT® commands and read its input data. Output data for the master or for another slave is also inserted in the telegram.
The processing of telegrams is carried out by the hardware. Thus, the processing speed of an eventually connected micro processor does not influence the processing.
Several EtherCAT® Process Data Units (PDU) can be embedded in one EtherCAT® telegram. Each of them can address one or more slaves.
An EtherCAT® PDU consists of
- Header
- Data Area
- “Working Counter”.
The Working Counter is incremented by each slave which is addressed by this PDU and which has successfully carried out the command embedded in the header of the PDU. The Master-Communication-Module compares the received Working Counter with the expected value (No. of slaves).
There are two types of EtherCAT® telegrams: with and without UDP/IP. Telegrams without UDP/IP can only be used in an Ethernet subnet. Telegrams with UDP/IP allow IP routing and perform communication over router.
AC500 EtherCAT® does not support UDP/IP at present.
Telegram Structure
The individual parts of the frame have the following meaning:
Pre (Preamble) | For synchronization with the signal frequency |
DA (Destination Address) | MAC address of the receiver |
SA (Source Address) | MAC address of the sender |
EtherType | Identifier of the following data (EtherCAT® telegram uses 0x88A4) |
IP HDR | Optional IP header |
UDP HDR | Optional UDP header |
Frame HDR | Contains protocol type and frame length |
Type 12 PDU | EtherCAT® Process Data Unit |
Type 12 Header | contains among others: - CMD: command - IDX: index - Address - Length of the data |
Data | Process data |
WKC | Working Counter |
FCS | Frame Checksum |
Reduction of Overhead
The overhead is reduced through two mechanisms:
- All slaves in an EtherCAT® subnet can be addressed with a single telegram
- A telegram can consist of several EtherCAT® Process Data Units which contain different commands and data. Each command can perform read/write operations on several slaves.