2. EtherCAT通信基础

EtherCAT(Ethernet for Control Automation Technology)是一种基于标准以太网的实时工业现场总线。它并不要求使用专用网卡或专用交换机,而是通过“飞读飞写”的处理机制,让一帧以太网数据在穿过每个从站时被即时解析和插入,从而在极短的周期内完成整个网络的输入输出刷新。对于龙门双驱控制系统而言,理解EtherCAT的通信基础,是保证双轴同步精度、降低抖动、实现高动态响应的前提。

一、协议原理:飞读飞写与逻辑环

EtherCAT的核心思想是“On the fly”处理。主站发送一个标准以太网帧,帧头使用EtherType 0x88A4标识。该帧依次经过每个从站,从站的ESC(EtherCAT Slave Controller)在数据帧经过时直接读取本节点需要的输出数据,同时把本节点的输入数据写入帧中的对应位置。整个过程不需要存储转发,因此延迟极低。

从逻辑上看,EtherCAT网络是一个逻辑环:主站发出的帧沿拓扑下行,经过所有从站后,由最后一个从站(或支持回环的从站)将帧原路返回主站。主站收到返回帧后,即完成一次过程数据交换。这种机制使得EtherCAT的通信周期可以做到100μs甚至更低,同时保持极低的抖动。

关键点:EtherCAT不是“每个从站单独发一帧”,而是“一帧遍历所有从站”。因此,网络节点数量对周期时间的影响远小于传统轮询总线。

二、主站与从站架构

EtherCAT采用主从架构。主站通常由工业PC或嵌入式控制器实现,负责发送过程数据帧、管理网络状态、执行分布式时钟同步算法。从站则使用专用ESC芯片(如ET1100、ET1200、LAN9252等)或集成ESC的MCU,负责在帧经过时完成数据读写。

在龙门双驱系统中,主站一般运行在运动控制器上,从站包括:X轴伺服驱动器、Y轴伺服驱动器、龙门同步轴驱动器、I/O模块、编码器接口模块等。主站通过过程数据对象(PDO)与从站交换周期数据,通过邮箱通信(Mailbox)完成非周期参数配置和诊断。

  • 主站职责:发送过程数据帧、维护网络状态机、计算分布式时钟偏移、处理邮箱请求。
  • 从站职责:在帧经过时读写PDO数据、响应邮箱通信、执行DC时钟同步、提供本地诊断信息。
  • 拓扑结构:支持线型、树型、星型(通过分支模块)等,龙门双驱常用线型拓扑以降低布线复杂度。

三、过程数据对象(PDO)与邮箱通信

EtherCAT通信分为两类:过程数据通信(PDO)和邮箱通信(Mailbox)。PDO用于周期性实时数据交换,例如控制字、状态字、目标位置、实际位置、速度、扭矩等。邮箱通信用于非周期性数据,例如参数读写、固件升级、诊断信息读取。

PDO映射决定了每个从站在过程数据帧中占用的字节数和具体含义。在龙门双驱系统中,通常需要为每个伺服驱动器配置:控制字(2字节)、状态字(2字节)、目标位置(4字节)、实际位置(4字节)、目标速度(4字节)、实际速度(4字节)、扭矩(2字节)等。合理映射PDO可以减少帧长度,提高通信效率。

# 典型PDO映射示例(简化)
RxPDO (主站→从站):
  0x6040:00  Controlword        UINT16
  0x607A:00  Target Position    INT32
  0x60FF:00  Target Velocity    INT32

TxPDO (从站→主站):
  0x6041:00  Statusword         UINT16
  0x6064:00  Position Actual    INT32
  0x606C:00  Velocity Actual    INT32

邮箱通信采用请求/响应模式,主站发送邮箱请求,从站处理后返回响应。邮箱通信不占用过程数据带宽,但需要主站轮询或使用中断机制。在调试阶段,邮箱通信用于配置PDO映射、设置DC参数、读取从站信息。

四、分布式时钟(DC)与同步机制

分布式时钟是EtherCAT实现高精度同步的关键。每个支持DC的从站都有一个本地时钟,主站通过测量帧往返时间来计算各从站时钟与参考时钟的偏移和漂移,然后下发补偿值。最终,所有从站的时钟与参考时钟(通常是第一个DC从站)保持同步,同步精度可达纳秒级。

在龙门双驱系统中,分布式时钟的作用尤为突出:两个龙门轴需要同时采样位置、同时输出控制量。如果两个驱动器的时钟不同步,即使主站发送相同的位置指令,实际执行也会存在相位差,导致龙门结构扭曲或振动。通过DC同步,两个轴可以在同一时刻锁存位置、更新PWM,从而保证同步精度。

提示:DC同步需要配置同步周期(SYNC0)和同步偏移。通常SYNC0周期与主站通信周期一致,偏移设置为通信周期的一半左右,以避开帧传输时间。

五、核心参数与配置清单

参数/对象作用典型值/说明
EtherType标识EtherCAT帧0x88A4
通信周期过程数据刷新周期250μs~1ms
PDO映射定义过程数据内容按伺服对象字典配置
邮箱协议非周期参数通信CoE、FoE、EoE等
DC参考时钟同步基准第一个DC从站
SYNC0周期同步信号周期与通信周期一致
同步偏移SYNC0相对帧到达的偏移约半个周期

六、案例与误区复盘

在某龙门双驱雕铣机项目中,调试初期出现两轴位置偏差周期性波动。检查发现,两个伺服驱动器的DC同步未启用,主站仅依靠周期帧到达时间触发位置锁存。由于帧经过两个从站的时间不同,导致两轴采样时刻相差约2μs,在高速加工时表现为明显纹路。启用DC后,将两个驱动器均配置为DC从站,SYNC0周期设为500μs,偏移设为250μs,位置偏差降至编码器分辨率以内,加工纹路消失。

常见误区包括:

  • 只关注通信周期,忽略DC同步:通信周期再短,若从站时钟不同步,双驱同步精度仍无法保证。
  • PDO映射过大:把所有对象都映射进PDO,导致帧过长、周期抖动增加。应按实际需要精简。
  • 邮箱通信阻塞过程数据:在实时周期中频繁发起邮箱请求,会占用主站处理时间,影响过程数据刷新。
  • 拓扑分支过长:分支模块会引入额外延迟,龙门双驱建议采用线型拓扑,减少不确定因素。

注意:EtherCAT从站必须支持DC才能实现高精度同步。选型时需确认伺服驱动器是否支持分布式时钟,并正确配置SYNC0信号。

EtherCAT 主从架构与分布式时钟同步 EtherCAT 主站 运动控制器 / IPC 发送过程数据帧 · 管理DC 过程数据帧 从站1 X轴伺服驱动器 ESC · PDO · DC 飞读飞写 从站2 Y轴伺服驱动器 ESC · PDO · DC 继续下行 从站3 I/O 模块 ESC · DC 返回帧(含所有从站输入数据) 分布式时钟(DC)同步机制 参考时钟 从站1 本地时钟 偏移补偿 从站2 时钟 与参考时钟同步 偏移补偿 从站3 时钟 与参考时钟同步 SYNC0 同步信号:所有从站在同一时刻锁存位置、更新输出 PDO:周期过程数据(位置、速度、状态) | Mailbox:非周期参数与诊断

总结来说,EtherCAT通信基础包含四个相互支撑的要点:飞读飞写的协议原理决定了低延迟,主从架构决定了网络角色分工,PDO与邮箱通信分别承担周期与非周期数据,分布式时钟则保证多轴同步精度。在龙门双驱控制系统中,只有将这四者正确配置并协同工作,才能实现高精度、高动态的双轴同步控制。