理解IEC870-5-101规约:主站子站通信报文格式详解

需积分: 10 2 下载量 199 浏览量 更新于2024-07-27 收藏 245KB DOC 举报
"101报文格式总结" 在IT领域,特别是电力自动化系统中,IEC870-5-101规约是一种广泛使用的通信协议,它定义了主站系统与远方终端单元(RTU)之间的数据交换格式。这篇摘要主要关注的是101规约中的报文结构。 1. 报文格式: - 固定帧长格式适用于简单数据传输,由启动字符、控制域、链路地址域和帧校验和组成,最后由结束字符结束。 - 可变帧长格式则更为复杂,除了固定部分外,还包括长度域、链路用户数据区,允许传输不同长度的数据。 2. 帧结构详解: - 启动字符:固定为10H(十六进制)和68H,分别用于标识报文的开始。 - 长度域(L):在可变帧长格式中,记录了后续数据的字节数,包括控制域、地址域和用户数据区。 - 控制域(C):包含了传输方向、启动报文、帧计数、帧计数有效位以及其他控制信息。 - 链路地址域(A):通常用于区分不同的通信对象。 - 用户数据区:传输实际的应用层数据。 - 帧校验和(CS):计算控制域、地址域和用户数据区所有字节的算术和,用于检测传输错误。 - 结束字符:16H,标志着报文的结束。 3. 控制域(C)字段解释: - DIR:指示报文的传输方向,0代表主站到子站,1代表子站到主站。 - PRM:启动报文位,决定角色是主动还是从动。 - FCB:帧计数位,用于同步传输,启动站每次发送时会翻转此位。 - FCV:帧计数有效位,决定FCB的变化是否有效。 - ACD:要求访问位,子站用它来告诉主站是否有1级数据要发送。 - DCF:数据流控制位,子站设置为1时表明无法接收更多数据。 - 功能码(D3-D0):定义具体的功能,如读取、写入等操作,范围从0到15。 101规约的报文格式设计确保了数据的可靠传输,通过帧校验和可以检测并纠正错误,而控制域中的位组合则提供了各种控制功能,使得主站和子站间的数据交换能够有序进行。在C#编程中,实现101规约的解析和构建报文是进行电力系统通信的关键步骤之一。