IEC104规约调试例程
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
电力系统通讯管理机给调度上送数据时,主要以IEC104规约为主。但104对大部分人来说还是不容易搞清楚。主要是IEC104里面功能比较全,所以涉及方面太多。本文只在通讯帧格式方面举例说明一下。帮助大家了解IEC104的通讯方式。
IEC104处理遥测一般是整型数据,有的调度要求浮点上送,可以参考文章“浮点型IEEE-754转成整型数据方法”。
一、四遥信息体基地址范围
“可设置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帧)U格式是用来激活/终止链路
发送→激活传输启动: 68(启动符)04(长度)07(控制域)00 00 00
接收→确认激活传输启动:68(启动符)04(长度)0B(控制域)00 00 00第二步:总召唤(I帧)I格式是用来控制站与被控站的信息传输的。
召唤YC、YX(可变长I帧)初始化后定时发送总召唤,每次总召唤的间隔时间一般设为15分钟召唤一次,不同的主站系统设置不同。
发送→总召唤:
68(启动符)0E(长度)00 00(发送序号)00 00(接收序号)64(类型标示)01(可变结构限定词)06 00(传输原因)01 00(公共地址即RTU地址)00 00 00(信息体地址)14(区分是总召唤还是分组召唤,02年修改后的规约中没有分组召唤)
接收→S帧:S帧用于监视。S格式用来确认收到I帧的个数
注意:记录接收到的长帧,双方可以按频率发送,比如接收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帧。
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)