EtherCAT 标准全景:为什么电机遵循 CiA 402、I/O 模块遵循 CiA 401?





EtherCAT 标准全景:为什么电机遵循 CiA 402、I/O 模块遵循 CiA 401?

做 EtherCAT 从站或做系统集成,迟早会撞上这么一句话:“伺服要走 CiA 402,I/O 模块要走 CiA 401。” 照做没问题,但很多人心里一直有个疙瘩——CiA 不是 CANopen 那边的组织吗?为什么 EtherCAT 的标准里会出现 CANopen 的行规?还有 ETG.6010、ETG.2000、IEC 61800-7 这些编号,到底谁管谁?

这篇把整套标准体系一次拆开。核心结论先放这儿:

EtherCAT 标准不是一个文件,是一个四层体系。下层规定”怎么把数据准时送到”,上层规定”设备是什么、怎么被控制”。CiA 401 / 402 属于最上层的设备行规,它们本来是 CANopen 的,靠 CoE 搬上了 EtherCAT;而 ETG.6010 又把它们收窄成 EtherCAT 伺服的统一行为。所以”电机遵循 CiA 402″这句话,其实省略了中间两三层。

EtherCAT 从站设备与标准文档
伺服驱动、模块化 I/O、编码器与交换机——不同设备,遵循不同行规

一、先分层:EtherCAT 标准的四层结构

最常见的误解,是把”EtherCAT 标准”等同于 ETG.1000。其实 ETG.1000(Parts 2~6)只定义了通信:物理层、数据链路层、应用层服务与协议。它回答”一个 EtherCAT 帧怎么飞过从站”,完全不回答”从站里 0x6040 这个索引是什么意思”。

EtherCAT 标准四层结构
从国际标准到设备行规:下层管”运力”,上层管”语义”
层 管什么 代表规范
L1 国际标准 把 EtherCAT 写进 IEC 体系,确立合法身份 IEC 61158 Type 12(ETG.1000 即其实现)、IEC 61784-2 CPF 12(实时以太网通信行规)、IEC 61784-5-12(安装行规)、IEC 61800-7-201/-301(驱动行规及其网络映射)、IEC 61784-3 FSCP 12(功能安全通信)
L2 ETG 技术规范 协议细节、设备描述、实现与测试规则 ETG.1000(2~6) 通信规范、ETG.1020 协议增强、ETG.2000 ESI、ETG.2100 ENI、ETG.2200 从站实现指南、ETG.1500 主站等级、ETG.1600 安装指南
L3 应用层协议 数据以什么模型组织、走哪条通道 CoE CANopen over EtherCAT、SoE SERCOS over EtherCAT、FSoE 安全、EoE 以太网透传、FoE 文件传输、AoE ADS、VoE 厂商自定义
L4 设备行规 设备是什么、索引什么含义、怎么被控制 CiA 401 I/O、CiA 402 驱动、CiA 404/406/408/410…、ETG.5001 MDP、ETG.6010 CiA402 实施指令、ETG.6100 安全驱动

一句话记住这个分层:主站靠 ESI(ETG.2000)认识从站,靠行规知道 0x6040 是控制字、0x6000 是数字输入。 少了 L4,”支持 EtherCAT”只是一句运输能力的承诺,不构成互操作性。

二、关键机制:CoE 把 CANopen 行规搬上 EtherCAT

为什么 EtherCAT 不自己发明一套设备数据模型?因为到它诞生时,伺服与 I/O 生态已经在 CANopen 上跑了近二十年。EtherCAT 做了一个很聪明的选择:不发明新东西,只把验证过的东西搬上更快的车——这就是 CoE(CANopen over EtherCAT)。

CoE 协议栈与对象字典
CoE 整体继承 CANopen 的对象字典;SDO 走邮箱慢车道配置,PDO 走过程数据快车道控制

继承下来的核心资产是对象字典(16 位主索引 + 8 位子索引):每个参数、每个状态都有统一”门牌号”。通道分两条:

  • PDO(过程数据,快车道):经 SM2/SM3 每周期无握手刷新。控制字、目标位置、实际位置、状态字都在这里飞。
  • SDO(服务数据,慢车道):经 SM0/SM1 邮箱一问一答,用于上电配置、参数读写、诊断,不进实时环路。

PDO 映射本身还是个三层套娃:0x1600/0x1A00 决定”座次表”,0x1C12/0x1C13 决定哪张表生效,0x1C32/0x1C33 与 SM2/SM3 绑定并藏着周期时间与同步模式(直接关联分布式时钟 DC)。

最关键的推论:行规与总线是解耦的。 CiA 402 定义的是应用层行为(控制字怎么跳状态机、有哪些操作模式),总线只负责把这些对象准时送到。所以同一份状态机代码,在 CANopen、EtherCAT(CoE)、PROFINET、POWERLINK 上都能用——只是承载它的”车”不同,设备描述文件也不同(EtherCAT 用 ESI,CANopen 用 EDS/DCF,PROFINET 用 GSDML)。

顺带把 L3 其他几个协议也理清,别混淆:

协议 用途 和行规的关系
CoE CANopen 对象字典/SDO/PDO 跑在 EtherCAT 上 CiA 4xx 行规的主要承载者,本文主角
SoE SERCOS III 行规(IEC 61800-7-204)跑在 EtherCAT 上 驱动的另一条路线,与 CoE+CiA402 并存
FSoE 安全数据以”黑通道”方式嵌入过程数据 对应 ETG.5100 / IEC 61784-3 FSCP 12,TÜV 认证可支持到 SIL 3
EoE / FoE / AoE / VoE 以太网帧透传 / 固件文件传输 / ADS 路由 / 厂商自定义 属于邮箱服务,不定义设备行为

三、设备行规族谱:CiA 4xx 谁管什么

先纠正一个归属:CiA 4xx 系列由 CiA(CAN in Automation)维护,不是 ETG 制定的。ETG 做的是规定”它们在 EtherCAT 上怎么落地”(下一节讲)。

CiA 设备行规族谱
通用设备行规、部件与能源、接口与专用,加上 ETG 自有行规
行规 管辖对象 典型设备
CiA 401 通用数字/模拟 I/O 模块 分布式 I/O 端子、阀岛、远程采集
CiA 402 驱动器与运动控制(最广泛部署) 伺服、步进、变频器
CiA 404 测量设备与闭环控制器 测量仪表、闭环调节模块
CiA 406 旋转/线性编码器 绝对值与增量式编码器
CiA 408 流体动力技术 比例阀、液压传动
CiA 410 倾角仪 双轴倾角传感器
CiA 418 / 419 / 458 电池模块 / 充电器 / 能量测量 AGV、储能、电能表
CiA 445 / 446 / 463 RFID / AS-i 网关 / IO-Link 网关 各类协议网关
CiA 450 / 453 / 452 / 460 泵 / 电源 / PLCopen 运动控制 / 服务机器人 专用设备与上层功能映射

两类行规别混: CiA 401/402/404/406/408/410 属于通用设备行规(generic device profile),按”设备类型”定义;而 CiA 415(筑路机械传感器)、417(电梯控制)、422(市政车辆)、423(轨道车辆动力)这类属于应用行规(application profile),按”行业整机”定义。做从站产品通常只需要前者。

控制柜中的 EtherCAT 从站设备
一台控制柜里往往同时存在遵循不同行规的从站:I/O 模块、伺服驱动、网关

四、CiA 401 vs CiA 402 正面对照

回到开头那个问题。两者都是设备行规,都由 CoE 承载,都写进 ESI——但复杂程度完全不在一个量级。

CiA 401 与 CiA 402 对照
I/O 模块上电即用;驱动器要跑状态机、选模式、配 DC 同步
维度 CiA 401(I/O) CiA 402(驱动)
核心对象 0x6000 DI、0x6200 DO、0x6401 AI、0x6411 AO 0x6040 控制字、0x6041 状态字、0x6060 模式、0x607A 目标位置、0x6064 实际位置
过程数据 几位/几字节 I/O 状态,每周期原样刷新 每周期送设定值、回实际值,还要位定义随模式变化
状态模型 无状态机,上电即用 402 状态机(Switch On Disabled → Ready → Switched On → Operation Enabled)+ 故障/快停分支
操作模式 无 PP / PV / TQ / HM / IP / CSP / CSV / CST 等,由 0x6060 选择
同步要求 宽松 硬实时,常需 DC 分布式时钟与 Sync0 对齐

三个容易踩空的细节

对象字典分区与 401/402 索引
两者共用 0x6000 起的行规区,但一台设备只实现一种行规

① 共用同一段索引,却不会打架。 0x6000 起的”标准化行规区”是公共地址空间,CiA 401 和 CiA 402 都往里放对象。之所以不冲突,是因为一台设备只实现一种行规:I/O 模块不会去实现 0x6040,伺服也不会去实现 0x6200。索引只是门牌号,行规才规定门牌里住的是谁。

② 多轴驱动器按 0x800 偏移。 多轴 CiA 402 从站,第二轴起对象整体平移:轴 1 用 0x6000–0x67FF,轴 2 用 0x6800–0x6FFF,轴 3 用 0x7000–0x77FF。于是轴 2 的控制字是 0x6840、目标位置 0x687A。做多轴 ESI 时漏了这个偏移,主站扫描出来就只有一根轴能动。

③ EtherCAT 的 I/O 不一定走 CiA 401。 很多模块化 I/O 从站走的是 ETG.5001 MDP(Modular Device Profile),用”模块 + 通道”的结构化方式描述自己,而不是经典 CANopen 的 0x6000/0x6200。两条路线并存,选型时务必看 ESI 里声明的 Profile,别默认”I/O 就是 CiA 401″。

五、ETG 自己的行规与那道”收敛指令”

这一节是很多资料讲不清、但对”通用性”最要紧的一环。

IEC 61800-7-201 把 CiA 402 写成了国际标准(Profile Type 1),IEC 61800-7-301 规定它怎么映射到网络技术。听起来很完备,但 ETG 官方对 ETG.6010 的说明是这样的:

“IEC 61800-7 定义了大量可选对象和操作模式。本文件旨在为支持 CiA 402 行规的 EtherCAT 伺服驱动器定义一套共同行为。”

翻译过来:标准太宽松了,各家”都支持 CiA 402″仍可能互不兼容。 你实现这 10 个可选对象、我实现另外 10 个,你 CSP 默认 PDO 这么排、我那么排——主站照样得为每家写适配。ETG.6010 就是把这些含糊处钉死:哪些对象必备、PDO 默认怎么映射、状态机怎么走、同步模式怎么配。这才是”不同品牌 EtherCAT 伺服能换着用、主站一套代码带多家驱动”的真正原因。

ETG 自有的其他行规与规范,按用途速查:

规范 作用
ETG.6010 CiA 402 在 EtherCAT 上的实施指令(含状态机章节、PDO/同步约定)
ETG.5001 MDP 模块化设备行规,把 I/O 按模块与通道结构化描述;ETG.5001.4 为安全模块
ETG.6100 / ETG.5100 / ETG.5120 安全驱动行规 / FSoE 安全协议 / 协议增强
ETG.5003(含 .2 固件更新) 半导体设备行规,其固件更新规范也可作为任意从站的参考
ETG.2000 / 2001 / 2010 ESI 设备描述 XML schema / 注释示例 / SII(从站 EEPROM)结构
ETG.2100 / ETG.1005 ENI 网络组态文件 / EAP 自动化协议
ETG.1020 / ETG.1300 / ETG.9001 协议增强 / 指示灯与标签 / 商标与标记规则

六、一致性:ESI → CTT → Plug Fest

标准写得再好,也得有办法验证”你到底遵没遵”。这条链路是:

  • ESI(ETG.2000):从站的”户口本”,XML 描述厂商 ID、产品号、对象字典、PDO、同步能力。主站扫描设备、组态工具生成 ENI(ETG.2100) 全靠它。
  • CTT(ETG.7000 / 7010 指南 / 9000、9003 政策):一致性测试工具,逐项检查协议行为、ESI 合规性、状态机、错误处理。这是”及格线”。
  • Plug Fest(ETG.7200):ETG 组织的跨厂商互操作联调,把各家主站和从站放一起实测。2026 年欧洲站有 30 家厂商、69 名开发者参加,是这类活动的常态规模。
  • 跨主站实测:TwinCAT / IgH / CODESYS 上都能进 OP 才算”实战线”——这也是我们之前用双主站验证 CSP 驱动器时做的事。
从站标准化落地流程
CTT 证明”合规”,跨主站实测证明”真的通用”

三本账必须对齐: ESI XML 里声明的对象/PDO、固件里真实实现的对象字典、主站组态里的映射,三者索引与长度必须一致。0x1018 的厂商 ID 与 ESI 的 Vendor Id 差一个字符,主站就可能拒认;PDO 映射长度与 SM 配置不符,轻则卡在 Safe-Op 报 0x001D,重则根本进不了 OP。这类问题在双主站验证里最常暴露。

七、落地清单:开发者与集成商各查什么

角色 按这个顺序过一遍
从站开发者 ① 按设备类型选行规(I/O → CiA 401 或 MDP;驱动 → CiA 402)
② 实现必备对象字典,驱动务必对照 ETG.6010
③ 写 ESI(ETG.2000),与固件 0x1018 严格一致
④ 配 PDO 映射三层(0x1600/0x1A00 → 0x1C12/0x1C13 → SM2/SM3)与 DC
⑤ 跑 CTT 拿一致性记录
⑥ 换 TwinCAT / IgH / CODESYS 各跑一遍
集成商 / 选型 ① 看 ESI 声明的 Profile,别只信”支持 EtherCAT”四个字
② 驱动查 0x6502(支持的驱动模式),确认有你要的 CSP/CSV/CST
③ 查是否支持 DC 同步、Sync0 对齐能力
④ 查是否通过 CTT、有无一致性证书
⑤ 复杂多轴先做跨主站小样验证再批量

给赶时间的人的一句话:做 I/O 从站,先想清楚走 CiA 401 还是 ETG.5001 MDP;做伺服从站,CiA 402 只是入场券,真正决定能不能被各家主站带起来的是 ETG.6010 + 一份和固件完全对齐的 ESI。

标准体系看着编号繁多,理顺了其实就一条主线:协议负责准时送到,行规负责语义统一,实施指令负责消除可选项,一致性测试负责证明你没跑偏。 四件事各司其职,才有”换个品牌、换个主站都能跑”的通用性。

系列前作,按需延伸阅读:

本文首发于 海川嵌入式电子网。文中标准编号依据 IEC / CiA / ETG 公开资料整理,具体项目请以官方现行版本规范为准。转载请注明出处。


发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注

滚动至顶部