一、项目背景与通讯痛点
某汽车零部件加工工厂,冲压、装配工位大量使用IO-Link协议智能传感器,包含 IO-Link 接近开关、温度传感器、压力传感器。原有方案采用IO-Link主站模块接入 PLC,传感器全部过程数据、设备参数、故障事件仅能在 PLC 内部访问。
工厂 MES 生产管理系统需要直接读取传感器原始过程数据、设备型号、供应商信息、运行故障事件,用于生产数据分析、设备预测性维护。传统架构下 MES 无法直接访问 IOLink 从站设备,必须通过 PLC 做数据中转,需要在 PLC 内编写大量数据转发程序,PLC 程序改动量大,后期新增 IOLink 传感器时需要重新修改 PLC 逻辑,开发周期长,调试维护成本高。 项目需求:不修改现有 PLC 控制逻辑,把 IO-Link 总线数据转为 TCP 协议,MES 系统直接通过 TCP 访问 IO-Link 从站,读取过程数据、设备基础信息、故障事件记录。
二、现场工况与改造需求
1. 现场共 8 路 IO-Link传感器,需要兼容多路 IO-Link从站同时接入;
2. MES 上位系统通过 TCP 协议直接读写 IO-Link 设备,无需 PLC 中转;
3. 可读取端口基础信息:设备名称、厂商 ID、设备 ID、IOLink 版本、通讯速率;
4. 读取输入过程数据、输出过程数据,支持读写 Service data 参数,远程配置传感器参数;
5. 采集端口故障事件,保存最多 32 条历史事件,用于设备故障追溯;
6. 保留原有 IO-Link 通讯,不干涉工位 PLC 设备安全控制逻辑。
三、系统整体解决方案
选用 IO-Link转TCP网关设备,网关8个通道分别对接工位 IO-Link各类传感器;网关向上提供 TCP 网络接口,对接工厂 MES 服务器。
网关工作模式:通道配置为 IO-Link 工作模式,MES 作为 TCP 客户端,按照手册自定义帧格式和网关交互。通过不同索引、子索引实现各类操作:
· 索引 0 读取端口基础信息,获取传感器名称、供应商 ID、设备 ID;
· 索引 5 读取传感器输入过程数据,获取检测实时数值;
· 索引 7/8 读写 Service data,远程修改传感器阈值、输出模式;
· 索引 941 读取事件数量与事件内容,抓取传感器断线、通讯异常等故障记录。
原有传感器 IO-Link 信号不受网关影响,PLC 依旧可以正常采集传感器信号完成设备逻辑控制,实现 PLC 与 MES 两套系统并行访问 IO-Link 设备。
四、现场调试与功能实现
1. 将 8 台 IO-Link 传感器分别接入网关通道,配置各通道工作模式为 IO-Link 模式;
2. MES 软件按照协议帧头 0x81、0xC0 封装 TCP 报文,通过索引 0 读取端口基础信息,校验设备名称、厂商 ID 读取正确;
3. 使用索引 5 循环读取输入过程数据,实时获取传感器检测数据;
4. 通过索引 7、8 读写 Service data,远程修改传感器检测阈值,验证参数下发生效;
5. 模拟传感器断线故障,网关捕获事件,索引 9 查询事件数量,索引 1041 读取事件报文,MES 解析故障代码完成报警;
6. 长时间连续运行,确认 TCP 通讯稳定,故障事件循环保存最多 32 条,溢出自动覆盖旧事件。
五、项目应用成效与价值总结
通过IO-Link转TCP 网关,MES系统绕开PLC直接获取IO-Link传感器全部数据,无需编写大量 PLC 转发程序,缩短产线数字化改造周期。既保留 PLC 对产线设备安全控制,又向上给 MES 提供完整传感器数据、参数、故障事件,实现传感器参数远程配置、故障事件追溯,助力汽车零部件产线预测性维护。适合汽车制造、3C 装配等大量IO-Link传感器需要对接上位 MES 的场景。
181
