EtherCAT 从站配置:XML 与分布式时钟(DC)

EtherCAT 从站上线要做对两件事:导入正确的 XML 从站描述文件(ESI),以及让状态机从 INIT 一路推进到 OP。前者决定主站能否识别设备与解析过程数据,后者决定数据是否真正开始交换。配置分布式时钟(DC)则是同步应用的额外一步。EtherCAT 没有终端电阻、没有站地址拨码,但它对接线顺序极其敏感——IN/OUT 接反会导致识别顺序错乱。本文对应产品 197 EtherCAT 系列,实时性机理见 EtherCAT 实时性揭秘:DC 同步与抖动

EtherCAT 从站配置:XML 与分布式时钟(DC)
EtherCAT 从站配置:XML 与分布式时钟(DC)

ESI(XML)描述文件:主站识别设备的依据

EtherCAT 从站描述文件是 XML 格式,行业内称 ESI(EtherCAT Slave Information)。它向主站声明:厂商 ID 与产品码、支持的同步管理器配置、过程数据(PDO)映射条目、支持的 DC 同步模式、以及可用的 CoE(CANopen over EtherCAT)对象。

位移传感器的位置值同样以 INT32 表示,通过 CoE 机制沿用 CANopen 对象字典的组织方式——即 0x6000 区的位置值对象,参数读写走 SDO 语义。因此熟悉 CANopen 的工程师切换到 EtherCAT 时,对象层面的概念可以直接迁移,差别主要在传输层。CANopen 侧的基础见 CANopen 入门:对象字典与 PDO/SDO 分工

使用 ESI 的注意事项与 GSD 类似但更严格:产品码与固件版本不匹配时,主站扫描会提示设备不一致,部分主站允许强制忽略,但强行运行可能导致 PDO 映射偏移错误,读出的是错位数据。正确做法是取与实物一致的 ESI 版本,放入主站的 ESI 目录后重启主站工程软件再扫描。

状态机:INIT / PRE-OP / SAFE-OP / OP

状态邮箱通信(SDO)过程数据(PDO)该阶段完成的事
INIT不可用不可用主站分配站地址、初始化同步管理器
PRE-OP可用不可用通过 SDO 写参数、配置 PDO 映射与 DC
SAFE-OP可用仅输入有效从站开始上报位置值,输出仍保持安全值
OP可用输入输出均有效正常运行

对只有输入数据的位移传感器而言,SAFE-OP 与 OP 的位置值都能读到,这一点常引起误判——看到有数据就以为配置完成,实际主站可能因某个从站卡在 SAFE-OP 而未整体进入 OP。调试时应确认所有从站均处于 OP。

状态机卡住时,主站一般会给出 AL Status Code(应用层状态码)。常见的卡点是:PRE-OP → SAFE-OP 失败多与同步管理器/PDO 配置与 ESI 不一致有关;SAFE-OP → OP 失败多与 DC 同步未建立或看门狗超时有关。按这两个方向查,比盲目重启有效。

分布式时钟(DC)配置要点

DC 的作用是让网络上所有从站拥有一个统一时基,使各站在同一时刻采样。主站会自动测量各从站的传播延迟并周期性补偿时钟漂移,工程师需要做的通常是三项选择:

  • 选择参考时钟:一般由主站指定第一个支持 DC 的从站作为参考时钟,其余从站与之对齐。
  • 选择同步模式:常见为自由运行(FreeRun)与 DC 同步。要求多轴采样时刻一致时必须选 DC 同步。
  • 设定循环周期:这是最容易设错的一项。周期不应短于传感器自身的更新率——磁致伸缩需要等待扭转波从磁环传回电子头,量程越长单次测量耗时越久(较短量程约 0.5 ms 量级,超长量程可达数毫秒)。周期设得比更新率还短,只会连续读到同一个数值,控制器会误判位置停滞。匹配方法见 响应时间/刷新率怎么和控制周期匹配

接线顺序与站别名:EtherCAT 的物理层特点

EtherCAT 基于标准以太网物理层,不需要终端电阻(这是与 CANopen、Profibus 的根本差异,对比见 终端电阻与总线长度),但引入了另一类问题:

  • IN / OUT 口不可互换。EtherCAT 报文按物理串接顺序穿越各从站,主站默认按接线顺序分配站地址。把某台设备的 IN、OUT 接反,或在链路中间插错位置,会导致设备编号整体错位——现象是"1 号轴的数据出现在 3 号轴上",通信却完全正常,极具迷惑性。
  • 热连接与站别名。若允许现场更换设备或调整顺序,应启用站别名(Station Alias),由设备侧固化一个别名,主站按别名而非物理位置识别。否则任何一次换线都要重新核对整链顺序。
  • 链路质量看错误计数器。EtherCAT 从站芯片内部有各端口的 CRC 错误计数器。计数器只增不减,因此排查时要先清零再观察增量。某一端口计数持续增长,问题基本就在该端口上游的那段网线或接插件上。

紧凑安装或节点密集时可考虑单 M12 接口型号,见 198 单 M12 EtherCAT 详解;产品参数与接线定义见 197 EtherCAT 系列详解;协议横向取舍见 总线型全系对比;接线通用规范见 总线实操指南

常见问题

Q:EtherCAT 的 ESI 文件版本必须一致吗?

必须。产品码与固件版本不匹配时主站扫描会提示设备不一致,部分主站允许强制忽略,但强行运行可能造成 PDO 映射偏移错误,读出的是看似合理的错位数据。应取与实物一致的 ESI 并重启工程软件后再扫描。

Q:从站停在 SAFE-OP 也能读到位置值吗?

能。SAFE-OP 状态下输入数据已有效,只有输出保持安全值。因此看到位置值有数并不代表配置完成,调试时必须确认所有从站均进入 OP 状态。

Q:状态机卡住该往哪个方向查?

PRE-OP 到 SAFE-OP 失败多与同步管理器或 PDO 配置和 ESI 不一致有关;SAFE-OP 到 OP 失败多与 DC 同步未建立或看门狗超时有关。按 AL Status Code 结合这两个方向排查比盲目重启有效。

Q:EtherCAT 需要终端电阻吗?

不需要。EtherCAT 基于标准以太网点对点链路,阻抗匹配由网口变压器与线缆规范保证。它的物理层重点是 IN/OUT 串接顺序不能接反,接反会导致站地址整体错位而通信却完全正常。

Q:EtherCAT 循环周期越短越好吗?

不是。周期不应短于传感器自身更新率。磁致伸缩需等待扭转波从磁环传回电子头,量程越长耗时越久(较短量程约 0.5 ms 量级,超长量程可达数毫秒)。周期过短只会连续读到重复值,控制器会误判位置停滞。

← 返回行业动态