104规约报文详解(解剖麻雀_最快速掌握_强力推荐)
- 格式:doc
- 大小:366.00 KB
- 文档页数:9
104规约详细介绍及报文解析-回复规约(Protocol)是计算机网络通信中的一种协议,用于定义数据交换的格式、顺序以及错误检测和纠正等内容。
104规约(IEC 60870-5-104)是国际电工委员会(International Electrotechnical Commission)制定的一种规约,主要用于监控与控制系统之间的通信。
本文将详细介绍104规约及其报文解析。
一、104规约简介104规约是一种基于TCP/IP网络通信的规约,主要用于工业自动化领域中的远程监控与控制系统。
它提供了一种可靠、高效的通信方式,能够满足实时性、灵活性和可靠性等要求。
104规约采用了面向报文和面向连接的通信方式,能够支持点对点、点对多点和多点对点的通信模式。
二、104规约报文结构104规约的报文结构包括报文头(Header)、ASDU(Application Service Data Unit)和报文尾(Footer)。
报文头包含了报文的控制信息,用于表示报文类型、优先级和传输原因等。
ASDU是实际传输的数据部分,负责携带各种监控与控制的信息。
报文尾用于检测报文的完整性和一致性。
三、104规约报文解析1. 报文头解析:首先读取报文头,根据报文头的信息可以确定报文的类型、传输原因和发送序号等。
报文类型表示了报文的目的和功能,如启动报文、确认报文或者监控与控制的报文。
传输原因表示了触发发送该报文的原因,如周期定时发送、事件触发发送等。
2. ASDU解析:根据ASDU的类型可以确定ASDU的功能和数据的含义。
不同类型的ASDU用于传输不同种类的监控与控制的数据,如单点信息、双点信息、测量值和参数等。
根据ASDU的结构和定义,可以提取出数据的具体内容。
3. 报文尾解析:最后检查报文尾以验证报文的完整性和一致性。
报文尾通常包括一个校验和,用于检测报文是否被修改或丢失。
四、104规约报文的应用104规约广泛应用于电力、水利、交通、石油等行业中的远程监控与控制系统。
104规约遥信报文解析遥信报文是电力系统中常用的一种通信规约,用于传输遥信信息。
它是一种比较基础的通信规约,具有简洁明了、易于解析的特点。
本文将对104规约遥信报文进行解析,并详细介绍其结构、功能及解析方法。
一、104规约概述104规约是一种用于电力自动化系统通信的协议。
它广泛应用于电力系统中,用于设备之间的数据通信,包括遥控、遥测、遥信等功能。
104规约遥信报文是其中的一种应用,用于传输遥信信息,以实现设备之间的状态传递。
二、104规约遥信报文结构104规约遥信报文的结构相对简单,主要包括报文头和报文体两部分。
1.报文头报文头是104规约遥信报文的起始部分,用来标识报文的类型和长度等信息。
具体包含以下字段:-长度:表示整个报文的长度,以字节为单位。
-类型:表示报文的类型,可以是单点遥信、双点遥信等。
-传输原因:表示报文的传输原因,可以是激活、确认、远方传送等。
-应用服务数据单元公共地址:表示报文的公共地址,用于标识报文传输的设备。
2.报文体报文体是104规约遥信报文的核心部分,用于传输具体的遥信信息。
具体包含以下字段:-遥信地址:表示遥信信息的地址,用于标识该遥信信息所对应的设备。
-遥信状态:表示遥信信息的状态,可以是开、合、未定义等。
-时标:表示遥信信息发生的时间,通常以毫秒为单位。
三、104规约遥信报文功能104规约遥信报文具有以下功能:1.遥信信息传输104规约遥信报文可以用于传输遥信信息,在电力系统中,遥信信息主要用于表示开关、断路器、变压器等设备的状态。
通过传输遥信信息,不同设备之间可以及时地共享设备的运行状态。
2.状态同步通过传输遥信信息,可以实现设备之间的状态同步。
当一个设备的状态发生变化时,可以通过遥信报文及时将这个变化传递到其他设备,以保证整个系统的状态一致性。
3.告警处理遥信报文还可以用于告警处理。
当某个设备发生故障或异常情况时,可以通过发送遥信报文的方式将告警信息传递到其他设备,以触发相应的处理措施。
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- IEC-60870-5-104:应用模型是:物理层,链路层,网络层,传输层,应用层物理层保证数据的正确送达,保证如何避免冲突。
(物理层利用如 RS232上利用全双工)链路层负责具体对那个slave的通讯,对于成功与否,是否重传由链路层控制(RS485 2线利用禁止链路层确认)应用层负责具体的一些应用,如问全数据还是单点数据还是类数据等(网络利用CSMA/CD等保证避免冲突的发生)--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 基本定义:端口号2404,站端为Server 控端为Client,平衡式传输,2Byte站地址,2Byte传送原因,3Byte信息地址。
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 注:APDU 应用规约数据单元(整个数据)= APCI 应用规约控制信息(固定6个字节)+ ASDU 应用服务数据单元(长度可变)--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- APDU长度(系统-特定参数,指定每个系统APDU的最大长度)APDU的最大长度域为253(缺省)。
104规约是指用于远动控制通信的规约,以以太网为载体,服务模式是平衡模式。
它是用于调度自动化系统,厂站之间的通讯。
它具有TCP/IP的冲突检测和错误重传机制,具有比101协议更高的可靠性和稳定性。
端口号默认为2404。
104规约的帧格式包括ASDU、控制域、信息体等部分。
其中,ASDU是应用服务数据单元,控制域定义了保护报文不至丢失和重复发送的控制信息,信息体包含了传输的数据内容。
104规约的帧格式有三种:I帧、S帧和U帧。
I帧为信息帧,用于传输数据,长度大于6个字节,为长帧;S帧为确认帧,用于确认接收的I帧,长度为6个字节,为短帧;U帧为控制帧,用于控制启动/停止/测试,长度为6个字节,为短帧。
以总召唤报文为例,其帧格式如下:起始字符加上信息体长度(字节数18)加上信息体。
其中,起始字符为68H,信息体长度为18个字节,信息体包括了控制域和信息体元素。
控制域中包含了编号的控制功能,如总召唤命令等。
信息体元素中包含了总召唤的各个信息体地址和信息体元素值。
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- IEC-60870-5-104:应用模型是:物理层,链路层,网络层,传输层,应用层物理层保证数据的正确送达,保证如何避免冲突。
(物理层利用如 RS232上利用全双工)链路层负责具体对那个slAvE的通讯,对于成功与否,是否重传由链路层控制(RS485 2线利用禁止链路层确认)应用层负责具体的一些应用,如问全数据还是单点数据还是类数据等(网络利用CSMA/CD等保证避免冲突的发生)--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 基本定义:端口号2404,站端为SErvEr 控端为CliEnt,平衡式传输,2BytE站地址,2BytE传送原因,3BytE信息地址。
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 注:APDU 应用规约数据单元(整个数据)= APCI 应用规约控制信息(固定6个字节)+ ASDU 应用服务数据单元(长度可变)--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- APDU长度(系统-特定参数,指定每个系统APDU的最大长度)APDU的最大长度域为253(缺省)。
104规约详细介绍及报文解析【原创实用版】目录1.104 规约的概述2.104 规约的特点3.104 规约的报文结构4.104 规约的报文解析实例5.104 规约的应用场景正文一、104 规约的概述104 规约,全称为 Modbus RTU 通讯协议,是一种串行通信协议,主要应用于工业自动化领域。
它是由 Modicon 公司于 1979 年开发的,现在已成为工业控制领域中应用最广泛的通讯协议之一。
104 规约具有传输速度快、可靠性高、兼容性好等特点,广泛应用于 PLC、PAC、智能仪表等工业控制设备的通讯。
二、104 规约的特点1.传输速度快:104 规约采用二进制编码方式,传输速率最高可达1Mbps,满足了工业自动化领域对通讯速度的要求。
2.可靠性高:104 规约具有强大的错误检测和纠正能力,可以有效地防止通讯错误,确保通讯的可靠性。
3.兼容性好:104 规约支持多种工业控制设备,如 PLC、PAC、智能仪表等,具有很好的兼容性。
4.拓展性强:104 规约具有丰富的功能指令,可以满足各种工业自动化应用的需求。
三、104 规约的报文结构104 规约的报文由帧头、地址、命令、数据、校验和、结束符等部分组成。
其中,帧头用于标识报文的开始和结束;地址用于标识通讯设备的地址;命令用于指示通讯的类型和功能;数据是通讯的核心内容;校验和用于检验数据是否正确;结束符用于标识报文的结束。
四、104 规约的报文解析实例以读取保持型输入为例,假设设备地址为 1,输入寄存器地址为 0,对应的报文如下:- 帧头:0x03 0x03(表示报文开始和结束)- 地址:0x01(表示设备地址为 1)- 命令:0x04(表示读取保持型输入)- 数据:0x00 0x01(表示输入寄存器地址为 0)- 校验和:0x12(用于检验数据是否正确)- 结束符:0x03 0x03(表示报文结束)五、104 规约的应用场景104 规约广泛应用于工业自动化领域的通讯,如 PLC 与 PAC 之间的通讯、智能仪表的数据采集等。
iec104规约协议报文流程解析iec104规约协议报文,就像是一种特殊的语言,在电力系统这个大舞台上传递着重要的信息。
想象一下,电力系统是一个超级大的家族,各个设备就像是家族里的成员。
而iec104规约协议报文呢,就是这些成员之间沟通的信件。
每一个报文都有着自己独特的格式和内容,就像每封信都有特定的书写格式和要表达的事情一样。
我们先来看报文的起始部分。
这部分就像是信件的开头称呼,它会告诉接收方,“嘿,我是从哪里来的”。
比如说,它会包含发送端的一些标识信息,这就好比是写信人的地址。
这个标识很重要呢,就像你收到一封信,你得知道是谁寄来的。
如果这个标识乱了或者错了,那就好比收到一封不知道谁寄来的信,会让人很迷糊。
然后是报文的类型部分。
这就像是信里写的事情的大致分类。
是通知对方有新情况了呢,还是在回答对方之前的询问?不同的报文类型有着不同的作用。
就像你给家人写信,有时候是告诉他们你最近发生的新鲜事,这就类似一种类型的报文;有时候是回复家人之前问你的问题,这又是另一种类型的报文。
比如说,一个设备检测到电力参数有异常了,它就会发出一种特定类型的报文,告诉监控系统“我这儿有点不对劲啦”。
报文的数据部分就像是信的正文内容。
这里面包含了真正有用的信息。
在电力系统里,可能是电压值、电流值、设备状态之类的信息。
这部分信息就像是你告诉家人你现在的生活状况,是过得好呢,还是遇到了困难。
这些电力数据非常关键,因为它们直接反映了电力系统的运行情况。
就像你家人通过你信里描述的生活状况来了解你的真实生活一样,电力系统的监控人员通过这些数据部分的报文来掌握电力系统的运行状态。
报文还有校验部分。
这就像是信件的防伪标识。
因为在传输过程中,可能会出现各种干扰,导致报文的内容发生错误。
校验部分就可以检查这个报文是不是完整的、正确的。
这就好比你收到一封信,你要看看这封信有没有在途中被损坏或者被人篡改过。
如果校验不通过,那就好比收到一封字迹模糊、内容被乱改的信,这样的报文是不能被信任的,就像这样的信你也不会相信里面的内容一样。
链路先握手再通信,不握手不通信,通信中断须再握手(建立链路)确认报文的来回须对方的认可,认可方式可以是一条专用的报文也可以是下一个询问报文中的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 。
104规约遥信报文解析104规约是电力行业常用的通信协议,用于实时监测和控制电力系统中的硬件设备。
其中,遥信报文是该协议中最常见的一种报文类型,用于传输遥信信息。
本文将以简体中文介绍104规约遥信报文的解析过程,并且对该报文的组成部分进行详细解释。
首先,104规约遥信报文是一种二进制报文,根据规约的定义,其长度为多个字节,并且具有固定的结构。
遥信报文可以分为两个部分:固定长度的报文头部和可变长度的信息体。
报文头部是遥信报文中固定的部分,用于传输一些基本的控制信息。
其长度为6个字节,由以下几个字段组成:1.报文长度(2个字节):用于表示整个报文的长度,包括报文头和信息体。
2.类型标识(1个字节):用于标识报文的类型,遥信报文的类型标识为0x3。
3.传输原因(1个字节):用于表示发送该报文的原因,根据规约的定义,可能的取值有:激活,激活确认,停止激活,停止激活确认等。
4.冲击标志(1个字节):用于表示报文的冲击标志,主站向子站发送报文时通常设置为1,子站向主站发送报文时通常设置为0。
5.序列号(2个字节):用于标识报文的序列号,用于检测报文的重复和丢失。
信息体是遥信报文中的可变部分,用于传输实际的遥信信息。
信息体由一个一个的遥信帧组成,每个遥信帧对应着一个遥信点(也叫做遥信元),用于表示某个硬件设备的状态。
每个遥信帧由3个字节组成,其结构如下:1.遥信类型(1个字节):用于标识遥信点的类型,可能的取值有:状态遥信、变位遥信等。
2.遥信地址(2个字节):用于标识遥信点的地址,每个遥信点都对应着一个唯一的地址。
遥信报文中的信息体可以包含多个遥信帧,具体的个数由报文头部中的报文长度字段决定。
通过解析遥信报文的信息体部分,可以得到包含的所有遥信点以及其对应的状态。
需要注意的是,104规约遥信报文的解析需要根据具体的实际情况进行。
不同的设备和系统中的遥信点可能是不一样的,报文的组织和解析方式也会有所不同。
因此,在实际应用中,需要根据具体的规约定义和设备手册进行相应的解析操作。
104规约报文解析IEC104,即国际电工委员会实现的104规约,是一种用于工业自动化的应用层通信协议。
该协议建立在OSI(开放系统互联)参考模型的第3、4层,用于实现远程之间的点到点通信。
104规约是一种采用交流补传技术实现同步控制通信的一种规约,它可以有效降低通讯系统的复杂性,使所有系统设备都可以使用很少的通讯线来支持需要扩展的通讯系统。
104规约报文也被称为控制报文,它具有结构性、可解释性和复合性。
报文的结构包括:报文标识符(MID)、参数(参)、数据类型(DT)、数据(D)及时间标签(T)等等。
这些参数是用来确定报文的内容、类型和通信方式的。
一般来说,报文的参数主要有:报文标识符(MID),报文的参数(PD),报文数据类型(DT),报文数据(D)及时间标签(T)。
报文标识符用来标识报文的类别、功能或者类型,同时也可反映报文本身的功能含义。
报文参数是描述报文功能的依据,可以用于描述报文各部分之间的关系。
报文数据类型是报文数据的描述,可以用来定义报文中数据的格式,如定义报文中数据的长度、精度等。
报文数据是报文的主要内容,可以提供传感器的实时状态、实时数据或者控制信息等。
最后,报文的时间标签说明报文的发送时间。
104规约报文的通信主要采用主从模式,其中从站(slave)负责接收主站(master)发送的报文进行解析,并将解析出的报文参数传递给上层应用处理程序。
在一次传输过程中,从站将从主站收到的报文解析成一组字节,每一组字节由四个8位数字组成。
每一次传输从站将向主站发送三个字节,它们分别是从站的参数数据,报文标识符和报文的时间标签;而主站在发出报文时,会专门发出一个报文标识符和报文时间标签,以便从站进行解析。
主从模式的104规约通信过程有三个不同的传输阶段:数据传输阶段,核实传输阶段和确认传输阶段。
在数据传输阶段,主站向从站发送报文,并要求从站返回相应的确认。
在核实传输阶段,从站向主站发送一个“正确”标识符,以表示收到的报文已经经过正确解析。
104规约详细介绍及报文解析104规约是一种通信协议,它用于在远程终端和主站之间进行数据通信。
它是中国电力行业广泛采用的一种通信规约,用于电力行业的监控、调度和通信管理。
104规约的报文格式是基于二进制的,它采用了长度可变、字段定义明确的方式。
它分为应用层APCI和传输层TPCI两部分,其中APCI包含应用数据单元(ASDU)和信息体地址(ASDU地址),用于具体的数据传输。
TPCI则包含了传输控制功能,包含了传输原因、接收端确认和发送端未决等信息。
在104规约中,主站扮演着控制和管理的角色,而远程终端则负责执行主站的命令和返回数据。
主站和远程终端之间的通信是基于主从站的模式进行的,主站发起请求,远程终端回应请求,并返回所需的数据。
这种方式能确保通信的可靠性和及时性。
104规约的报文解析涉及到四个步骤:开始字符检测、长度检测、报文解析和CRC校验。
开始字符检测是检查报文开始字符是否正确,通常是一个固定的字符序列。
长度检测是检查报文长度是否符合规定,通常在报文的头部包含了长度信息。
报文解析是将接收到的报文按照规约的格式解析成具体的字段和数据。
CRC校验是使用冗余校验码来验证报文的完整性和正确性。
104规约的应用数据单元(ASDU)是其最重要的组成部分。
ASDU包含了具体的数据信息,如测量值、遥控命令、遥调命令等。
ASDU的结构是由信息体地址(ASDU地址)、传送原因(COT)、帧标识(PI)和信息体元素(IE)组成。
信息体地址用于标识ASDU的类型和用途,传送原因用于说明报文的目的和意义,帧标识用于区分不同的报文类型,信息体元素用于携带具体的数据信息。
在报文的传输过程中,主站和远程终端之间需要进行传输的确认和未决等操作。
这些操作由传输控制功能(TPCI)来实现。
TPCI包含了传输原因、接收端确认和发送端未决等字段,用于确保数据的可靠传输和及时响应。
总结起来,104规约是一种用于电力行业的通信协议,它采用二进制的报文格式,主从站模式进行数据通信。
104规约遥信报文解析摘要:一、引言二、104 规约简介1.规约背景2.规约主要内容三、遥信报文解析1.遥信报文结构2.报文解析方法3.报文应用案例四、104 规约在我国的应用1.应用范围2.我国相关标准五、总结正文:一、引言随着电力系统自动化技术的不断发展,通信规约在电力系统中的应用越来越广泛。
104 规约作为国际上广泛应用的一种通信规约,在我国也得到了广泛的推广和应用。
本文将对104 规约中的遥信报文进行解析,以帮助读者更好地理解和应用该规约。
二、104 规约简介104 规约,全称为“IEC 60870-5-104”,是国际电工委员会(IEC)制定的一种通信规约,主要用于电力系统的自动化设备之间的通信。
104 规约主要包括以下内容:1.通信协议结构2.报文传输规则3.应用层服务4.传输层服务三、遥信报文解析遥信报文是104 规约中的一种重要报文类型,主要用于传输开关状态等遥信信息。
遥信报文的结构主要包括:起始字符、长度域、控制域、地址域、数据域、校验域和结束字符。
1.遥信报文结构起始字符:表示报文的开始,通常为“0x7E”。
长度域:表示报文的长度,包括起始字符和结束字符,单位为字节。
控制域:表示报文的控制信息,包括操作类型、功能码等。
地址域:表示报文的接收地址,可以是单个设备地址,也可以是广播地址。
数据域:表示报文的具体数据,包括开关状态、事件时间等。
校验域:表示报文的校验和,用于检测报文传输过程中的错误。
结束字符:表示报文的结束,通常为“0x7E”。
2.报文解析方法报文解析方法主要包括以下几个步骤:(1)检查起始字符和结束字符,确认报文的正确性。
(2)解析长度域,获取报文的长度。
(3)解析控制域,获取报文的操作类型和功能码。
(4)解析地址域,获取报文的接收地址。
(5)解析数据域,获取报文的具体数据。
(6)解析校验域,检测报文的校验和,确认报文的正确性。
3.报文应用案例以电力系统中的开关遥信为例,假设某开关的状态发生变化,需要通过104 规约发送遥信报文。
IEC104规约调试小结调试广西中调IEC-104规约时对报文作了如下的分析,不对地方请指正。
一、四遥信息体基地址范围“可设置104调度规约”有1997年和2002年两个版本,在流程上没有什么变化,02此配置要根据主站来定,有的主站可能设为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帧。
6804 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帧。
68 04 01 00 02 00接收→YX帧(以类型标识1为例):68(启动符)1A(长度)02 00(发送序号)02 00(接收序号)01(类型标示,单点遥信)04(可变结构限定词,有4个遥信上送)14 00(传输原因,响应总召唤)01 00(公共地址即RTU地址)03 00 00(信息体地址,第3号遥信)00(遥信分)发送→S帧:68 04 01 00 04 00接收→YX帧(以类型标识3为例):68(启动符)1E(长度)04 00(发送序号)02 00(接收序号)03(类型标示,双点遥信)05(可变结构限定词,有5个遥信上送)14 00(传输原因,响应总召唤)01 00(公共地址)01 00 00(信息体地址,第1号遥信)02(遥信合)06 00 00(信息体地址,第6号遥信)02(遥信合)0A 00 00(信息体地址,第10号遥信)01(遥信分)0B 00 00(信息体地址,第11号遥信)02(遥信合)0C 00 00(信息体地址,第12号遥信)01(遥信分)发送→S帧:68 04 01 00 06 00接收→YC帧(以类型标识9为例):68(启动符)13(长度)06 00(发送序号)02 00(接收序号)09(类型标示,带品质描述的遥测)82(可变结构限定词,有2个连续遥测上送)14 00(传输原因,响应总召唤)01 00(公共地址)01 07 00(信息体地址,从0X0701开始第0号遥测)A1 10(遥测值10A1)00(品质描述)89 15(遥测值1589)00(品质描述)发送→S帧:68 04 01 00 08 00接收→结束总召唤帧:68(启动符)0E(长度)08 00(发送序号)02 00(接收序号)64(类型标示)01(可变结构限定词)0A 00(传输原因)01 00(公共地址)00 00 00(信息体地址)14(区分是总召唤还是分组召唤,02年修改后的规约中没有分组召唤)发送→S帧:6804 01 00 0A 00第二步:发送对时报文(通过设置RTU参数表中的”对间间隔”,单位是分钟,一般是20分钟)发送→对时命令:68(启动符)14(长度)02 00(发送序号)0A 00(接收序号)67(类型标示)01(可变结构限定词)06 00(传输原因)01 00(公共地址)00 00 00(信息体地址)01(毫秒低位)02(毫秒高位)03(分钟)04(时)81(日与星期)09(月)05(年)接收→对时确认:68(启动符)14(长度)0C 00(发送序号)02 00(接收序号)67(类型标示)01(可变结构限定词)07 00(传输原因)01 00(公共地址)00 00 00(信息体地址)**(毫秒低位)**(毫秒高位)**(分钟)04(时)81(日与星期)09(月)05(年)发送→S帧:68 04 01 00 0E 00第三步:电度总召唤(如果没有电度此步骤可以省略且可以在对时之前以送.通过设置参数中”全数据扫描间隔”,单位是分钟一般是15分钟召唤一交,如果不需要召唤电度一定要将参数中的电度个数设为0)发送→召唤电度:68(启动符)0E(长度)04 00(发送序号)0E 00(接收序号)65(类型标示)01(可变结构限定词)06 00(传输原因)01 00(公共地址)00 00 00(信息体地址)45(QCC)接收→召唤确认(发送帧的镜像,除传送原因不同) :68(启动符)0E(长度)10 00(发送序号)06 00(接收序号)65(类型标示)01(可变结构限定词)07 00(传输原因)01 00(公共地址)00 00 00(信息体地址)45(QCC)发送→S帧:68 04 01 00 12 00接收→电度数据:68(启动符)1A(长度)12 00(发送序号)06 00(接收序号)0F(类型标示)02(可变结构限定词,有两个电度量上送)05 00(传输原因)01 00(公共地址)01 0C 00(信息体地址,从0X0C01开始第0号电度)00 00 00 00(电度值)00(描述信息)02 0C 00(信息体地址,从0X0C01开始第1号电度)00 00 00 00(电度值)01(描述信息)发送→S帧:68 04 01 00 14 00接收→结束总召唤帧:68(启动符)0E(长度)14 00(发送序号)06 00(接收序号)65(类型标示)01(可变结构限定词)0A 00(传输原因)01 00(公共地址)00 00 00(信息体地址)45(QCC)发送→S帧:6804 01 00 16 00第四步:如果RTU有变化数据主动上送主动上送变位遥信,类型标识为1或3接收→变位遥信:68(启动符)0E(长度)16 00(发送序号)06 00(接收序号)01(类型标示,单点遥信)01(可变结构限定词,有1个变位遥信上送)03 00(传输原因,表突发事件)01 00(公共地址即RTU地址)03 00 00(信息体地址,第3号遥信)00(遥信分)发送→S帧:68 04 01 00 18 00接收→变位遥信:68(启动符)0E(长度)18 00(发送序号)06 00(接收序号)03(类型标示,双点遥信)01(可变结构限定词,有1个变位遥信上送)03 00(传输原因,表突发事件)01 00(公共地址即RTU地址)06 00 00(信息体地址,第6号遥信)01(遥信分)发送→S帧:68 04 01 00 1a 00主动上送SOE,类型标识为0x1e或0x1f接收→SOE :68(启动符)15(长度)1a 00(发送序号)06 00(接收序号)1e(类型标示,单点遥信)01(可变结构限定词,有1个SOE)03 00(传输原因,表突发事件)01 00(公共地址即RTU 地址)08 00 00(信息体地址,第8号遥信)00(遥信分)ad(毫秒低位)39(毫秒高位)1c(分钟)10(时)7a(日与星期)0b(月)05(年)发送→S帧:68 04 01 00 1c 00接收→SOE :68(启动符)15(长度)1c 00(发送序号)06 00(接收序号)1f(类型标示,双点遥信)01(可变结构限定词,有1个SOE)03 00(传输原因,表突发事件)01 00(公共地址即RTU 地址)0a 00 00(信息体地址,第10遥信)01(遥信分)2f(毫秒低位)40(毫秒高位)1c(分钟)10(时)7a(日与星期)0b(月)05(年)第四步:如果主站超过一定时间没有下发报文或RTU也没有上送任何报文则双方都可以按频率发送U帧,测试帧发送→U帧:68 04 43 00 00 00接收→应答:68 04 83 00 00 00第五步:遥控发送→遥控预置:68(启动符)0e(长度)20 00(发送序号)06 00(接收序号)2e(类型标示)01(可变结构限定词)06 00(传输原因)01 00(公共地址即RTU地址)05 0b 00(信息体地址,遥控号=0xb05-0xb01=4)82(控合)接收→遥控返校:68(启动符)0e(长度)0e 00(发送序号)06 00(接收序号)2e(类型标示)01(可变结构限定词)07 00(传输原因)01 00(公共地址即RTU地址)05 0b 00(信息体地址,遥控号=0xb05-0xb01=4)82(控合)发送→遥控执行:68(启动符)0e(长度)04 00(发送序号)18 00(接收序号)2e(类型标示)01(可变结构限定词)06 00(传输原因)01 00(公共地址即RTU地址)05 0b 00(信息体地址,遥控号=0xb05-0xb01=4)02(控合)接收→执行确认:68(启动符)0e(长度)12 00(发送序号)08 00(接收序号)2e(类型标示)01(可变结构限定词)07 00(传输原因)01 00(公共地址即RTU地址)05 0b 00(信息体地址,遥控号=0xb05-0xb01=4)02(控合)发送→遥控撤消:68(启动符)0e(长度)04 00(发送序号)18 00(接收序号)2e(类型标示)01(可变结构限定词)08 00(传输原因)01 00(公共地址即RTU地址)05 0b 00(信息体地址,遥控号=0xb05-0xb01=4)02(控合)接收→撤消确认:68(启动符)0e(长度)12 00(发送序号)08 00(接收序号)2e(类型标示)01(可变结构限定词)09 00(传输原因)01 00(公共地址即RTU地址)05 0b 00(信息体地址,遥控号=0xb05-0xb01=4)02(控合)补充说明:1、报文中的长度指的是除启动字符与长度字节的所有字节。
104规约遥信报文解析摘要:1.104 规约遥信报文的概述2.104 规约遥信报文的结构3.104 规约遥信报文的解析方法4.104 规约遥信报文的应用案例正文:一、104 规约遥信报文的概述104 规约遥信报文是一种用于电力系统自动化装置之间通信的报文,主要负责传输遥信信息。
遥信信息是指反映电力系统设备状态的信息,如开关的位置、故障报警等。
104 规约遥信报文在电力系统自动化中起着关键作用,可以实现对电力系统运行状态的实时监控和故障处理。
二、104 规约遥信报文的结构104 规约遥信报文的结构包括报文头、报文长度、控制域、地址域、应用数据单元(ASDU)和校验和。
各部分的作用如下:1.报文头:用于标识报文开始,包含报文起始符、报文长度和报文类型。
2.报文长度:表示整个报文的字节数。
3.控制域:包括通信协议版本号、通信协议识别符和报文序列号,用于确保报文在传输过程中的正确性和完整性。
4.地址域:包含发送方地址和接收方地址,用于指定报文的发送和接收设备。
5.应用数据单元(ASDU):是报文的核心部分,负责传输遥信信息。
ASDU 由数据项、数据类型和数据单元标识符组成。
6.校验和:用于检验报文在传输过程中的正确性。
三、104 规约遥信报文的解析方法解析104 规约遥信报文的方法主要包括以下步骤:1.解析报文头:从报文中提取报文起始符,判断报文是否完整。
然后根据报文长度获取整个报文的字节数。
2.解析控制域:从报文中提取通信协议版本号、通信协议识别符和报文序列号,检查它们是否符合规定。
3.解析地址域:从报文中提取发送方地址和接收方地址,确定报文的发送和接收设备。
4.解析应用数据单元(ASDU):从报文中提取数据项、数据类型和数据单元标识符,分析遥信信息。
5.校验和检验:使用校验和算法对报文进行校验,判断报文在传输过程中是否发生错误。
四、104 规约遥信报文的应用案例104 规约遥信报文在电力系统自动化中的应用案例包括:1.故障报警:当电力系统设备发生故障时,通过104 规约遥信报文将故障信息传输到监控中心,实现及时报警。
IEC 104规约报文解析一、固定长度报文:1、格式:启动字符长度控制域一控制域二控制域三控制域四启动字符:68长度:该字节之后的报文的字节数目。
短帧都为042、常见帧:启动链路: 68 04 07 00 00 00启动链路确认:68 04 0B 00 00 00测试帧: 68 04 43 00 00 00测试确认: 68 04 83 00 00 00监视帧: 68 04 01 00 00 00二、可变长度报文1、格式:启动字符长度控制域一控制域二控制域三控制域四类型标识符可变结构限定词传送原因高字节传送原因低字节公共地址高字节公共地址低字节数据启动字符:68长度:该字节之后的报文的字节数目类型标识:0x01:单点遥信0x09:归一化遥测(整型)0x0D:浮点型遥测0x03:双点遥信0x1e:SOE(事件记录)0x67:对时0x25:电度0x64:总召0x2d:单点遥控0x2e:双点遥控可变结构限定词:最高位表示数据是否连续,1:连续,0:不连续,低7位表示报文中包含的数据的个数。
传送原因:0x06:激活0x07:激活确认0xA:激活终止0x8:停止激活0x09:激活停止确认公共地址:设备地址2、常见报文的格式:点号 = 起始地址或者信息体地址-104规约中配置的起始地址遥信:连续:数据报文的格式:3个字节(低前高后)起始地址+n个字节的遥信值不连续:数据报文的格式:3个字节(低前高后)信息体地址+1个字节的遥信值3个字节(低前高后)信息体地址+1个字节的遥信值………………………………………………………3个字节(低前高后)信息体地址+1个字节的遥信值遥测:连续:数据报文的格式:3个字节(低前高后)起始地址+(4个字节的遥测值+1个字节的品质描述)×n组不连续:数据报文的格式:3个字节(低前高后)信息体地址+4个字节的遥测值+1个字节的品质描述 3个字节(低前高后)信息体地址+4个字节的遥测值+1个字节的品质描述………………………………………………………………………………3个字节(低前高后)信息体地址+4个字节的遥测值+1个字节的品质描述SOE:不区分连续不连续数据报文格式:3个字节起始地址+1个字节值+7个字节的时标(毫秒、秒、分、时、日、月、年)电度:连续:数据报文格式:3个字节(低前高后)起始地址+(4个字节的遥测值+1个字节的品质描述+7个字节的时标)×n组(毫秒、秒、分、时、日、月、年)不连续: 3个字节(低前高后)起始地址+(4个字节的遥测值+1个字节的品质描述+7个字节的时标) …………………………………………………………………………………………………3个字节(低前高后)起始地址+(4个字节的遥测值+1个字节的品质描述+7个字节的时标)遥控:3个信息体地址+1个字节命令码对时:3个字节信息体地址+7个字节的时标(毫秒、秒、分、时、日、月、年)三、报文举例1、主站发总召:68 0E 00 00 00 00 64 01 0600 01 00 00 00 00 142、主站收到的总召相应报文:68 0E 06 00 02 00 64 01 07 00 01 00 00 00 00 143、主站收到的全遥信报文:68 38 08 00 02 00 01 AB 14 00 01 00 01 00 00 00 00 01 00 00 00 01 00 01 00 01 00 00 00 01 00 01 00 01 00 00 00 00 00 00 00 00 00 01 00 01 00 00 00 00 00 01 00 00 00 01 00 004、主站收到的全遥测报文:68 F3 0A 00 02 00 0D AE 1400 01 00 01 4C 00 9A 99 41 41 00 34 33 97 41 00 67 66 08 C2 00 33 33 03 42 00 2E 33 23 41 00 67 66 92 C1 00 66 66 AA C1 00 9A 99 19 B6 00 9A 99 11 C1 00 00 00 4A 42 00 CE CC 47 C3 00 98 99 41 C2 00 CF 8C 89 C3 00 36 33 29 42 00 66 66 D3 42 00 9B 19 31 43 00 02 00 AB 43 00 9A 19 47 43 00 CE 4C 78 C3 00 00 00 C9 42 00 35 33 7D C3 00 00 00 5D C3 00 FF FF E6 C2 00 68 E6 D8 43 00 CB CC C8 41 00 CF CC D0 C1 00 9C 59 E6 C3 00 CF CC E0 C3 009A 99 AE 42 00 CA 2C 4B 44 00 CD CC 8C 36 00 66 66 80 C2 00 01 80 25 C3 00 96 F9 A1 C4 00 66 66 0C C3 00 01 80 B4 43 00 62 66 94 C2 00 66 66 18 C4 00 67 66 1C C3 00 9A 99 70 C3 00 01 80 CD C3 00 01 80 D2 43 00 CA 0C 6D 44 00 66 66 26 38 00 97 39 56 44 00 6C 66 38 C2 004、主站收到的总召结束报文:68 0E 0C 00 02 00 64 01 0A00 01 00 00 00 00 145、主站发送的对时报文:68 14 02 00 0E 00 67 01 0600 01 00 00 00 00 8E 6D 2C 0B 2F 0B 0A6、主站收到的对时返回:68 14 0E 00 04 00 67 01 0700 01 00 00 00 00 8E 6D 2C 0B 2F 0B 0A7、主站收到的SOE报文:68 20 12 00 04 00 1E 02 0300 01 00 03 00 000099 AF 3A 13 1E 03 0003 00 010099 AF 3A 13 1E 03 008、主站发送的遥控预置报文68 0E 00 00 00 00 2E 01 0600 00 00 01 60 00 8d9、主站收到的遥控预置返校报文68 0E 00 00 00 00 2E 01 0700 00 00 01 60 00 8d10、主站发送的遥控执行报文68 0E 00 00 00 00 2E 01 0600 00 00 01 60 00 0d11、主站收到的遥控执行确定报文68 0E 00 00 00 00 2E 01 0700 00 00 01 60 00 0d12、主站发送的遥控撤销报文68 0E 00 00 00 00 2E 01 0800 00 00 01 60 00 8d13、主站收到的遥控撤销确认报文68 0E 00 00 00 00 2E 01 0900 00 00 01 60 00 8d14、主站收到的变化遥信报文:68 3A 14 00 04 00 01 0C 0300 01 00 07 00 00 00 09 00 00 00 0D 00 00 01 0F 00 00 00 11 00 00 00 17 00 00 01 1B 00 00 01 1D 00 00 00 21 00 00 01 23 00 00 01 29 00 00 00 2B 00 00 0115、主站收到的变化遥测报文:68 EA 04 00 00 00 0D 1C 0300 01 00 01 4C 00 CE CC 64 41 00 02 4C 00 CE CC B8 C1 00 04 4C 00 33 33 03 C2 00 06 4C 00 67 66 92 C1 00 07 4C 00 32 33 63 41 00 08 4C 00 97 99 01 41 00 0A 4C 00 66 66 72 42 00 0B 4C 00 CE CC 47 C3 00 0C 4C 00 98 99 41 42 00 0E 4C 00 9C 99 61 C2 00 0F 4C 00 66 E6 07 43 00 10 4C 00 35 33 41 C3 00 11 4C 00 CF 8C B3 C3 00 13 4C 00 9A 19 52 C3 00 14 4C 00 33 33 F1 C2 00 15 4C 00 01 00 53 43 00 18 4C 00 68 E6 D8 43 00 1A 4C 00 CD CC 8C B6 00 1B 4C 00 9C 59 E6 43 00 1D 4C 00 9A 99 AE C2 00 21 4C 00 67 66 04 43 00 22 4C 00 30 73 99 44 00 23 4C 00 66 66 8C 42 00 24 4C 00 CE 8C C6 C3 00 26 4C 00 00 E0 0E 44 00 29 4C 00 34 F3 B8 C3 00 2A 4C 00 9B 99 FC C3 00 2C 4C 00 6C 66 B0 C2 00。
基本定义:端口号2404,站端为Server 控端为Client,平衡式传输,2Byte站地址,2Byte传送原因,3Byte信息地址。
104不涉及链路层,也没有一、二级数据之说。
104规约可以简单理解成网络版的101规约。
他是建立在TCP/IP层之上,可以把他认为是会话层的的规约(我是这么理解的)。
在串口通讯程序中我们要自己写程序,用校验机制来保证及判断报文的完整性(属于链路层的东西);用重发机制保证报文不丢失(网络层或传输层的东西)。
而在网络通讯中,这些功能都由底层的TCP/IP协议完成了,所以,我们就不必关心再校验,丢包等问题了。
被控站需要在连接成功后,接到STARTDT才能主动上发数据。
关于什么时候发总召唤以及连接后做些什么,那就看具体应用需求了,这个没有特别限制104规约通信流程:0x68+长度+4bytes控制域基本格式I,S ,U[主战端监视]启动1 //----召唤链路状态TX:U格式的STARTDT生效报文:68 04 07 00 00 00 MR04:数据单元长度(APDU)=4,07: U格式帧 STARTDT:ACT=1 CON=0 STOPDT:ACT=0 CON=0 TESTFR: ACT=0 CON=0RX:U格式的STARTDT确认报文:68 04 0B 00 00 00 R—>M数据单元长度(APDU)=4 U格式帧 STARTDT:ACT=0 CON=1 STOPDT:ACT=0 CON=0 TESTFR: ACT=0 CON=0//---I Form 发送和接收序列号如何确定TX:总召唤:=68 0e 08 00 0e 00 64 01 06 01 02 00 00 00 00 14RX:总召唤确认:=68 0e 0e 00 0a 00 64 01 07 00 01 00 00 00 00 0eRX:单点信息:=68 56 10 00 0a 00 01 c9 14 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 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 01RX:全遥测报文:68 2D 16 00 02 00 15 90 14 00 00 00 01 07 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 0068 F8 68 00 02 00 0D AF 14 00 01 00 30 44 00 A4 70 9D 3F 00 A4 709D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00 A4 70 9D 3F 00召唤累计值TX:召唤电度量:=68 0e 06 00 0a 00 65 01 06 01 01 00 00 00 00 45RX:电度冻结确认:=68 0e 0a 00 08 00 65 01 07 00 01 00 00 00 00 0eRX:召唤电度量结束:=68 0e 0c 00 08 00 65 01 0a 00 01 00 00 00 00 0eTX:校时命令:=68 14 04 00 08 00 67 01 06 01 01 00 00 00 00 bc 97 01 10 8d 04 06RX:校时命令:=68 14 08 00 06 00 67 01 07 00 01 00 00 00 00 bc 97 01 10 8d 04 06测试 //--主站发送测试间隔(20s),如从站确认则下次测试间隔RX:测试U帧:=68 04 43 00 00 00TX:测试确认U帧:=68 04 83 00 00 00S帧TX:S帧数据:=68 04 01 00 14 00控制控制站发送遥控(预置、执行、撤消)68 0B(长度) SN SN RN RN 2E 01 06(传输原因) ADDR(公共地址) (B01H+控号)低位 (B01H+控号)高位遥控命令限定词遥控预置:控分的限定词为81H,控合的限定词为82H遥控执行:控分的限定词为01H,控合的限定词为02H遥控撤消的报文为06改为08被控站发送遥控确认68 0B(长度) SN SN RN RN 2E 01 07(传输原因) ADDR(公共地址) (B01H+控号)低位 (B01H+控号)高位遥控命令限定词返校错误的报文为07改为47H遥控撤消的确认报文为07改为09传输原因可以为一个或两个字节,公共地址可以为一个或两个字节,信息体地址可以为一个或两个或三个字节,上面是按照传输原因一字节;公共地址一字节;信息体地址两字节来写的。
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- IEC-60870-5-104:应用模型是:物理层,链路层,网络层,传输层,应用层物理层保证数据的正确送达,保证如何避免冲突。
(物理层利用如 RS232上利用全双工)链路层负责具体对那个slave的通讯,对于成功与否,是否重传由链路层控制(RS485 2线利用禁止链路层确认)应用层负责具体的一些应用,如问全数据还是单点数据还是类数据等(网络利用CSMA/CD等保证避免冲突的发生)--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 基本定义:端口号2404,站端为Server 控端为Client,平衡式传输,2Byte站地址,2Byte传送原因,3Byte信息地址。
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 注:APDU 应用规约数据单元(整个数据)= APCI 应用规约控制信息(固定6个字节)+ ASDU 应用服务数据单元(长度可变)--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- APDU长度(系统-特定参数,指定每个系统APDU的最大长度)APDU的最大长度域为253(缺省)。
视具体系统最大长度可以压缩。
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 【1个例子】104报文分析BUF序0 1 2 3 4 5 6 7 8 9 .10 11 12 13 14 15 16 17 18 19 20 21 22M->R:68 1510 0002 001E 01 03 0001 0079 00 00 01 10 01 24 13 D2 0A 02分析的结果是I (主动上报SOE,主动上报是因为104是平衡式规约)报文头固定为0x68,即十进制104长度15字节(不是6帧的,都是I帧)发送序号=8【控制字节的解析10 00 02 00 ,发送序号:0010H/2=16/2=8】接收序号=1 【控制字节的解析10 00 02 00 ,接收序号:0002H/2=2/2 =1】0x1E=30 即M_SP_TB_1 带长时标的单点信息01 -> SQ:0 信号个数:103 00 -> 传送原因:[ T=0 P/N=0 原因=3 | 突发]01 00 -> 公共地址:179 00 00 -> 0x79=121 信息体地址: 12101 -> 状态: 1 IV:0 NT:0 SB:0 BL:010 01 24 13 D2 0A 02 ->低位10 高位01,即0x0110=1*16*16+16=272 时标: 2002/10/18 19:36:00.272--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 每个字节都为unsigned char类型,如果是2个字节表示1个short型,则都是低位在前,高位在后。
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 【字节0】0x68即十进制数104,68做为BUF第0个字节,下面的说明依次向后排--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 【字节1】15即从字节2到最后的所有字节数(长度)--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 【字节2、3、4、5】这4个字节是4个控制域,对应不同类型的格式(I帧、U帧、S帧),意义和格式都不相同I帧(可变长度)的控制域定义其中发送序号、接收序号的低位都需要左移1位,即乘2,才发出;接收时除2即可。
S帧(固定6个字节的短帧,用于确认接收到对方的帧,但本身无信息数据)的控制域定义U帧(固定6字节)的控制域定义启动控制信息(V-生效(激活) C-确认)命令(TEST-测试STOP-停止START-启动)--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 【字节6】即ASDU的首字节就是类型标识(标准ASDU的选集【ASDU定义】)类型标识与传送原因分配(站-特定参数):灰块:不要求黑块:本配套标准不允许空白:功能或ASDU未采用类型标识与传输原因的标记:"×"只用在标准方向"R" 只用在反方向"B" 用在两个方向在监视方向的过程信息(站-特定参数,只用在标准方向标"×",只用在相反方向标"R",用在两个方向标"B")□<1> 0x01:M-SP-NA-1 =单点信息(总召唤遥信、变位遥信)■<2> 0x02:M-SP-TA-1 =带时标单点信息(SOE事项)□<3> 0x03:M-DP-TA-1 =双点信息■<4> 0x04:M-DP-TA-1 =带时标双点信息□<5> 0x05:M-ST-NA-1 =步位置信息■<6> 0x06:M-ST-TA-1 =带时标步位置信息□<7> 0x07:M-BO-NA-1 =32比特串■<8> 0x08:M-BO-TA-1 =带时标32比特串□<9> 0x09:M-ME-NA-1 =测量值,规一化值(越限遥测)■<10> 0x0A:M-ME-TA-1 =测量值,带时标规一化值□<11> 0x0B:M-ME-NB-1 =测量值,标度化值■<12> 0x0C:M-ME-TB-1 =测量值,带时标标度化值□<13> 0x0D:M-ME-NC-1 =测量值,短浮点数■<14> 0x0E:M-ME-TC-1 =测量值,带时标短浮点数□<15> 0x0F:M-IT-NA-1 =累计量(电度量)■<16> 0x10:M-IT-TA-1 =带时标累计量■<17> 0x11:M-EP-TA-1 =带时标继电保护装置事件■<18> 0x12:M-EP-TB-1 =带时标继电保护装置成组启动事件■<19> 0x13:M-EP-TC-1 =带时标继电保护装置成组输出电路信息□<20> 0x14:M-SP-NA-1 =具有状态变位检出的成组单点信息□<21> 0x15:M-ME-ND-1 =测量值,不带品质描述的规一化值(总召唤遥测量)□<30> 0x1E:M-SP-TB-1 =带时标CP56TimE2A的单点信息□<31> 0x1F:M-DP-TB-1 =带时标CP56TimE2A的双点信息□<32> 0x20:M-ST-TB-1 =带时标CP56TimE2A的步位信息□<33> 0x21:M-BO-TB-1 =带时标CP56TimE2A的32位串□<34> 0x22:M-ME-TD-1 =带时标CP56TimE2A的规一化测量值□<35> 0x23:M-ME-TE-1 =测量值,带时标CP56TimE2A的标度化值□<36> 0x24:M-ME-TF-1 =测量值,带时标CP56TimE2A的短浮点数□<37> 0x25:M-IT-TB-1 =带时标CP56TimE2A的累计值□<38> 0x26:M-EP-TD-1 =带时标CP56TimE2A的继电保护装置事件□<39> 0x27:M-EP-TE-1 =带时标CP56TimE2A的成组继电保护装置成组启动事件□<40> 0x28:M-EP-TF-1 =带时标CP56TimE2A的继电保护装置成组输出电路信息ASDU集<1>、<3>、<5>、<7>、<9>、<11>、<13>、<15>、<20>、<21>、<30>-<40>都可采用。