电力通信规约的鼻祖:IEC101和串口通信

IEC101 现在已经不是主流的通信规约了,我用简短的篇幅介绍一下它的主要特性。

一、背景:简单、可靠、低消耗

IEC101 在 1995 年发布,2002 年完成修订。

它的出现源于早期电力系统无 TCP/IP 的通信环境:当时变电站、RTU(远动终端)与调度主站的连接依赖电话线拨号或专线,物理层普遍采用RS-232/RS-485 串口,核心需求是简单、可靠、低资源消耗的通信规约,适配早期的嵌入式设备(仅几 KB 内存)。

二、现状:老骥伏枥

IEC 101主要使用场景是配电网自动化、老旧变电站。尽管在智能电网中,IEC104(以太网)逐步替代 101,但在老旧设备、强干扰现场、低成本场景中,IEC101 + 串口仍在持续服役。

1. 技术特点

  • 优势:结构极简、抗干扰强、成本低。

  • 局限:主从轮询实时性差、总线拓扑扩展有限,难以支撑大规模、高实时性的智能电网需求。

2. 与 IEC104 的关系

IEC104 是 IEC101 的以太网(工业标准局域网技术)扩展版:二者应用层结构完全一致,仅底层承载不同 ------101 走 "串口 + FT1.2 链路层",104 走 "TCP/IP + 以太网"。

三、分层逻辑:三层精简架构

1. 物理层:串口(RS-232/RS-485)

  • 核心接口:RS-232和RS-485,外观接口可以长得一模一样,但内部定义不一样

  • RS-232:点对点、全双工、短距离(≤15m),用于主站与单终端直连。

  • RS-485:总线型、半双工、长距离(≤1200m),支持 1 主多从(最多 32 节点),工业现场主流。

  • 通信参数:

    • 波特率:9600bps,双方必须完全一致。实际中,支持从300bps到38400bps甚至更高的多种速率,根据信道质量和设备性能灵活选择

    • 串口8N1帧结构:起始位 → 8 位数据位 → 无校验 → 1 位停止位

2. 链路层:FT1.2 帧格式(中间层)

IEC101 不直接发串口,必须通过 FT1.2 链路层封装,负责 "成帧、校验、寻址、流量控制",是连接应用层与串口的关键。

3. 应用层:IEC101 业务逻辑

  • 功能:定义 "四遥" 数据格式、地址编码、交互流程。

  • 数据单元:包含类型标识、传送原因、公共地址、信息对象地址及数据值。

  • 典型交互:主站发送 "遥测召唤帧"→从站返回 "遥测数据帧"→主站发送 "遥控命令帧"→从站执行并确认。

4. 分层逻辑总结

  • IEC101应用层(业务数据)
  • FT1.2链路层(成帧、校验、寻址)
  • 串口驱动(波特率配置、比特流收发)
  • 物理层(RS-232/RS-485硬件、双绞线)
  • 一句话:IEC101 是 "内容",FT1.2 是 "信封",串口是 "邮递员"。

四、网络拓扑

1. 点对点拓扑(RS-232/RS-485)

  • 结构:调度主站 ↔ 单个 RTU / 终端

  • 特点:全双工、无冲突、通信可靠,适用于核心站点直连。

2. 总线型拓扑(RS-485 主流)

  • 结构:1 个主站 + 多个从站(RTU/FTU/DTU)挂接在同一 RS-485 总线上

  • 特点:半双工、主站轮询、成本低,适用于变电站多终端、配电网终端集群。

  • 规则

    • 一个主站,多个从站

    • 只有主站有权说话,从站不能主动发言

  • 流程:

    • 主站发命令:带上从站地址(比如地址 = 5)

    • 总线上所有设备都收到这条报文

    • 每台设备自己比对地址:

    • 地址 = 5:响应、回数据

    • 其他地址:直接忽略,不说话

五、关键问题解答

  • IEC101 是否只能在串口上运行?

    • 理论上是的。IEC101 自带专属链路层 FT1.2,设计上绑定串口物理层,无以太网 / IP 适配能力。
    • 但在实际工程中,为了兼容和扩展,也出现了"非串口"的应用方式:通过"串口服务器"转换,可以将IEC101的报文打包成TCP/IP数据包,在以太网甚至无线公网上传输。对于上层的调度主站来说,它看到的仍然是一个"虚拟串口"。
  • 串口为什么没有 TCP/IP 栈?

    • 设计定位:串口是底层物理通信接口,仅负责比特流收发,无 "寻址、路由、连接管理" 需求。

    • 历史原因:串口诞生早于 TCP/IP,早期设备资源有限,无需复杂协议栈。

    • 功能分工:TCP/IP 是网络层 + 传输层协议簇,用于跨网通信;串口是本地 / 短距离通信。

  • IEC101 是半双工的吗?

    • 是的,应用层是主从召唤,底层串口 RS485 也是半双工。

六、最后

未来我还会写文章介绍IEC104、四遥。

相关推荐
弗锐土豆21 小时前
使用eclipse、java、maven、j60870、oceanbase按照IEC104协议采集、存储电力数据
java·oceanbase·电表·iec104·抄表
fffzd6 天前
STM32:串口--DMA
stm32·单片机·嵌入式硬件·串口·dma·回调函数
记帖8 天前
STM32C552开发(3)----配置串口打印
串口·stm32cubeide·stm32cubemx2·stm32c552cet6
fffzd8 天前
STM32:串口--轮询模式
stm32·单片机·嵌入式硬件·串口·hal库·轮询模式
MC皮蛋侠客16 天前
IEC 104 系列(三):通信机制——连接管理与数据交互
网络·tcp/ip·iec104·电力规约
拾知_H17 天前
STM32/串口控制LED亮灭
stm32·单片机·嵌入式硬件·串口
老李的森林19 天前
嵌入式开发--STM32用DMA+IDLE中断方式串口接收不定长数据--之2
stm32·单片机·嵌入式硬件·串口·dma·idle中断
山木嵌入式21 天前
STM32串口不定长数据接收:超时解析法+DMA+空闲中断法(附完整代码)
stm32·单片机·串口·uart
tzy2331 个月前
Modbus:工业通信的“通用语言”
网络·串口·协议·modbus·rs-485·规约·iec 101
山木嵌入式1 个月前
同步通信与异步通信(UART/USART):定义、原理、场景全解析
串口·嵌入式·uart·通信