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.

../_images/2c47498be38bafe30a33139000eba54e

ETHERCAT telegram routing

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.

../_images/c972c730e38bb09f0a33139000eba54e

Telegram structure

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.