I recently taught my first class on EtherCAT. I love teaching. I love it more when I am an expert on the subject and passionate about it. When it comes to EtherCAT, I have more of the latter and less of the former.
It’s not that I don’t know the subject; it’s just that I know just enough about it to talk dangerously like I am an expert. I’ve studied it quite a bit over the last few months, and I’ve really come to appreciate how different it is and what a technical achievement it is.
EtherCAT has significant advantages over other networking technologies:
- It’s fast – blazingly fast. If you think PROFINET IO is fast, it makes PROFINET IO look like RS485 Modbus RTU on a good day.
- Safety – It supports integrated black channel safety. Black channel in this context means that the safety network itself doesn’t appear to be there. The bus system in a black channel network does not perform any safety-related tasks but only serves as transmission medium.
- Redundancy – You get full redundant operation with extremely fast switch over. Again, much faster than PROFINET IO.
- Processing on the fly – This is the concept that all the I/Os are processed as the message moves through the node from the input port to the output port. Outputs are taken out of the message and inputs are added to it.
- Huge data space – Telegrams in an EtherCAT message can be up to 60KB, meaning that you can move a lot of data from a node to the Master.
- Simplified Masters – Master devices simply issue the message and receive the response. Single message in – single message out. Much simpler than an EtherNet/IP Scanner that must keep track of messages to all of its slave devices.
- Unlimited Slave Nodes – there is no practical limit to the number of slave nodes on an EtherCAT network.
- Pass Thru operation – EtherCAT can become the transport protocol for some other protocol like BACnet, EtherNet/IP, PROFINET IO, or Modbus.
- TCP/IP Slave support – EtherCAT slave devices can support any TCP/IP application program like HTTP, HTTPS, or HTML.
- Simplified Slave devices – Slave devices can be designed to process TCP data without having to implement a TCP/IP stack. TCP/IP processing can happen in the EtherCAT master device and the UDP or TCP packet data passed to the slave device.
- Simplified operation – EtherCAT requires no underlying bus system to manage nodes and connections.
Those are just the advantages that come to me off the top of my head. I bet I could think of even more if you gave me a minute.
So, I know you’re thinking, “There has to be a downside to all this.” Well, if you thought that, you’d be correct. EtherCAT configuration is difficult, and the tools aren’t very straightforward. Once you get it running, it works great, but getting it there is the problem. The tools to network it are pretty darn complicated.
The connection between the process I/O image and the EtherCAT message image isn’t as trivial as the EtherCAT Technology group would have you believe. What’s really special about EtherCAT is that the entire process image is transmitted over the network. The process image is, of course, the image that the controller’s logic “processes.” In most controllers, that process image is split up and pieces of it become the outputs for slave device one, other pieces for slave device two, and so on. Either the controller does all this work or a sub-system does it. One way or the other, only the components of the process image for a particular slave are transmitted to that slave.
In EtherCAT it’s totally different and much easier on the controller (EtherCAT master device). In EtherCAT, the entire process image is transmitted over the bus, and the mapping from the process image to the slave is done at the slave device. A very different architecture than any other technology I’ve seen and one that yields some impressive advantages, but it does make slave configuration more difficult.
It’s an interesting and exciting technology, and I’ll be writing more about it in the future.