4. 通信基础与OSI模型

在工业HMI设备通信与界面集成中,通信协议是设备之间交换数据的“语言规则”。无论是触摸屏读取PLC寄存器、变频器上报运行状态,还是远程IO模块接收控制指令,数据都必须经过物理介质传输、链路寻址、帧格式封装和错误校验等过程。理解OSI模型中的物理层与数据链路层,是掌握串口、RS-232/485、Modbus、CAN和工业以太网等常见工业通信技术的基础。

一、OSI模型中的物理层与数据链路层

OSI参考模型将通信过程分为七层,其中与工业现场设备直接相关、决定“能不能通、通得稳不稳”的,主要是最底层的两层:

  • 物理层:定义电气信号、电平标准、传输介质、接口形状、传输速率和最大距离。它关心的是“0和1如何变成电压、电流或光信号”。
  • 数据链路层:定义帧结构、寻址方式、差错检测、介质访问控制和流量控制。它关心的是“数据如何组织成帧,发给谁,如何发现错误”。

对于HMI集成而言,物理层决定接线方式、终端电阻、屏蔽与接地;数据链路层决定站号、帧格式、校验方式和冲突处理。很多现场通信故障,表面看是“协议不通”,实际根源却在物理层,例如RS-485缺少终端电阻、CAN总线分支过长、以太网双绞线线序错误等。

核心记忆:物理层管“信号与介质”,数据链路层管“帧与寻址”。HMI通信调试时,先查物理层,再查链路层,最后查应用层。

二、串口、RS-232与RS-485

串口通信是工业设备中最经典的异步通信方式。它按位依次传输数据,通常包含起始位、数据位、校验位和停止位。HMI触摸屏、PLC、仪表和扫码器上常见的RS-232、RS-485、RS-422,都是串口通信在不同电气标准下的实现。

标准 电气方式 典型距离 拓扑 典型场景
RS-232 单端电压 约15米 点对点 HMI与PLC编程口、老式仪表
RS-485 差分信号 约1200米 多点总线 多台仪表、变频器、远程IO
RS-422 差分信号 约1200米 点对多主从 高速长距离点对点

RS-232使用单端信号,逻辑1和逻辑0通过正负电压表示,抗干扰能力弱,适合短距离点对点通信。RS-485使用两根线A、B之间的差分电压表示信号,共模干扰会被差分接收器抵消,因此抗干扰能力强、传输距离远,并支持一条总线上挂接多个设备。RS-485总线两端通常需要接120Ω终端电阻,以减少信号反射。

典型RS-485接线:
HMI  A+  ───────────────  A+  仪表1
HMI  B-  ───────────────  B-  仪表1
          │
          ├──────────────  A+  仪表2
          └──────────────  B-  仪表2

终端电阻:总线首端和末端各接120Ω
屏蔽层:单点接地,避免地环流

三、Modbus:主从轮询与寄存器模型

Modbus是工业自动化中应用最广泛的通信协议之一,通常运行在RS-485串行链路上,也可封装在TCP/IP之上。Modbus采用主从结构:主站发起请求,从站响应。HMI通常作为主站,PLC、仪表、变频器作为从站。

Modbus数据模型以寄存器为核心,常见类型包括:

  • 线圈:可读写的开关量,地址范围00001~09999。
  • 离散输入:只读开关量,地址范围10001~19999。
  • 输入寄存器:只读模拟量,地址范围30001~39999。
  • 保持寄存器:可读写模拟量,地址范围40001~49999。

Modbus RTU帧由从站地址、功能码、数据和CRC校验组成。主站轮询时,必须保证从站地址唯一、波特率一致、校验方式一致。若总线上两个从站地址相同,会出现响应冲突;若波特率不匹配,则表现为通信超时或乱码。

Modbus RTU读保持寄存器请求示例:
从站地址:01
功能码:03
起始地址:00 00
寄存器数量:00 02
CRC校验:C4 0B

完整帧:01 03 00 00 00 02 C4 0B

四、CAN总线与工业以太网

CAN总线采用差分信号,具有非破坏性仲裁、多主发送和自动重发机制,广泛用于汽车电子、工程机械和部分工业控制设备。CAN帧包含标识符、数据长度码和数据场,标识符既表示内容优先级,也用于滤波接收。与RS-485主从轮询不同,CAN支持多主竞争,实时性更好,但HMI接入CAN通常需要专用CAN接口或网关。

工业以太网基于标准以太网物理层,使用RJ45、M12或光纤介质,速率从100Mbps到1Gbps甚至更高。它通过交换机构建星型或环网拓扑,支持全双工通信。常见工业以太网协议包括Modbus TCP、EtherNet/IP、PROFINET、EtherCAT等。与串行总线相比,工业以太网带宽大、距离远、可接入设备多,但对网络配置、IP地址规划和交换机性能要求更高。

工业通信:物理层与数据链路层对照 OSI 第1层 物理层 电气标准 · 传输介质 · 接口 · 距离 · 速率 · 终端电阻 · 屏蔽接地 OSI 第2层 数据链路层 帧结构 · 站号/标识符 · CRC校验 · 介质访问 · 差错检测 · 流量控制 RS-232 单端电压 点对点 · 约15m HMI编程口 RS-485 差分信号 多点总线 · 1200m 仪表/变频器 CAN 差分 · 多主仲裁 标识符优先级 工程机械/汽车 工业以太网 RJ45/M12/光纤 100M~1Gbps Modbus TCP/PN HMI集成调试顺序 ① 确认物理接口与线序 → ② 检查终端电阻与屏蔽接地 → ③ 统一波特率/校验/站号 → ④ 验证帧格式与CRC → ⑤ 读取寄存器/变量 → ⑥ 界面绑定与刷新 常见误区:只改协议参数,不查物理层;RS-485星型接线;CAN分支过长;以太网IP冲突。

五、典型场景与排障复盘

假设一台HMI通过RS-485读取三台温控仪表,通信时断时续。排查时可按以下顺序进行:

  1. 物理层检查:确认A、B线没有接反,总线两端是否接120Ω终端电阻,屏蔽层是否单点接地。
  2. 链路层检查:确认三台仪表站号分别为1、2、3,波特率均为9600,校验方式均为无校验。
  3. 协议层检查:用串口调试工具发送Modbus RTU读寄存器命令,观察是否有正确响应。
  4. HMI配置检查:确认HMI轮询周期、超时时间和寄存器地址映射是否正确。

常见误区:RS-485总线采用星型或树型接线,会导致信号反射和通信不稳定;CAN总线分支过长会破坏阻抗连续性;工业以太网使用普通商用交换机,在环网或高实时场景下可能丢包。物理层问题往往表现为“偶发超时”,容易被误判为协议问题。

实践建议:HMI项目初期就应绘制通信拓扑图,标注设备地址、波特率、协议类型、线缆规格和终端电阻位置。调试时先单台通信成功,再逐台接入总线,便于快速定位故障设备。

掌握物理层与数据链路层原理后,面对串口、RS-485、Modbus、CAN和工业以太网时,就能从信号、接线、帧格式、寻址和校验等角度系统分析问题,而不是盲目更换设备或反复修改参数。这是工业HMI设备通信与界面集成中稳定可靠运行的基础。