3. IO-Link数据模型

IO-Link 之所以既能传测量值,又能改参数、报故障,是因为它把通信内容划分成了几类职责清晰的数据。理解这四类数据的分工,是后续做诊断与事件处理的基础。它们并不是四种独立的物理通道,而是同一根 IO-Link 电缆上按不同周期、不同方向、不同语义传输的数据类型。

核心记忆:过程数据是“周期性自动流动的实时值”,服务数据是“按需访问的读写通道”,参数数据是“存放在设备里的配置内容”,事件数据是“设备主动上报的状态通知”。

一、四类数据的基本概念

过程数据(Process Data):由设备周期性发送给主站(Master)的实时数据,方向基本是设备→主站。它承载传感器当前测量值、开关状态、执行器反馈等,长度固定(典型为 1~32 字节),刷新周期由主站的循环时间决定。过程数据是“快照”,只反映当前值,不携带历史,也不保证可靠送达——丢了就等下一个周期。

服务数据(Service Data):主站与设备之间按需发起的请求/应答数据,方向是双向的。它用于读写参数、读取设备信息、执行诊断命令、触发设备动作等。服务数据走的是非周期通道,速度慢于过程数据,但可靠性高,有明确的请求与应答配对。IO-Link 的 ISDU(Indexed Service Data Unit)就是服务数据的典型载体。

参数数据(Parameter Data):本质上是服务数据所读写的内容,是存放在设备中的配置项,例如测量范围、开关点、滤波时间、输出逻辑、设备标签等。参数数据具有持久性——写入后掉电保存,重启后仍然生效。它通过 ISDU 按索引(Index)和子索引(Subindex)寻址,是“设备怎么工作”的设定。

事件数据(Event Data):设备在检测到特定状态变化时主动上报的通知,方向是设备→主站。事件分为不同等级:通知(Notification)、警告(Warning)、错误(Error)。事件数据携带事件代码(Event Code)和事件限定符,告诉主站“发生了什么、有多严重”。它不占用过程数据的固定位置,而是通过事件通道异步传递。

二、四类数据的对比

对比维度 过程数据 服务数据 参数数据 事件数据
传输方向 设备→主站为主 双向 双向(经服务通道) 设备→主站
传输方式 周期性、自动 按需、请求应答 按需、请求应答 异步、主动上报
实时性 高(循环周期级) 低(毫秒~秒级) 低 中(事件触发时)
是否持久 否,仅当前值 否,会话级 是,掉电保存 否,一次性通知
典型内容 测量值、开关状态 读设备信息、写命令 量程、开关点、滤波 过温、短路、维护提醒
寻址方式 固定数据长度 ISDU 索引 ISDU 索引+子索引 事件代码+限定符

三、数据在通信中的流动关系

下面这张图展示了主站与设备之间四类数据的流向与承载关系。过程数据和事件数据走周期性/异步通道,服务数据与参数数据走非周期通道,参数数据是服务数据读写的内容。

IO-Link 主站 Master 周期调度 / 请求发起 IO-Link 设备 Device / Sensor 测量 / 执行 / 存储 过程数据(周期) 事件数据(异步上报) 服务数据(请求/应答) 参数数据 ISDU 索引 / 子索引 · 掉电保存 经服务通道读写 同一根 IO-Link 电缆(C/Q 单对线)承载全部四类数据 过程数据与事件数据走周期/异步通道,服务数据与参数数据走非周期通道

四、典型场景:一次过温诊断的完整数据流

假设一个 IO-Link 温度传感器检测到内部温度超过阈值,整个过程会同时涉及四类数据:

  1. 过程数据:传感器每个周期把当前温度值(如 78.5 ℃)发给主站,主站 PLC 持续读取。
  2. 事件数据:当温度超过 75 ℃ 时,设备主动上报事件,事件代码指向“过温警告”,限定符标明严重等级。
  3. 服务数据:主站收到事件后,发起 ISDU 读取,获取设备状态、诊断详情、事件历史。
  4. 参数数据:工程师通过服务通道修改“温度报警阈值”参数,写入后掉电保存,下次上电仍然生效。
事件上报示例(概念示意):
Event Code   : 0x1800  (Temperature Overrun)
Event Qualifier: Warning
Event Source : Device
建议动作     : 读取 ISDU 0x0028 获取详细诊断
             : 检查过程数据中的温度趋势
             : 必要时通过 ISDU 写入新阈值参数

五、常见误区与复盘

误区一:把过程数据当参数用。过程数据是只读的实时值,不能通过过程数据通道写配置。改参数必须走服务数据/ISDU。
误区二:认为事件数据会替代过程数据。事件是异步通知,不保证每个周期都有;过程数据才是持续监控的基础。
误区三:忽略参数数据的持久性。参数写入后掉电保存,若调试时改了量程却忘记恢复,会导致后续测量值整体偏移。
误区四:把服务数据当实时数据。ISDU 读写有请求应答开销,不适合放在高速控制循环里。
复盘要点:诊断时先看过程数据判断“当前值是否异常”,再看事件数据判断“设备是否主动报了故障”,然后用服务数据读取“详细诊断信息”,最后用参数数据确认“配置是否正确”。这个顺序能覆盖绝大多数 IO-Link 故障场景。

总结来说,过程数据回答“现在是多少”,事件数据回答“出了什么事”,服务数据回答“我能问什么、能改什么”,参数数据回答“设备被设置成什么样”。四者各司其职,共同构成 IO-Link 完整的数据模型。