3. EtherCAT网络架构设计

EtherCAT 是 Omron Sysmac 机器自动化系统中连接 NJ/NX 控制器与伺服、变频器、远程 I/O、安全模块等设备的核心现场总线。理解它的架构,不能只停留在“主站发、从站收”的层面,而要同时看清三件事:物理上设备如何串成拓扑、逻辑上过程数据如何映射、时间上各节点如何保持同步。这三者共同决定了网络能否稳定运行,也决定了运动控制精度和响应速度的上限。

主站与从站的拓扑结构

在 Sysmac 系统中,EtherCAT 主站由 NJ/NX 系列控制器的内置 EtherCAT 端口承担,从站则是各类 EtherCAT 从站设备。EtherCAT 采用“逻辑环、物理线”的机制:主站发出的报文依次经过每个从站,从站在报文经过时读取属于自己的数据并写入输出数据,报文最终返回主站,形成一次完整通信。因此从站数量增加时,报文延迟会累积,但不会像传统以太网那样因交换机排队产生不确定抖动。

常见拓扑有四种。第一种是线型(菊花链),设备依次串联,布线最省,是机器设备中最常用的形式,但中间节点断线会导致其后所有从站失联。第二种是分支型,利用带分支端口的从站(如耦合器或分支模块)分出支线,适合一台机器上多个工位分散布置。第三种是树型,由多个分支逐级展开,适合大型产线。第四种是环型,把末端从站再连回主站,配合支持环网冗余的从站,可在单点断线时自动切换通信路径,提高可用性。

拓扑设计要遵循几个实际约束:从站总数受主站允许的最大节点数限制;线型拓扑中,建议把通信量大的伺服从站放在靠近主站的位置,减少其报文往返延迟;分支深度不宜过深,否则单条支路的延迟叠加会拉长整体周期;环网冗余需要从站本身支持,并非所有设备都能构成环。

EtherCAT 主站/从站拓扑与过程数据流示意 NJ/NX 主站 EtherCAT 端口 伺服从站 1 IN / OUT 伺服从站 2 IN / OUT 远程 I/O IN / OUT 报文返回主站(逻辑环) 过程数据对象(PDO)映射 控制字 0x6040 目标位置 0x607A 目标速度 0x60FF 状态字 0x6041 实际位置 0x6064 实际速度 0x606C 主站→从站(RxPDO) 从站→主站(TxPDO) 分布式时钟(DC)同步 主站 从站1 从站2 参考时钟由首个支持 DC 的从站提供 各从站测量并补偿传播延迟 SYNC0 信号触发同步采样与输出

过程数据对象与数据映射

EtherCAT 的通信内容以过程数据对象(PDO)为单位组织。主站周期性下发的数据称为 RxPDO(从主站看是接收,从从站看是接收),从站上传的数据称为 TxPDO。以一台 Omron 1S 系列伺服为例,典型的 RxPDO 包含控制字 0x6040、目标位置 0x607A、目标速度 0x60FF;TxPDO 包含状态字 0x6041、实际位置 0x6064、实际速度 0x606C。这些对象号来自 CiA 402 驱动协议,是伺服与主站之间约定好的“语言”。

在 Sysmac Studio 中配置时,需要为每个从站选择 PDO 映射。映射决定了每个通信周期实际传输哪些数据、各占多少位。映射越精简,单周期数据量越小,网络负载越低;映射越完整,可用的监控与诊断信息越多。实践中应遵循“够用即可”的原则:运动控制轴通常需要位置、速度、控制字、状态字;仅做状态监视的轴可以只映射状态字和实际位置。

PDO 数据在主站内存中以数组形式存在,例如 _EC_At_1S_Pos 之类的系统变量。用户程序通过读写这些变量与从站交换数据,而不需要关心底层报文。理解这一点很关键:PDO 映射是主站与从站之间的数据契约,一旦映射改变,程序中的变量偏移和含义也会随之改变,因此修改映射后必须重新核对程序引用。

分布式时钟与同步机制

分布式时钟(Distributed Clocks,DC)是 EtherCAT 实现高精度同步的基础。其原理是:网络中第一个支持 DC 的从站作为参考时钟,主站通过测量报文在各从站之间的传播延迟,计算出每个从站的时钟偏移,并下发补偿值,使所有从站时钟与参考时钟对齐。对齐后,从站可以在同一时刻采样输入、更新输出,从而消除因通信顺序造成的采样时刻差异。

对于多轴插补、电子凸轮、飞剪等需要轴间严格同步的应用,DC 是必须启用的。启用后,主站会配置同步周期(通常等于通信周期),从站收到 SYNC0 信号后执行采样和输出。若 DC 未启用或同步质量差,多轴之间会出现微秒级甚至毫秒级的相位差,表现为轨迹偏差、同步误差报警或加工质量下降。

判断 DC 是否正常,可以观察从站的同步误差监视值。该值反映从站时钟与参考时钟的偏差,通常在纳秒到微秒量级。若持续增大或频繁超限,应检查网络布线、从站是否支持 DC、以及通信周期是否设置过小。

网络规划方法与周期估算

网络规划的核心是确定通信周期,并验证在该周期下网络负载是否可接受。EtherCAT 的通信周期由主站任务周期决定,常见取值为 1 ms、500 μs、250 μs,高速运动控制可到 125 μs。周期越短,控制响应越快,但对主站性能和网络质量要求越高。

一个实用的估算方法是:先统计所有从站的 PDO 总字节数,再结合从站数量和线缆长度估算单帧传输时间。EtherCAT 报文在 100 Mbit/s 下的传输速率约为每字节 80 ns,加上每个从站的处理延迟(典型 1 μs 左右)和线缆传播延迟(约 5 ns/m)。例如,20 个从站、总 PDO 数据 200 字节、线缆总长 100 m 时,单帧传输时间约为 200×80 ns + 20×1 μs + 100×5 ns ≈ 16 μs + 20 μs + 0.5 μs ≈ 36.5 μs。这只是单帧时间,实际周期还需留出主站处理、任务调度和余量,通常建议周期不低于单帧时间的 3~5 倍。

规划时还应考虑:把高实时性从站放在拓扑前端;避免在通信路径中混入非 EtherCAT 设备;对环网冗余要确认从站支持;对长距离或强干扰环境,考虑使用光纤或增加中继。完成规划后,应在 Sysmac Studio 中查看网络负载率和从站同步状态,确认无丢包、无同步超限,再进行实际运行验证。

EtherCAT 的“逻辑环、物理线”特性意味着从站顺序会影响延迟。把伺服等实时性要求高的设备靠近主站,是简单而有效的优化手段。
修改 PDO 映射后,主站变量偏移会变化。务必在程序中对相关变量引用做一次完整核对,避免出现“数据错位但无报警”的隐蔽故障。