在多轴伺服系统里,如果要同时满足 高轴数、高带宽、强同步,EtherCAT 基本是绕不过去的选择。
它本质上是一个基于以太网的现场总线,能实现非常短的循环周期和极低抖动,非常适合 CNC、机器人和高速包装等场合。
本文从工程实战角度,重点看三件事:
- 拓扑:伺服系统中 EtherCAT 一般怎么布线?
- 分布式时钟(DC):为什么 EtherCAT 的同步这么强?
- 调试清单:新线一个个伺服挂上 EtherCAT 时,要按什么步骤调?
一、EtherCAT 拓扑:如何把几十台伺服“串成一条线”?
1. 典型拓扑类型
EtherCAT 支持多种拓扑:线型、树型、星型,或这些的任意组合。 在伺服系统中最常见的是:
- 线型(Line):主站 → 伺服1 → 伺服2 → … → 伺服N
- 树型 / 分支(Tree):中间用分支模块 / 多口驱动器拉出支线
- 环型(Line + Loop-back):首尾相连做逻辑环,提高抗断线能力
EtherCAT 的关键是:报文在每个从站“边转发边处理”,而不是传统那种一站一帧,因此在 100M 以太网上也能高效支持大量伺服轴的高速刷新。
2. 伺服系统常见布线策略
实际项目里常见几种布线模式:
- 直线串接模式
控制器(PLC / CNC / 运动控制器) → 伺服驱动器依次串联。
适合 4–16 轴的小中型系统,布线最简单。 - 主干 + 支线模式
主干线串接一部分伺服 + I/O,在某些节点用耦合器 / 多口驱动器分出支线。
适合大型装配线、龙门线、高轴数设备。 - 折返 / 环网模式
起点与终点连接成逻辑环(设备支持时),一端线缆断开仍可维持一定通讯能力。
3. 拓扑设计中的实用建议
- 逻辑邻近 = 物理邻近:同一机械模块的伺服尽量串在一起,便于维护和排故。
- 预留扩展节点:中间预留耦合器 / 多口驱动器端口,方便后续增加轴或 I/O。
- 线缆长度:单段网线理论可到 100m,但在伺服网中一般保持 10–20m 内,更稳。
二、分布式时钟(Distributed Clocks):让所有伺服“脚步一致”
1. 为什么要分布式时钟?
多轴伺服中最麻烦的问题之一是同步误差和抖动:
- 如果各轴完全靠本地时钟,受通讯抖动和任务调度影响,轴间同步会漂。
- 高端应用(插补、电子凸轮、多轴联动)对同步极其敏感,微秒级误差都可能变成轨迹偏差。
EtherCAT 的解决方案就是Distributed Clocks(DC):在从站硬件里集成高精度本地时钟,通过主站统一校准,使所有伺服共享同一“系统时间”。
2. DC 的基本工作原理(工程师版)
简化理解分布式时钟的流程:
- 选定参考时钟
网络中第一个支持 DC 的从站通常被当作参考时钟。 - 主站发送时间标记报文
主站广播报文,每个从站在报文经过时由硬件捕获本地时钟时间戳。 - 计算传播时间和偏差
主站读取各从站时间戳,对比参考时钟,算出每个从站的偏移与链路延迟。 - 微调本地时钟
主站定期给各从站发送“校时指令”,让本地时钟略微加速/减速,逐步对齐参考。
最终效果是:所有伺服驱动共享同一系统时基,抖动可压到微秒甚至更低。由于 DC 是硬件实现,比软件计时更稳定。
3. 同步模式:Free Run / SM 同步 / DC 同步
常见三种同步方式:
- Free Run
各从站按自己的节奏跑,无统一时基,只适合简单 IO 应用。 - SM Event 同步
通过同步事件(Sync Manager)触发更新,比 Free Run 好一些,但仍受通讯抖动影响。 - DC SYNC 同步
基于分布式时钟,在本地时钟达到给定时间点时更新控制周期。
即使通讯周期有微小变化,各轴仍按统一时间基准执行,是多轴伺服推荐的同步方式。
三、伺服协议:CiA 402 / CoE / SoE 是啥?
在 EtherCAT 上跑伺服时,通常会用到标准化的驱动“轮廓”(Profile),最常见的是:
1. CoE + CiA 402 驱动轮廓
- CoE(CANopen over EtherCAT):在 EtherCAT 上复用 CANopen 的对象字典结构。
- CiA 402:针对伺服、步进、电机驱动和变频器的标准轮廓,定义了:
- 驱动状态机:如 Ready to Switch On, Switched On, Operation Enabled 等;
- 运行模式:位置模式、速度模式、力矩模式等。
2. SoE(Servo over EtherCAT)
SoE 主要基于 SERCOS 驱动轮廓,在 EtherCAT 邮箱通道中实现,更多见于高端伺服品牌。
工程上,只要看到驱动器标注 “EtherCAT + CiA 402 / CoE / SoE”,一般都能与主流 EtherCAT 运动控制器互通,具体 PDO 映射和电机参数按各自手册配置即可。
四、EtherCAT 伺服系统调试清单(实战版)
前提:伺服单机(本地)已经调试通过:电机参数正确、本地点动正常。下面只讲 EtherCAT 部分。
Step 1:物理连接与拓扑确认
- 控制器 EtherCAT 端口 → 第一台伺服 EtherCAT IN;
- 伺服之间按规划好的顺序串接,必要时使用分支模块 / 多口驱动器;
- 上电后,检查各伺服的 Link / Run 指示灯状态。
Checklist:
- [ ] 网线插接牢靠,屏蔽良好;
- [ ] 实际挂接伺服数量与设计一致;
- [ ] 伺服轴编号与机械轴编号一一对应(最好贴标签)。
Step 2:主站工程中扫描从站 & 导入 ESI
- 安装伺服厂家提供的 ESI(XML)文件;
- 在 PLC / 运动控制工程软件中执行Scan,识别网络上的从站列表;
- 核对设备型号、Vendor ID、Product Code 等信息。
Checklist:
- [ ] 所有伺服都被正确识别到;
- [ ] 工程中的拓扑顺序与实际布线一致;
- [ ] 没有 “Unknown Slave” 或 ID 冲突告警。
Step 3:基本通信状态与驱动状态机
- 确认主站能将从站从 INIT → PRE-OP → SAFE-OP → OP;
- 对于 CiA 402 驱动,正确操作控制字:
- Shutdown → Switch On → Enable Operation 的顺序;
- 通过状态字监控:Ready to Switch On / Switched On / Operation Enabled 等状态。
Checklist:
- [ ] 各轴都可以平稳进入 Operation Enabled 状态;
- [ ] 无莫名其妙的状态跳变或 “切不过去” 的情况。
Step 4:PDO 映射与单位缩放
- 确认 RxPDO(主站 → 从站)包含:
- 控制字(Control Word);
- 目标位置 / 目标速度 / 目标力矩;
- 运行模式(Mode of Operation)。
- 确认 TxPDO(从站 → 主站)包含:
- 状态字(Status Word);
- 实际位置 / 实际速度 / 实际力矩;
- 故障码等。
注意:位置/速度/力矩在驱动内部往往是编码器脉冲、脉冲/秒、百分比等,需要在 PLC / 控制器侧统一做缩放,换算成 mm、deg、rpm 等。
Checklist:
- [ ] PDO 映射与驱动说明书一致;
- [ ] 单轴点动时,实际机械位移与位置反馈一致(方向、距离正确);
- [ ] 所有轴的正方向、单位已统一,方便后面做插补。
Step 5:启用分布式时钟(DC)
- 在 EtherCAT 配置中启用 DC 功能,选择一个从站作为参考时钟(多数软件自动选择首个支持 DC 的从站)。
- 为各伺服轴设置同步模式为 DC SYNC,设定控制周期(如 0.5 ms / 1 ms / 2 ms)。
- 下载配置、运行主站,观察:
- 驱动器上的同步状态指示是否正常;
- 工程软件中是否存在 DC 错误或超时告警。
Checklist:
- [ ] DC 已启用且无报错;
- [ ] 多轴做匀速同步运动时,机械上无明显跟随误差;
- [ ] 高要求场合下可用示波器 / 专用工具做同步精度验证。
Step 6:多轴联动与故障场景测试
- 多轴插补测试
做直线插补、圆弧插补测试;对电子齿轮 / 电子凸轮等逻辑进行实际验证。 - 故障 / 异常测试
模拟: - 某一轴伺服故障 / 停电;
- EtherCAT 线缆断开或通讯中断;
- 急停 / 安全回路动作。
检查整体停机逻辑:是否按设计进入安全状态,是否存在“有的轴停、有的轴还在跑”的危险情况。
Checklist:
- [ ] 多轴运动平稳、轨迹精度满足工艺要求;
- [ ] 常见故障场景下系统行为符合安全设计;
- [ ] 完成一份 EtherCAT 网络拓扑 + 轴参数 + DC 配置的文档备份。
五、小结:把 EtherCAT 用好,比“会接线”多两步
一句话概括 EtherCAT 在伺服控制里的价值:
用一条普通百兆以太网线,实现多轴、高带宽、硬件级同步(DC)和标准化伺服协议(CiA 402 / SoE),非常适合多轴运动控制。
要把 EtherCAT 伺服系统用好,有三点特别关键:
- 拓扑要清爽:线型 + 合理分支即可,既易维护又易扩展。
- 分布式时钟一定要启用:多轴伺服不开 DC,相当于高速车不上高速公路,发挥不出优势。
- 调试按清单走:从扫描从站、PDO 映射、单位缩放,到 DC 配置、联动与故障测试,一个步骤都不要省。
只要这几步做到位,EtherCAT 伺服系统的调试体验,往往比传统现场总线轻松很多。