IEC104协议(全称IEC 60870-5-104)是国际电工委员会(IEC)制定的电力自动化领域核心通信协议,基于TCP/IP网络传输,用于电力系统主站与子站间的实时数据监控与控制。简单来说,IEC 104协议是一种用于电力系统监控的通信规约,它定义了控制中心(如调度主站)和变电站或其他远程终端(如RTU、智能保护设备)之间如何通过网络进行数据传输和通信。
一、核心定义与角色
1、角色定位:它是一个主从式(客户端/服务器式) 的协议。
2、主站端(控制中心):通常作为客户端(Client),主动发起连接和数据请求。
3、子站端(变电站/RTU):通常作为服务器(Server),监听连接,接收请求并返回响应和数据。
4、网络基础:它基于TCP/IP协议栈,使用端口号2404作为其默认通信端口。这意味着它可以在现代以太网上运行,实现了远程监控。
二、主要功能和用途
IEC 104协议主要用于传输电力系统中的“四遥” 信息:
1、 遥测(Telemeasurement):传输测量值,如电流、电压、功率、频率等模拟量。
2、 通信(Teleindication):传输状态信息,如开关、断路器的分/合闸状态、报警信号等开关量。
3、 遥控(Telecommand):传输控制命令,如远程执行分闸或合闸操作。
4、 遥调(Teleadjusting):传输设定值,如修改设备的工作参数或定值。
三、协议数据结构和关键机制
为了在不可靠的网络环境中保证可靠传输,IEC 104设计了一套严谨的机制。
1、 APDU(应用协议数据单元):IEC 104报文的基本单位,由APCI(应用规约控制信息) 和 ASDU(应用服务数据单元) 组成。
1) APCI:包含启动字符、长度、以及最重要的发送序列号(Tx)和接收序列号(Rx)。这两个序号用于实现TCP之上的确认和流量控制机制。
2) ASDU:这是报文的“数据包”,里面包含了实际要传输的信息。其结构包括:
a、 类型标识:指明ASDU的类型(例如,是遥测值还是通信值)。
b、 可变结构限定词:指明信息对象的数量和方式。
c、 传送原因:指明数据产生的原因(例如,周期上传、突发变化、遥控确认等)。
d、 公共地址(站址):通常指RTU或子站的地址。
e、 信息对象地址:具体某个信号点(如“1号开关”)的地址。
f、 信息元素:实际的数据值(如“合闸”状态或“100A”的电流值)。
2、 关键通信机制:
1) 启动过程:连接建立后,客户端和服务器端会交换一个STARTDT(启动数据传输) 指令,之后才开始正式的数据通信。
2) 确认和超时重传:接收方必须对收到的每帧报文进行确认(通过回复包含最新接收序列号的APCI帧)。发送方如果在一定时间内没有收到确认,会重复发送未确认的报文,确保数据不丢失。
3) 三种传输模式:
a、 突发传输:子站端发生状态变化时立即主动上传。
b、 循环传输:子站端按设定好的时间周期定时上传数据。
c、 总召唤:主站端可以主动发起请求,要求子站端将所有数据全部上传一遍,通常用于初始化或通信恢复后同步数据。
4) 时钟同步:主站端可以向子站端发送对时命令,统一整个系统的时间,这对于故障分析至关重要。
四、与IEC 101协议的关系
1、IEC 101 (IEC 60870-5-101):是IEC 104的“前辈”,它使用串行通信(如RS-485),传输速度慢,距离有限。
2、IEC 104:可以看作是 “IEC 101 over TCP/IP” 。它将IEC 101的ASDU结构完整地映射到了TCP/IP帧中,从而利用了网络的高速、远程传输优势。
五、应用场景
IEC 104协议广泛应用于:
电网调度自动化系统
配网自动化系统
变电站监控系统(SCADA)
发电厂监控系统
任何需要远程监控和控制电力设备的场景。