IEC 104电力规约详细解读(一) - 报文结构、报文分类、ASDU

协议一般规则:

  • 平衡方式传输;也就是说每一个过程的会话,没有规定谁从头发起,双方均可
  • 一般情况下配电主站作为TCP的客户端,配电终端作为TCP的服务器
  • TCP的默认端口号是2404

一、报文结构

在这里插入图片描述

APCI 应用规约控制信息;ASDU 应用服务数据单元(和101协议里定义一致);APDU 应用规约数据单元。

  • 启动字符68H定义了数据流中的起点
  • APDU的长度域定义了APDU体的长度,它包括APCI的四个控制域八位位组和ASDU。第一个被计数的八位位组是控制域的第一个八位位组,最后一个被计数的八位位组是ASDU的最后一个八位位组。ASDU的最大长度限制在249以内,因为APDU域的最大长度是253(APDU最大值=255减去启动和长度八位位组),控制域的长度是4个八位位组。
  • 控制域定义了确保报文不丢失和重复传送的控制信息(也就是发送序列号和接收序列号),报文传输启动/停止,以及传输连接的监视等。控制域的计数器机制是根据ITU-T X.25 标准中推荐的2.3.2.2.1 至2.3.2.2.5来定义的

二、报文分类

2.1 S格式 (Numbered supervisory functions,编号的监视功能格式)

在这里插入图片描述
S帧格式报文不用来传送信息,只用来确认对方的发送序列号。比如,双方可以按频率发送,比如接收8帧I帧回答一帧S帧,也可以要求接收1帧I帧就应答1帧S帧,当然也可以不要求(S帧内容示例参考例1)。因为S帧回复确认的序列号在byte3、byte4两个字节,并且byte3的bit1位置固定是0,所以在使用S帧回复确认时,只需在接收报文的发送序列号+2就可以(参考例2)。

举例1:68 04 01 00 0A 00 (接收序列号=5)  举例2:RECV:  68 FA 6C 67 84 00 0D 1E 03 00 01 00 E8 ... 省略 ... 6C 67 低前高后转换成0x676C 再右移一位就是0x33B6 最终发送序列号10进制也就是13238SEND:  68 04 01 00 6E 67 	接受序列号 = 接收报文的发送序列号+1 = 13239 = 0x33B7 左移一位 0x676E 再低前高后转换 就是6E 67 综上得出其实就是在接收来的报文的发送序列号的byte1的bit2位置上+1,也就成了对应10进制上+2

2.2 U格式 (Unnumbered control function,不编号的控制功能格式)

在这里插入图片描述
在同一时刻,TESTFR, STOPDT 或STARTDT中只有一个功能可以被激活。所以U帧格式的控制欲第一个字节就只有6种情况,分别是0x83(TESTER确认)、0x43(TESTER命令)、0x23(STOPDT确认)、0x13(STOPDT命令)、0x0B(START确认)、0x07(START命令)

举例:68  04  07  00  00  00	 START命令

U帧和S帧是没有ASDU的,所以这两种类型的报文长度也就是6字节

2.3 I格式 (Information Transmit Format,编号的信息传输格式)

在这里插入图片描述
遥信、遥测、遥控、遥调、总召、对时等都需要使用I格式传送。

举例:后面几篇文章详细说

三、I格式帧的ASDU

ASDU(应用服务数据单元),协议原文格式最好去101协议去看看,会比较详细。104和101是一样的
在这里插入图片描述

  • 类型标识符(1 byte)。解析来区分属于哪个过程。比如0x01单点遥信、0x0D段浮点遥测
  • 可变结构限定词(1byte)。bit0-bit6 :信息对象的个数 bit7: SQ信息对象地址是否连续,1代表连续,也就是信息对象2 的地址就是信息对象1的地址+1,信息对象2无需再给出它的地址;0代表不连续,每个信息对象都必须给出自己的地址
  • 传送原因(2byte)。
  • ASDU公共地址。一般是一个变电站一个地址
  • 信息对象
    • 信息对象地址。也就是点表对应的点位,遥测信息也就是测量点标号
    • 信息元素集。对应的值,按照不同的类型标识去解析
    • 时标。CP56Time2a格式 7byte
    • 限定词。按照报文类型确定有无限定词。总召唤限定词、复位进行限定词、初始化原因、品质描述词、设置命令限定词

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/434793.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

项目管理平台

技术架构: MySQL、Servlet、JSP 功能模块: 从管理员角度看: 用户登入系统后,可以修改管理员的密码。同时具有以下功能: 1、管理员可以管理具体项目信息。 2、管理员可以管理项目经费信息。 3、管理员可以管理项目资源信息。 4、…

Java实现加权平均分计算程序WeightedAverageCalculator

成绩加权平均分计算程序,带UI界面和输入保存功能。 因为本人对成绩的加权均分有所关注,但学校的教务系统查分时往往又不显示个人的加权均分,加之每次手动敲计算器计算很麻烦就花了点时间写了一个加权均分计算程序自用,顺便开源。…

【电子通识】学习网上《初学者学习电子的常见误区文章》有感

学习硬件电子电路过程中,特别是初级阶段,可能会走进一些误区,会比较迷茫和困惑。如果这时不能正确对待好这些困惑,就会影响正常的学习,干扰学习的进程,严重时可能会半途而废。今天我从网络上看到为初学者写…

兄弟DCP-7057黑白激光多功能一体机加粉后清零方法

硒鼓加粉机器上清零,方法如下: 打开安装硒鼓的前盖。按“清除”键,显示“更换硒鼓”。不用管提示,接着按“启用Start”,再按“”,屏幕上显示“01”。继续按“”,直到屏幕上显示“11”。按“OK”…

nodejs下载 安装 配置环境

目录 1.下载 2、配置环境 1.下载 下载地址:https://nodejs.org/en/download/ 下载完成后,双击安装包,开始安装,一直点next即可。我把安装路径设置为 D:\Program Files\nodejs\ 安装完之后打开终端 windowR cmd 回车&#xff1…

IS-IS:10 ISIS路由渗透

ISIS的非骨干区域,无明细路由,容易导致次优路径问题。可以引入明细路由。 在IS-IS 网络中,所有的 level-2 和 level-1-2 路由器构成了一个连续的骨干区域。 level-1区域必须且只能与骨干区域相连,不同 level-1 区域之间不能直接…

Java笔记 --- 一、双列集合

一、双列集合 双列集合的特点 Map 创建Map对象时,要规定键和值的泛型 Map是一个接口,不能直接创建,要创建实例化对象 Map的遍历 通过键找值 先获取到键的对象,并放到一个单列集合中(map.KeySet()方法)…

校招刷题指南

编程题训练逻辑思维能力,这是程序员需要具备的核心能力。校招还是比较看重算法能力的,刷题时建议分类型刷,先做简单题,再做比较困难的题;先刷数据结构相关的,然后是剑指offer的其他题目;刷题过程…

3分钟,学会一个测试员必懂 Lambda 小知识!

今天再来给大家介绍下函数式接口和方法引用。 前言 函数式接口 问:Lambda 表达式的类型是什么? 答:函数式接口 问:函数式接口是什么? 答:只包含一个抽象方法的接口,称为函数式接口 &#xf…

《合成孔径雷达成像算法与实现》Figure5.19

clc clear close all距离向参数 R_eta_c 20e3; % 景中心斜距 Tr 25e-6; % 发射脉冲时宽 Kr 0.25e12; % 距离向调频率 Fr 7.5e6; % 距离向采样率 Nrg 256; % 距离线采样点数 Bw abs(Kr*Tr); …

图像处理常用算法介绍

此篇简单回顾下图像处理领域常用到的一些算法,这边只对每个知识点重要的点做一些记录,便于快速的知其形,会其意。 一. SIFT(Scale-Invariant feature transform)特征 重点是了解DOG(Difference of Gaussian)高斯差分图像是如何生…

如何解决Flutter应用程序的兼容性问题

随着移动应用开发领域的不断发展,Flutter作为一种跨平台框架,受到了越来越多开发者的青睐。要确保Flutter应用程序能够在不同的设备和操作系统上稳定运行,并提供一致的用户体验,我们需要重视应用程序的兼容性问题。下面将简单的介…