2026/1/11 12:22:45
网站建设
项目流程
福清建设局网站,网站想要游览怎么做,网站开发是做什么,怎么在网站中搜索关键字一、IEC104 协议概述1.1 协议简介IEC 60870-5-104 (简称 IEC104) 是国际电工委员会(IEC)制定的用于电力系统调度自动化的远动通信协议。它是在 IEC 60870-5-101 基础上#xff0c;通过 TCP/IP 网络传输的扩展协议。┌────────────────────────────…一、IEC104 协议概述1.1 协议简介IEC 60870-5-104 (简称 IEC104) 是国际电工委员会(IEC)制定的用于电力系统调度自动化的远动通信协议。它是在 IEC 60870-5-101 基础上通过 TCP/IP 网络传输的扩展协议。┌────────────────────────────────────────────────────────────────────┐ │ IEC 60870-5-104 协议栈 │ ├────────────────────────────────────────────────────────────────────┤ │ 应用层 ASDU (Application Service Data Unit) │ │ ┌──────────────────────────────────────────────────────────────┐ │ │ │ 类型标识 | VSQ | 传送原因 | 公共地址 | 信息对象地址 | 数据 │ │ │ └──────────────────────────────────────────────────────────────┘ │ ├────────────────────────────────────────────────────────────────────┤ │ APCI (Application Protocol Control Information) │ │ ┌──────────────────────────────────────────────────────────────┐ │ │ │ 启动字符(0x68) | APDU长度 | 控制域(4字节) │ │ │ └──────────────────────────────────────────────────────────────┘ │ ├────────────────────────────────────────────────────────────────────┤ │ 传输层: TCP (端口 2404) │ ├────────────────────────────────────────────────────────────────────┤ │ 网络层: IP │ ├────────────────────────────────────────────────────────────────────┤ │ 数据链路层 物理层: 以太网 │ └────────────────────────────────────────────────────────────────────┘1.2 帧类型IEC104 协议定义了三种帧格式帧类型名称功能控制域特征I帧信息帧传输用户数据(ASDU)发送序号 接收序号S帧监视帧确认接收、流量控制只有接收序号U帧无编号帧链路控制(启动/停止/测试)STARTDT/STOPDT/TESTFRI帧格式 (信息传输): ┌────────┬────────┬────────┬────────┬────────┬─────────────┐ │ 0x68 │ 长度 │ 发送序号(低) │ 发送序号(高) │ 接收序号(低) │ 接收序号(高) │ ASDU... │ └────────┴────────┴────────┴────────┴────────┴─────────────┘ S帧格式 (监视确认): ┌────────┬────────┬────────┬────────┬────────┬────────┐ │ 0x68 │ 0x04 │ 0x01 │ 0x00 │ 接收序号(低) │ 接收序号(高) │ └────────┴────────┴────────┴────────┴────────┴────────┘ U帧格式 (链路控制): ┌────────┬────────┬────────┬────────┬────────┬────────┐ │ 0x68 │ 0x04 │ 控制字 │ 0x00 │ 0x00 │ 0x00 │ └────────┴────────┴────────┴────────┴────────┴────────┘1.3 核心数据类型根据代码中的实现主要支持以下数据类型数据类型类型标识符说明遥信(DI)M_SP_NA (1), M_DP_NA (3)单点/双点状态信息遥测(AI)M_ME_NC (13), M_ME_NA (9)浮点/归一化测量值遥控(DO)C_SC_NA (45), C_DC_NA (46)单点/双点控制命令遥调(AO)C_SE_NA (48), C_SE_NC (50)归一化/浮点设定值SOEM_SP_TB (30)带时标的单点状态变化电能量M_IT_NA (15)累积电能量时钟同步C_CS_NA (103)时钟同步命令二、应用场景2.1 典型应用领域┌────────────────────────────────────────────────────────────────────────────┐ │ IEC104 典型应用架构 │ ├────────────────────────────────────────────────────────────────────────────┤ │ │ │ ┌─────────────────────────────────────────────────────────┐ │ │ │ 调度中心 / SCADA主站系统 │ │ │ │ (IEC104 Client / 控制站) │ │ │ └──────────────────────────┬──────────────────────────────┘ │ │ │ │ │ ┌──────────┴──────────┐ │ │ │ TCP/IP 网络 │ │ │ │ (端口 2404) │ │ │ └──────────┬──────────┘ │ │ ┌──────────────────┼──────────────────┐ │ │ │ │ │ │ │ ┌──────┴──────┐ ┌──────┴──────┐ ┌──────┴──────┐ │ │ │ 变电站RTU │ │ 配电终端DTU │ │ 新能源控制器 │ │ │ │ (Server) │ │ (Server) │ │ (Server) │ │ │ └──────┬──────┘ └──────┬──────┘ └──────┬──────┘ │ │ │ │ │ │ │ ┌──────┴──────┐ ┌──────┴──────┐ ┌──────┴──────┐ │ │ │ 保护/测控 │ │ 开关设备 │ │光伏/储能系统│ │ │ │ 装置 │ │ │ │ │ │ │ └─────────────┘ └─────────────┘ └─────────────┘ │ │ │ └────────────────────────────────────────────────────────────────────────────┘2.2 主要应用场景应用场景描述特点电网调度省/地/县调度中心与变电站通信大规模、高可靠性配电自动化配电主站与配电终端通信分布式、实时性新能源光伏/风电场与集控中心通信海量数据、变化频繁储能系统BMS与EMS之间的数据交换双向控制工业自动化工厂电力监控系统集成性强三、客户端与服务端架构对比3.1 该程序在控制器侧的角色┌─────────────────────────────────────────────────────────────────────────────┐ │ 控制器侧 IEC104 通信架构 │ ├─────────────────────────────────────────────────────────────────────────────┤ │ │ │ ┌───────────────────────────────────────────────────────────────────┐ │ │ │ MGC V2 控制器 │ │ │ │ ┌─────────────────────────────────────────────────────────────┐ │ │ │ │ │ pro_iec104 模块 │ │ │ │ │ │ ┌─────────────────────┐ ┌─────────────────────────────┐ │ │ │ │ │ │ │ Sub104 (子站) │ │ TerminalMaster (主站) │ │ │ │ │ │ │ │ ┌───────────────┐ │ │ ┌─────────────────────┐ │ │ │ │ │ │ │ │ │ TCP Server │ │ │ │ TCP Client │ │ │ │ │ │ │ │ │ │ 监听端口2404 │ │ │ │ 主动连接主站 │ │ │ │ │ │ │ │ │ │ 被动等待连接 │ │ │ │ 主动发起请求 │ │ │ │ │ │ │ │ │ └───────────────┘ │ │ └─────────────────────┘ │ │ │ │ │ │ │ │ 功能: │ │ 功能: │ │ │ │ │ │ │ │ - 响应总召 │ │ - 发起总召 │ │ │ │ │ │ │ │ - 数据变化上报 │ │ - 接收数据 │ │ │ │ │ │ │ │ - 接收遥控命令 │ │ - 下发遥控命令 │ │ │ │ │ │ │ │ - 执行本地控制 │ │ - 时钟同步 │ │ │ │ │ │ │ └─────────────────────┘ └─────────────────────────────┘ │ │ │ │ │ └─────────────────────────────────────────────────────────────┘ │ │ │ └───────────────────────────────────────────────────────────────────┘ │ │ ▲ │ │ │ │ TCP/IP │ TCP/IP │ │ │ ▼ │ │ ┌─────────┴─────────┐ ┌─────────┴─────────┐ │ │ │ 上级调度主站 │ │ 下级子设备RTU │ │ │ │ (SCADA Client) │ │ (IEC104 Server) │ │ │ └───────────────────┘ └───────────────────┘ │ │ │ └─────────────────────────────────────────────────────────────────────────────┘3.2 客户端(Client) vs 服务端(Server) 详细对比特性子站模式 (Sub104/Server)主站模式 (TerminalMaster/Client)TCP角色TCP Server (监听端口)TCP Client (主动连接)默认端口2404 (可配置)连接远端2404连接方式被动等待连接主动发起连接数据流向上报数据给主站从子站采集数据总召处理响应总召上传数据发起总召接收数据遥控流程接收并执行遥控命令下发遥控命令变化上报主动上报(COS/COT)被动接收变化数据时钟同步接收对时命令发送对时命令典型应用作为被采集设备对接上级调度采集下级子设备数据四、IEC104 vs IEC61850 vs Modbus 协议对比4.1 综合对比表特性IEC 60870-5-104IEC 61850Modbus TCP标准组织IEC TC57IEC TC57Modicon (Schneider)发布时间2000年2003年1979年(RTU)/1999年(TCP)传输层TCP/IP (端口2404)TCP/IP 专用协议TCP/IP (端口502)数据模型平面点表面向对象(IED/LD/LN)寄存器/线圈应用层ASDUMMS/GOOSE/SMV简单请求/响应语义描述类型标识符SCL语言描述无变化上报支持(COT机制)支持(Report/GOOSE)不支持(需轮询)事件顺序SOE(毫秒级)支持(纳秒级)不支持配置方式手动配置点表SCL/ICD/SCD自描述手动配置寄存器互操作性良好优秀(自描述)一般复杂度中等高低实施成本中等高低主要应用电力调度/配电变电站内部工业自动化4.2 协议栈对比图┌──────────────────────────────────────────────────────────────────────────────┐ │ 协议栈架构对比 │ ├──────────────────────┬──────────────────────┬──────────────────────┐─────────┤ │ IEC 104 │ IEC 61850 │ Modbus TCP │ OSI层 │ ├──────────────────────┼──────────────────────┼──────────────────────┼─────────┤ │ │ SCL 配置语言 │ │ │ │ ASDU 数据单元 ├──────────────────────┤ │ 应用层 │ │ (类型COT数据) │ MMS │ GOOSE │ SMV │ Modbus 功能码 │ │ ├──────────────────────┼─────┼───────┼────────┼──────────────────────┼─────────┤ │ APCI │ │ │ │ │ 表示层 │ │ (I/S/U帧控制) │ TCP │ 以太网│ 以太网 │ MBAP Header │ │ ├──────────────────────┼─────┼───────┼────────┼──────────────────────┼─────────┤ │ TCP │ TCP │ IEEE │ IEEE │ TCP │ 传输层 │ │ (端口2404) │ │802.1Q │802.1Q │ (端口502) │ │ ├──────────────────────┼─────┴───────┴────────┼──────────────────────┼─────────┤ │ IP │ IP │ IP │ 网络层 │ ├──────────────────────┼──────────────────────┼──────────────────────┼─────────┤ │ Ethernet │ Ethernet │ Ethernet │数据链路 │ └──────────────────────┴──────────────────────┴──────────────────────┴─────────┘4.3 数据模型对比┌─────────────────────────────────────────────────────────────────────────────┐ │ 数据模型对比 │ ├─────────────────────────────────────────────────────────────────────────────┤ │ │ │ IEC 104 (平面点表): │ │ ┌──────────────────────────────────────────────────────────┐ │ │ │ 公共地址 │ 信息对象地址 │ 数据值 │ 品质描述 │ 时标 │ │ │ │ 1 │ 0x0001 │ 1 │ 0x00 │ CP56Time2a │ │ │ │ 1 │ 0x4001 │ 220.5 │ 0x00 │ - │ │ │ └──────────────────────────────────────────────────────────┘ │ │ │ │ IEC 61850 (面向对象): │ │ ┌──────────────────────────────────────────────────────────┐ │ │ │ IED: Bay1_Protection │ │ │ │ └─ LD: Protection │ │ │ │ └─ LN: PTOC1 (过流保护) │ │ │ │ ├─ DO: Str (启动) │ │ │ │ │ └─ DA: stVal true │ │ │ │ │ └─ DA: q good │ │ │ │ │ └─ DA: t 2024-01-15T10:30:00.123Z │ │ │ │ └─ DO: Op (动作) │ │ │ └──────────────────────────────────────────────────────────┘ │ │ │ │ Modbus (寄存器模型): │ │ ┌──────────────────────────────────────────────────────────┐ │ │ │ 线圈 (Coil): 地址 0-65535, 单bit读写 │ │ │ │ 离散输入 (DI): 地址 0-65535, 单bit只读 │ │ │ │ 保持寄存器 (HR): 地址 0-65535, 16bit读写 │ │ │ │ 输入寄存器 (IR): 地址 0-65535, 16bit只读 │ │ │ └──────────────────────────────────────────────────────────┘ │ │ │ └─────────────────────────────────────────────────────────────────────────────┘