第 8 章 实时工业以太网速览¶
EtherCAT、PROFINET IRT、Ethernet POWERLINK 与 Sercos III 共同构成"实时工业以太网"家族:它们把以太网从"尽力而为"改造成能承担运动控制级实时的传输,周期能压到 100 μs–1 ms、抖动可到亚微秒。本章只做概览级展开——建立家族画像、机制要点与选型判据,不覆盖具体协议帧结构与从站开发。
机器人上的应用位置:EtherCAT 既出现在控制器 ↔ 多轴运动卡 / 高精度伺服之间,也直接下沉到协作臂与人形的关节层(CoE + DS 402,第 5 章);CAN / CAN FD + CANopen 则覆盖成本敏感的小型关节与传感器聚合。本章末尾给出五轴横向选型表,是全笔记第 1 章「五轴选型坐标系」建立坐标系的兑现。
一帧遍历全部从站 + 分布式时钟:
flowchart LR
m["主站"] -->|"单个以太网帧"| s1["从站 1"] --> s2["从站 2"] --> ret["返回主站"]
dc["分布式时钟同步"] -.-> s1
dc -.-> s2
1. 工业以太网与现场总线的取向差异¶
现场总线(第 1 章定义)与工业以太网常被混着说,但协议取向差异明显:
| 维度 | 现场总线(CAN / Modbus) | 实时工业以太网(EtherCAT / PROFINET 等) |
|---|---|---|
| 物理层 | 专用(RS-485 / CAN 收发器) | 标准以太网 PHY(100BASE-TX / 1000BASE-T) |
| 帧格式 | 自定义小帧(CAN 约 110–130 位、Modbus RTU ≤ 256 B) | 以太网帧(≤ 1518 B)承载协议载荷 |
| 交换 vs 直通 | 广播型、所有节点都能"听到" | EtherCAT on-the-fly、PROFINET IRT 硬件时隙 |
| 拓扑 | 总线型 + 短 stub | 线型 / 树型 / 环型,工业交换机可选 |
| 主从 | 主从或位仲裁多主 | 一个周期内由主站发起,从站被动服务 |
| 周期与抖动 | ms 量级、几十 μs 抖动 | 100 μs 量级、亚 μs 抖动(DC / IRT) |
工业以太网家族的共同设计目标:借用以太网的通用硬件(PHY、网线、连接器)与带宽余量(100 Mbps / 1 Gbps),在协议层重新建立确定性——不再靠 CSMA/CD 与交换机缓冲,而是靠主站调度、硬件时间戳与专用 ASIC。
2. EtherCAT¶
EtherCAT(Ethernet for Control Automation Technology)由 Beckhoff 2003 年推出,标准号 ETG.1000 系列(IEC 61158 Type 12 / IEC 61784-2)。核心思想:"帧在从站里不缓存、只被就地读写后转发下一跳"。
2.1 on-the-fly 处理与逻辑寻址¶
传统以太网是"存储转发"(store-and-forward):交换机收到完整帧 → 校验 → 查表 → 转发;每一跳引入一次帧长的处理延迟。EtherCAT 从站只做逐字节改:
- 主站发出一帧以太网报文(EtherType
0x88A4),帧内串行携带所有从站的读段与写段(一个"数据区"被切成逻辑上连续的字节序列)。 - 帧进入第一个从站,从站的 ESC 芯片(Ethernet Switch Controller,专用 ASIC)在帧流过的同时("on-the-fly")识别到自己负责的字节偏移,就地写入待发数据、把要读的数据搬到本地寄存器;帧继续走向下一个从站。
- 帧绕回主站时,数据区已经被所有从站填好,主站按字节偏移拆回来即可。
这一处理让每从站的转发延迟降到数百纳秒量级、与帧长无关;千个从站的链路总延迟也能压到亚微秒级。
逻辑寻址(logical addressing)是关键配套:主站把全部从站的输入输出映射到一片连续的逻辑地址空间("过程数据映像区",Process Data Image,PDI),一帧指令 FP read 0x0000_1000 8 bytes 就能读到某个逻辑位置——不需要逐从站寻址,硬件与软件配合实现"像访问内存一样访问全现场"。
2.2 分布式时钟 DC¶
EtherCAT 从站各自有本地时钟(25/50 MHz 晶振),要执行同步动作(比如 1 kHz 周期同时更新所有关节指令)必须让所有从站的时钟对齐。EtherCAT 用分布式时钟(Distributed Clocks,DC)机制:
- 主站选一个从站作为参考时钟(reference clock),周期性广播参考时刻。
- 帧经过每个从站时,ESC 芯片硬件时间戳记录帧进入与离开的时刻(
TX DELAY测量),据此推算本从站到参考时钟的物理距离与时延。 - 每个从站按主站下发的漂移与相位补偿参数调整本地时钟,收敛后从站间时钟偏差在亚微秒量级(ETG 给出的设计目标为 < 1 μs)。
- 对齐后主站用
SYNC0事件在各从站产生同时刻触发的输出,多轴同步抖动可低于 1 μs。
DC 是 EtherCAT 区别于其他实时以太网的核心机制,也是它成为高精度运动控制首选的原因。
2.3 应用层 profile 与 CoE¶
EtherCAT 本身只管"帧怎么流过从站",应用语义交给 profile:
- CoE(CANopen over EtherCAT):把 CANopen 的对象字典(第 5 章)直接搬到 EtherCAT SDO 邮箱里;PDO 映射与 DC 周期承担实时数据搬运。绝大多数 EtherCAT 伺服都实现 CoE,机器人上遇到的 PDO 对象(0x6040 控制字、0x6041 状态字、0x6060 模式、0x607A 目标位置等)与 DS 402 完全一致——CANopen 语义与 EtherCAT 传输的结合。
- FoE(File over EtherCAT):固件与配置文件下载。
- EoE(Ethernet over EtherCAT):把普通以太网 IP 流量封装进 EtherCAT 帧,走同一物理线;用于从站的调试与远程服务。
- SoE(Servo Drive Profile over EtherCAT):把 Sercos 伺服 profile 映射到 EtherCAT,见于部分欧美驱动器。
- VoE(Vendor over EtherCAT)与 AoE(ADS over EtherCAT)等厂商或生态专用 profile。
CoE + DS 402 让"CANopen 关节驱动器"与"EtherCAT 关节驱动器"在应用层看起来几乎一样——差别在传输(CAN 位仲裁 vs EtherCAT on-the-fly + DC)。这也是为什么 ROS 2 生态里 ros2_canopen 与 ethercat_driver_ros2 能并存:底层总线不同,上层 ros2_control 的轨迹与控制语义可复用。
3. PROFINET¶
PROFINET(Process Field Network,PI 组织主推,IEC 61158 Type 10 / IEC 61784-2)是西门子生态下的工业以太网家族,同时覆盖过程自动化与离散制造。它把实时性分成三级,各用不同机制实现。
3.1 实时等级:NRT / RT / IRT¶
- NRT(非实时):标准 TCP/IP,用于参数读写、诊断与工程组态;周期 ms–几十 ms 级。
- RT(Real Time):以太网二层帧(EtherType
0x8892)+ 优化协议栈,跳过 TCP/IP;周期 1–10 ms、抖动几十 μs–ms 级,用于过程自动化与常规 I/O。交换机按 VLAN 优先级(PCP 6)转发实时帧,标准交换机即可组网。 - IRT(Isochronous Real Time):硬件同步 + 时隙调度。IRT 交换机(专用 ASIC)把周期切成"红色通道"(IRT 时隙,硬件保留给实时数据)与"绿色通道"(Best-effort 数据);IRT 时隙在硬件层保证零冲突,周期 250 μs–2 ms、抖动 < 1 μs。用于高精度运动控制,功能上对标 EtherCAT DC。
PROFINET 的实时等级与交换机形态绑得很紧——IRT 需要 IRT 交换机、非 IRT 段不能穿过普通交换机;这也是它与 EtherCAT(不需要传统交换机、从站本身即"节点 + 中继")在拓扑哲学上的最大差异。
3.2 GSD 与系统架构¶
PROFINET 设备的能力描述通过 GSDML(Generic Station Description Markup,XML 格式)文件发布,供工程工具(TIA Portal、GSD 编辑器)导入。GSDML 声明:设备名、支持的功能(RT / IRT / 端口数 / 模块类型)、可组态的 IO 模块与地址、诊断类型。集成时"选设备 → 加载 GSDML → 组态模块与 IO 映射 → 下载"是标准流程。
系统角色:Controller(主站,PLC / 运动控制器) ↔ Device(从站,I/O 模块、驱动器) ↔ Supervisor(工程站,可选,读写参数)。控制器在周期内对每个 Device 交换"输出数据 / 输入数据",走 RT 或 IRT;参数与诊断走 CB 或 DCP(Device Control Protocol,发现与命名)。
4. POWERLINK¶
Ethernet POWERLINK(EPSG DS 301 / IEC 61158 Type 13 / IEC 61784-2)由 B&R(现 ABB)2001 年提出,规范由 Ethernet POWERLINK Standardization Group(EPSG)维护并公开。协议取向:"用标准以太网硬件 + 时分多址达到硬实时"。
核心机制:
- 等时域(Isochronous Phase,IT):一个通信周期内划分时隙,管理节点(Managing Node,MN)在 IT 起点广播轮询请求帧(Poll Request),受控节点(Controlled Node,CN)在各自时隙回应答帧(Poll Response);时隙固定不冲突,节点用标准以太网控制器即可。
- 异步域(Asynchronous Phase,AS):IT 之外传送非实时数据(参数、诊断),走标准 UDP。
- 周期典型 100 μs–2 ms、抖动 < 1 μs;不需要专用 ASIC(相比 EtherCAT 的 ESC、PROFINET 的 IRT 交换机),部署门槛低。
POWERLINK 特色是开放:规范全公开、无授权费、标准硬件即可跑;生态相比 EtherCAT / PROFINET 小,多见于欧洲 OEM 与部分伺服驱动(如 B&R ACOPOS 系列)。
其他邻居:Sercos III(Sercos International,运动控制专用,100 Mbps 环网或线型,铜缆或光纤,规范见 IEC 61800-7)、CC-Link IE Field(三菱主推,亚洲市场为主)也在同一家族,机制上分别对应"主站报文 + 从站时隙"与"令牌 + 环形"变体,本板块不逐一展开。
5. 与 CAN 家族的选型权衡¶
把 EtherCAT / PROFINET IRT / POWERLINK 放回第 1 章的五轴坐标系与 CAN / CAN FD 对照:
- 实时性上界:EtherCAT DC(同步抖动 < 1 μs)≈ PROFINET IRT(抖动 < 1 μs)≈ POWERLINK(抖动 < 1 μs)>> CAN FD(10–100 μs 级)>> 经典 CAN(0.1–1 ms 级)>> Modbus RTU(10–100 ms 级)。
- 周期下界:EtherCAT 100 μs–1 ms、PROFINET IRT 250 μs–2 ms、POWERLINK 100 μs–2 ms、Sercos III 31.25 μs 起;CAN FD 单帧约 100–160 μs 但多帧周期受仲裁影响;Modbus 主从轮询周期 50–100 ms。
- 带宽余量:EtherCAT 100 Mbps 一帧扫完全线;CAN FD 数据段 2–8 Mbps 每帧独立仲裁;Modbus RTU 115200 bps 串口。
- 节点数上限:Modbus RTU 247、CAN 受物理层单元负载约束(ISO 11898-2 上限 32 个单元负载,工程常取 20–30)、EtherCAT 65535(工程实践几百)、PROFINET 数百、POWERLINK 253、Sercos III 511。
- 成本:CAN / Modbus 从站 MCU 几元、无授权;EtherCAT 需要 ESC 芯片(Beckhoff ET1100/ET1200、Microchip LAN9252/LAN9253、瑞萨等,几元至几十元)+ 主站软件(IgH / SOEM 开源,TwinCAT / CODESYS 商业);PROFINET 的 RT 可用标准交换机,IRT 需专用交换机与支持 IRT 的协议栈;POWERLINK 开放规范、标准硬件可跑,但集成生态小。
决策树简化版:
- 是否需要多轴 < 100 μs 同步窗口? → 是 → EtherCAT 或 PROFINET IRT;否 → 下一步。
- 是否 ≤ 30 节点、周期 ≥ 1 ms、成本敏感? → 是 → CAN FD(关节级)或 Modbus(慢变量);否 → 下一步。
- 是否复用现成工业以太网基础设施? → 是 → PROFINET RT / EtherCAT 线型;否 → 下一步。
- 是否只是"接几台设备到上位" → Modbus TCP 或 CANopen-over-TCP 网关。
6. 五轴横向选型表¶
汇总输出。表中数据取自各规范公开推荐值,跨设备与拓扑会有差异;工程落案以具体型号手册为准。
| 总线 | 速率 | 周期 / 实时性 | 距离 | 节点数 | 单节点成本 | 机器人典型用途 |
|---|---|---|---|---|---|---|
| 经典 CAN | 最高 1 Mbps(≤ 40 m) | ms 级,位仲裁可算最坏等待 | 40 m @ 1 M / 1 km @ 125 k | 32 个单元负载(工程常取 20–30) | 极低,收发器几元 | 关节驱动、传感器聚合、车身内部网络 |
| CAN FD | 仲裁 1 Mbps / 数据 5–8 Mbps | ms 级;数据段 5–8 倍吞吐 | 同 CAN | 同 CAN | 需 FD 收发器,仍很低 | CSP 一帧装完、多传感合并、SDO 大批量 |
| CANopen | 依赖底层 CAN / CAN FD | 由 SYNC 与 PDO 配置决定 | 同底层 | 1–127(Node-ID) | 与 CAN 一致 | DS 402 关节驱动 profile,跨厂商互通 |
| Modbus RTU | 9.6k–115.2k bps | 主从轮询,10–100 ms | RS-485 上 1200 m @ 9.6k | 247 从站 | 极低 | BMS、电动夹爪、仪表、慢变量 |
| Modbus TCP | 100 Mbps / 1 Gbps | 长连接 TCP RTT | 标准以太网 | 多客户端 ↔ 一服务端 | 极低 | 跨网段慢变量、上位采集 |
| EtherCAT | 100 Mbps | DC 同步 100 μs–1 ms / 抖动 < 1 μs | 单段 100 m(可级联) | 65535,工程实践几百 | ESC 芯片 + 主站软件 | 高精度多轴协同、力控实验台 |
| PROFINET IRT | 100 Mbps | IRT 250 μs–2 ms / 抖动 < 1 μs | 标准以太网 | 数百 | IRT 交换机 + 协议栈 | 汽车产线、大型 PLC 控制 |
| POWERLINK | 100 Mbps | 100 μs–2 ms / 抖动 < 1 μs | 标准以太网 | 253 | 标准硬件 + 开源栈 | 中小型运动控制、欧洲 OEM |
| Sercos III | 100 Mbps | 31.25 μs–2 ms | 100 m 铜 / 光纤更长 | 511 | 专用芯片 + 授权 | 高端机床与运动控制 |
读表:关节驱动层存在两条并行路线——CAN / CAN FD + CANopen(DS 402 / CSP)覆盖成本敏感的小型关节与传感器聚合,周期 1 kHz、抖动 μs–十 μs 够用;EtherCAT + CoE 覆盖协作臂、人形与高精度多轴平台,靠 DC 做亚微秒同步。主控与外部设备(视觉触发、多轴运控卡、安全 IO)常用 EtherCAT 或 PROFINET;慢变量与非运动设备用 Modbus(RTU 或 TCP)。三者不冲突、常见混合部署,网关与 ros2_control 的 hardware_interface 负责把多条链路收敛到同一控制回路(衔接 ROS2-note 第 6 章)。
7. 要点¶
- "工业以太网"与"现场总线"不同取向:借标准以太网硬件、在协议层重建确定性;不再靠 CSMA/CD 与缓冲交换机,靠硬件时间戳、ASIC 与主站调度。
- EtherCAT 靠 on-the-fly 处理与 DC 分布时钟:帧在从站里逐字节改、不缓存不转发完整帧;ESC 芯片硬件打时戳、所有从站对齐到亚微秒;CoE + DS 402 让 CANopen 语义平移到 EtherCAT 传输。
- PROFINET 分三级实时 NRT / RT / IRT:NRT 走 TCP/IP、RT ms 级、IRT 亚 μs(硬件时隙交换机);GSDML 是设备能力描述与组态入口。
- POWERLINK 用等时域 + 标准硬件:管理节点轮询请求 + 固定时隙应答,μs 级实时但不需专用 ASIC;开放规范、生态较小。
- 选型看实时性上界 + 成本 + 生态:多轴 < 100 μs 同步 → EtherCAT / PROFINET IRT;成本敏感的小型关节与 ms 级控制 → CAN FD / CANopen;慢变量与非运动设备 → Modbus TCP / RTU。机器人上常见多条总线混合、由
ros2_control层收敛。 - 本章为机制概览:具体周期、抖动与拓扑上限以型号手册与规范为准。