3、应用层协议概览:CoE、FoE、SoE、EoE、AoE等协议类型的功能对比、适用场景与选择策略
EtherCAT 数据链路层提供了高效、确定性的实时报文传输机制,但真正决定设备“做什么、怎么做、如何描述”的是其应用层协议。EtherCAT 技术组(ETG)在规范中定义了多种应用层协议,以覆盖工业自动化中从运动控制、参数配置、固件升级到网络管理、远程诊断等不同需求。本章将系统梳理 CoE、FoE、SoE、EoE、AoE 五类协议的核心机制、功能边界与适用场景,并给出工程选型的判断路径。理解这些协议的差异,是进行从站设备固件设计、主站功能规划以及系统调试的基础。
上图展示了五类应用层协议与数据链路层的关系以及各自的核心应用场景。从工程实践看,CoE 是的主流选择,FoE 通常作为 CoE 的补充用于固件升级,而 SoE、EoE、AoE 则在特定场景下发挥不可替代的作用。下面逐一深入分析。
3.1 CoE:CANopen over EtherCAT——最通用的工业设备协议
核心原理
CoE 将 CANopen 协议的对象字典(Object Dictionary, OD)机制完整映射到 EtherCAT 报文之上。它保留了 CANopen 中 SDO(Service Data Object)和 PDO(Process Data Object)的概念,但传输载体从 CAN 总线换成了 EtherCAT 数据帧。CoE 通过 EtherCAT 状态机(Init → Pre-Op → Safe-Op → Op)与 CANopen 的 NMT 状态机进行映射,使得从站设备的状态切换与通信模式紧密耦合。
CoE 的关键机制包括:
- 对象字典(OD):每个从站维护一个 16 位索引 + 8 位子索引的地址空间,用于描述设备参数、过程数据、诊断信息等。
- SDO 服务:用于非周期、大块数据访问(如参数配置、诊断读取),支持分段传输和快速传输。
- PDO 服务:用于周期、实时过程数据交换(如速度指令、实际位置反馈),支持同步/异步触发模式。
- 紧急报文(Emergency):从站主动上报错误状态,主站可据此快速定位故障。
判断方法或操作流程
在工程选型时,判断是否采用 CoE 可遵循以下流程:
- 确认设备类型:如果设备是伺服驱动器、变频器、I/O 模块、传感器、阀门等标准工业设备,CoE 是首选。
- 检查是否需要周期过程数据:若需要实时交换位置、速度、电流等周期性数据,CoE 的 PDO 机制天然适配。
- 评估参数配置复杂度:若设备有大量可配置参数(如 PID 参数、滤波系数、报警阈值),CoE 的 SDO 服务提供了便捷的在线访问方式。
- 确认主站支持情况:几乎所有主流 EtherCAT 主站(TwinCAT、CODESYS、KPA、Acontis 等)都完整支持 CoE。
案例拆解:伺服驱动器参数配置与过程数据交换
某自动化设备厂商需要将一款国产伺服驱动器接入基于 TwinCAT 的 EtherCAT 控制系统。驱动器支持 CoE 协议,对象字典中定义了 0x6060(运行模式)、0x607A(目标位置)、0x6064(实际位置)等标准对象。
实施步骤:
- 在 TwinCAT 中扫描从站,识别到驱动器后自动加载其 ESI 文件(EtherCAT Slave Information),完成对象字典映射。
- 通过 SDO 写入 0x6060:0 = 8(位置模式),设置电子齿轮比 0x6091/0x6092。
- 配置 PDO 映射:将 0x607A(目标位置)映射到 TXPDO,将 0x6064(实际位置)映射到 RXPDO。
- 在 Op 状态下,主站以 1ms 周期发送目标位置,同时读取实际位置,实现闭环控制。
结果对比:采用 CoE 后,参数配置时间从原来的手动面板操作约 5 分钟缩短至 10 秒内完成,且支持在线修改和掉电保存。过程数据交换延迟小于 100μs,完全满足 1ms 控制周期要求。
常见误区与总结
- 误区一:认为 CoE 只适用于运动控制。实际上,CoE 适用于所有需要参数化配置和周期数据交换的设备,包括 I/O、温度模块、气动阀岛等。
- 误区二:忽略 SDO 分段传输。当传输数据超过 4 字节(快速传输上限)时,SDO 会自动切换为分段传输模式,若从站实现不完整,会导致大块参数读取失败。
- 误区三:将 PDO 与 SDO 混用。PDO 是周期性的、无确认机制;SDO 是非周期的、有确认机制。两者应严格区分使用场景。
3.2 FoE:File over EtherCAT——固件升级与文件传输的利器
核心原理
FoE 是一种基于 EtherCAT 的简单文件传输协议,其设计目标是在不依赖对象字典的情况下,实现从主站到从站(或反向)的文件传输。FoE 使用 UDP(Unified Datagram Protocol)风格的报文格式,通过 EtherCAT 数据帧承载文件数据块。它支持三种操作:Read(从站读取文件)、Write(向从站写入文件)、Data(数据传输)。
FoE 的典型应用场景是设备固件升级。在设备出厂前或现场维护时,通过 FoE 将新的固件镜像写入从站的 Flash 存储器中。由于 FoE 不依赖操作系统或文件系统,它可以在从站仅有 Bootloader 的情况下工作。
判断方法或操作流程
判断是否需要 FoE:
- 设备是否需要现场固件升级?
- 设备是否需要在无应用固件的情况下通过 Bootloader 加载固件?
- 是否需要传输配置文件(如 XML 描述文件)到从站?
FoE 操作流程(以固件升级为例):
- 主站将从站切换到 Boot 状态(通过 CoE 或直接状态机切换)。
- 主站发送 FoE Write 请求,包含文件名(如 "firmware.bin")和密码(可选)。
- 从站确认后,主站分块发送文件数据,每块包含序列号、校验和。
- 传输完成后,从站进行 CRC 校验,并返回确认信息。
- 主站将从站切换到 App 状态,新固件开始运行。
案例拆解:远程固件升级的完整闭环
某风电变桨系统使用 32 个 EtherCAT 从站(伺服驱动器 + I/O 模块),现场运行在偏远山区。由于控制算法优化,需要升级所有驱动器的固件版本。
约束条件:现场无工程师驻场,需通过远程方式完成升级;升级过程中不能中断其他从站的实时通信。
实施过程:
- 主站通过 CoE 将目标驱动器切换到 Pre-Op 状态,并发送 FoE 升级指令。
- 主站将固件文件(约 2MB)分块发送,每块 1KB,带 CRC32 校验。
- 传输完成后,从站自动进行 Flash 写入和校验,耗时约 30 秒。
- 主站将从站切回 Op 状态,验证固件版本号。
- 逐台升级其余 31 个从站,全程耗时约 20 分钟。
风险与代价:若升级过程中断电,从站可能变砖。因此,从站 Bootloader 必须支持“双备份”机制(A/B 分区),确保升级失败时可回滚到旧版本。
常见误区与总结
- 误区一:认为 FoE 可以替代 CoE。FoE 只负责文件传输,不提供参数配置和过程数据交换能力,两者是互补关系。
- 误区二:忽略 FoE 的超时机制。FoE 传输过程中,若从站长时间无响应,主站应设置超时(通常 5-10 秒)并重试,否则可能挂起整个升级流程。
- 误区三:在 Op 状态下进行 FoE 操作。FoE 应在 Pre-Op 或 Safe-Op 状态下进行,避免影响实时通信。
3.3 SoE:Servo over EtherCAT——传统伺服控制的延续
核心原理
SoE 源自 SERCOS(SErial Real-time Communication System)接口协议,专为伺服驱动器和运动控制设计。SoE 使用 IDN(Identification Number)作为参数寻址方式,替代了 CoE 的对象字典。IDN 是一个 16 位标识符,分为标准 IDN(如 S-0-0001 为驱动器状态)和厂商自定义 IDN(S-0-8000 以上)。
SoE 的核心优势在于其对伺服控制的高度优化:支持周期同步位置/速度/力矩控制、动态参数切换、以及丰富的诊断功能。对于已有 SERCOS 开发经验的团队,迁移到 SoE 可以复用大量代码和设计思路。
判断方法或操作流程
选择 SoE 的条件:
- 设备是高性能伺服驱动器,且已有 SERCOS 接口实现经验。
- 需要支持 SERCOS 特有的功能,如动态 IDN 切换、多轴同步。
- 主站(如 TwinCAT)对 SoE 有良好支持,且项目团队熟悉 IDN 寻址。
SoE 操作流程与 CoE 类似,但寻址方式不同:
- 通过 IDN 读取/写入参数(如 S-0-0001 控制字)。
- 配置周期过程数据(如 S-0-0015 速度指令)。
- 在 Op 状态下进行实时控制。
案例拆解:从 SERCOS 到 SoE 的迁移
某机床厂商原有基于 SERCOS 的伺服系统,现需升级到 EtherCAT 网络。团队评估后选择 SoE 而非 CoE,原因在于:
- 原有 SERCOS 驱动器的 IDN 映射表可直接复用,无需重新设计对象字典。
- 团队对 SERCOS 的同步机制和诊断功能非常熟悉,迁移风险低。
- SoE 对周期同步模式(CSP/CSV/CST)的支持与 SERCOS 完全一致。
实施结果:迁移后,系统性能与原有 SERCOS 相当,但网络拓扑更灵活(支持线型、树型),且可通过 EtherCAT 的分布式时钟实现更高精度的同步(<1μs)。
常见误区与总结
- 误区一:认为 SoE 比 CoE 性能更好。实际上,两者在 EtherCAT 上的实时性能几乎相同,差异主要在协议语义和寻址方式。
- 误区二:忽略 SoE 的 IDN 标准化。标准 IDN 是公开的,但厂商自定义 IDN 需要文档化,否则后续维护困难。
- 误区三:在非伺服设备上使用 SoE。SoE 专为运动控制设计,用于 I/O 或传感器设备会显得“大材小用”且不灵活。
3.4 EoE:Ethernet over EtherCAT——以太网设备的无缝接入
核心原理
EoE 将标准以太网帧封装在 EtherCAT 报文中传输,使得 EtherCAT 网络中的从站可以像连接普通交换机一样接入以太网设备。EoE 在从站内部实现了一个虚拟以太网交换机(Virtual Switch),将 EtherCAT 网络与外部以太网设备桥接。
EoE 的典型应用场景包括:
- 接入不支持 EtherCAT 的以太网设备(如普通摄像头、HTTP 服务器、Modbus TCP 网关)。
- 在 EtherCAT 网络中传输非实时数据(如诊断信息、网页配置界面)。
- 实现 EtherCAT 网络与上层 IT 网络的融合。
判断方法或操作流程
判断是否需要 EoE:
- 是否有标准以太网设备需要接入 EtherCAT 网络?
- 是否需要通过 EtherCAT 网络访问设备的 Web 界面或 TCP/IP 服务?
- 是否需要在 EtherCAT 网络中传输非周期性的大块数据(如视频流)?
EoE 配置流程:
- 在从站中启用 EoE 功能,并分配一个虚拟 MAC 地址和 IP 地址。
- 主站配置 EoE 端口代理,将 EtherCAT 报文中的以太网帧转发到主站网络接口。
- 外部设备通过主站网络访问从站下的以太网设备。
案例拆解:通过 EoE 接入工业相机
某视觉检测系统需要在 EtherCAT 网络中集成一个 GigE Vision 工业相机。相机仅支持标准以太网接口,不支持 EtherCAT。
方案:在相机与 EtherCAT 主站之间增加一个带 EoE 功能的从站模块(如 Beckhoff EL6601)。
实施步骤:
- 将相机连接到 EL6601 的 RJ45 端口。
- 在 TwinCAT 中启用 EoE 端口,并分配 IP 地址(如 192.168.1.100)。
- 主站通过 EoE 端口与相机通信,使用 GigE Vision 协议采集图像。
- 图像数据通过 EtherCAT 网络传输到主站,与运动控制同步。
结果:相机接入后,图像采集延迟约 2ms,满足检测节拍要求。EoE 的带宽占用约为 100Mbps,不影响 EtherCAT 的实时通信。
常见误区与总结
- 误区一:认为 EoE 可以替代 EtherCAT 的实时通信。EoE 本质上是非实时的,只适合传输非关键数据。
- 误区二:忽略 EoE 的带宽限制。EtherCAT 报文最大 1498 字节,EoE 封装后有效载荷减少,需合理规划网络带宽。
- 误区三:在 EoE 上运行实时协议(如 PROFINET RT)。EoE 的延迟和抖动无法保证实时性,应使用 EtherCAT 原生协议。
3.5 AoE:ADS over EtherCAT——主站间通信与跨网段访问
核心原理
AoE 将 TwinCAT 的 ADS(Automation Device Specification)协议封装在 EtherCAT 报文中,用于 EtherCAT 主站与从站之间、或主站与主站之间的通信。AoE 支持 ADS 的 Read、Write、ReadWrite、Notification 等命令,可以实现跨网段的数据访问。
AoE 的典型应用场景:
- 多个 EtherCAT 主站之间的数据交换(如生产线中不同控制器的协同)。
- 通过 EtherCAT 网络访问其他网段的设备(如通过路由器连接远程 I/O)。
- 在 TwinCAT 系统中实现分布式控制。
判断方法或操作流程
选择 AoE 的条件:
- 需要跨主站或跨网段通信。
- 使用 TwinCAT 作为主站,且需要与远程从站进行 ADS 通信。
- 需要将 EtherCAT 网络与上层 IT 网络隔离,但又要实现数据交换。
AoE 配置流程:
- 在主站中启用 AoE 路由,并配置目标从站的 ADS 地址。
- 通过 ADS 命令访问从站的对象字典或 IDN。
- 对于跨网段通信,需配置路由器或网关。
案例拆解:多主站协同控制
某印刷生产线由 3 个独立控制单元组成,每个单元使用独立的 EtherCAT 主站(TwinCAT)。单元之间需要同步印刷套准信号。
方案:通过 AoE 实现主站间通信。
实施步骤:
- 将 3 个主站通过 EtherCAT 网络连接,其中一个作为“主主站”,其余作为“从主站”。
- 在主主站中配置 AoE 路由,将套准信号写入从主站的 ADS 变量。
- 从主站通过 ADS Notification 实时接收套准信号,并调整本单元的印刷速度。
结果:套准精度从原来的 ±0.5mm 提升至 ±0.1mm,且无需额外的硬件同步线。
常见误区与总结
- 误区一:认为 AoE 可以替代 EoE。AoE 是 ADS 协议,EoE 是标准以太网帧,两者用途不同。
- 误区二:忽略 AoE 的安全性。AoE 不提供加密,在开放网络中传输敏感数据时需配合 VPN 或防火墙。
- 误区三:在非 TwinCAT 环境中使用 AoE。AoE 是 Beckhoff 专有协议,其他主站可能不支持。
3.6 协议选择策略与综合对比
| 协议 | 核心用途 | 寻址方式 | 实时性 | 典型设备 | 主站支持 | 复杂度 |
|---|---|---|---|---|---|---|
| CoE | 参数配置 + 过程数据 | 对象字典(16位索引+8位子索引) | 高(PDO) | 伺服、I/O、传感器、阀门 | 所有主流主站 | 中 |
| FoE | 文件传输(固件升级) | 文件名 + 密码 | 低(非周期) | 所有需升级的设备 | 所有主流主站 | 低 |
| SoE | 伺服控制(SERCOS 迁移) | IDN(16位标识符) | 高(周期同步) | 高性能伺服驱动器 | TwinCAT、部分主站 | 中高 |
| EoE | 以太网设备接入 | MAC/IP 地址 | 低(非实时) | 相机、网关、Web 服务器 | 所有主流主站 | 中 |
| AoE | 主站间通信 / ADS 访问 | ADS 地址(AMS NetId) | 中(取决于周期) | TwinCAT 控制器 | Beckhoff 主站 | 中 |
选择策略总结:
- 默认选择 CoE:除非有特殊需求,CoE 是最通用、生态最完善的选择。
- 固件升级必须用 FoE:CoE 不擅长文件传输,FoE 是标准方案。
- 已有 SERCOS 代码选 SoE:可复用 IDN 映射,降低迁移成本。
- 接入以太网设备选 EoE:但需评估带宽和实时性影响。
- 多主站协同选 AoE:仅限 TwinCAT 环境。
- 混合使用:实际项目中,CoE + FoE 是最常见的组合,EoE 和 AoE 按需添加。