1. SCADA通信系统全景认知

SCADA(Supervisory Control and Data Acquisition,数据采集与监视控制)系统的本质,是把分散在广域现场的设备状态"看回来"、把控制命令"送下去"。而完成这一"看"与"送"的,正是通信系统。理解 SCADA 通信故障诊断,第一步不是去背协议报文,而是先建立一张全景图:系统由哪些部分组成、通信在其中处于什么位置、数据从现场到主站要经过哪些环节、每一环可能出什么问题。

一、SCADA系统的组成

一个典型的 SCADA 系统可以拆成四个层次:

  • 现场设备层:RTU(远程终端单元)、PLC、智能电表、保护装置、传感器与执行机构。它们直接与一次设备或工艺过程接口,负责采集模拟量(如 4–20 mA 电流、电压)、数字量(开关位置、告警接点)并执行遥控、遥调命令。
  • 通信层:由通信处理器、交换机、路由器、光端机、无线数传电台、载波机或 4G/5G 模块组成,负责把现场数据可靠地搬运到主站,并把主站命令回送现场。
  • 主站层:包括前置采集服务器(FEP)、SCADA 服务器、历史数据库、人机界面(HMI)工作站。前置机负责与各子站建立通信链路、解析协议、做点表映射;SCADA 服务器负责数据处理、告警判断与命令下发。
  • 应用与展示层:调度员画面、告警窗、报表、与上级调度或生产管理系统的接口。

这四层中,现场设备层和主站层通常是"可控"的——设备选型、点表配置、服务器状态都在运维人员掌握之中。而通信层横跨广域、涉及多家设备与多种介质,是故障率最高、定位最难的一层。可以说,SCADA 系统的可用性,很大程度上取决于通信链路的可用性。

二、通信在SCADA中的核心地位

SCADA 与普通信息系统的关键区别在于"实时性"和"闭环控制"。调度员看到的开关位置如果延迟 30 秒,可能已经错过事故处理窗口;遥控命令如果丢失,现场设备就不会动作。因此通信在 SCADA 中承担三项硬性职责:

  • 周期性数据采集:主站按固定周期(常见 1 s、5 s、10 s)轮询或由子站主动上送遥测、遥信,形成实时数据库的刷新。
  • 事件与告警上送:带时标的 SOE(事件顺序记录)要求子站检测到变位后立即上送,对通信的时延和时标一致性要求很高。
  • 控制命令下行:遥控、遥调属于"选择—确认—执行"过程,任何一次报文丢失都可能导致命令失败或误动,必须可校验、可确认。

正因为通信承载的是"实时闭环",通信中断在 SCADA 中不是"网络慢一点"的问题,而是直接表现为数据不刷新、告警丢失、遥控失败。诊断时必须把通信故障与设备故障、点表配置错误区分开。

三、典型通信架构:主站—子站—RTU/PLC

最常见的架构是"主站—通信通道—子站—现场设备"的树形结构。主站前置机通过串口、以太网或无线通道连接到一个或多个子站;子站(变电站内的通信管理机或 RTU)再通过 RS-485、以太网或现场总线连接多台 PLC、保护装置、电表。数据流向是双向的:上行是遥测、遥信、SOE,下行是遥控、遥调、对时。

下面这张图给出一个典型的两级通信架构,并标注了每一段链路上最值得关注的故障点,便于后续章节按段排查。

主站层 前置采集服务器 FEP / 协议解析 SCADA 服务器 数据处理 / 告警 历史数据库 存储 / 查询 调度员 HMI 工作站 画面 / 告警窗 通信层(故障高发区) 主站通信接口 串口 / 以太网 / 无线 传输通道 光纤 / 载波 / 4G 子站通信管理机 协议转换 / 汇聚 现场总线 RS-485 / 以太网 现场设备层 RTU 遥测/遥信/遥控 对时 / SOE PLC 工艺过程控制 Modbus / Profinet 保护装置 IEC 61850 / 103 跳闸 / 告警 智能电表 / 传感器 电量 / 温度 / 压力 DL/T 645 遥测/遥信/SOE 上行 遥控/遥调 下行 ① 接口/端口 ② 通道中断/误码 ③ 协议/点表 ④ 总线/地址冲突

四、常见通信协议概览

SCADA 现场协议种类繁多,按用途大致可分三类:

类别典型协议主要特点常见故障表现
串行现场总线Modbus RTU、DL/T 645、IEC 60870-5-101RS-485 半双工,主从轮询,速率 9600~115200 bps轮询超时、CRC 校验错、地址冲突
以太网工业协议IEC 60870-5-104、IEC 61850 MMS/GOOSE、Modbus TCP、Profinet基于 TCP/IP,速率高,支持多客户端TCP 连接断开、端口不通、报文解析失败
无线/远程通道GPRS/4G、无线数传电台、电力线载波覆盖广,时延与丢包率波动大链路频繁重连、时延抖动、数据不刷新

协议不同,但诊断思路相通:先确认物理链路是否通,再确认链路层/网络层是否可达,然后确认应用层协议是否正常交互,最后核对点表与数据映射是否正确。这个"由底向上"的顺序,能避免一上来就怀疑主站软件,把大量时间浪费在错误的方向上。

五、故障诊断总体思路

面对"某变电站数据不刷新"这类问题,建议按以下顺序推进,每一步都有明确的观察点和判断依据:

  1. 确认故障范围:是单点、单子站,还是整个主站所有子站?单点问题多半在点表或现场设备;单子站问题多半在该子站通信链路;全部子站问题多半在主站前置机或主站网络。
  2. 检查物理层:串口看接线与终端电阻,以太网看网口指示灯与链路状态,无线看信号强度与模块供电。物理层不通,上层一切免谈。
  3. 检查链路/网络层:用 ping 测通道连通性,用 telnet 测 TCP 端口(如 IEC 104 默认 2404),观察是否丢包、时延是否异常。
  4. 检查应用层协议:抓包看是否有完整的请求—响应交互,是否出现反复重连、否定确认或超时重传。
  5. 核对点表与映射:确认子站上送的点号、类型、系数与主站数据库一致,避免"通信正常但数据不对"。
诊断时养成"先看现象、再定范围、后查层次"的习惯。SCADA 通信故障中,相当一部分并非协议本身出错,而是接线松动、端口配置错误、IP 冲突或点表不一致。把排查顺序固定下来,比记住某个具体报文的含义更能提高效率。