3. IO-Link通信原理

IO-Link 并不是一种“更快版本的 4–20 mA”,也不是把模拟量简单数字化。它是一套完整的点对点数字通信协议:主站(Master)通过一根标准三线制电缆,与每个从站(Device)建立独立的串行通信链路,在传输过程数据的同时,还能读写参数、诊断和事件信息。理解 IO-Link,必须从物理层、数据链路层、通信周期、报文结构、传输速率和主从站机制六个维度同时切入,缺一不可。

一、物理层:三线制、24 V 供电与 C/Q 线

IO-Link 物理层沿用工业现场最常见的三线制连接:L+(24 V 电源正)、L−(0 V 参考地)和 C/Q(Communication/Quality,通信与品质线)。其中 C/Q 线是核心,它既承担 IO-Link 的串行通信,又兼容传统 SIO(标准 IO)模式,因此一个 IO-Link 端口可以向下兼容普通开关量传感器。

物理层采用非屏蔽或屏蔽电缆均可,最大线缆长度通常为 20 m,配合标准 M5/M8/M12 连接器。电气上使用 24 V 电平、UART 异步串行帧结构,逻辑“1”和“0”通过 C/Q 线相对 L− 的电压差表示。由于是点对点拓扑,每个从站独占一个主站端口,不存在总线仲裁和冲突问题,这也是 IO-Link 抗干扰能力强、实时性稳定的根本原因。

IO-Link 的“点对点”不是限制,而是优势:每个端口独立通信,单个从站故障不会拖垮整条链路,诊断也能精确定位到端口和从站。

二、数据链路层:主从、帧结构与两种通道

数据链路层规定了主站与从站之间的帧格式、时序和差错控制。IO-Link 采用主从轮询机制:主站发起请求,从站应答,从站不会主动占用线路。每个通信周期内,主站可以发送不同类型的数据帧,从站按帧类型返回对应内容。

IO-Link 报文在链路层分为两类通道:

  • 过程数据(Process Data):周期性传输,长度固定,通常为 1~32 字节输入和 1~32 字节输出,用于实时控制与状态采集。
  • 参数/诊断数据(Parameter/Diagnostic Data):按需传输,通过索引(Index)和子索引(Subindex)访问,用于读写参数、读取事件和诊断信息。

链路层还定义了多种帧类型,例如:读写过程数据的帧、读写参数的帧、事件帧、以及用于设备识别和启动的帧。主站根据从站的 IODD(IO Device Description)文件,知道该从站支持哪些索引、过程数据长度和通信参数。

三、通信周期:主站轮询与从站应答

IO-Link 的通信周期由主站控制,典型周期时间(Cycle Time)可配置为 0.4 ms、0.8 ms、1.6 ms、3.2 ms、6.4 ms、12.8 ms、20.8 ms 等档位。周期越短,过程数据刷新越快,但对从站和电缆的要求也越高。主站在每个周期内完成一次“请求—应答”交互,从站在规定时间内返回数据。

通信周期内的时间分配大致为:主站发送请求帧 → 等待从站响应 → 从站返回应答帧 → 主站处理数据并进入下一周期。若从站未在规定时间内应答,主站会记录通信错误并可能触发诊断事件。周期时间必须与从站的 min cycle time 匹配,不能设置得比从站支持的最短周期还小。

IO-Link 主从通信周期与报文结构 IO-Link 主站 Master / Port 发起轮询 · 管理周期 IO-Link 从站 Device / Sensor 应答 · 过程数据 · 参数 C/Q 线(点对点串行通信) 通信周期(Cycle Time) 主站请求帧 Request 从站应答帧 Response 过程数据 1~32 Byte 下一周期 Next IO-Link 报文结构(链路层帧) 起始位 Start 帧类型/地址 Type / Addr 数据域 Process / Param 校验 Checksum 停止位 Stop 事件/诊断 Event 传输速率:COM1 = 4.8 kbit/s · COM2 = 38.4 kbit/s · COM3 = 230.4 kbit/s

四、传输速率:COM1、COM2、COM3

IO-Link 定义了三种传输速率,主站和从站必须协商一致:

速率等级 波特率 典型周期时间 适用场景
COM1 4.8 kbit/s ≥ 20.8 ms 低速参数配置、简单开关量设备
COM2 38.4 kbit/s ≥ 3.2 ms 常规传感器、过程数据采集
COM3 230.4 kbit/s ≥ 0.4 ms 高速测量、多字节过程数据、动态控制

速率越高,周期时间可以越短,但电缆长度、电磁环境和从站处理能力都会影响实际可用速率。工程中常见做法是:先按从站 IODD 中声明的最低支持速率配置,再根据实际刷新需求选择更高档位。

五、主从站机制:启动、识别与数据交换

IO-Link 通信启动时,主站先对端口进行唤醒(Wake-up),然后读取从站的设备信息,包括 Vendor ID、Device ID、IODD 版本和过程数据长度。主站根据这些信息建立通信参数,进入周期性数据交换。若从站被更换,主站可以通过 IODD 和参数服务器自动恢复参数,实现“换件不换配置”。

主从机制的关键约束是:同一端口同一时刻只能有一个从站;主站按端口独立调度,不同端口可以有不同的周期时间和速率;从站只能在被轮询时应答,不能主动发送。这种机制保证了确定性,也让 IO-Link 适合与 PLC 的实时任务配合。

六、案例与常见误区

某包装线使用 IO-Link 光电传感器采集物料到位信号,初始配置为 COM2、周期 3.2 ms,过程数据 2 字节。调试时发现 PLC 侧信号偶发延迟,排查后发现主站端口周期被设置为 20.8 ms,远大于从站支持的最短周期,导致刷新率不足。将周期改为 1.6 ms 后,信号延迟消失。这说明周期时间必须与从站能力和应用刷新需求匹配,不能只看“能通就行”。

常见误区:把 IO-Link 当成总线,试图在一根线上挂多个从站;或者忽略 IODD 文件,手动猜测过程数据长度和索引。前者违反点对点物理层,后者会导致参数读写失败和诊断信息错乱。

复盘要点:物理层决定“能不能连”,数据链路层决定“怎么传”,通信周期决定“多快传”,报文结构决定“传什么”,传输速率决定“带宽上限”,主从机制决定“谁说了算”。六者共同构成 IO-Link 通信原理的完整闭环。掌握这些,才能在数据采集与边缘集成中正确配置端口、解读诊断、优化刷新率,并为后续的边缘计算和云端集成打下可靠基础。