EtherCAT is a high-speed, low-latency industrial communication protocol designed to enhance the capabilities of ethernet in industrial automation, motion control, real-time control systems, and data acquisition systems. Some basic concepts and unique capabilities of EtherCAT make it a powerful and widely used communication solution. Understanding these concepts provides insight into the reasons why EtherCAT is preferred for applications that demand high performance, real-time communication, and efficiency in industrial automation. Here are the key concepts including their importance:
Processing on the Fly
allows data to be processed as it travels through each node in the network without the need for full data buffering, minimizing communication latency. By eliminating the need for complete data sets to be received before processing, EtherCAT achieves low-latency communication, making it suitable for applications requiring real-time responsiveness.
Distributed Clocks
EtherCAT employs distributed clocks to synchronize devices across the network, ensuring precise and coordinated timing. Nodes share a common clock reference, ensuring synchronized timing for precise coordination of actions in the network. The use of distributed clocks enables synchronized data acquisition and control actions, crucial for applications demanding high accuracy and coordination.
Network Topology
EtherCAT offers great freedom in the choice of topology and maximum flexibility in wiring. This simplifies network wiring, reduces hardware complexity, and enhances scalability, allowing for the easy addition of new devices.
Frame Structure
EtherCAT frames consist of a header, data section, and trailer, with a flexible structure allowing the inclusion of various data types. The frame structure contributes to EtherCAT's efficiency by allowing the transmission of diverse data formats, supporting real-time communication of different data types in a synchronized manner. This flexibility is vital in applications requiring the exchange of heterogeneous data.
EtherCAT supports up to 65,535 devices per segment, allowing for extensive network expansion without limitations. This high number of connectable devices enables modular devices such as "sliced" I/O stations to be designed so that each module is an EtherCAT node of its own, eliminating the need for a local extension bus and ensuring that the high performance of EtherCAT reaches each module directly. To ensure this, the EtherCAT network is composed of several key components such as:
Master Devices
They manage and control the entire network. Typically, this device can be a PC or embedded microprocessor, a programmable logic controller (PLC), or a motion controller. It communicates with and controls the EtherCAT Slave devices.
Slave Devices
Typically, sensors, drives, actuators, or other types of automation devices that perform specific tasks within the automation technology system.
EtherCAT SubDevice Controller (ESC)
The ESC serves as an intermediary between the master and the connected sub-devices. The ESC is a critical component that enables the slave devices to read data addressed to them while the telegram passes through the device, processing data "on the fly".
EtherCAT Slave Information (ESI)
An ESI file is an XML-based file that contains all the necessary configuration details for an EtherCAT slave device, such as device identification, communication parameters, process data, and supported features. It is used by the EtherCAT master to correctly integrate and communicate with the slave device within the EtherCAT network, ensuring seamless and efficient operation.
EtherCAT Junction
EtherCAT Junction also known as a Hub, is a device that expands the number of available ports on an EtherCAT network, allowing for more complex topologies and the connection of additional slave devices. it plays a role in supporting flexible network topologies such as line, tree, star, or any combination thereof.
EtherCAT Coupler
EtherCAT Coupler is a device that relays communication from the higher-level EtherCAT network to the terminals or functions as a master itself, generating telegrams. It acts as a gateway between the EtherCAT network, connected I/O modules and as a practical solution for connecting different segments of an Ethernet channel, which can be particularly useful when various network topologies or segments need to be linked without compromising network integrity or performance.
Distributed Clocks (DC)
Distributed Clocks (DC) are a feature within EtherCAT networks that enable local, absolute system synchronization for CPU, I/O, and drive units. This allows for time-based and simultaneous data processing of all distributed clocks capable EtherCAT devices. The calibration of the clocks in the nodes is completely hardware-based, and the time from the first DC slave device is cyclically distributed to all other devices in the system.
EtherCAT communication operates through two main cycles
Cyclic Communication involves the regular exchange of data between master and slave devices with deterministic cycle times, addressing specific parts of the process image for efficient data access. This method optimizes network performance by refreshing data on drives with short cycle times and sampling I/O with longer cycle times. On the other hand, acyclic data transmission handles non-time-critical, intermittent data transfer, addressing configuration, diagnostics, and firmware updates, which lack real-time constraints.
EtherCAT operates within the OSI model, encompassing the Physical and Data Link layers. The Physical layer is responsible for transmitting raw bits over the network, utilizing standard Ethernet components like full-duplex 100 MBit/s copper or fiber-optic connections. This layer forms the fundamental hardware for conveying data. In the Data Link layer, node-to-node data transfer and error checking occur. EtherCAT SubDevice Controllers (ESCs) in the nodes examine moving frames for errors using a checksum. If frames are received correctly, information is relayed to the slave application. In case of a bit error, the error counter increments, signalling subsequent nodes about the frame's error. The ESC, positioned in the Data Link Layer, acts as an interface, linking the EtherCAT fieldbus with the slave application and bridging the application layer with the physical layer.
In summary, the key components collectively contribute to EtherCAT's ability to provide efficient, scalable, and deterministic communication in industrial automation, making it a preferred choice for various applications.