(完整)104规约解析
- 格式:pdf
- 大小:17.35 MB
- 文档页数:88
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- IEC-60870-5-104:应用模型是:物理层,链路层,网络层,传输层,应用层物理层保证数据的正确送达,保证如何避免冲突。
(物理层利用如 RS232上利用全双工)链路层负责具体对那个slave的通讯,对于成功与否,是否重传由链路层控制(RS485 2线利用禁止链路层确认)应用层负责具体的一些应用,如问全数据还是单点数据还是类数据等(网络利用CSMA/CD等保证避免冲突的发生)--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 基本定义:端口号2404,站端为Server 控端为Client,平衡式传输,2Byte站地址,2Byte传送原因,3Byte信息地址。
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 注:APDU 应用规约数据单元(整个数据)= APCI 应用规约控制信息(固定6个字节)+ ASDU 应用服务数据单元(长度可变)--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- APDU长度(系统-特定参数,指定每个系统APDU的最大长度)APDU的最大长度域为253(缺省)。
IEC104协议规约解析IEC104协议规约解析⼀、四遥信息体基地址范围104调度规约有1997年和2002年两个版本,在流程上没有什么变化,02版只是在97版上扩展了遥测、遥信等信息体基体址,区别如下:类别1997版基地址2002版基地址遥信1H------400H1H------4000H遥测701H------900H4001H------5000H遥控B01H------B80H6001H------6100H设点B81H------COOH6201H------6400H电度C01H------C80H6401H------6600H⼆、⼀些报⽂字节数的设置类别配置⽅式公共地址字节数2传输原因字节数2信息体地址字节数3此配置要根据主站来定,有的主站可能设为1,1,2,我们要改与主站⼀致。
三、详细报⽂分析以公共地址字节数=2,传输原因字节数=2,信息体地址字节数=3为例对⼀些基本的报⽂分析第⼀步:⾸次握⼿(U帧)发送→激活传输启动:68(启动符)04(长度)07(控制域)00 00 00接收→确认激活传输启动: 68(启动符)04(长度)0B(控制域)00 00 00第⼆步:总召唤(I帧)召唤YC、YX(可变长I帧)初始化后定时发送总召唤,每次总召唤的间隔时间⼀般设为15分钟召唤⼀次,不同的主站系统设置不同。
发送→总召唤:68(启动符)0E(长度)00 00(发送序号)00 00(接收序号)64(类型标⽰)01(可变结构限定词)06 00(传输原因)01 00(公共地址即RTU地址)00 00 00(信息体地址)14(区分是总召唤还是分组召唤,02年修改后的规约中没有分组召唤)接收→S帧:注意:记录接收到的长帧,双⽅可以按频率发送,⽐如接收8帧I帧回答⼀帧S帧,也可以要求接收1帧I帧就应答1帧S帧。
68 04 01 00 02 00接收→总召唤确认(发送帧的镜像,除传送原因不同):68(启动符)0E(长度)00 00(发送序号)00 00(接收序号)64(类型标⽰)01(可变结构限定词)07 00(传输原因)01 00(公共地址即RTU地址)00 00 00(信息体地址)14(同上)发送→S帧:注意:记录接收到的长帧,双⽅可以按频率发送,⽐如接收8帧I帧回答⼀帧S帧,也可以要求接收1帧I帧就应答1帧S帧。
链路先握手再通信,不握手不通信,通信中断须再握手(建立链路)确认报文的来回须对方的认可,认可方式可以是一条专用的报文也可以是下一个询问报文中的FCB来暗示原因传送的信息都必须带上原因,不允许没有理由的传输地址每个信息量都有一个唯一的不重复的地址类型每种信息的传输都有不同的功能类型68 启动符5D 长度6C 控制域103 控制域278 控制域300 控制域401 遥信D0 可变结构限定词(信息体个数)14 00 传送原因01 00 站地址01 00 00 信息体地址(点号=信息体地址-起始地址)00 00 00 00 00 00 00 00 00 00 00 00 00 01 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 00 00 00结构说明:TYP:类型标识,可查表在监视方向的过程信息<0> := 未定义<1> := 单点信息M_SP_NA_1<3> := 双点信息M_DP_NA_1<5> := 步位置信息M_ST_NA_1<7> := 32比特串M_BO_NA_1<9> := 测量值,归一化值M_ME_NA_1<11> := 测量值,标度化值M_ME_NB_1<13> := 测量值,短浮点数M_ME_NC_1<15> := 累计量M_IT_NA_1<20> := 带状态检出的成组单点信息M_PS_NA_1<21> := 不带品质描述的归一化测量值M_ME_ND_1<22..29>:= 为将来的兼容定义保留<30> := 带时标CP56Time2a的单点信息M_SP_TB_1<31> := 带时标CP56Time2a的双点信息M_DP_TB_1<32> := 带时标CP56Time2a的步位置信息M_ST_TB_1<33> := 带时标CP56Time2a的32比特串M_BO_TB_1<34> := 带时标CP56Time2a的测量值,归一化值M_ME_TD_1<35> := 带时标CP56Time2a的测量值,标度化值M_ME_TE_1<36> := 带时标CP56Time2a的测量值,短浮点数M_ME_TF_1<37> := 带时标CP56Time2a的累计量M_IT_TB_1<38> := 带时标CP56Time2a的继电保护装置事件M_EP_TD_1<39> := 带时标CP56Time2a的继电保护装置成组启动事件M_EP_TE_1<40> := 带时标CP56Time2a的继电保护装置成组输出电路信息M_EP_TF_1<41..44>:= 为将来的兼容定义保留在控制方向的过程信息类型标识:= UI8[1..8]<45..69>CON <45> := 单命令C_SC_NA_1 CON <46> := 双命令C_DC_NA_1 CON <47> := 步调节命令C_RC_NA_1 CON <48> := 设点命令,归一化值C_SE_NA_1 CON <49> := 设点命令,标度化值C_SE_NB_1 CON <50> := 设点命令,短浮点数C_SE_NC_1 CON <51> := 32比特串C_BO_NA_1<52..57> := 为将来的兼容定义保留在控制方向的过程信息,带时标的ASDUCON <58> := 带时标CP56Time2a的单命令C_SC_TA_1 CON <59> := 带时标CP56Time2a的双命令C_DC_TA_1 CON <60> := 带时标CP56Time2a的步调节命令C_RC_TA_1 CON <61> := 带时标CP56Time2a的设点命令,归一化值C_SE_TA_1 CON <62> := 带时标CP56Time2a的设点命令,标度化值C_SE_TB_1 CON <63> := 带时标CP56Time2a的设点命令,短浮点数C_SE_TC_1 CON <64> := 带时标CP56Time2a的32比特串C_BO_TA_1 <65..69> := 为将来的兼容定义保留VSQ:可变结构限定词D7 D6 …… D0SQ 信息对象数目SQ=0:离散的信息报告SQ=1:顺序的信息报告信息对象数目的个数是0-127;一包报文中所含的信息(YC、YX等)的数目COT_L,COTH:传送原因1,NET保护单元之间的通讯怎样设置在6800里??2,控制域的I,S,U等格式是怎样用的I格式:信息传输格式类型(Information transmit format)简称 I-FORMAT。
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- IEC-60870-5-104:应用模型是:物理层,链路层,网络层,传输层,应用层物理层保证数据的正确送达,保证如何避免冲突。
(物理层利用如 RS232上利用全双工)链路层负责具体对那个slAvE的通讯,对于成功与否,是否重传由链路层控制(RS485 2线利用禁止链路层确认)应用层负责具体的一些应用,如问全数据还是单点数据还是类数据等(网络利用CSMA/CD等保证避免冲突的发生)--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 基本定义:端口号2404,站端为SErvEr 控端为CliEnt,平衡式传输,2BytE站地址,2BytE传送原因,3BytE信息地址。
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 注:APDU 应用规约数据单元(整个数据)= APCI 应用规约控制信息(固定6个字节)+ ASDU 应用服务数据单元(长度可变)--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- APDU长度(系统-特定参数,指定每个系统APDU的最大长度)APDU的最大长度域为253(缺省)。
(完整word版)104报文分析1. 104规约框架分析1.1 原始报文的组成报文组成(1字节启动字符0x68,1字节报文长度,4字节控制域,不定长用户数据)第1个字节是启动字符0x68;第2个字节是报文长度;第3~6共4个字节是控制域;第7个字节是报文类型;第8个字节是可变结构限定词;第9~10共2个字节是传送原因;第11~12共2个字节是应用服务数据单元公共地址;第13~15共3个字节是信息对象地址;。
1.2 三种报文格式的控制域定义(1)I帧编号的信息传输格式(InFormation Transmit Format),简称I -格式I格式控制域标志,控制域:第一个八位位组的第一位比特= 0 第三个八位位组第一位比特= 0(2)S帧编号的监视功能格式(Numbered supervisory Functions),简称S-格式,控制域,第一个八位位组的第一位比特= 1 并且第二位比特= 0,第三个八位位组第一位比特= 0(3)U帧不编号的控制功能格式(Unnumbered control Function),简称U-格式,第一个八位位组的第一位比特= 1 并且第二位比特=1 且第三个八位位组第一位比特= 01.3 报文类型(第7个字节)1.3.1 监视方向的应用功能类型类型标识∶=UI8[1..8]<0..44>M_SP_NA_1(1) 无时标单点遥信M_SP_TA_1(2) 带短时标的单点遥信M_DP_NA_1(3) 无时标双点遥信M_DP_TA_1(4) 带短时标双点遥信M_ST_NA_1(5) 步位置信息M_ST_TA_1(6) 带短时标的步位置信息M_BO_NA_1(7) 32比特串M_BO_TA_1(8) 带短时标的比特串M_ME_NA_1(9) 不带时标的常规遥测(规一化值)M_ME_TA_1(10) 带短时标的常规遥测(规一化值)M_ME_NB_1(11) 不带时标的常规遥测(标度化值)M_ME_TB_1(12) 带短时标的常规遥测(标度化值)M_ME_NC_1(13) 不带时标浮点遥测M_ME_TC_1(14) 带短时标浮点遥测M_IT_NA_1(15) 累计量M_IT_TA_1(16) 带短时标的累计量M_EP_TA_1(17) 带短时标的继电保护装置事件M_EP_TB_1(18) 带短时标的继电保护装置成组事件M_EP_TC_1(19) 带短时标的继电保护装置成组输出电路信息M_PS_NA_1(20) 带变位检出的成组单点信息M_ME_ND_1(21) 不带品质描述的常规遥测(规一化值)M_SP_TB_1(30) 带长时标的单点遥信M_DP_TB_1(31) 带长时标的双点遥信M_ST_TB_1(32) 带长时标的步位置信息M_BO_TB_1(33) 带长时标的32比特串M_ME_TD_1(34) 带长时标的遥测(规一化值)M_ME_TE_1(35) 带长时标的遥测(标度化值)M_ME_TF_1(36) 带长时标的浮点遥测M_IT_TB_1(37) 带长时标的累计量M_EP_TD_1(38) 带长时标的继电保护装置事件M_EP_TE_1(39) 带长时标的继电保护装置成组事件M_EP_TF_1(40) 带长时标的继电保护装置成组输出电路信息1.3.2 控制方向的过程信息类型标识∶= UI8[1..8]<45..69>C_SC_NA_1(45) 单点遥控命令C_DC_NA_1(46) 双点遥控命令C_RC_NA_1(47) 调节步命令C_SE_NA_1(48) 设定值命令,规一化值C_SE_NB_1(49) 设定值命令,标度化值C_SE_NC_1(50) 设定值命令,短浮点数C_BO_NC_1(51) 32比特串1.3.3 在监视方向的系统信息类型标识∶= UI8[1..8]<70..99>M_EI_NA_1(70) 初始化结束<71..99>∶= 保留1.3.4 在控制方向的系统信息类型标识∶= UI8[1..8]<100..109>C_IC_NA_1(100) 总召唤C_CI_NA_1(101) 累计量召唤命令C_RD_NA_1(102) 读取数据命令C_CS_NA_1(103) 时钟同步命令C_TS_NA_1(104) 测试命令C_RP_NA_1(105) 复位进程命令C_CD_NA_1(106) 收集传输延时P_ME_NA_1(110) 测量值参数,规一化值P_ME_NB_1(111) 测量值参数,标度化值P_ME_NC_1(112) 测量值参数,短浮点数P_AC_NA_1(113) 参数激活F_FR_NA_1(120) 文件准备就绪F_SR_NA_1(121) 节准备就绪F_SC_NA_1(122) 召唤目录,选择文件,召唤文件召唤节F_LS_NA_1(123) 最后的节,最后的段F_AF_NA_1(124) 认可文件,认可节F_SG_NA_1(125) 段F_DR_NA_1(126) 目录1.4 可变结构限定词(第8个字节)可变结构限定词,下图所示:第1~7bit第8 bit位是表示,后面信息单元中的数据是否连续,=1时表示是连续,=0时表示是非连续。
104规约(2002版)报文解析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 目的:初始化结束。
2、 对时 时钟同步命令一般不在104中应用,因为网络路由的延时永远不定(随机),导致对时不准。
● 主站发:68 14 2C 00 6A 00 67 01 06 00 01 00 00 00 00 E5 3F 00 0F 09 0C 04目的:向子站发送对时报文。
357 毫秒 16 秒 0分 15小时 9日 12月 4年3、 总召唤● 主站发:68 0E 00 00 06 00 64 01 06 00 01 00 00 00 00 14目的:向地址为01的子站发总召唤命令。
子站回答:68 0E 08 00 02 00 64 01 07 00 01 00 00 00 00 14目的:子站响应总召唤。
子站回答:68 2D 0A 00 02 00 01 A0 14 00 01 00 01 00 00 00 01 00 01 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 目的:子站向主站以ASDU1方式连续上送全遥信,此为第一帧。
报文解析:子站回答:68 2D 0C 00 02 00 01 A0 14 00 01 00 21 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 目的:子站继续上送全遥信的下一帧。
…………子站回答:68 2D 20 00 02 00 01 A0 14 00 01 00 61 01 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 目的:子站向主站上送全遥信的最后一帧。
104规约解读一、104规约报文分3种类型,称U格式、S格式、I格式。
激活帧生效:680407000000激活帧确认:68040B000000测试帧生效:680443000000测试帧确认:680483000000停止帧生效:680413000000如S帧确认:6804010002003、I格式:一般带有ASDU报文,传输各种数据、命令,如YX、YC数据总召唤、读命令、YK、对时等。
二、通讯报文实例:68 04 07 00 00 00 /* U格式启动帧 */68 04 0B 00 00 00 /* 响应帧 */68 0E 00 00 02 00 64 01 06 00 01 00 00 00 0014/* I格式总召帧 */ 68 0E 44 00 02 00 64 01 07 00 01 00 00 00 0014/* 总召激活帧 *//* 总召遥信帧 */68 8C 46 00 02 00 01 FF 14 00 01 00 01 00 00 00 00 01 01 00 01 01 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 00 00 00 00 00 00 00 00 00 00 00 00 80 00 01 01 00 01 01 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 01 00 00 01 00 00 00 00 00信息字个数为:FF-80,当信息字个数小于80时为非连续数据,应给出每个信息字的地址68 8C 48 00 02 00 01 FF 14 00 01 00 80 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 80 00 01 00 00 0000 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 0001 00 00 00 00 01 00 00 00 00 01 01 01 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 01 00 01 00 00 00 00 00 00 00 00 01 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00/* 总召遥测帧 */68 8D 5C 00 02 00 15 C0 14 00 01 00 01 40 00 0B 04 0D 04 09 04 69 00 79 00 67 00 40 FD EC FF CE FF AA 06 0C 04 09 04 09 04 27 02 21 02 3D 02 4B F8 F0 FE B6 FF AA 06 0B 04 0B 04 09 04 00 00 00 00 00 00 00 00 00 00 00 00 0B 04 0C 04 09 04 00 00 02 07 01 07 00 07 1F 06 1A 06 77 04 4B 04 EA 04 12 05 00 00 00 00 00 00 00 00 00 00 73 05 75 05 58 05 5A 05 37 01 12 01 1B 01 00 00 00 00 00 00 E5 03 DF 03 F0 03 10 00 C4 06 C3 06 BC 0668 8D 5E 00 02 00 15 C0 14 00 01 00 41 40 00 E9 03 D0 03 F2 03 22 00 BD 06 BE 06 BD 06 0A 04 0C 04 0A 04 54 02 4B 02 52 02 3E 07 0E 01 7C 00 E6 03 DF 03 EF 03 D6 03 D6 03 DB 03 84 07 C3 01 A2 00 0B 04 0B 04 09 04 9A 02 96 02 99 02 67 07 37 01 7E 00 E8 03 D0 03 F3 03 4D 04 4B 04 46 04 A6 07 01 02 9A 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 8D 01 94 01 98 01 96 07 BC 0068 0E 64 00 02 00 64 01 0A 00 01 00 00 00 0014/* 总召激活终止帧 *//* 对时报文 */68 14 08 00 04 00 67 01 0600 01 00 00 00 0020 00 1E 08 18 0A 0668 14 0A 00 04 00 67 0107 00 01 00 00 00 0020 00 1E 08 18 0A 06|> |-------------| | | |-----| |-----| |---------| |--------------------------| 长度帧计数 | 个数原因主站地址信息地址 CP56Time2a时标按乘2变化类型毫秒L-毫秒H-分-时-日-月-年68 04 43 00 00 00 /* 链路测试报文 */68 04 83 00 00 00 /* 响应帧 *//* 变化遥测帧 */68 AA 64 00 02 00 15 20 03 00 01 00 01 40 0005 04 02 40 0005 04 03 40 00 18 04 07 40 00 24 FD 0F 40 00 26 02 3E 40 00 C4 06 3F 40 00 BD 06 4C 40 00 51 02 50 40 00 81 00 55 40 00 DC 03 66 40 00 59 04 81 40 00 42 00 95 40 00 56 03 97 40 00 5307 9A 40 00 C9 01 9B 40 00 C8 01 9C 40 00 C6 01 9E 40 00 D3 00 A2 40 00 ED 01 A7 40 00 2E 02 A8 40 00 2C 02 AA 40 00 11 01 AC 40 00 37 02 AD 40 00 2C 02 B8 40 00 35 00 B9 40 00 47 00 BB 40 00 71 FE C7 40 00 B9 FD CA 40 00 3E 02 CB 40 00 3E 02 CC 40 00 41 02 D6 40 00 86 06/* 变位遥信帧 */68 16 0E 00 0A 00 01 03 0300 01 00 01 00 00 01 02 00 00 01 03 00 00 01| |-------------| | | |-----| |-----| |---------| | |---------| | |--------| | 长度帧计数类型个数原因主站地址遥信地址值遥信地址值遥信地址值/* SOE事件帧 */68 15 10 00 0C 00 1E 01 0300 01 00 01 00 00 01 01 62 3A 08 18 0A 06|> |-------------| | | |-----| |-----| |---------| | |-------------------------| 长度帧计数 | 个数原因主站地址遥信地址值 CP56Time2a时标类型毫秒L-毫秒H-分-时-日-月-年68 0E 12 00 0E 00 2E 01 0600 01 00 01 60 0081/* 双点遥控分选择 */68 0E 12 00 0E 00 2E 01 07 00 01 00 01 60 0081 /* 遥控返校 */|> |-------------| | | |-----| |-----| |---------| |长度帧计数 | 个数原因主站地址信息地址双命令类型68 0E 12 00 0E 00 2E 01 0600 01 00 01 60 0001/* 双点遥控分执行 */68 0E 12 00 0E 00 2E 01 07 00 01 00 01 60 0001 /* 遥控返校 */68 0E 12 00 0E 00 2D 01 0600 01 00 01 60 0080/* 单点遥控分选择 */68 0E 12 00 0E 00 2D 01 07 00 01 00 01 60 0080 /* 遥控返校 */68 0E 14 00 10 00 2D 01 06 00 01 00 01 60 0000/* 单点遥控分执行 */68 0E 14 00 10 00 2D 01 07 00 01 00 01 60 0000 /* 遥控返校 */|> |-------------| | | |-----| |-----| |---------| |长度帧计数 | 个数原因主站地址信息地址单命令类型68 0E 14 00 10 00 2D 01 08 00 01 00 01 60 0080/* 单点遥控分撤销 */68 0E 14 00 10 00 2D 01 09 00 01 00 01 60 0080 /* 遥控返校 */68 10 34 00 00 00 30 01 06 00 01 00 01 62 00 64 00 80/*单点AGC选择*/|> |-------------| | | |-----| |-----| |---------| | |长度帧计数 | 个数原因主站地址信息地址 YT值单命令类型68 0E 40 00 00 00 65 01 06 00 01 00 00 00 0045/* I格式总召YM*/68 10 36 00 00 00 30 01 06 00 01 00 01 62 00 64 00 00/*单点AGC执行*/68 04 01 00 12 00 /* S格式计数帧 */|> |-----| |------|长度 S格式帧接收序号注:收到5、6帧以后,主站发一次确认帧,可以以此判断通道状况三、信息体地址的问题前面说101对YX、YC、YK都有规定的信息体起始地址。