3. EtherCAT网络基础与从站配置

EtherCAT(Ethernet for Control Automation Technology)是Omron Sysmac自动化平台中承担高速运动控制与远程I/O通信的主干现场总线。理解它的协议原理、拓扑结构、从站扫描机制以及PDO映射方式,是完成NJ/NX系列控制器与伺服、远程I/O、安全模块集成的基础。本节从数据帧处理机制出发,逐步过渡到实际从站配置与过程数据交换的观察方法。

一、EtherCAT协议原理:飞读飞写与逻辑寻址

EtherCAT与普通以太网最大的区别在于它不采用“接收—解析—转发”的存储转发方式,而是使用On-the-fly(飞读飞写)处理机制。主站发送一个标准以太网帧,帧内封装多个EtherCAT子报文,每个子报文携带逻辑地址、命令字和数据区。当该帧依次经过各从站时,从站的ESC(EtherCAT Slave Controller)芯片在帧经过的瞬间读取属于自己的输出数据、写入输入数据,然后立即把帧转发给下一个从站,无需完整缓存整帧。

这种机制带来两个关键特性:一是通信周期与从站数量几乎无关,只与帧长度和物理延迟有关;二是所有从站共享同一帧,因此需要逻辑寻址而非IP寻址。主站为每个从站分配一个16位逻辑地址,并在过程数据映像中为每个从站的数据分配固定偏移量。从站通过FMMU(Fieldbus Memory Management Unit)把逻辑地址映射到本地物理存储区,实现“按位置读写”。

EtherCAT使用分布式时钟(DC)实现从站间同步。主站周期性发送ARMW(Auto Increment Read Multiple Write)报文,各从站根据自身传播延迟补偿本地时钟,使所有从站的时钟偏差控制在纳秒级。对于NJ/NX控制器驱动1S系列伺服做多轴插补,DC同步是保证轴间同步精度的前提。

EtherCAT 飞读飞写数据帧处理与逻辑寻址 NJ/NX 主站 EtherCAT Master 逻辑地址分配 EtherCAT 帧 子报文1 | 子报文2 | … 从站1 伺服 ESC + FMMU 逻辑地址 0x1000 从站2 远程I/O ESC + FMMU 逻辑地址 0x1100 从站3 安全模块 ESC + FMMU 逻辑地址 0x1200 帧返回主站 输入数据已填充 过程映像更新 关键机制 • 帧不停留,边过边读写 • FMMU 逻辑地址映射 • 分布式时钟同步 • 周期与从站数弱相关

二、拓扑结构:线型、分支与冗余

EtherCAT物理层基于100BASE-TX,但拓扑不限于交换机星型。常见结构包括:

  • 线型(Daisy Chain):主站→从站1→从站2→…→末端从站。最常用,布线简单,但末端从站故障会影响其后所有从站。
  • 分支型:从站ESC通常带2~4个端口,可在一台从站处分出支路,形成树形。适合设备分布在不同机柜或工位的场景。
  • 环型冗余:主站两个网口分别接环网两端,正常时数据单向流动,断点发生时自动从另一方向重构,切换时间通常小于1个通信周期。NJ/NX支持此模式,需在Sysmac Studio中启用冗余并配置从站端口。

实际工程中,伺服驱动器常采用线型串联,远程I/O可挂在分支端口,安全模块建议靠近主站以减少安全响应时间。拓扑规划时需注意:每个从站的输入/输出延迟会累加,末端从站与主站之间的总延迟应小于通信周期的1/4,否则DC同步精度下降。

三、从站扫描与ESI文件

在Sysmac Studio中新建EtherCAT网络后,第一步是从站扫描。主站通过广播读取各从站EEPROM中的ESI(EtherCAT Slave Information)信息,包括厂商ID、产品代码、修订号、支持的PDO和同步模式。扫描结果会以树形列表显示在“EtherCAT”节点下。

若从站未被自动识别,通常有三种原因:ESI文件未安装、从站未上电、网线或端口故障。Omron提供ESI文件库,也可从从站厂商官网下载XML文件,通过“安装ESI文件”导入。导入后重新扫描,从站应出现在列表中,并显示其默认PDO配置。

扫描前建议先确认主站网口已启用EtherCAT模式,且通信周期设置为1ms或2ms。若周期过短而拓扑过长,扫描可能超时。

四、PDO映射与过程数据交换

PDO(Process Data Object)是EtherCAT周期通信中实际传输的过程数据单元。每个从站有两类PDO:TxPDO(从站→主站,如伺服的实际位置、状态字)和RxPDO(主站→从站,如目标位置、控制字)。PDO映射决定了哪些对象字典条目被放入PDO,以及它们在过程映像中的偏移和长度。

以1S系列伺服为例,默认映射通常包含:

PDO方向对象索引长度含义
RxPDO控制字0x604016 bit使能、启动、复位
RxPDO目标位置0x607A32 bit位置指令
TxPDO状态字0x604116 bit就绪、报警、到位
TxPDO实际位置0x606432 bit位置反馈

在Sysmac Studio中,PDO映射可在从站“过程数据”编辑器中查看和修改。修改后需重新下载配置,主站会重新计算过程映像大小。若映射总长度超过从站ESC缓冲区,下载会报错,此时需精简映射或提高通信周期。

过程数据交换的观察方法:在“监视”选项卡中查看各从站的输入/输出变量,或在用户程序中直接引用映射后的变量名(如MC_Axis001.ActPos)。若数据不更新,检查从站是否进入OP状态、DC是否同步、PDO映射是否与从站实际支持一致。

示例:NJ501-1500 + 1S伺服 + GX远程I/O
通信周期:1 ms
DC模式:启用,同步窗口 500 ns
从站1(伺服):RxPDO 0x6040+0x607A,TxPDO 0x6041+0x6064
从站2(远程I/O):RxPDO 16 bit输出,TxPDO 16 bit输入
过程映像总长度:约 24 字节
观察点:MC_Axis001.Status 的 bit10(Target reached)在定位完成后置1

五、从站状态机与配置检查

EtherCAT从站遵循ESM(EtherCAT State Machine)状态机:Init → Pre-Operational → Safe-Operational → Operational。扫描完成后从站通常处于Pre-OP,此时可读写邮箱参数但无过程数据。下载配置后主站请求进入Safe-OP,从站开始发送输入数据但输出保持安全状态。确认无错误后进入OP,过程数据双向交换。

若从站无法进入OP,常见原因包括:PDO映射不匹配、DC同步失败、看门狗超时、从站硬件故障。Sysmac Studio的“EtherCAT诊断”窗口会显示当前状态和错误码,例如0x001B表示同步管理器看门狗超时,0x0024表示无效输出配置。根据错误码调整映射或周期后重新下载即可。

从站进入OP后,若通信中断超过看门狗时间,从站会自动切回Safe-OP并停止输出,伺服会按配置的故障动作停机。调试阶段建议先低速、小行程试运行,确认PDO数据正确后再投入全速运行。