3. 设备数据接口概述
在MES设备数据接口与追溯工程中,“接口”不是一根线或一个函数那么简单,而是设备与MES之间完成数据交换所依赖的一整套约定。它规定了谁和谁交换、交换什么、以什么格式交换、通过什么物理通道交换、出错时如何反馈。理解接口的定义、类型、协议栈以及硬件接口与软件接口的分工,是后续做设备联网、数据采集和追溯建模的基础。
一、接口定义:从“连接”到“可交换数据”
设备数据接口可以定义为:在设备控制系统与MES之间,为实现状态、参数、结果、报警等数据可靠传输而共同遵守的规则集合。它包含四个要素:
- 通信双方:如PLC、CNC、机器人、扫码器、传感器与MES采集服务。
- 数据内容:设备编号、工单号、产品序列号、温度、压力、节拍、良率、报警码等。
- 传输规则:触发方式(周期/事件/请求响应)、编码格式、字节序、超时与重试。
- 语义约定:字段含义、单位、量纲、有效范围、状态字典,例如“1=运行,2=待机,3=故障”。
因此,接口不仅是“能通信”,更是“能正确理解”。在追溯场景中,接口还要保证数据与工单、批次、序列号可关联,否则采集到的只是孤立数值。
二、接口类型:按方向、触发与用途划分
设备数据接口可按不同维度分类,实际项目中常组合使用:
- 按数据方向:单向采集(设备→MES)、单向下发(MES→设备)、双向交互(请求/响应、握手确认)。
- 按触发方式:周期轮询、事件触发(如报警、完工)、请求响应(MES主动读取)、订阅推送(设备或网关主动上报)。
- 按用途:状态监控接口、工艺参数接口、质量结果接口、追溯绑定接口、报警与维护接口。
- 按实时性:硬实时(运动控制同步)、软实时(秒级采集)、非实时(班次汇总、日志归档)。
选择类型时,核心判断是:数据是否影响追溯闭环。例如序列号绑定必须事件触发且带确认;温度趋势可周期采集;报警必须即时上报并带时间戳。
三、协议栈:分层理解设备数据通道
设备数据接口通常按分层模型理解,从下到上依次为:
| 层次 | 典型内容 | 在设备接口中的体现 |
|---|---|---|
| 物理层 | RS-232/485、以太网、USB、光耦、IO | 连接器、线缆、电平、波特率、网口速率 |
| 数据链路层 | Modbus RTU/TCP、EtherNet/IP、PROFINET | 帧结构、站号、寄存器地址、校验 |
| 网络/传输层 | TCP/IP、UDP、串口透传 | IP端口、连接管理、超时重连 |
| 应用层 | OPC UA、MQTT、HTTP/REST、自定义报文 | 字段定义、JSON/XML、主题、方法调用 |
| 语义层 | 设备模型、单位、状态字典、追溯字段 | 工单号、序列号、报警码、良率定义 |
分层的好处是排障可定位:物理层不通就看线缆和指示灯;链路层不通就看站号和寄存器;应用层不通就看字段和权限;语义不一致就看字典和映射表。
四、硬件接口与软件接口:分工与协同
硬件接口解决“用什么物理通道连接”。常见包括:
- 串行接口:RS-232点对点、RS-485多点总线,常用于老设备、仪表、扫码枪。
- 以太网接口:RJ45、光纤,支持TCP/IP,是现代设备主流。
- 现场总线:PROFINET、EtherNet/IP、CC-Link IE,强调实时与确定性。
- 数字/模拟IO:干接点、24V电平、4-20mA,用于简单状态与报警。
- 无线接口:Wi-Fi、蓝牙、LoRa、5G,用于移动设备或布线困难场景。
软件接口解决“数据如何被组织和调用”。常见包括:
- OPC UA/DA:以地址空间和节点暴露设备变量,适合异构设备统一接入。
- MQTT:轻量发布/订阅,适合网关汇聚与云端上报。
- REST/HTTP:以资源方式提供查询与下发,便于MES集成。
- 数据库接口:设备侧或网关侧写入中间表,MES定时抽取。
- SDK/API:设备厂商提供的动态库或函数,直接读写寄存器或状态。
硬件接口与软件接口必须成对匹配。例如RS-485硬件上跑Modbus RTU软件协议;以太网硬件上跑Modbus TCP或OPC UA。只换硬件不换软件,或只改软件不改链路参数,都会导致通信失败。
五、案例场景:一条产线的接口组合
某装配线需要把拧紧枪、扫码器和PLC数据接入MES。拧紧枪提供RS-232串口,采用自定义ASCII报文;扫码器支持以太网TCP,输出JSON;PLC通过PROFINET与网关通信。MES侧采集服务同时开启三个通道:串口服务解析拧紧扭矩与角度,TCP服务接收序列号,OPC UA客户端读取PLC的工位状态。最终以“工单号+序列号”为主键,把扭矩、扫码结果、工位状态写入追溯表。
接口配置示例(采集服务):
channel_1: type=serial, port=COM3, baud=9600, protocol=ASCII
channel_2: type=tcp, ip=192.168.1.50, port=9000, protocol=JSON
channel_3: type=opcua, endpoint=opc.tcp://192.168.1.10:4840, node=ns=2;s=Station.State
trace_key: work_order + product_sn
六、常见误区与复盘
误区二:硬件接口与软件协议混为一谈。 以为换了网线就能用OPC UA,实际设备只支持Modbus TCP,需要网关转换。
误区三:忽略时间戳与触发条件。 周期采集可能把同一工件的数据重复写入,事件触发才能保证追溯唯一性。
误区四:没有状态字典。 设备返回“0/1/2”,MES直接展示数字,操作员无法判断是待机、运行还是故障。
掌握接口定义、类型、协议栈以及硬件与软件接口的分工后,就能在设备数据采集与追溯工程中做出正确选型:先确认物理通道,再匹配协议,最后统一语义。接口设计得越清晰,后续的追溯链路就越稳定、越可信。