通信简史:行业规范 | 电力系统监控和控制设计

IEC 60870-5是一套专为电力系统监控和控制设计的标准,提供了控制中心和现场设备之间通信的综合框架。

IEC 60870-5定义了主要用于电气工程和电力系统自动化的SCADA(监控与数据采集)系统的协议。

  • CS 101:点对点和多点通信的应用层和串行链路层
  • CS 104:基于CS 101的应用层,但通过TCP/IP网络传输

这些标准定义了设备之间的通信方式,确保控制系统(主站/客户端)和现场设备(从站/服务器)能够可靠地交换信息。

通信架构

IEC 60870-5遵循分层通信模型,其中控制系统(主站/客户端)与一个或多个现场设备(从站/服务器)进行通信。该协议旨在可靠地传输相对少量的数据,并具有确定的响应时间。

通信主要是异步的,意味着你通过非阻塞函数发送请求,并通过回调函数处理响应,而不是等待即时回复。

链路层通信模式

该协议定义了两种不同的串行通信链路层模式(CS 101)。

平衡模式

  • 支持一个主站和一个从站通过专用链路进行通信
  • 双方可以随时自发传输消息
  • 真正的对等通信模型
  • 通常用于控制中心与重要变电站之间的点对点链路

非平衡模式

  • 支持一个主站和多个从站在共享介质上进行通信
  • 每个从站由唯一的链路层地址标识
  • 从站不能自发发送消息 – 只能响应主站请求
  • 主站可以通过广播地址一次性寻址多个从站
  • 通常用于单主站轮询多个RTU的多点配置

应用层消息结构

IEC 60870-5通信的核心是应用服务数据单元(ASDU),它代表一个完整的应用层消息。

ASDU结构

一个ASDU包含:

  1. 头部信息
  • 类型标识(数据类型)
  • 可变结构限定符(单个或多个对象)
  • 传输原因(为何发送消息)
  • 发送方地址(谁发送的)
  • 公共地址(哪个站/设备)
  • 测试和否定标志
  1. 信息对象
  • 每个对象有一个信息对象地址(IOA)
  • 包含一个或多个信息元素
  • 可以包括质量描述符和时间戳

传输原因(COT)

传输原因是一个关键字段,解释了为何发送消息。常见的COT值包括:

COT值描述用途
PERIODIC周期/循环数据定期更新
SPONTANEOUS自发数据事件驱动更新
ACTIVATION命令激活向设备发送命令
REQUESTED请求的数据响应读取请求
INTERROGATED查询响应响应站/组查询
ACTIVATION_CON命令确认对命令的肯定响应
ACTIVATION_TERMINATION过程完成标志过程结束

COT帮助双方理解消息的上下文及其处理方式。

消息类型

IEC 60870-5定义了用于不同目的的消息类型,这些类型分为几类:

监控方向消息(M_*)

用于将状态和测量数据从现场设备传输到控制中心:

  • M_SP_NA_1:单点信息(二进制状态)
  • M_DP_NA_1:双点信息(如开关位置)
  • M_ST_NA_1:步位置信息
  • M_ME_NA_1:归一化测量值
  • M_ME_NB_1:标度化测量值
  • M_ME_NC_1:短浮点值
  • M_IT_NA_1:综合总计(计数器)

许多类型有带时间戳的变体(TA为短时间戳,TB为长时间戳)。

控制方向消息(C_*)

用于从控制中心向现场设备发送命令:

  • C_SC_NA_1:单命令(开/关)
  • C_DC_NA_1:双命令(如开关控制)
  • C_RC_NA_1:步控制命令
  • C_SE_NA_1:设定点命令,归一化值
  • C_SE_NB_1:设定点命令,标度化值
  • C_SE_NC_1:设定点命令,短浮点
  • C_IC_NA_1:查询命令
  • C_CS_NA_1:时钟同步命令

参数消息(P_*)

用于参数设置:

  • P_ME_NA_1:测量值参数,归一化
  • P_ME_NB_1:测量值参数,标度化
  • P_ME_NC_1:测量值参数,短浮点

文件传输消息(F_*)

用于文件传输操作:

  • F_FR_NA_1:文件就绪
  • F_SR_NA_1:段就绪
  • F_SC_NA_1:呼叫/选择文件/段
  • F_SG_NA_1:文件段

关键通信过程

查询

查询用于通过单个请求请求一组数据项。有两种类型:

  • 站查询(QOI=20):请求所有数据点
  • 组查询(QOI=21-36):请求特定组的数据

序列包括:

  1. 主站发送带ACTIVATION的查询命令
  2. 从站响应ACTIVATION_CON
  3. 从站发送请求的数据,带INTERROGATED_BY_STATION
  4. 从站发送ACTIVATION_TERMINATION标志完成

时钟同步

时钟同步对于保持系统时间一致性至关重要:

  1. 主站发送带当前时间的C_CS_NA_1
  2. 从站更新其内部时钟
  3. 从站处理后在C_CS_NA_1发送ACT_CON

命令过程

IEC 60870-5支持两种命令过程:

直接操作

  1. 主站发送带ACTIVATION的命令
  2. 从站立即执行命令
  3. 从站发送确认(肯定或否定)

选择后操作(SBO)

  1. 主站发送选择命令
  2. 从站检查命令是否有效并锁定点
  3. 从站发送确认
  4. 主站发送执行命令
  5. 从站执行并发送最终确认

SBO通过防止意外命令提供额外的安全性。

CS104特定概念(TCP/IP)

CS104将CS101的应用层扩展到TCP/IP网络,增加了一些重要概念:

服务器模式

CS104服务器支持三种操作模式来处理客户端连接:

  1. 单冗余组(CS104_MODE_SINGLE_REDUNDANCY_GROUP)
  • 只允许一个活动客户端连接
  • 其他连接保持待机
  • 所有连接共享单个事件队列
  1. 连接即冗余组(CS104_MODE_CONNECTION_IS_REDUNDANCY_GROUP)
  • 允许多个活动客户端连接
  • 每个连接有自己的事件队列
  • 连接关闭时队列被删除
  1. 多冗余组(CS104_MODE_MULTIPLE_REDUNDANCY_GROUPS)
  • 多个活动客户端连接按冗余组组织
  • 每个冗余组有自己的事件队列
  • 每个冗余组只有一个活动连接

协议参数

CS104定义了几个控制通信行为的重要参数:

参数描述
k发送方在停止前可传输的最大未确认APDU数
w接收方在发送确认前将接受的最大APDU数
t0连接建立超时(秒)
t1传输APDU超时 – 如果未收到确认,连接关闭
t2发送确认的超时
t3空闲连接测试报文超时

这些参数确保可靠的消息传递和连接维护。

高级功能

文件传输

IEC 60870-5支持文件传输操作,使用特定的消息类型(F_*):

  • 目录操作
  • 文件选择和传输
  • 按段传输
  • 确认机制

安全(TLS)

CS104可以使用TLS进行安全加固,提供:

  • 加密通信
  • 通信伙伴的身份验证
  • 防止中间人攻击

通信模型

CS101 平衡模式

CS101平衡模式是lib60870库提供的关键通信模型,实现了通过串行连接的IEC 60870-5-101协议。与其他通信模型不同,平衡模式在站点之间建立对等关系,允许双方独立发起通信。

在IEC 60870-5-101协议中,链路层可以以平衡模式或非平衡模式运行。平衡模式创建了一个平等的通信关系,两个站点都可以在没有对方明确许可的情况下发起数据传输。

这与非平衡模式不同,在非平衡模式中,只有主站可以发起通信,从站仅在轮询时响应。

CS101 非平衡模式

CS101 非平衡模式是 IEC 60870-5-101 协议中定义的一种通信模型,它在站点之间建立了明确的层级关系:一个主站多个从站进行通信。与双方都可以发起通信的平衡模式不同,在非平衡模式中,只有主站可以发起数据交换,这使得它非常适合传统的 SCADA 系统,其中中央控制站需要从多个现场设备收集数据。

在非平衡模式中,通信遵循明确的模式:

主站必须主动轮询每个从站以接收数据,因为从站不能自发传输信息。这种轮询机制使主站能够在系统收集所有连接设备数据的同时,保持对通信信道的控制。

CS104 TCP/IP通信

CS104协议(IEC 60870-5-104)是IEC 60870-5家族的关键部分,为电力工程和电力系统自动化中的SCADA系统提供基于TCP/IP的通信。

CS104(IEC 60870-5-104)在TCP/IP网络上实现了IEC 60870-5的应用层,使控制中心(客户端/主站)和变电站(服务器/从站)之间能够通信。与基于串行的协议(CS101)不同,CS104利用现代IP网络提供可靠、可扩展的通信。

该协议默认使用TCP端口2404,并提供:

  • 客户端和服务器之间的面向连接的通信
  • 支持数据的自发传输
  • 带有各种安全措施的命令传输
  • 文件传输和其他高级功能

CS104遵循客户端-服务器架构。CS104协议使用APCI(应用协议控制信息)参数来控制通信流程,包括定时参数和消息确认的窗口大小。

发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注

滚动至顶部