4. 工业通信基础
在MES设备集成与数据采集工程中,通信协议是连接“设备层”与“信息系统”的桥梁。设备能否被稳定采集、数据能否实时上传、指令能否准确下发,最终都取决于通信协议是否选型正确、参数是否匹配、链路是否可靠。本节从物理层到应用层,梳理工业现场最常见的几类通信技术,帮助建立完整的选型与排障认知。
一、从物理层到应用层:通信协议的分层理解
工业通信可以按“物理接口—链路协议—应用协议”三层来理解。物理层决定电气信号怎么传,例如RS-232、RS-485、以太网;链路层决定数据帧怎么组织与寻址,例如Modbus RTU、Profibus DP;应用层决定数据含义与交互方式,例如Modbus寄存器、Profinet IO、OPC UA信息模型。MES采集时,常说的“协议对接”往往同时涉及这三层,任何一层不匹配都会导致通信失败。
二、串口与RS-232/RS-485:最基础的设备接入方式
串口通信是工业设备最传统的接口形式。RS-232采用单端信号,传输距离通常不超过15米,适合点对点连接,常见于PLC编程口、称重仪表、条码枪。RS-485采用差分信号,抗干扰能力强,传输距离可达1200米,支持多点总线,一条总线上可挂接32个节点(加中继可扩展),是现场仪表、电表、温控器最常用的物理层。
RS-485接线必须注意A/B极性、终端电阻和共地。典型参数如下:
波特率:9600 / 19200 / 38400 / 115200 bps
数据位:8
停止位:1
校验位:None / Even / Odd
流控:None(RS-485半双工)
终端电阻:120Ω,接在总线两端
三、Modbus:最广泛的应用层协议
Modbus是工业领域事实标准,分为Modbus RTU(串口)、Modbus ASCII和Modbus TCP(以太网)。它采用主从问答模式,主站发起请求,从站响应。数据模型包括线圈、离散输入、输入寄存器、保持寄存器四类。MES采集时,最常用的是读取保持寄存器(功能码03)和读写线圈(功能码01/05)。
Modbus RTU帧结构由地址、功能码、数据、CRC校验组成。以下是一个读取从站1保持寄存器40001起始2个寄存器的请求示例:
请求:01 03 00 00 00 02 C4 0B
响应:01 03 04 00 0A 00 14 7A 3D
说明:地址01,功能码03,起始地址0000,数量0002
响应数据000A=10,0014=20
四、Profibus、Profinet与EtherNet/IP:现场总线与工业以太网
Profibus DP是西门子主导的现场总线,采用RS-485物理层,速率9.6kbps~12Mbps,最大站点126个,常用于PLC与远程IO、变频器、伺服驱动之间的高速循环通信。Profibus采用令牌传递与主从结合机制,需要组态GSD文件描述设备特性。
Profinet基于工业以太网,支持实时(RT)和等时同步(IRT),使用GSDML文件组态,可同时传输IO数据、诊断信息和参数。EtherNet/IP由罗克韦尔等推动,基于标准TCP/IP和CIP协议,使用EDS文件描述设备,支持显式消息和隐式IO连接。两者都是当前新建产线的主流选择。
| 协议 | 物理层 | 拓扑 | 典型速率 | 典型场景 |
|---|---|---|---|---|
| Modbus RTU | RS-485 | 总线 | 9.6k~115.2kbps | 仪表、电表、温控器 |
| Profibus DP | RS-485 | 总线 | 9.6k~12Mbps | 西门子PLC远程IO |
| Profinet | 工业以太网 | 星型/环网 | 100Mbps | 产线设备、伺服、机器人 |
| EtherNet/IP | 工业以太网 | 星型/环网 | 100M/1Gbps | 罗克韦尔PLC、变频器 |
| OPC UA | TCP/HTTPS | 客户端/服务器 | 取决于网络 | MES与SCADA、跨平台集成 |
五、OPC与OPC UA:面向信息集成的标准接口
OPC Classic基于Windows COM/DCOM,包括OPC DA、OPC AE、OPC HDA,早期广泛用于SCADA与PLC通信,但跨平台能力差、配置复杂。OPC UA是新一代标准,独立于平台,内置信息模型、安全加密和订阅机制,支持TCP、HTTPS、MQTT等传输,已成为MES与设备层、SCADA之间集成的首选。
在MES设备集成中,常见架构是:设备通过Profinet/EtherNet/IP接入PLC,PLC通过OPC UA服务器暴露数据,MES作为OPC UA客户端订阅或读取。对于老旧设备,则通过RS-485+Modbus RTU接入网关,网关再转换为OPC UA或MQTT上传。
六、案例与复盘:一条装配线的采集链路
某装配线有8台拧紧枪(RS-232)、12台温控器(RS-485/Modbus RTU)、1台西门子PLC(Profinet)和1台上位机SCADA。初期方案将拧紧枪直接接入工控机串口,温控器手拉手接485转USB,PLC通过Profinet接入。运行后发现温控器偶发丢包,拧紧枪数据延迟大。
复盘结论:485总线未加终端电阻且分支过长;串口轮询周期设置过短导致超时;PLC数据未通过OPC UA统一暴露,MES直接读PLC寄存器,耦合过重。优化后:485总线两端加120Ω终端电阻,缩短分支;拧紧枪改用串口服务器转以太网;PLC侧部署OPC UA服务器,MES通过OPC UA订阅关键工位数据。改造后采集成功率从92%提升至99.8%。
这个案例说明,工业通信不是“接上线就能通”,而是物理层、链路层、应用层与系统架构共同作用的结果。掌握协议分层、参数匹配和典型拓扑,是MES设备集成工程师的基本功。