Differences Between EtherCAT and Ethernet, What is Communication Cycle?

Click on the aboveMotion Control Assistant, stay updated with new developments!

Friends, we are back. In the last issue, we briefly introduced some features of EtherCAT. This time, we will provide a more detailed introduction to the implementation of EtherCAT, the significance of the communication cycle, and concepts such as SDO and PDO.

First, it should be stated that although this issue goes a bit deeper, using the motion controller is very simple. You can fully utilize the various advantages of motion control on the bus without understanding the concepts below. This article is written for those interested and wanting to learn more. Only by understanding more can we solve complex problems.

ZMC408CE
Implementing “8-channel Independent PSO” Application Scenarios
Speaking of EtherCAT bus controllers, here we introduce a high-performance EtherCAT bus motion controller ZMC408CE launched by Motion Control Technology.

Differences Between EtherCAT and Ethernet, What is Communication Cycle?

The core technology of ZMC408CE adopts advanced FPGA technology, achieving hardware position comparison output and precise output functions, ensuring excellent performance and stability in continuous trajectory processing, as well as real-time dynamic data capture, thus achieving more precise control and improving production efficiency and quality.

ZMC408CE supports EtherCAT + pulse axis mixed interpolation, can operate offline or online, with 8-32 axes selectable, and supports ZDevelop + various advanced upper computer mixed programming, enabling point motion, electronic cam, linear interpolation, circular interpolation, continuous trajectory processing, and control of 30+ robot models.

Differences Between EtherCAT and Ethernet, What is Communication Cycle?

ZMC408CE Product Highlights
1. High-performance processor, improving computation speed, response time, and scan cycle;

2. One-dimensional/two-dimensional/three-dimensional, multi-channel visual fly shooting, high speed and high precision;

3. Position synchronous output PSO, precision control of glue amount in continuous trajectory processing, and laser energy control;

4. Multi-axis synchronous control, independent control of multiple coordinate systems;

5. EtherCAT synchronous cycle can be as fast as 125us;

6. Mixed interpolation of EtherCAT bus and pulse axis;

7. Linear interpolation, arbitrary space circular interpolation, spiral interpolation, spline interpolation, etc.;

8. Flexible application, can be developed on PC upper computer, or run independently offline;
ZMC408CE Video Introduction
If you want to know more about ZMC408CE, you can clickRecommended | High-performance EtherCAT Bus Motion Controller for 8-channel PSOto view.
EtherCAT Design Goals and Advantages

Industrial sites often require stable and real-time communication, where sensors and IO signals need high-speed responses, and motor data needs to be transmitted in real-time. Before EtherCAT, there were already field buses like CAN bus.

However, as the automation systems in the field become larger, the bottlenecks of traditional buses become more evident:Insufficient bandwidth, low data transmission volume, and inability to fully utilize the development of IT technology, etc..Thus, a batch of field buses based on Ethernet was born, among which EtherCAT is one of the best.

Differences Between EtherCAT and Ethernet, What is Communication Cycle?

The official description of the EtherCAT bus is a field bus based on Ethernet (as shown in the figure above). Why not directly use Ethernet? Because some characteristics of field communication are completely different from those in the IT field:

1. A single system has a large number of nodes (devices).

2. These nodes generally need to transmit a small amount of data, but the real-time requirements are very high.

If each node communicates with an Ethernet data frame, the final communication efficiency will be very low. According to an official calculation example, the final bandwidth utilization may be less than 5%, and communication protocols based on Ethernet, such as TCP, will bring additional bandwidth overhead and delay, with a large amount of bandwidth occupied by ineffective data.
Differences Between EtherCAT and Ethernet, What is Communication Cycle?
The solution of EtherCAT is for all nodes to use one data frame. After the master sends the data frame, all slaves will process the data in flight, read what they need, insert the data they need to return, and then continue to pass the data frame down until it encounters the last node, using the full-duplex feature of Ethernet to return the data to the master.

Differences Between EtherCAT and Ethernet, What is Communication Cycle?

By using this transmission method, the maximum effective data rate of the data frame can exceed 90%, the master is the only device allowed to actively send data packets, while other nodes can only sequentially transmit packets, which can avoid common conflicts and delays in Ethernet networks, ensuring the real-time characteristics of EtherCAT data transmission.
Moreover, the slaves use dedicated chips (ESC) to process data packets in flight, completely using hardware to handle, keeping the communication time of the entire EtherCAT network stable and predictable, regardless of the different deployments of each slave.

Differences Between EtherCAT and Ethernet, What is Communication Cycle?

EtherCAT Network Can Transmit Periodic and Aperiodic Data.
Periodic data is exchanged through PDO (Process Data Object), generally used for real-time data exchange, such as command positions and feedback positions of motors, interaction of IO signals, etc.
Aperiodic data can be transmitted through mailbox protocols, the most common being CoE (Canopen Over EtherCAT), which can transmit information through SDO (Service Data Object). SDO is generally used for non-real-time communication, such as configuring motor parameters (e.g., resolution, maximum current, etc.), including PDO configuration information of the slave is also transmitted via SDO.
Configuring PDO is like buying a high-speed train ticket for your data, allowing the master and slave to know in advance what data will be on this high-speed train. As each slave’s ESC chip automatically takes the corresponding position data and inserts the data that needs to be returned, this can maximize the reduction of invalid data and speed up processing time.
Differences Between EtherCAT and Ethernet, What is Communication Cycle?

Differences Between EtherCAT and Ethernet, What is Communication Cycle?

The transmission cycle of PDO information is what we often refer to as the EtherCAT communication cycle. For example, the regular firmware of Motion Control defaults to a cycle of 1ms (1K communication frequency), while some products can set a cycle of 125us (8K communication frequency). Why is the default 1ms instead of a shorter cycle (higher frequency)? What is the controller doing in this 1ms? What is the slave doing?

This needs to be explained from the working mode of CSP and the control loop of the motor, which will be detailed in later chapters.[Generally, 1ms is already small enough (1K is already high enough). Furthermore, motor synchronization is not based on the arrival time of data frames, but on a distributed clock, which can achieve nanosecond-level synchronization, as mentioned in the previous article].

Differences Between EtherCAT and Ethernet, What is Communication Cycle?
As mentioned earlier, due to the unique design of the EtherCAT data frame, the effective data rate is very high, so in the field of industrial automation, it can fully utilize the 100M bandwidth of Ethernet. In fact, the 100M bandwidth also allows many motors to achieve a 1ms communication cycle, for example, Motion Control has controllers with 128 axes (I won’t tell others about this).
So, the last question left is, since the EtherCAT 100M bus is already so good, why still design gigabit and 10-gigabit buses?
The answer is that with the development of technology, larger and more complex systems have emerged, such as advanced logistics systems or magnetic levitation systems that require many axes (hundreds or even thousands), and these axes need precise synchronization; or measurement devices that need to collect a large amount of sensor data, all of which pose higher bandwidth requirements for the bus.
Higher bandwidth can allow field buses to enter more application areas, and stronger buses can also support designs of complex systems that did not exist before.
Differences Between EtherCAT and Ethernet, What is Communication Cycle?
This time, Motion Control Technology shared the differences between EtherCAT and Ethernet, and what the communication cycle means.That’s all for this sharing.

For more exciting content, please follow the “Motion Control Assistant” public account. For related development environments and example codes, please consult Motion Control Technology sales engineers: 400-089-8936.

This article is original from Motion Control Technology. Everyone is welcome to reprint and learn together to improve China’s intelligent manufacturing level. The copyright of this article belongs to Motion Control Technology. Please indicate the source when reprinting.

Review of Previous Content

Announcement! Fans participating in the “Motion Control System Application and Practice” book giveaway, look here

Book Giveaway! Fully Autonomous IDE’s “Motion Control System Application and Practice”

In the era of industrial Ethernet, how to choose a bus motion controller?

Motion Controller PSO Visual Fly Shooting and Precise Output C++ Development (III): Two-dimensional/Three-dimensional/Multi-axis PSO Output

Motion Controller PSO Visual Fly Shooting and Precise Output C++ Development (II): Multi-axis PSO Equidistant/Cyclic Output

Motion Controller PSO Visual Fly Shooting and Precise Output C++ Development (I): Single-axis PSO

Motion Controller 8-channel PSO Visual Fly Shooting and Precise Output

Windows Real-time Motion Control Soft Core (VII): LOCAL High-speed Interface Testing with Labview

Windows Real-time Motion Control Soft Core (VI): LOCAL High-speed Interface Testing with Matlab

Windows Real-time Motion Control Soft Core (V): LOCAL High-speed Interface Testing with VC6.0

Windows Real-time Motion Control Soft Core (IV): LOCAL High-speed Interface Testing with VB.NET

Windows Real-time Motion Control Soft Core (III): LOCAL High-speed Interface Testing with C++

Windows Real-time Motion Control Soft Core (II): LOCAL High-speed Interface Testing with Qt

Windows Real-time Motion Control Soft Core (I): LOCAL High-speed Interface Testing with C#

Open Laser Galvo Motion Controller: C++ Fast Call Graphics Library Application

Open Laser Galvo Motion Controller: C++ Galvo Correction Method and Implementation

Open Laser Galvo Motion Controller: C++ Rapid Development

Open Laser Galvo Motion Controller (V): ZMC408SCAN Fiber Laser Energy Control

Open Laser Galvo Motion Controller (IV): ZMC408SCAN Galvo Control Fiber Laser Processing

Open Laser Galvo Motion Controller (III): ZMC408SCAN Axis Control Fiber Laser Processing

Open Laser Galvo Motion Controller (II): ZMC408SCAN Laser Interface and Control

Open Laser Galvo Motion Controller (I): ZMC408SCAN Interface and Functions

Motion Controller PSO Position Synchronous Output (III): High-precision Equidistant Two-dimensional Three-dimensional PSO Output

Motion Controller PSO Position Synchronous Output (II): Detailed Explanation of PSO Mode

Motion Controller PSO Position Synchronous Output (I): Hardware Platform and PSO Instruction Introduction

Economic EtherCAT Motion Controller (X): Quick Start to EtherCAT Bus

Economic EtherCAT Motion Controller (IX): Oscilloscope Use

Economic EtherCAT Motion Controller (VIII): Axis Parameters and Motion Instructions

Economic EtherCAT Motion Controller (VII): Motion Buffering

Economic EtherCAT Motion Controller (VI):Data Storage

Economic EtherCAT Motion Controller (V): Multi-task Operation

Economic EtherCAT Motion Controller (IV): ModbusRTU or ModbusTcp Communication with Touch Screen

Economic EtherCAT Motion Controller (III): PLC Implementation of Multi-axis Linear Interpolation and Electronic Cam

Economic EtherCAT Motion Controller (II): ZBasic Implementation of Multi-axis Linear Interpolation Motion

Economic EtherCAT Motion Controller (I): Function Introduction and Application Scenarios

Motion Control + Machine Vision Demo Software Framework (III): Visual Correction + Continuous Interpolation Recipe Editing

Motion Control + Machine Vision Demo Software Framework (II): Mobile Calibration and Shape Matching

Motion Control + Machine Vision Demo Software Framework (I): Mechanical Parameters and Recipe File Management

Motion Control + Machine Vision Demo Software Framework System Overview

Open Laser Galvo + Motion Controller (VI): Dual Galvo Motion

Open Laser Galvo + Motion Controller (V): ZMC408SCAN Controller Hardware Introduction

Open Laser Galvo + Motion Controller (IV): PSO Position Synchronous Output Application in Laser Galvo Processing

Open Laser Galvo + Motion Controller (III): Galvo Correction

Open Laser Galvo + Motion Controller (II): Galvo Filling

Open Laser Galvo + Motion Controller (I): Hardware Interface

EtherCAT Axis Expansion Module EIO16084 in Motion Control Systems
Fast Debugging and Diagnosis of Pulse Interface in EtherCAT Motion Controller
Usage of ZMIO300 Module in EtherCAT Motion Controller
PLC Programming of EtherCAT Motion Controller (IV) Electronic Cam
PLC Programming of EtherCAT Motion Controller (III) Electronic Gear
PLC Programming of EtherCAT Motion Controller (II) Circular Interpolation
PLC Programming of EtherCAT Motion Controller (I) Linear Interpolation

Quick Start | Part 21: Introduction to ZHMI Configuration Programming of Motion Controller

Quick Start | Part 21: Custom Communication of Motion Control Technology Motion Controller

Quick Start | Part 20: MODBUS Communication of Motion Control Technology Motion Controller

Quick Start | Part 19: Multi-axis Synchronization and Electronic Cam Instruction Introduction of Motion Control Technology Motion Controller

Quick Start | Part 18: Using Pulse Type Motion Controllers of Motion Control Technology

Quick Start | Part 17: Usage of Multi-axis Interpolation Motion Instructions of Motion Control Technology Motion Controller

Quick Start | Part 16: Quick Start to EtherCAT Bus of Motion Control Technology Motion Controller

Quick Start | Part 15: Introduction to Motion Buffer of Motion Controller

Quick Start | Part 14: Basic Axis Parameters and Basic Motion Control Instructions of Motion Controller

Quick Start | Part 13: Usage of ZDevelop Programming Software of Motion Control Technology Motion Controller

Quick Start | Part 12: Usage of USB Interface of Motion Control Technology Motion Controller

Quick Start | Part 11: Application of Interrupts in Motion Control Technology Motion Controller

Quick Start | Part 10: Characteristics of Multi-task Operation of Motion Controller

Quick Start | Part 9: How to Apply Oscilloscope in Motion Controller?

Quick Start | Part 8: How to Use EtherCAT Bus of Motion Controller?

Quick Start | Part 7: How to Use ZCAN Bus Expansion Module of Motion Controller?

Quick Start | Part 6: How to Apply Data and Storage in Motion Controller?

Quick Start | Part 5: How to Apply Input/Output IO in Motion Controller?

Quick Start | Part 4: How to Communicate with Touch Screen in Motion Controller?

Quick Start | Part 3: How to Develop ZPLC Programs in Motion Controller?

Quick Start | Part 2: How to Develop ZBasic Programs in Motion Controller?

Quick Start | Part 1: How to Upgrade Firmware in Motion Controller?

Configuration and Implementation of EtherCAT and RTEX Driver Axis Return to Zero

Application of G-code in Motion Controllers

Custom G-code Programming Application in Motion Controllers

Offline Simulation Debugging, Accelerating Project Progress!

Usage of 8-axis EtherCAT Axis Expansion Module EIO24088

Demo of Motion Controller Following Cutting Application

Motion Controller Laser Galvo Control

Configuration and Implementation of Axis Return to Zero in Motion Controllers

Application of Position Latching Function in Motion Controllers

Quick Start for ZMC Motion Controller SCARA Robot Application

Quick Start for RTEX Bus Usage in Motion Controllers

Usage Method of Motion Control Technology CAD Mapping Software with Controllers

Advanced Applications of EtherCAT Bus Motion Controllers

Development Tutorial of EtherCAT Motion Control Card with Qt (Middle): Continuous Trajectory Processing, Pause and Continue

Development Tutorial of EtherCAT Motion Control Card with Qt (Upper): Development Environment Configuration and Simple Motion Control Application

Development Tutorial of EtherCAT Motion Control Card with Python

Application of EtherCAT Motion Control Card with SCARA and Other Robots

PWM and Analog Output of EtherCAT Motion Control Card and Motion Speed Synchronization

Hardware Comparison Output of EtherCAT Motion Control Card and Encoder Latching

IO Actions and Motion Control Synchronization of EtherCAT Motion Control Card

Real-time Program Operation and Read/Write Control of EtherCAT Motion Control Card

Motion Pause, Resume and System Security Settings of EtherCAT Motion Control Card

Continuous Interpolation Motion of EtherCAT Motion Control Card with Small Line Segment Prediction

Multi-axis Interpolation Motion and Hand Wheel Motion of EtherCAT Motion Control Card

Auxiliary Debugging Tools and Methods of EtherCAT Motion Control Card

Axis Parameter Settings and Axis Motion of EtherCAT Motion Control Card

Hardware Wiring of EtherCAT Motion Control Card and C# Hardware Peripheral Read/Write and Return to Zero Motion

Hardware Wiring of EtherCAT Motion Control Card and C# Single-axis Motion Control

Simple and Easy-to-use Motion Control Card (XVI): Pitch Compensation and Backlash Compensation

Simple and Easy-to-use Motion Control Card (XV): Real-time Program of PC Start/Stop Controller

Simple and Easy-to-use Motion Control Card (XIV): PWM, Analog Output and Motion Control Synchronization

Simple and Easy-to-use Motion Control Card (XIII): IO Actions and Motion Control Synchronization

Simple and Easy-to-use Motion Control Card (XII): Safety Settings of Motion Control System

Simple and Easy-to-use Motion Control Card (XI): Motion Pause, Resume and Speed Ratio Settings

Simple and Easy-to-use Motion Control Card (X): Continuous Interpolation and Small Line Segment Prediction

Simple and Easy-to-use Motion Control Card (IX): Circular Interpolation and Spiral Interpolation

Simple and Easy-to-use Motion Control Card (VIII): Linear Interpolation and Hand Wheel Motion

Simple and Easy-to-use Motion Control Card (VII): Loading Multiple Continuous Small Line Segment Data at Once

Simple and Easy-to-use Motion Control Card (VI): Basic File Download and Continuous Trajectory Processing

Simple and Easy-to-use Motion Control Card (V): IO Configuration and Return to Zero Motion

Simple and Easy-to-use Motion Control Card (IV): Function Library Packaging

Simple and Easy-to-use Motion Control Card (III): Axis Parameter Configuration and Single-axis Motion Control

Simple and Easy-to-use Motion Control Card (II): Peripheral Read/Write and ZDevelop Diagnosis

Simple and Easy-to-use Motion Control Card (I): Hardware Wiring and Upper Computer Development

Application of Motion Control Card in ROS (Lower)

Application of Motion Control Card in ROS (Upper)

Building Intelligent Equipment with EtherCAT Motion Control Card and LabVIEW (V)

Building Intelligent Equipment with EtherCAT Motion Control Card and LabVIEW (IV)

Building Intelligent Equipment with EtherCAT Motion Control Card and LabVIEW (III)

Building Intelligent Equipment with EtherCAT Motion Control Card and LabVIEW (II)

Building Intelligent Equipment with EtherCAT Motion Control Card and LabVIEW (I)

Motion Control Card in LabVIEW for Motion Control and Data Acquisition

Application Development Tutorial of Motion Control Card with MATLAB

Application Development Tutorial of Motion Control Card with C++

Application Development Tutorial of Motion Control Card with Python

Application Development Tutorial of Motion Control Card with C#

Application Development Tutorial of Motion Control Card with Linux

Application Development Tutorial of Motion Control Card with VB.NET

Application Development Tutorial of Motion Control Card with VB6.0

Application Development Tutorial of Motion Control Card with VC6.0

Application Development Tutorial of Motion Control Card with Qt

Application Development Tutorial of Motion Control Card with LabVIEW

Application Development Tutorial of Motion Control Card for Laser Galvo Control

Application Development Tutorial of Motion Control Card for Hardware Comparison Output

About Motion Control Technology

Motion Control Technology focuses on research in motion control technology and the development of general motion control software and hardware products, is a national high-tech enterprise, with main products including motion controllers, motion control cards, visual motion control integrated machines, human-machine interfaces, and expansion modules..

Motion Control Technology gathers excellent talents from companies like Huawei and ZTE, actively collaborates with major universities to research basic technologies in motion control while adhering to independent innovation, making it one of the fastest-growing companies in the industrial control field in China, and one of the few companies that fully master core motion control technologies and real-time industrial control software platform technologies.

Motion Control Technology is backed by the booming manufacturing industry, keeping pace with the times, rich in innovation, dedicated to continuously enhancing technical applications and manufacturing levels for intelligent manufacturing equipment suppliers and end users. After years of application development with numerous partners, products are widely used in domestic and foreign fields such as 3C electronics, semiconductors, printing and packaging, textiles and garments, laser processing, mechanical processing, robotics, new energy, healthcare, and stage entertainment.

Differences Between EtherCAT and Ethernet, What is Communication Cycle?

Leave a Comment