EtherCAT State Machine

EtherCAT State Machine

The state of the EtherCAT slave is controlled via the EtherCAT State Machine (ESM). Depending upon the state, different functions are accessible or executable in the EtherCAT slave. Specific commands must be sent by the EtherCAT master to the device in each state, particularly during the bootup of the slave.

A distinction is made between the following states:

The regular state of each EtherCAT slave after bootup is the OP state.

EtherCAT State Machine 1:

Init
After switch-on the EtherCAT slave in the Init state. No mailbox or process data communication is possible. The EtherCAT master initializes sync manager channels 0 and 1 for mailbox communication.

Pre-Operational (Pre-Op)
During the transition from Init to Pre-Op, the EtherCAT slave checks whether the mailbox has been correctly initialized. Mailbox communication is possible in the Pre-Op state, but no process data communication. The EtherCAT master initializes the sync manager channels for process data (from sync manager channel 2), the FMMU channels and, if the slave supports configurable mapping, PDO mapping or the sync manager PDO assignment. In this state the settings for the process data transfer and perhaps terminal-specific parameters that may differ from the default settings are also transferred.

Safe-Operational (Safe-Op)
During transition between Pre-Op and Safe-Op the EtherCAT slave checks whether the sync manager channels for process data communication and, if required, the distributed clocks settings are correct. Before it acknowledges the change of state, the EtherCAT slave copies current input data into the associated DP-RAM areas of the EtherCAT slave controller (ECSC).

Mailbox and process data communication are possible in the Safe-OP state; however, the slave maintains its outputs in the safe state and does not output them. The input data, however, are already cyclically updated.

Operational (Op)
Before the EtherCAT master switches the EtherCAT Slave from Safe-Op to Op, it must transmit already valid output data. In the Op state the slave copies the output data of the master to its outputs. Process data and mailbox communication is possible.

Boot
In the Boot state the slave firmware can be updated. The Boot state can only be reached via the Init state. In the Boot state mailbox communication is possible via the File-Access over EtherCAT (FoE) protocol, but no other mailbox communication and no process data communication is possible.