IEC-60870-5-101规约解析概述摘要:IEC-60870-5-101规约是调度端与场站端进行信息交互的一种规约,为国际电工委员会(IEC)在1995年制定,并于2001年将95版规约扩充,制定2002版即现行国内各主流调度、子站厂商全面应用的版本。鉴于IEC-60870-5-101其在电力系统远动通讯规约的主导地位已经确立并且220kV电压等级风电场均已通过101规约将站内信息上送调度,本文将对如何解析IEC-60870-5-101报文进行阐述。关键词:IEC-60870-5-101规约解析1规约总述IEC-60870-5-101规约是一种问答式规约,即你问我答、不问不答模式。它有两种传输方式:平衡式传输和非平衡式传输。平衡式传输中101规约是一种“问答+循环”式规约,即主站和子站都可以启动报文传输。而当其用非平衡式传输时,只有主站端能启动报文传输。101规约的报文在传输时,采用固定帧长和可变帧长及单个控制字符方式。2IEC101报文的帧格式2.1固定帧长帧格式固定帧长帧由5~6个字节组成,链路地址域可为一个或两个字节。用于主站向子站的询问报文或者子站回答主站的确认报文。具体格式如下表:表1固定帧长帧格式启动字符(10H)控制域(C)链路地址域(A)帧校验和(CS)结束字符(16H)报文示例:105B015C16解析为请求二级用户数据,其中10为启动字符,5B为控制域,01为链路层地址,5C为检验和,16为结束字符。2.2可变帧长帧格式可变帧长用于主站向子站传输数据或子站向主站传输数据,具体格式如下表:表2可变帧长帧格式报文头(固定长度)启动字符(68H)L报文长度及多少个字节数L报文长度确认启动字符(68H)数据内容L个字节长控制域(C)链路地址域(A)ASDU数据单元标识数据单元类型类型标识可变结构限定词传送原因公共地址信息体信息体地址信息体元素信息体时标帧校验和(CS)结束字符(16H)报文示例:680909685340640106010000141316其中68090968按上表解析为报文头,53为控制域字节,40为链路层地址转换为10进制为64,64为总召唤类型标识,01为可变结构限定词,06为传输原因,01为公共地址,0000为信息体地址,14为信息体元素,13为帧校验和,16为结束字符。3应答过程就像规定了人说一句话第一个词说什么含义是什么一样,101报文的帧格式规定了报文中各个字符的定义和功能。子站和主站通过每一帧报文进行数据交互。而报文的传输过程就是101的整个应答过程。IEC60870-5-101,制订了一套典型的问答式规范,一般包括:初始化过程、基本问答过程、其他问答过程,几个典型过程将依次出现,如果在启动过程中,缺失某一个过程或过程的出现顺序颠倒,都将引起通讯异常。3.1初始化过程主站端和子站端装置上电后,主站向子站询问链路状态,子站以链路状态回答主站,主站复位远方链路,子站确认回答。主站发总召唤命令,子站以全数据回答,主站发时钟同步命令,子站以同步时钟事件回答。3.1.1请求链路状态通讯中断或者通讯未建立前,主站采用固定帧长发送请求链路报文,子站响应后通讯连通。主站请求链路报文格式如下表:表3主站请求远方链路状态帧启动字符(10H)控制域(包含PRM、FCB、FCV、功能码9)链路地址(子站链路地址)帧校验和(CS)结束字符(16H)子站响应报文格式如下表:表4子站回答链路状态帧启动字符(10H)控制域(包含ACD、DFC、功能码B)链路地址(子站链路地址)帧校验和(CS)结束字符(16H)报文示例主站:1049014A16子站:100B010C16主站报文解析:10为启动字符,49为控制域(4转换为二进制位0100,从第二位开始每一位分别对应PRM启动报文位=1、FCB帧计数=0、FCV帧计数有效位=0,9为功能码)01为子站链路地址,4A为校验和,16为结束字符。子站报文解析:10为启动字符,0B为控制域(0转换为二进制为0000,从第三位开始每一位对应ACD要求访问=0无一级数据、DFC数据流控制位=0子站可以继续接受数据,B为功能码=链路完好)01为子站链路地址,OC为校验和,16为结束字符。3.1.2复位远方链路确认链路完好后,主站复位链路。主站复位链路帧格式如下表表5主站复位远方链路帧格式启动字符(10H)控制域(包含PRM、FCB、FCV、功能码0)链路地址(子站链路地址)帧校验和(CS)结束字符(16H)子站确认复位链路报文帧格式如下表表6子站确认帧格式启动字符(10H)控制域(包含ACD、DFC、功能码0)链路地址(子站链路地址)帧校验和(CS)结束字符(16H)报文示例主站:1040014116子站:1000010116解析过程同请求链路报文在此不再赘述。3.1.3总召唤复位链路完成后主站后向子站下发总召唤命令,以用来召唤全站全遥测全遥信数据。子站进行总召唤确认,并以数据(全遥测和全遥信)响应主站查询报文。主站下发总召唤命令报文帧格式如下表:表7总召唤命令帧格式启动字符(68H)长度L长度L重复启动字符(68H)控制域01FCB10011,后四位为功能码3链路地址域类型标识ASDU可变结构限定词=01传送原因=6(激活)应用服务数据单元公共地址信息体地址低字节信息体地址高字节信息体元素(QOI=14H)帧校验和(CS)结束字符(16H)子站响应总召报文帧格式如下表:表8子站响应总召报文帧格式启动字符(68H)长度L长度L重复启动字符(68H)控制域00ACDDFC1000后四位为功能码8链路地址域类型标识ASDU可变结构限定词=01传送原因=7(激活确认)应用服务数据单元公共地址信息体地址低字节信息体地址高字节信息体元素(QOI=14H)帧校验和(CS)结束字符(16H)报文示例主站:68090968730164010601000014F416子站:68090968280164010701000014AA16主站报文解析:68为启动字符,0909为数据报文长度,68为启动字符,73为控制域(73转换为二进制为01110011,和前文一样解析为PRM启动报文位=1主站→从站,FCB帧计数位=1,FCV帧计数有效位=1有效,功能码3传送数据)01为链路地址,64为类型标识,01为可变结构限定词,06为传输原因,01为应用服务单元地址,0000为信息体地址,F4为帧校验和,16为结束字符。子站报文解析:68为启动字符,0909为数据报文长度,68为启动字符,28为控制域(28转换为二进制为00101000,和前文一样解析为PRM启动报文位=0从站→主站,ACD要求访问位=1,DFC数据位=0表示子站可以继续接收数据,功能码8以数据响应请求)01为链路地址,64为类型标识,01为可变结构限定词,06为传输原因,01为应用服务单元地址,0000为信息体地址,AA为帧校验和,16为结束字符。3.1.4回答全遥信数据子站确认总召唤命令后,主站将查询全遥信。主站下发要全遥信固定帧长报文格式如上。子站回答全遥信报文帧格式如下表:表9子站回答全遥信报文帧格式启动字符(68H)长度L长度L重复启动字符(68H)控制域(C)链路地址域类型标识ASDU可变结构限定词传送原因=14H应用层地址信息体地址低字节信息体地址高字节数据状态…帧校验和(CS)结束字符(16H)报文示例如下主站:105A409A16子站:680F0F682840018714010100010101010000010B16主站报文解析不在此赘述。子站报文解析如下:680F0F68为报文头,28为控制域,40为链路层地址,01为类型标识,87为可变结构限定词,14为传送原因,01为应用层地址,0100为起始信息体地址,01010101000001为数据分别为合合合合分分合,0B为帧校验和,16为结束字符。3.1.5回答全遥测报文全遥信报文结束后,主站下发要全遥测报文。主站下发要全遥测固定帧长报文格式如上。子站回答全遥测报文格式如下表:表10子站回答全遥测报文帧格式启动字符(68H)长度L长度L重复启动字符(68H)控制域(C)链路地址域类型标识ASDU可变结构限定词传送原因=14H应用层地址信息体地址低字节信息体地址高字节值…帧校验和(CS)结束字符(16H)报文示例如下主站:107A017B16子站:68383868280109901401014042000072070042050032F70042F100A10E0092F100209100020900C20700B20300F20900906900457000469200479300C816子站报文解析如下:68383868为报文头包含启动字符和数据长度,28为控制域解析方法前文已提到过,01为链路层地址,09为ASDU类型标识,90为可变结构限定词,14为传输原因,01为应用层地址,0140为起始信息体地址转换为10进制为16385,420000为第一个数据转换为十进制为66,接下来每三个字节为一个数据,直到C8校验和为止,16结束字符。3.1.6总召唤结束全遥信、全遥测报文上送结束后,主站继续召唤,子站结束总召唤。报文示例主站:107A017B16子站:68090968080164010A010000148D16其中0A为传送原因,激活终止即结束总召唤。3.1.7对时过程总召唤结束后,主站下发对时报文。对时过程为主站周期性发送,此过程一般出现于初始化或总召唤结束后的任意过程后。主站下发的对时报文的帧格式:对主站对时命令的确认报文帧格式:68H起始符68H起始符0fH长度0fH长度0fH长度重复0fH长度重复68H成对起始符68H成对起始符53H控制字53H控制字XX链路地址XX链路地址67HASDU号67HASDU号01可变结构限定词01可变结构限定词06传送原因07传送原因XX公共地址XX公共地址XXXX信息体地址XXXX信息体地址XX毫秒低字节XX毫秒低字节XX毫秒高字节XX毫秒高字节XX分钟值(b5~b0)XX分钟值(b5~b0)XX小时值(b4~b0)XX小时值(b4~b0)XX星期(b7~b5)和日期(b4~b0)XX星期(b7~b5)和日期(b4~b0)XX月(b3~b0)XX月(b3~b0)XX年(b6~b0)XX年(b6~b0)XX校验码XX校验码16H结束符16H结束符报文示例:主站:680f0f6853116701061100002bd11f0b0904061c16对照帧格式,报文解释为06年4月9日11点31分53秒537毫秒,主站激活对时报文。子站:680f0f6880116701071100002bd11f0b0904064a16对照帧格式,报文解释为子站确认对时时间,并接受对时,报文中的时间为主站下发时间的镜像帧。3.2数据基本问答过程主站初始化完毕后,开始轮询二级数据。如果子站有二级数据或一级数据则直接以数据回答;若不存在,则以否定报文回答。否定报文为单独E5H字符,也可以无数据请求帧回答。3.2.1主站轮询二级数据当主站下发轮询二级数据固定帧长格式报文时,子站回答报文帧格式如下表:表11子站回答二级数据报文帧格式启动字符(68H)长度L长度L重复启动字符(68H)控制域(C)链路地址域类型标识ASDU可变结构限定词传送原因=14H应用层地址信息体地址低字节信息体地址高字节值…帧校验和(CS)结束字符(16H)报文示例主站:105B015C16子站:680BOB680801090103013240DD0B007116子站报文解析如总召唤全遥测报文解析。此帧报文解析为,遥测突变,信息体地址为4032H遥测值为3037。3.2.2当有遥信变化(一级用户数据)时,子站也可以直接以一级数据应答:主站:105b015c16(查询二级数据)子站:681515680801010503012100012300002500012700012b0000d116整帧表示:有5个遥信发生突变,子站以ASDU01上送单点遥信变位帧3.2.3当子站发生