PO System TechnologyCo., Ltd. /PO Tech Studio
中文 EN

Industry Applications #05

EtherCAT and Multi-Axis Synchronization: Why Distributed Clocks Matter

Two axes need to travel together along a 45-degree diagonal. The X and Y axes each move at 200 mm/s, and the controller sends the commands at the same time, but the X axis drive receives its command 100 µs later than the Y axis.

As a result, the X axis position always lags by 20 µm, and the actual path deviates from the ideal diagonal by about 14 µm (20 µm ÷ √2):

Δ = v × Δt = 200 mm/s × 100 µs = 0.02 mm

On a cutting machine, those 14 µm or so are carved straight into the workpiece; on a measurement station, they become measurement error directly. Timing error in the communication layer turns proportionally into spatial error, which is why multi-axis systems have to talk about synchronization.

1. What synchronization error turns into

Crossing speed with synchronization error makes the orders of magnitude obvious:

Table 1: synchronization error times motion speed is position error. Δx = v × Δt, regardless of the number of axes or the quality of the motors.
Motion speed1 ms sync error100 µs sync error1 µs sync error
100 mm/s100 µm10 µm0.1 µm
200 mm/s200 µm20 µm0.2 µm
500 mm/s500 µm50 µm0.5 µm

If the mechanism is built to the micrometer but the communication layer works in milliseconds, the accuracy of the whole system stops at the millisecond layer.

This also explains a common puzzle: the servos are well chosen, the mechanism is stiff enough, single-axis positioning measures beautifully, yet with two axes moving together it simply cannot produce an arc or a diagonal. The problem is not in the axes but in the two axes not being aligned on "when to start moving".

2. EtherCAT's first key: processing on the fly

When standard Ethernet switches are cascaded, at each stage a packet is usually received completely and checked before being forwarded, and each node's data occupies a packet of its own. The more nodes in the chain, the faster the delay accumulates.

EtherCAT works completely differently: the frame does not stop. A single Ethernet frame passes through all the slaves in sequence, and as the frame "passes through" each slave, the slave's hardware reads its own few bytes and writes its return data into the frame on the spot, and the frame moves on to the next station.

Master Controller Drive XDrive Y Drive ZI/O module R/W own dataR/W own data R/W own dataR/W own data One frame passes through without stopping Turns back at the end; the same frame carries all feedback back to the master Each slave's dedicated chip reads and writes in hardware, adding under about 1 µs per node So adding nodes increases the cycle time only slightly One frame passes through without stopping Master Controller Drive X R/W own data Drive Y R/W own data Drive Z R/W own data I/O module R/W own data Returns at the end; the same frame brings all feedback back to the master Read/write is done in hardware by each slave's dedicated chip, under about 1 µs per node So adding nodes increases the cycle time only slightly
EtherCAT "processing on the fly": as the frame passes through each slave, hardware reads and writes it on the spot, with no need to receive the whole frame at each station before forwarding it. According to the EtherCAT Technology Group, this design gives the frame an effective data rate above 90 %, allows up to 65,535 devices on a single network segment, and has a cycle time ≤ 100 µs as one of its design targets.

3. The second key: distributed clocks

Fast frames only solve "the data arrives promptly enough". But each axis still receives its data at a different moment: there is inherently a propagation time difference between the first and fourth stations.

Distributed clocks (DC) solve exactly this. The method:

  1. The clock of one slave is chosen as the reference clock
  2. The master measures the propagation delay of the frame's round trip to each station, and calculates each station's offset from the reference clock
  3. The offset compensation values are written to each station, and the drift of each station's clock is continuously corrected during operation, so all nodes share the same time base
  4. A motion command is no longer "do it on receipt" but "do it at time T"

Point 4 is the heart of the matter. Since everyone's clocks are synchronized, it no longer matters whether data arrives early or late: everything waits until the specified moment and executes at the same time.

According to the EtherCAT Technology Group's specification, jitter between nodes is well below 1 µs. Back to the table at the start: a 1 µs synchronization error at 200 mm/s causes a position deviation of only 0.2 µm, already below the error of the mechanism itself.

4. How to choose between the three approaches

Table 2: a comparison of three common multi-axis control approaches. The axis count column is a common recommended range, not a hard limit; in selection, first consider whether coordinated motion between axes is needed, then the number of axes and future expansion.
ApproachSync capabilityRecommended axesSuited to
Pulse/direction Relies on the control card's hardware output; good synchronization but a lot of wiring 1–8 Few axes, short wiring distances, budget-sensitive
CANopen Communication cycles mostly at the millisecond level; with SYNC message synchronization, jitter of tens to hundreds of µs 4–16 Point-to-point positioning, loading and unloading, fixture actions
EtherCAT With DC enabled, jitter well below 1 µs 8 or more Interpolated motion, gantry synchronization, on-the-fly capture, multi-axis coordination

We suggest working through the decision in this order:

  1. Is coordinated motion between axes needed? (interpolation, gantry synchronization, electronic cams): with few axes and short wiring, a pulse control card's hardware interpolation can do it; with many axes, synchronization across modules, or axes to be added later, look at EtherCAT first
  2. No coordination, just independent positioning? Up to eight axes, pulse control is simplest (a single 4-axis or 8-axis control card is enough); beyond that, switch to a fieldbus (CANopen or EtherCAT) to save wiring
  3. Will axes be added later? Adding an axis to EtherCAT means connecting one cable; adding one with pulse control means another card and another bundle of wires

5. Beyond synchronization: aligning with image capture

Multi-axis synchronization solves "between axes". A measurement station has another synchronization problem: between the axes and the camera.

With the stage moving at 100 mm/s, a trigger signal that is 1 ms late makes the image correspond to a position 100 µm away, and the size of the offset depends on the current speed; if the trigger delay also has jitter, it is even less of a fixed offset that can be compensated afterwards.

There are two solutions, both calculated in section 2.5 of the industrial automation page: trigger the camera directly from encoder position with a motion control card's position compare output, or bring the camera trigger module into the same time base with EtherCAT distributed clocks. The advantage of the latter is that the whole line runs on a single time base, with no need to synchronize two separate systems.

Closing: first find which layer the error comes from

"We cannot reach the accuracy" is a symptom, not a cause. What really needs doing is to take the error apart:

  • Even single-axis positioning is inaccurate → a mechanism or servo tuning problem; see inertia ratio and torque
  • Single axes are accurate, multiple axes are not → a synchronization problem; this article
  • Accurate when stationary, inaccurate in motion → an image trigger problem; see position compare output and DC
  • Accurate just after power-up, inaccurate after running for a while → thermal drift; look at the mechanism's materials and temperature control

The four causes have completely different solutions, and they do not substitute for one another. Better servos do not solve a synchronization problem, and switching to EtherCAT does not fix a mechanism that is not stiff enough. Confirm which layer it is first, then decide where to spend the money.

EtherCAT® is a registered trademark and patented technology licensed by Beckhoff Automation GmbH, Germany; specifications cited in this article are from public material of the EtherCAT Technology Group.

Related products

Items related to this page that we also supply, each with specifications and selection notes.

Original illustration, not a product photo. Actual appearance varies by model.

Keep reading

Industry Applications #02

How to Choose a Servo Motor

Inertia ratio, torque curve and encoder resolution, with a complete worked example.

Industrial automation

Motor control

Three-layer control loops, S-curve motion profile planning, and synchronizing motion with image capture.