1 规约简介
IEC104规约是一个广泛应用于电力、城市轨道交通等行业的国际标准。
2 专业术语解释
遥脉(电度量):是指对现场某装置所发出的脉冲信号进行周期累计的一种远程计数操作。其实,遥脉也可以看成是被具体规定了采用脉冲计数作为测量方法的一种遥测手段,它是遥测中的一种。而传统意义上的四遥中是没有提及遥脉一词的。
四遥指的是:遥信、遥测、遥控和遥调(设点);分别对应数字输入DI、模拟输入AI、数字输出DO和模拟输出AO
单点与双点的区别,以遥信为例,单点就是用一位标识一个遥信量,比如开关位置,只采集一个常开的辅助接点,值为1表示合位,0表示分位;而双点需要采集常开合常闭两个辅助接点位置,,当常开点值为1并且常闭点值为0,即10,则认为开关在合位;当常开点值=0并且常闭点值为1,即01,认为开关在分位;当两个位置值都为1,或两个值都为0,则认为开关位置不能确定。遥控也是一样的道理,SPI为遥信状态值。单点遥信,0分1合;双点遥信,1开2合,0和3为中间状态。
遥测的上送方式主要有定时主动上送(01H),响应总召唤上送(14H),越限上送(03H),而遥测值又分为归一化值、标度化值、短浮点数。
各遥测报文。其报文主体结构未变,改变是传送原因及类型标识。
归一化值(NVA)
值的范围为[-1,1]。归一化,即是将大于1的数映射到1以内的空间,通常就是用实际值除以额定值,即得到归一化的小数。具体表示法可以有F13或F16位的。占2个字节。
标度化值(SVA),值的范围为[-32768,~32767],即带符号整数。占2个字节。它的真实值就是标度值*小数点的位数,量程和小数点位置是固定的参数。(相当于16位有符号整数)
注意:归一化值与标度化值都是两个字节。高字节的最高位为符号位, 0表示正数,1表示负数。15位数据位,正数是原码,负数是补码。
短浮点数(R32-IEEE STD 754) 即计算机内浮点数的表示法,占4字节
双传输,信息体元素可以用同一个信息对象地址来构成不同的ASDU,即带时标或者不带时标的单点信息。
遥测最多可配16384个,遥测最多可配4096个,遥控最多可配256个,遥脉最多可配512个。

3 104主站和从站之间的通信过程
104通讯过程:
a,建链、启动传输
b,是否启动确认 (未确认等待启动帧返回a)
c,站召唤
d,回答全数据
e,回答结束否 (等待d结束,未结束返回d)
f,有无定时任务
g,遥控遥调
h,对时测试
i,超时处理
j,接收变化数据
k,S-FORMAT确认 (确认完毕,返回f)

4 IEC104协议结构

第一个字节:启动字符固定16进制数68H,十进制为104(正好代表104规约吧),二进制为:0110 1000。
第二个字节:APDU长度,注意APDU长度并不包括1字节的启动字符和1字节的APDU长度本身,而由于只有1字节代表数据长度,其最大值为255(2^8 - 1),所以最大值为255 - 2 = 253,又由于APCI除了这两个字节外还包括了4个字节的控制域(1~4),那么剩下的ASDU(可选的应用服务数据单元)长度为253 - 4 = 249字节。
5 104报文帧分类
IEC104协议的帧格式有三种(I帧、U帧、S帧)
I帧为信息帧,用于传输数据,长度大于6个字节,为长帧;
S帧为确认帧,用于确认接收的I帧,长度为6个字节,为短帧;
U帧为控制帧,用于控制启动/停止/测试,长度为6个字节,为短帧;
5.1 U格式:
不计数的控制功能类型,用于传输控制命令的报文。(U格式的APDU只包含APCI,帧长6字节。)
格式

类型

5.2 S格式:
计数的监视功能类型,用于传输对站端的确认的报文。(S格式的APDU只包含APCI,帧长6字节。)
格式

S格式的APDU的帧内容为如下6个字节:68 04 01 00 98 53 前四个字节固定,后两个字节表示接收序号。
S帧和I帧结合使用,用于信息确认,主站和子站可以按频率发送,比如接收8帧I帧回答一帧S帧,也可以要求接收一帧I帧就应答一帧S帧。
5.3 I 格式:
信息传输格式类型,用于传输含有信息体的报文和确认对方I格式的信息报文。(I格式的APDU包含APCI和ASDU)
I帧是104的核心,I帧包含ASDU,数据传输都属于I帧,如总召唤帧、发送对时报文、电度总召唤、遥控等下发指令,接收的数据帧如遥信、遥测、遥脉、SOE帧都属于I帧。
6 遥控流程
遥控分为直控和选控,直控实际上就是去掉选择命令,直接发执行命令。一般来说保护压板、保护复归为直控;测控压板、刀闸开关、分接头的升降停为选控。
选控的一般流程如下: 主站下发选择命令→装置回选择确认报文→主站下发执行命令→装置回执行确认报文→完成结束报文。
直控的一般流程如下: 主站下发执行命令→装置回执行确认报文→完成结束报文。
在整个遥控过程中,直到装置回执行确认前都可进行
而遥控命令的格式如下所示:

S/E为选择/执行位,0代表执行,1代表选择;QU代表遥控命令品质,0代表被控站内部确定遥控输出方式,不由控制站选择,1代表短脉冲方式输出,持续时间由被控站的系统参数决定,2代表长脉冲方式输出,持续时间由被控站的系统参数决定,3代表持续脉冲方式,其他值没有定义;
SCS代表单点遥控命令状态,0代表分/开,1代表合/关;DCS代表双点遥控命令状态,1代表分/开,2代表合关,0、3代表不允许。
QU一般为0,那么单点遥控——遥控选择分:0x80;遥控执行或遥控撤销分:0x00;遥控选择合:0x81;遥控选择或遥控撤销合:0x01;双点遥控——遥控选择分:0x81;遥控执行或遥控撤销分:0x01;遥控选择合:0x82;遥控选择或遥控撤销合:0x02
7 交互流程
7.1 第一步:首次握手(U帧)
发送―>激活传输启动 :
68(启动符)04(长度)07(控制域)
00 00 00
接收―>确认激活传输启动:
68(启动符)04(长度)0B(控制域)
00 00 00
7.2 第二步:总召唤,召唤YC,YX(可变长I帧)初始化后定时发送总召唤
发送―>总召唤 :
68(启动符)0E(长度)
00 00(发送序号,2个字节)00 00(接收序号,2个字节)64(类型标识)01(可变结构限定词)06
00(传送原因,2个字节)01 00(公共地址,即RTU站址,2个字节)0000
00(信息体地址,3个字节)14(QOI,区分是总召唤还是分组召唤,如果是2002版基地址的没有分组召唤)
接收―>S帧:(记录接收到的长帧,双方都可以按频率发送,文本规定最多接收8帧I帧回答一S帧,但我们要求接收一帧I帧就应答一S帧)
68 04 01 00 02 00:
接收―>总召唤确认(发送帧的镜像,除传送原因不同):
68(启动符)0E(长度)00
00(发送序号,2个字节)
00 00(接收序号,2个字节)
64 (类型标识)01(可变结构限定词)
07 00(传送原因,2个字节)
01 00(公共地址,即RTU站址,2个字节)00
00 00(信息体地址,3个字节)
14 (QOI)

发送―>S帧 记录接收到的长帧,双方都可以按频率发送,文本规定最多接收8帧I帧回答一S帧,但我们要求接收一帧I帧就应答一S帧)
68 04 01 00 02 00
接收―>YX帧:(以类型标识1为例)
68(启动符)
1A(长度)
02 00 (发送序号,2个字节)02 00(接收序号,2个字节)
01(类型标识,单点遥信)
04(可变结构限定词,有4个遥信上送)
14 00 (传送原因,2个字节,响应总召唤)01 00
(公共地址,即RTU站址,2个字节)03
00 00(信息体地址,3个字节,第3号遥信)
00(遥信分)
05 00 00 (信息体地址,3个字节,第5号遥信)00(遥信分)
08 00 00(信息体地址,3个字节,第8号遥信)01
(遥信合)09 00 00
(信息体地址,3个字节,9号遥信)00(遥信分)

发送―>S帧:
68 04 01 00 04 00
接收―>YX帧:(以类型标识3为例)
68(启动符)
1E(长度)
04 00(发送序号,2个字节)
02 00(接收序号,2个字节)03(类型标识,双点遥信)
05 (可变结构限定词,有5个遥信上送)14 00(传送原因,2个字节,响应总召唤)
01 00 (公共地址,即RTU站址,2个字节)01
00 00 (信息体地址,3个字节,第1号遥信)02(遥信合)
06 00 00 (信息体地址,3个字节,第6号遥信)02(遥信合)
0A 00 00 (信息体地址,3个字节,第10号遥信)01(遥信分)
0B 00 00(信息体地址,3个字节,第11号遥信)02 (遥信合)
0C 00 00(信息体地址,3个字节,第12号遥信)01(遥信分)

发送―>S帧:
68 04 01 00 06 00
接收―>YC帧:(以类型标识9为例)
68(启动符)
13(长度)
06 00 (发送序号,2个字节)02 00
(接收序号,2个字节)09
(类型标识,带品质描述的遥测)82(可变结构限定词,有2个连续的遥测)
14 00 (传送原因,2个字节,响应总召唤)01 00(公共地址,即RTU站址,2个字节)
01 07 00(信息体地址,3个字节,从第0x701即0号遥测开始)A1
10(遥测值0x10A1)
00(品质描述)
89 15(遥测值0x1589)
00(品质描述)

发送―>S帧:
68 04 01 00 08 00
接收―>结束总召唤帧:
68(启动符)
0E(长度)08 00
(发送序号,2个字节)02 00(接收序号,2个字节)
64 (类型标识)01(可变结构限定词)0A 00
(传送原因,2个字节)01 00
(公共地址,即RTU站址,2个字节)00
00 00(信息体地址,3个字节)
14(QOI)

发送―>S帧:
68 04 01 00 0A 00
7.3 第二步:发送对时报文**(通过设置RTU参数表中的”对时间隔”单位是分钟,默认是20分钟左右.)**
发送―>对时命令:
68(启动符)14(长度)
02 00(发送序号,2个字节)0A 00(接收序号,2个字节)67(类型标识)01(可变结构限定词)06
00(传送原因,2个字节)01 00(公共地址,即RTU站址,2个字节)0000
00(信息体地址,3个字节)01 (毫秒低位)
02(毫秒高位) 03(分钟)
04(时) 81 (日与星期)
09(月) 05(年)
接收―>对时确认:
68(启动符)14(长度)
0C 00(发送序号,2个字节)04 00(接收序号,2个字节)67(类型标识)01(可变结构限定词)07
00(传送原因,2个字节)01 00(公共地址,即RTU站址,2个字节)0000
00(信息体地址,3个字节)**
(毫秒低位) (毫秒高位)
(分钟) 04(时)
81 (日与星期) 09(月)
05(年)
发送―>S帧:
68 04 01 00 0E 00

7.4 第三步:电度总召唤(如果没有电度此步骤可以省略且该步骤可以在对时之前发送,DF8900系统通过设置RTU参数表中的”全数据扫描间隔”单位是分钟.DF1800/DF8002系统在程序中写定,一般15分钟召唤一次,如果不需要召唤电度一定在RTU参数表中电度个数设置为0**)**
发送―>召唤电度 :
68(启动符)0E(长度)
04 00(发送序号,2个字节)0E 00(接收序号,2个字节)65(类型标识)01(可变结构限定词)06
00(传送原因,2个字节)01 00(公共地址,2个字节)0000
00(信息体地址,3个字节)45(QCC)
接收―>召唤确认(发送帧的镜像,除传送原因不同):
68(启动符)0E(长度)10
00(发送序号,2个字节)
06 00(接收序号,2个字节)
65 (类型标识)01(可变结构限定词)
07 00(传送原因,2个字节)
01 00(公共地址,2个字节)00 00 00(信息体地址,3个字节)
45 (QCC)

发送―>S帧:
68 04 01 00 12 00
接收―>电度数据:68(启动符)
1A(长度)
12 00(发送序号,2个字节)
06 00(接收序号,2个字节)
0F (类型标识)02(可变结构限定词,2个电度值)
05 00 (传送原因,2个字节)01 00(公共地址,2个字节)01
0C 00 (信息体地址,3个字节,0xc01,0号电度)00
00 00 00(电度值)00(描述信息)02 0C 00(信息体地址,3个字节,0xc01,1号电度)00
00 00 00 (电度值)01(描述信息)

发送―>S帧:
68 04 01 00 14 00
接收―>结束总召唤帧:
68(启动符)
0E(长度)14 00
(发送序号,2个字节)06 00(接收序号,2个字节)
65 (类型标识)01(可变结构限定词)0A 00
(传送原因,2个字节)01 00
(公共地址,2个字节)00 00 00(信息体地址,3个字节)
45(QCC)

发送―>S帧:
04 01 00 16 00

7.5 第四步**:如果RTU****有变化数据主动上送**
主动上送变位遥信,类型标识为1或3
接收―>变位遥信:
68(启动符)
0E(长度)
16 00 (发送序号,2个字节)06
00 (接收序号,2个字节)01(类型标识,单点遥信)
01(可变结构限定词,1个变位发生)
03 00 (传送原因,2个字节,表突发事件)01 00(公共地址,2个字节)
03 00 00(信息体地址,3个字节,3号遥信)00(分)

发送―>S帧:
04 01 00 18 00
接收―>变位遥信:
68(启动符)0E(长度)
18 00 (发送序号,2个字节)06
00(接收序号,2个字节)
03(类型标识,双点遥信)01(可变结构限定词,1个变位发生)
03 00(传送原因,2个字节,表突发事件)
01 00 (公共地址,2个字节)06
00 00(信息体地址,3个字节,6号遥信)
01(分)

发送―>S帧:
04 01 00 1a 00
SOE****主动上送,类型标识为0x1e或0x1f
接收―>SOE:
68(启动符)
15(长度)
1a 00(发送序号,2个字节)
06 00(接收序号,2个字节)
1E(类型标识,单点)01(可变结构限定词,1个SOE)
03 00 (传送原因,2个字节,表突发事件)01
00 (公共地址,2个字节)08 00 00(信息体地址,3个字节,8号遥信)
00(分)AD 39
(毫秒,2个字节)1C(分)
10(时)7A(日与星期)
0B(月)
05(年)

发送―>S帧:
04 01 00 1c 00
接收―>SOE:
68(启动符)
15(长度)1c 00(发送序号,2个字节)
06 00(接收序号,2个字节)1F(类型标识,双点)01(可变结构限定词,1个SOE)
03 00(传送原因,2个字节,表突发事件)01
00 (公共地址,即RTU站址,2个字节)0A
00 00 (信息体地址,3个字节,10号遥信)01(信息体元素)
2F 40 (毫秒,2个字节)1C(分)
10 (时)7A(日与星期)
0B(月)
05(年)

7.6 第五步如果主站超过一定时间没有下发报文或RTU也没有上送任何报文则双方都可以按频率发送U帧,测试帧
发送―>U帧:
68 04 43 00 00 00
接收―>应答:
68 04 83 00 00 00

7.7 第六步遥控
发送―>遥控预置:68(启动符)
0E(长度)** **(发送序号,2个字节)
** **(接收序号,2个字节)
2E (类型标识)01(可变结构限定词)
06 00(传送原因,2个字节)
01 00(公共地址,2个字节)
05 0B 00(信息体地址,3个字节,遥控号=0xb05-0xb01=
4)
82(控合)
接收―>遥控反校:68(启动符)
0E(长度)
0E 00(发送序号,2个字节)
06 00(接收序号,2个字节)2E(类型标识)01(可变结构限定词)
07 00 (传送原因,2个字节)01 00(公共地址,2个字节)
05 0B 00(信息体地址,3个字节,遥控号=0xb05-0xb01=
4)
82(控合)

发送―>遥控执行:68(启动符)
0E(长度)
04 00(发送序号,2个字节)
18 00(接收序号,2个字节)2E(类型标识)01(可变结构限定词)06
00(传送原因,2个字节)01 00(公共地址,即RTU站址,2个字节)
05 0B 00(信息体地址,3个字节,遥控号=0xb05-0xb01=
4)
02(控合)
接收―>执行确认:68(启动符)
0E(长度)
12 00(发送序号,2个字节)08
00(接收序号,2个字节)2E(类型标识)01(可变结构限定词)
07 00(传送原因,2个字节)01
00(公共地址,即RTU站址,2个字节)05
0B 00(信息体地址,3个字节,遥控号=0xb05-0xb01= 4)02(控合)

发送―>遥控撤销:68(启动符)
0E(长度)
04 00(发送序号,2个字节)
18 00(接收序号,2个字节)2E(类型标识)01(可变结构限定词)08(传送原因,2个字节)01
00(公共地址,即RTU站址,2个字节)
05 0B 00(信息体地址,3个字节,遥控号=0xb05-0xb01=
4)02(控合)
接收―>撤销确认:68(启动符)
0E(长度)
12 00 (发送序号,2个字节)08
00(接收序号,2个字节)2E(类型标识)01(可变结构限定词)
09 00(传送原因,2个字节,,停止激活确认)01
00(公共地址,即RTU站址,2个字节)05
0B 00(信息体地址,3个字节,遥控号=0xb05-0xb01= 4)02(控合)

8 104协议和其他协议的转换
在实际的工程实施时,很多时候会遇到设备是plc,modbus协议,但是需要接入到电力104系统,如果要直接连接是不能对接的,因为这些设备间的协议格式和104不一样。这出货可以使用协议转换设备进行转换。如下图所示,可以把其他设备的协议转换成104后,在接入到104协议的系统。

快速了解电力IEC104协议规约相关推荐

  1. IEC104协议规约通过工业智能网关(协议转换器)转换modbus协议?

    电力系统IEC104规约是国家电网公司制定的调度接入网络通信规约,目前在电力系统中应用广泛.IEC104 一般用于调度主站与变电站之间或者不同系统之间的网络数据通信. Modbus协议目前成为工控行业 ...

  2. IEC104协议规约解析

    [转载自]<IEC104协议规约解析> 一.四遥信息体基地址范围 104调度规约有1997年和2002年两个版本,在流程上没有什么变化,02版只是在97版上扩展了遥测.遥信等信息体基体址, ...

  3. IEC104协议学习

    IEC104协议规约解析 快速了解电力IEC104协议规约_仰科网关的博客-CSDN博客_104协议 IEC104测试工具下载 IEC104主站模拟工具.IEC104客户端工具_iec104客户端-其 ...

  4. iec104协议java_GitHub - wsan70/IEC104_microgrid: iec104协议主站客户端程序,属于微电网管理系统一部分...

    IEC104_microgrid iec104协议主站客户端程序,属于微电网管理系统一部分 一 IEC104协议介绍 1 IEC104简要说明 IEC104是一种基于TCP/IP的电力行业通信协议,主 ...

  5. iec104协议 java_GitHub - delikely/IEC104_microgrid: iec104协议主站客户端程序,属于微电网管理系统一部分...

    IEC104_microgrid iec104协议主站客户端程序,属于微电网管理系统一部分 一 IEC104协议介绍 1 IEC104简要说明 IEC104是一种基于TCP/IP的电力行业通信协议,主 ...

  6. iec104协议java_GitHub - renduy/IEC104_microgrid: iec104协议主站客户端程序,属于微电网管理系统一部分...

    IEC104_microgrid iec104协议主站客户端程序,属于微电网管理系统一部分 一 IEC104协议介绍 1 IEC104简要说明 IEC104是一种基于TCP/IP的电力行业通信协议,主 ...

  7. 分享一个iec104协议的资源,一个模拟iec104协议主站端的小工具

    最近编写的iec104协议的软件也基本稳定了,现在上传到资源上去留作备份. 可实现功能: V1.005 2019.331 1.增加启动调用可执行文件目录下104.ini,调用遥信点表功能:增加显示SO ...

  8. RCL0923分布式光伏群调群控终端装置-即光伏协议转换器(完成逆变器数据采集协议规约转换功能)+台区智能融合终端SCU实现分布式光伏群调群控-分布式光伏可观可测可控一键群调,一键群控方案介绍

    RCL0923分布式光伏群调群控装置-即光伏协议转换器(完成逆变器数据采集协议规约转换功能)+台区智能融合终端SCU实现分布式光伏群调群控-分布式光伏可观可测可控一键群调,一键群控方案介绍 一.分布式 ...

  9. IEC104协议详解

    1. IEC104协议结构 APDU:应用规约数据单元 APCI:应用规约控制单元 ASDU:应用服务数据单元 (Tips: 任何复杂的东西都是由简单的东西构成,首先先看协议的整体结构,然后在细化,最 ...

  10. rrpp协议如何修改_RRPP(快速环网保护协议)

    RRPP(Rapid Ring Protection Protocol,快速环网保护协议) RRPP技术是一种专门应用于以太网环的链路层协议,它在以太网环中能够防止数据环路引起的广播风暴,当以太网环上 ...

最新文章

  1. 三步问题(求n中方式)
  2. error LNK2019: unresolve d external symbol _DriverEntry@8 referenced in function _GsDriverEntry@8
  3. 淘宝面试题:小白鼠与毒药
  4. Atitit.nosql api 标准化 以及nosql数据库的实现模型分类差异
  5. javascript中(function(){})($)与$(function)的区别
  6. JQuery插件之图片轮播插件–slideBox
  7. Unreal 和 Unity 3D 各有什么特点?如何选择?
  8. Java真的是低糖语言吗?
  9. Mac系统开发常见问题-Mac登录界面多了一个其他账户选项
  10. PTA1003 python3
  11. defcon quals 2016 feedme writeup
  12. VSCode设置网页代码实时预览
  13. JqGrid知识总结
  14. 线性代数常见的几种行列式
  15. 手机通讯录删除了怎么恢复
  16. myet: 练习英语口语不错
  17. 【Unity3D日常BUG记录】Unity打包运行出现:PlatformNotSupportedException该平台不支持此操作的解决记录
  18. 钉短信、钉电话收费套餐
  19. 2019年南京大学计算机系暨人工智能学院开放日和九月推免全记录
  20. php 中文转拼音 开头大写(附中文转首字母大写/全拼小写)

热门文章

  1. java使用aspose打印pdf、word文件
  2. 中国Linux内核开发者大会
  3. idb 怎么回复mysql_mysql利用frm和idb文件恢复数据库
  4. Python-Locust接口压力测试
  5. 微信小程序真机提示error occurs:ENOENT: no such file or directory, access
  6. assert.equal()
  7. TMS570-6-HET PWM
  8. 五 IP核行业潜在投资方向和机会
  9. 2021年3月最新-李沐-动手学深度学习第二版-中、英文版
  10. 元学习 - Learning How to Learn - 第一课:集中与发散思维