电力系统IEC-104报文主要常用详解

文章目录

  • 1️⃣ IEC-104
    • 1.1 前言
    • 1.2 报文分类
    • 1.3 U帧报文
      • 1.3.1 常见报文
      • 1.3.1 报文解析
    • 1.4 S帧报文
      • 1.4.1 说明
      • 1.4.2 报文解析
    • 1.5 I帧报文
      • 1.5.1 报文解析
    • 1.6 控制域
      • I帧报文
      • S帧报文
      • U帧报文
      • 介绍
    • 1.7 ASDU
      • 1.7.1 常见类型标识
      • 1.7.2 常见结构限定词
      • 1.7.3 常见传送原因
      • 1.7.4 信息体地址
    • 1.8 常用功能报文
      • 1.8.1 启动链路报文
      • 1.8.2 总召报文
      • 1.8.3 复位进程
      • 1.8.4 对时
      • 1.8.5 召唤电能量
      • 1.8.4 遥控
      • 1.8.4 遥调
      • 1.8.4 文件
  • 优质资源分享

作者:xcLeigh
文章地址:https://blog.csdn.net/weixin_43151418/article/details/138184913


电力系统IEC-104报文主要常用详解,经常基础电力系统104报文的小伙伴知道,有个详细的报文讲解,会让自己在开发中事半功倍,所以今天就抽了点时间,详细的描绘了常用的报文的作用,及每个字节的含义,让你能够迅速知道并掌握104报文规则。

1️⃣ IEC-104

1.1 前言

    电力系统远动(power system telemechanics):为电力系统调度服务的远距离监测、控制技术,即管理和监控分布甚广的众多厂、所、站和设备、元器件的运行工况的一种技术手段。

    一般来说,电力系统远动终端RTU(Remote Terminal Unit)具有”四遥”等功能。”四遥”主要指的是 遥测、遥控、遥调、遥信四种。其实从”遥”字面意思上我们也可以看到这注定是一个远程远距离的操控了。

  • 遥测:远程测量。采集并传送运行参数,包括各种电气量(线路上的电压、电流、功率等量值) 和负荷潮流等。

  • 遥控:远程控制。接受并执行遥控命令,主要是分合闸,对远程的一些开关控制设备进行远程控制。

  • 遥信:远程信号。采集并传送各种保护告警和开关量信息。

  • 遥调:远程调节。接受并执行遥调命令,对远程的控制量设备进行远程调试,如调节发电机输出功率。

  • 一摇:遥信

  • 二遥:遥信和遥测

  • 三遥:遥信、遥测和遥控

1.2 报文分类

104规约帧报文分为三大类( I帧、S帧、U帧)

  • I帧是信息帧,作用是用于传输具体的通信数据的,长度必大于6个字节。

  • S帧是用于确认接收的I帧,即当接收到I帧后需要返回一个S帧,长度等于6个字节。

  • U帧是控制帧,用于控制启动/停止子站进行数据传输,或测试TCP链路连接,长度等于6个字节。

在这里插入图片描述

1.3 U帧报文

1.3.1 常见报文


--> 68 04 07 00 00 00 :主站开启链路

<-- 68 04 0B 00 00 00 :从站响应开启链路

--> 68 04 13 00 00 00 :主站停止链路

<-- 68 04 23 00 00 00 :从站响应停止链路

--> 68 04 43 00 00 00 :主站测试链路

<-- 68 04 83 00 00 00 :从站响应测试链路

1.3.1 报文解析

报文字节数描述
681起始符
041后面的报文长度
07 00 00 004控制域

1.4 S帧报文

1.4.1 说明

以主站确认子站I帧报文为例:68 04 01 00 0a 00
68:起始字符,固定为68H
04:该字节之后的数据长度,S帧报文中固定为04H
01 00 0a 00:控制域

01 00  是发送序号  低高位  --S帧报文这个是固定的
0a 00  是接收序号  低高位  --这个是根据接收报文的发送序号计算的

接收主站时钟同步[激活确认] <-- 68 14 12 00 0A 00 67 01 07 00 01 00 00 00 00 C9 50 02 10 2F 04 18
回复报文的接收序号:

int fsxh = (receivedBytes[3] + receivedBytes[2]) >> 8 | receivedBytes[2];
int num = ((fsxh)/ 2 + 1)*2
//控制域里的接收序号
第六个字节: (byte)(num & 0xFE)
第七个字节:(byte)((num >> 8) & 0xFF)

1.4.2 报文解析

报文字节数描述
681起始符
041后面的报文长度
07 00 00 004控制域

1.5 I帧报文

1.5.1 报文解析

报文字节数描述
681起始符
041后面的报文长度
02 00 02 004控制域,这里面接发送序号和接收序号都是需要计算的
641ASDU-类型标识
011ASDU-可变结构限定词
06 002ASDU-传送原因
01 002ASDU-公共地址
00 00 003ASDU-信息体地址
14 001ASDU-值-根据具体报文说明后续

1.6 控制域

    控制域有两个作用:一是区分I、S、U三种报文,二是存放报文编号(发送接收序号)。

I帧报文

在这里插入图片描述

I帧报文格式规定控制域1和控制域3的最低位为0;其他部分用于发送序列号和接收序列号的计数;比如:发送计数为 TxCounter 接收计数为RxCounter
控制域1 = TxCounter & 0xFE
控制域2 = (TxCounter >> 8) & 0xFF
控制域3 = RxCounter & 0xFE
控制域4 = (RxCounter >> 8) & 0xFF

S帧报文

在这里插入图片描述
S帧报文格式规定控制域1的第0位为1,第1位为0和控制域第0位为0;
S帧报文的发送序列号都为0
S帧只用于APCI中(意思就是S帧的apdu报文只会有apci不会存在asdu),不能用于传输信息,只用给对方信息的确认,比如子站发送8条报文,结束后主站就会给子站发送一个确认帧(S帧),告诉子站我收到了8条报文。
比如:接收计数为RxCounter
控制域1 = 0x01
控制域2 = 0x00
控制域3 = RxCounter & 0xFE
控制域4 = (RxCounter >> 8) & 0xFF

U帧报文

在这里插入图片描述
U帧只用于控制,并且只存在APCI中(意思就是U帧的apdu报文只会有apci不会存在asdu);
测试、停止和开启在一个U帧报文中只可能存在其中的一种;
如果用于【开启】则:
激活第2位为1 第3位为0,如上图所示所示,测试、停止和开启这三个2biT数据,低biT为ACT,置1表示激活,是主站发往从站的;高biT为CON,置1表示确认,是从站相应主站的。所以U帧的控制域只有以下6种:见上面的U帧报文

介绍

I帧与S帧中的发送序号和接收序号用来防止I帧报文在传送过程中丢失或者重复。发送方每发送一个I格式报文,其发送序号应加1,接收方每接收到一个与其接收序号相等的I格式报文后,其接收序号也应加1。由于代表序号的最后一位未使用(一直为0),所以报文中“序号”像是以“2”为步长进行递增。

当子站发送了若干帧I格式报文后,需要主站用S格式报文予以确认,S格式报文会将子站发送的发送序号小于等于其接受序号的报文全部确认。S格式和U格式报文的发送不会改变子站发送的I格式报文中的发送序号序列。

1.7 ASDU

    ASDU报文是104报文的核心,存储着五遥数据以及总召和对时的命令。类比Modbus规约,五遥的数据也可以理解为是存在寄存器中,五遥数据的上送就是子站通过响应总召或者主动上送变化信息的方式上传给主站,主站根据ASDU类型标识来区分是数据类型,再根据信息体地址来解析数据。

    注意:104规约中,所有长度大于1个字节的数据都是低字节在前。

1.7.1 常见类型标识

常见类型如下表:

在这里插入图片描述
在这里插入图片描述

1.7.2 常见结构限定词

    可变结构限定词,用来表明本帧报文中的数据结构。最高位表示SQ,低7位表示报文中包含数据的个数。内部结构如下表:
在这里插入图片描述
SQ是结构限定词的二进制展现的八位的第一位。
在这里插入图片描述

SQ=0,表示后面数据的信息体地址不连续,信息体地址和信息成对出现,一一对应。
SQ=1,表示后面数据的信息体地址连续,只有第一个信息体元素有地址,其他信息体元素地址从第一个信息体地址起,逐步加一。遥控、遥调和总召报文的可变结构限定词都为01H,表示后面只有一个信息体。

1.7.3 常见传送原因

传送原因COT占2个字节,按bit展开如下表:
在这里插入图片描述
T=0未试验,T=1试验。一般 T= 0。
P/N=0肯定,P/N=1否定。P/N=1说明该报文无效,一般P/N=0。
源发地址:用来记录来时哪个主站的响应数据,一般写 0。
常见的传送原因如下表:
在这里插入图片描述

1.7.4 信息体地址

02版本的104规约信息体地址如下表所示:

在这里插入图片描述

1.8 常用功能报文

1.8.1 启动链路报文

发送:68 04 07 00 00 00 :主站开启链路
接收:68 04 0B 00 00 00 :从站响应开启链路
初始化结束接收:68 0E 00 00 00 00 46 01 04 00 01 00 00 00 00 00 
发送:68 04 01 00 02 00 

1.8.2 总召报文

发送总召:68 0E 00 00 02 00 64 01 06 00 01 00 00 00 00 14 
接收总召确认:68 0E 02 00 02 00 64 01 07 00 01 00 00 00 00 14 
接收单点双点遥信数据:68 1A 04 00 02 00 01 8D 14 00 01 00 01 00 00 01 01 00 00 00 00 00 00 00 00 00 00 00 
接收单点双点遥信数据:68 1A 06 00 02 00 03 8D 14 00 01 00 01 02 00 01 01 01 01 00 00 00 00 00 00 00 00 00 
接收遥测数据:68 4E 08 00 02 00 0D 8D 14 00 01 00 01 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 C0 40 00 
接收总召激活终止:68 0E 0A 00 02 00 64 01 0A 00 01 00 00 00 00 14 
发送确认:68 04 01 00 0C 00 

1.8.3 复位进程

发送复位进程:68 0E 00 00 02 00 69 01 06 00 01 00 00 00 00 01 
接收:68 0E 02 00 02 00 69 01 07 00 01 00 00 00 00 01 
发送确认:68 04 01 00 04 00 

1.8.4 对时

时钟读取

发送时钟读取:68 14 00 00 02 00 67 01 05 00 01 00 00 00 00 00 00 00 00 00 00 00 
接收返回:68 14 02 00 02 00 67 01 05 00 01 00 00 00 00 5A 2E 13 0F 19 04 18 
发送确认:68 04 01 00 04 00 

时钟写入

发送时钟写入:68 14 02 00 04 00 67 01 06 00 01 00 00 00 00 D7 B0 13 0F 19 04 18 
接收返回:68 14 04 00 04 00 67 01 07 00 01 00 00 00 00 D7 B0 13 0F 19 04 18 
发送确认:68 04 01 00 06 00 

1.8.5 召唤电能量

发送召唤电能量:68 0E 04 00 06 00 65 01 06 00 01 00 00 00 00 05 
接收电能量确认:68 0E 06 00 06 00 65 01 07 00 01 00 00 00 00 05 
接收电能量数据:68 72 08 00 06 00 CE 0D 25 00 01 00 01 64 00 00 00 00 00 00 02 64 00 00 00 00 00 00 03 64 00 00 00 00 00 00 04 64 00 00 00 00 00 00 05 64 00 00 00 00 00 00 06 64 00 00 00 00 00 00 07 64 00 00 00 00 00 00 08 64 00 00 00 00 00 00 09 64 00 00 00 00 00 00 0A 64 00 00 00 00 00 00 0B 64 00 00 00 00 00 00 0C 64 00 00 00 00 00 00 0D 64 00 00 00 00 00 00 
接收电能量终止:68 0E 0A 00 06 00 65 01 0A 00 01 00 00 00 00 05 
发送确认:68 04 01 00 0C 00 

1.8.4 遥控

附件联系博主

1.8.4 遥调

附件联系博主

1.8.4 文件

附件联系博主

--------------- 业精于勤,荒于嬉 ---------------
 

请添加图片描述

--------------- 行成于思,毁于随 ---------------

优质资源分享

🧡🧡🧡🧡🤍【总览】程序员前端、后端资源合集

🧡🧡🧡🧡🤍【源码】程序员优质资源汇总

🧡🧡🧡🧡🤍【博主推荐】JAVA SSM框架的后台管理系统(附源码)

🧡🧡🧡🧡🤍【博主推荐】SpringBoot API接口对数据库增删改查,路由,TOKEN,WebSocket完整版(附源码)

🧡🧡🧡🧡🤍【博主推荐】HTML制作一个美观的个人简介网页(附源码)

🧡🧡🧡🧡🤍【博主推荐】html好看的个人简历网页版(附源码)

🧡🧡🧡🧡🤍【博主推荐】html好看的个人主页(附源码)

🧡🧡🧡🧡🤍【博主推荐】html好看的邀请函(附源码)

🧡🧡🧡🧡🤍【博主推荐】html好看的音乐播放器(附源码)

🧡🧡🧡🧡🤍【博主推荐】html好看的拼图小游戏(附源码)

🧡🧡🧡🤍🤍【博主推荐】html好看的拼图验证码(附源码)

🧡🧡🧡🧡🧡【博主推荐】html界面绘制SVG图形(附源码)

🧡🧡🧡🧡🤍【博主推荐】html操作SVG图(附源码)

🧡🧡🧡🧡🤍【博主推荐】html下拉框树形(附好看的登录界面)

🧡🧡🧡🧡🤍【博主推荐】HTML5响应式手机WEB(附源码)

🧡🧡🧡🧡🤍【博主推荐】大数据可视化大屏(源码下载)

🧡🧡🧡🧡🧡【博主推荐】html引用百度地图定位闪烁弹框树形(附源码)

🧡🧡🧡🧡🤍【博主推荐】HTML酷炫动画表白求爱界面(附源码)


请添加图片描述


     💞 关注博主 带你实现畅游前后端

     🏰 加入社区 带你体验马航不孤单

     💯 神秘个人简介 带你体验不一样得介绍

     🎀 酷炫邀请函 带你体验高大上得邀请


     ① 🉑提供云服务部署(有自己的阿里云);
     ② 🉑提供前端、后端、应用程序、H5、小程序、公众号等相关业务;
     如🈶合作请联系我,期待您的联系。
    :本文撰写于CSDN平台,作者:xcLeigh所有权归作者所有) ,https://blog.csdn.net/weixin_43151418,如果相关下载没有跳转,请查看这个地址,相关链接没有跳转,皆是抄袭本文,转载请备注本文原地址。


     亲,码字不易,动动小手,欢迎 点赞 ➕ 收藏,如 🈶 问题请留言(评论),博主看见后一定及时给您答复,💌💌💌


原文地址:https://blog.csdn.net/weixin_43151418/article/details/138184913(防止抄袭,原文地址不可删除)

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

艾瑞泽5汽车电子控制单元CAN通信数据读写车辆网络系统交互接口

艾瑞泽5的网关接口数据交换通常涉及车辆内部电子设备之间的信息传输&#xff0c;包括车身系统、娱乐系统、远程控制、车辆状态监控、CAN数据采集分析、整车DBC控制策略等信息。 艾瑞泽5作为一款采用CAN协议的汽车&#xff0c;其CAN通信的开发可以提高车辆的安全性、可靠性和实…

Visual Studio Code使用

目录 1.python的调试 2.c的运行 方法1&#xff1a; 方法2&#xff1a; 3.c的调试 3.1调试方法一&#xff1a;先生成执行文件&#xff0c;再调试 3.2调试方法二&#xff1a;同时生成执行文件&#xff0c;调试 4.tasks.json 与launch.json文件的参考 4.1C生成执行文件tas…

uniapp H5实现签名

第一种&#xff1a;跳转签名页面 1、创建审核页面audit.vue <template><view><uni-section title""><view class"auditClass"><uni-forms :model"baseFormData" ref"baseFormRef" :rules"rules&quo…

数据结构初阶——树和二叉树

数据结构初阶——树和二叉树 1. 树的概念和结构1.1 树的概念1.2 树的表示 2. 二叉树2.1 二叉树的概念和结构2.2 二叉树的存储结构2.2.1 顺序存储2.2.2 链式存储 3. 二叉树的顺序结构及实现——堆3.1 堆的概念和结构3.2 堆的实现3.2.1 堆的定义3.2.2 堆的向上调整3.2.3 堆的向下…

【网络安全】安全事件管理处置 — 事件分级分类

专栏文章索引&#xff1a;网络安全 有问题可私聊&#xff1a;QQ&#xff1a;3375119339 目录 一、安全事件分级 二、应急事件分级 三、安全事件分类 四、常见安全事件原因分析 1.web入侵 2.漏洞攻击 3.网络攻击 一、安全事件分级 在对安全事件的应急响应过程中&#xf…

【Hadoop】-Apache Hive概述 Hive架构[11]

目录 Apache Hive概述 一、分布式SQL计算-Hive 二、为什么使用Hive Hive架构 一、Hive组件 Apache Hive概述 Apache Hive是一个在Hadoop上构建的数据仓库基础设施&#xff0c;它提供了一个SQL-Like查询语言来分析和查询大规模的数据集。Hive将结构化查询语言&#xff08;…

LT8711UXD助力新款Swtich游戏机底座《4K/60HZ投屏方案》

Nintendo Switch&#xff08;OLED版&#xff09;正面搭载了一块分辨率为720P的7.0英寸OLED屏幕&#xff1b;具有白色和电光蓝电光红2种颜色&#xff1b;机身长度102毫米&#xff0c;宽度242毫米&#xff0c;厚度13.9毫米&#xff0c;重量约420克。 [2]Nintendo Switch&#xff…

明天报名!!济宁教师招聘报名照片及常见问题

明天报名!!济宁教师招聘报名照片及常见问题 山东济宁教师招聘1000多人 报名时间: 2024年4月25日9:00-4月28日16:00 缴费时间: 2024年4月25日11:00-4月30日16:00 打印准考证:2024年5月23日9:00-5月26日9:30 初审时间: 2024年4月25日11:00-4月29日16:00 查询时间: 2024年4月…

10、了解JVM判断对象可回收的神秘法则!

10.1、垃圾回收触发时机? 在我们之前的学习中,我们已经了解到,当我们的系统在运行过程中创建对象时,这些对象通常会被优先分配在所谓的“新生代”内存区域,如下图所示。 在新生代中,当对象数量逐渐增多,接近填满整个空间时,会触发垃圾回收机制。这个机制的作用是回收…

人工智能(pytorch)搭建模型28-基于Transformer的端到端目标检测DETR模型的实际应用,DETR的原理与结构

大家好&#xff0c;我是微学AI&#xff0c;今天给大家介绍一下人工智能(pytorch)搭建模型28-基于Transformer的端到端目标检测DETR模型的实际应用&#xff0c;DETR的原理与结构。DETR&#xff08;Detected Transformers&#xff09;是一种基于Transformer的端到端目标检测模型&…

IPV4报文格式和IP分片及计算

目录 1.IPV4报文格式 2.IP分片及计算 1.IPV4报文格式 版本&#xff1a;四位&#xff0c;IPV4 0100 4 ;IPV6 0110 6头部长度(IHL):最小值是5&#xff0c;最大值为15&#xff0c;单位4字节。IPV6固定头部长度40字节TOS:为区分服务字段&#xff0c;用区分服务类型&#xff0c;即…

半导体晶圆厂内外网数据单向导出,什么样的方案才安全又便捷?

半导体晶圆厂企业为了隔绝外部⽹络有害攻击、保护⽹络和数据安全&#xff0c;通常采⽤物理隔离的⽅式&#xff0c;将企业内⽹与互联⽹隔离。⽹络隔离后&#xff0c;基于业务开展需求&#xff0c;部分重要数据仍需由内⽹导⼊及导出⾄外部⽹络区域。为保障数据的安全合规性&#…

VMware配置centos虚拟机实现内网互通

VMware配置centos虚拟机实现内网互通 一、安装无桌面模式 环境说明&#xff1a; VMWare版本&#xff1a;VMware Workstation 17 Pro Centos版本&#xff1a;CentOS-7.9-x86_64-DVD-2009.iso 一键下载本文资源包 1. 安装虚拟机 下面是创建具体步骤,其中需要注意的是&#xff1…

如何优雅的实现 iframe 多层级嵌套通讯

前言 在前端开发项目中&#xff0c;不可避免的总会和 iframe 进行打交道&#xff0c;我们通常会使用 postMessage 实现消息通讯。 如果存在下面情况&#xff1a; iframe 父子通讯iframe 同层级通讯iframe 嵌套层级通讯 当面对这种复杂的情况的时候&#xff0c;通讯不可避免…

uniapp制作安卓原生插件踩坑

1.uniapp和Android工程互相引用讲解 uniapp原生Android插件开发入门教程 &#xff08;最新版&#xff09;_uniapp android 插件开发-CSDN博客 2.uniapp引用原生aar目录结构 详细尝试步骤1完成后生成的aar使用&#xff0c;需要新建nativeplugins然后丢进去 3.package.json示例…

机器学习——过拟合

一、过拟合得表现 模型在训练过程中&#xff0c;除了会出现过拟合现象&#xff0c;还有可能出现欠拟合的情况。相比而言&#xff0c;后者通常发生在建模前期&#xff0c;只要做好特征工程一般可以解决模型欠拟合问题。下图描述了模型在训练数据集上的三种情况&#xff1a; 其…

二阶响应曲面分析

文章目录 一、二阶响应曲面介绍1.1 什么时候用二阶响应曲面1. 非线性关系2. 探寻极值&#xff08;最大化或最小化&#xff09;3. 复杂的交互作用4. 精度要求高5. 探索性分析阶段 1.2响应曲面的特征 二、实例说明2.1 二阶模型求解 参考自《实验设计与数据处理》一书 一、二阶响应…

HTML5 服务器发送事件(Server-Sent Events)

参考&#xff1a;HTML5 服务器发送事件(Server-Sent Events) | 菜鸟教程 一&#xff0c;sse介绍 Server-Sent 事件 - 单向消息传递 Server-Sent 事件指的是网页自动获取来自服务器的更新。 以前也可能做到这一点&#xff0c;前提是网页不得不询问是否有可用的更新。通过服务…

Verilog基础语法——parameter、localparam与`define

Verilog基础语法——parameter、localparam与define 写在前面一、localparam二、parameter三、define写在最后 写在前面 在使用Verilog编写RTL代码时&#xff0c;如果需要定义一个常量&#xff0c;可以使用define、parameter和localparam三种进行定义与赋值。 一、localparam …

【Linux深造日志】运维工程师必会Linux常见命令以及周边知识!

&#x1f3ac; 鸽芷咕&#xff1a;个人主页 &#x1f525; 个人专栏: 《linux深造日志》《粉丝福利》 ⛺️生活的理想&#xff0c;就是为了理想的生活! 引入 哈喽各位宝子们好啊&#xff01;我是博主鸽芷咕。日志这个东西我相信大家都不陌生&#xff0c;在 linxu/Windows 系统…
最新文章