2、通讯协议基础:OSI七层模型、TCP/IP四层模型、串行通讯(RS-232/485)与以太网通讯的基本原理

各位好,我是老张。在DCS系统里摸爬滚打了十几年,今天咱们聊聊通讯协议的基础。说实话,很多刚入行的工程师觉得协议这东西太抽象,离现场很远。但我要告诉你——通讯协议就是DCS的神经系统。你想想看,现场几百个仪表的数据,怎么准确无误地传到中控室?靠的就是这些协议。

2.1 OSI七层模型:通讯界的“通用语言”

OSI模型,全称是开放系统互连参考模型。它把通讯过程拆成了七层。我个人习惯把这七层分成两组:上面三层(应用、表示、会话)是“用户层”,下面四层(传输、网络、数据链路、物理)是“传输层”。

为什么要分层?说白了,就是为了解耦。每一层只管自己的事,出了问题也好排查。我在项目中遇到过这样的情况:现场通讯时断时续,很多人一上来就怀疑是网线坏了。其实呢,往往是应用层的报文格式不对,或者会话层的连接超时了。

OSI七层模型速记表

层号 名称 一句话解释 DCS中的例子
7 应用层 用户直接交互的界面 OPC、Modbus TCP
6 表示层 数据格式转换、加密 ASCII码、二进制编码
5 会话层 建立、管理、终止会话 RPC远程调用
4 传输层 端到端的可靠传输 TCP、UDP
3 网络层 路由选择、寻址 IP、路由器
2 数据链路层 帧封装、差错检测 以太网MAC、交换机
1 物理层 比特流传输、电气特性 RS-485、网线、光纤

嗯,这里要注意:OSI模型是个理论框架,实际应用中很少完全照搬。但它的分层思想,是所有通讯协议的基础。

2.2 TCP/IP四层模型:互联网的“实战派”

TCP/IP模型比OSI更精简,只有四层。它把OSI的上三层合并成了“应用层”,把下面两层合并成了“网络接口层”。

为什么会这样?因为TCP/IP是实战中长出来的,不是理论推导出来的。我记得当年调试一个DCS系统,上位机用的是OPC DA,下位机是PLC。通讯总是不稳定。排查了半天,发现是TCP窗口大小设置不合理。你想想看,如果不懂传输层,这种问题根本无从下手。

避坑指南

我曾经在项目里遇到过:工程师把Modbus TCP和Modbus RTU混为一谈。Modbus TCP走的是TCP/IP协议栈,端口502;Modbus RTU走的是串口。两者报文格式都不一样。千万别搞混了。

2.3 串行通讯:RS-232与RS-485

串行通讯,说白了就是一根线传数据,按位(bit)一个一个传。虽然现在以太网很普及,但在DCS现场,RS-485依然是主力。为什么?因为抗干扰能力强,传输距离远

2.3.1 RS-232:点对点的“老前辈”

RS-232是最早的串行标准之一。它的特点是:

  • 全双工:可以同时发送和接收
  • 传输距离短:一般不超过15米
  • 点对点:只能连两个设备
  • 电压摆幅大:±12V左右,抗干扰还行

我在早期项目中用过RS-232连接PLC和上位机。说实话,距离一长就不行,而且只能连一台设备。后来基本都换成RS-485了。

2.3.2 RS-485:多站通讯的“主力军”

RS-485是DCS现场最常用的串行标准。它的优势很明显:

  • 差分信号传输:抗共模干扰能力强
  • 传输距离远:最远可达1200米
  • 支持多站:一条总线上最多挂32个节点(标准)
  • 半双工:同一时刻只能发送或接收

重要提醒

RS-485总线必须加终端电阻!我见过太多现场因为没加终端电阻,导致信号反射、通讯失败的案例。终端电阻一般取120Ω,接在总线两端。

串行通讯的参数设置也很关键。波特率、数据位、停止位、校验位,这四个参数必须一致,否则通讯不上。我习惯用9600波特率、8数据位、1停止位、无校验——这是最通用的配置。

2.4 以太网通讯:DCS的“高速公路”

以太网现在已经是DCS系统的主流通讯方式了。它基于CSMA/CD(载波监听多点接入/碰撞检测)机制。说白了,就是“先听后说,边说边听”。

以太网的帧结构是这样的:

前导码(7B) + 帧起始定界符(1B) + 目标MAC(6B) + 源MAC(6B) + 类型/长度(2B) + 数据(46-1500B) + FCS(4B)

嗯,这里要注意:以太网的最小帧长是64字节,最大是1518字节。如果数据不够46字节,要填充。为什么?因为要保证碰撞检测的有效性。

在DCS系统中,以太网通常采用工业以太网交换机,支持环网冗余(如RSTP、MRP)。我记得有一次,一个化工厂的DCS网络因为交换机故障导致整个系统瘫痪。后来改成了环网拓扑,故障恢复时间从几分钟缩短到了几十毫秒。

串行通讯 vs 以太网通讯

对比项 串行通讯(RS-485) 以太网通讯
传输速率 一般≤115.2kbps 10/100/1000Mbps
传输距离 最远1200米 100米(双绞线),更远需光纤
节点数量 最多32个(标准) 理论上无限制
抗干扰能力 强(差分信号) 中等(需屏蔽)
实时性 好(确定性) 一般(需工业以太网协议)
成本 较高

最后说一句:没有最好的协议,只有最合适的协议。在DCS现场,往往是多种协议共存。RS-485用于现场仪表采集,以太网用于控制器和上位机通讯。你想想看,如果全用以太网,现场几百个仪表都拉网线,成本得多高?

好了,这一章就到这里。下一章我们聊聊Modbus协议——DCS系统里最常用的通讯协议之一。