Preliminary concepts
EtherCAT is an high performance fieldbus industrial standard that allows the connection of several I/O devices, EtherCAT slaves, to one EtherCAT master device, usually an industrial PLC controller or a CNC device, using standard Ethernet connections.The EtherCAT slaves are described by ESI files (EtherCAT Slave Information), that are XML files that describe all the slave features and how can communicate with a master; ESI file format is standardized by the ETG.2000 specification, from ”EtherCAT Technology Group” consortium. ESI files can contain one or more slave devices and versions, and they are usually distributed by the slave device manufacturer directly.The output of the whole EtherCAT configuration is an XML file that will be parsed and managed by the EtherCAT master, that is called ENI file (EtherCAT Network Infor- mation). ENI file format is standardized by the ETG.2100 specification.Data is exchanged between master and slaves through EtherCAT frames, that are special Ethernet frames that are routed on the network, from one slave to the next and back to the master; an EtherCAT frame can contain one or more EtherCAT commands:
- cyclic frames: they are sent on a cyclic and deterministic timing from the master, and contain process data exchanged between the slaves, organized in PDOs (Process data objects), that contain values of the dictionary objects
- acyclic frames: they are sent only on request to implement service commands, for ex- ample to read the values through SDOs (Service data objects) only once
- Init: initialization phase
- Boot: suitable for firmware upgrades and other maintenance operations
- PreOp: pre-operational, no data-exchange occur between master and slaves
- SafeOp: safe operational, only input data from slaves to the master are exchanged
- Op: fully operational, full data-exchange can happen (both input and output)
- CoE: CAN application protocol over EtherCAT
- EoE: Ethernet over EtherCAT
- FoE: File access over EtherCAT
- SoE: Servo drive profile over EtherCAT
- AoE: Automation Device Protocol over EtherCAT
- FSoE: Safety over EtherCAT