3.6控制命令传送 选择和执行命令
>>>单点遥控选择 68 0e 0a 00 80 00 2d 01 06 98 01 00 01 0b 00 82 68 0e 0a 00 80 00 2d 01 06 98 01 00 01 0b 00 82 68 0e 80 00 0c 00 2d 01 07 00 01 00 01 0b 00 82 >>>确认 68 04 01 00 82 00
68 04 01 启动符 长度 S格式: 1 确认 启动符 长度 I格式第一位组:发送列序号低7位 <5> I格式第二位组:发送序列号高8位 I格式第三位组:接收列序号低7位+1bit <64> I格式第四位组:接收序列号高8位 类型标识:<45> 单点遥控命令 可变结构限定词:单个信息,数量1个 传送原因:<6> 遥控激活 原发地址:98H 公共地址:1 信息体地址B01H 遥控点0 信息体地址最高字节(保留未用) 遥控信息元素:选择,合 启动符 长度 I格式第一位组:发送列序号低7位 <64> I格式第二位组:发送序列号高8位 I格式第三位组:接收列序号低7位+1bit <6> I格式第四位组:接收序列号高8位 类型标识:<45> 单点遥控 可变结构限定词:单个信息,数量1个 传送原因:<7> 子站向主站回答遥控确认 原发地址:00 公共地址:1 信息体地址B01H 信息体地址最高字节(保留未用) 遥控信息元素:选择,合 <<<单点遥控反校 68 0e 80 00 0c 00 2d 01 07 00 01 00 01 0b 00 82
00 82 00 68 0e 0c 00 82 00 2d 01 06 98 01 00 01 0b 00 02 68 0e 82 00 0e 00 2d 01 07 00 01 00 01 0b 00 02 68 0e 84 S格式第二位组 S格式第三位组:接收列序号低7位+1bit <65> S格式第四位组:接收序列号高8位 启动符 长度 I格式第一位组:发送列序号低7位 <6> I格式第二位组:发送序列号高8位 I格式第三位组:接收列序号低7位+1bit <65> I格式第四位组:接收序列号高8位 类型标识:<45> 单点遥控命令 可变结构限定词:单个信息,数量1个 传送原因:<6>遥控激活 原发地址:98H 公共地址:1 信息体地址 遥控点0 信息体地址最高字节(保留未用) 遥控信息元素 启动符 长度 I格式第一位组:发送列序号低7位 <65> I格式第二位组:发送序列号高8位 I格式第三位组:接收列序号低7位+1bit <7> I格式第四位组:接收序列号高8位 类型标识:<45> 单点遥控 可变结构限定词:单个信息,数量1个 传送原因:<7> 子站向主站回答遥控确认 原发地址:00 公共地址:1 信息体地址B01H 信息体地址最高字节(保留未用) 遥控信息元素:执行,合 启动符 长度 I格式第一位组:发送列序号低7位 <66> >>>单点遥控执行 68 0e 0c 00 82 00 2e 01 06 98 01 00 01 0b 00 02 <<<单点遥控上报 68 0e 82 00 0e 00 2d 01 07 00 01 00 01 0b 00 02 <<<遥控终止 68 0e 84 00 0e 00 2d 01 0a 00 01 00 01 0b 00 02
00 0e 00 2d 01 0a 00 01 00 01 0b 00 02 >>>确认 68 04 01 00 86 00
68 04 01 00 86 00 I格式第二位组:发送序列号高8位 I格式第三位组:接收列序号低7位+1bit <7> I格式第四位组:接收序列号高8位 类型标识:<45> 单点遥控 可变结构限定词:单个信息,数量1个 传送原因:<10> 子站向主站回答单点遥控终止 原发地址:00 公共地址:1 信息体地址B01H 信息体地址最高字节(保留未用) 遥控信息元素:执行,合 启动符 长度 S格式: 1 确认 S格式第二位组 S格式第三位组:接收列序号低7位+1bit <67> S格式第四位组:接收序列号高8位 选择和撤消命令
>>>单点遥控选择 68 0e 14 00 58 00 2d 01 06 98 01 00 01 0b 00 82 68 0e 14 00 58 00 2d 01 06 98 01 00 01 0b 00 82 68 启动符 长度 I格式第一位组:发送列序号低7位 <10> I格式第二位组:发送序列号高8位 I格式第三位组:接收列序号低7位+1bit <44> I格式第四位组:接收序列号高8位 类型标识:<45>遥控命令 可变结构限定词:单个信息,数量1个 传送原因:<6>遥控激活 原发地址:98H 公共地址:1 信息体地址B01H 遥控点0 信息体地址最高字节(保留未用) 遥控信息元素:选择,合 启动符 <<<单点遥控反校 68 0e 58 00 16 00 2d 01 07 00 01 00 01 0b 00 82
0e 58 00 16 00 2d 01 07 00 01 00 01 0b 00 82 >>>确认 68 04 01 00 5a 00
68 04 01 00 5a 00 68 0e 16 00 5a 00 2d 01 08 98 01 00 01 0b 00 02 68 长度 I格式第一位组:发送列序号低7位 <44> I格式第二位组:发送序列号高8位 I格式第三位组:接收列序号低7位+1bit <11> I格式第四位组:接收序列号高8位 类型标识:<45> 单点遥控 可变结构限定词:单个信息,数量1个 传送原因:<7> 子站向主站回答遥控确认 原发地址:00 公共地址:1 信息体地址B01H 信息体地址最高字节(保留未用) 遥控信息元素:选择,合 启动符 长度 S格式: 1 确认 S格式第二位组 S格式第三位组:接收列序号低7位+1bit <45> S格式第四位组:接收序列号高8位 启动符 长度 I格式第一位组:发送列序号低7位 <11> I格式第二位组:发送序列号高8位 I格式第三位组:接收列序号低7位+1bit <45> I格式第四位组:接收序列号高8位 类型标识:<45>遥控命令 可变结构限定词:单个信息,数量1个 传送原因:<8>遥控停止激活 原发地址:98H 公共地址:1 信息体地址 遥控点0 信息体地址最高字节(保留未用) 遥控信息元素 启动符 >>>单点遥控取消 68 0e 16 00 5a 00 2d 01 08 98 01 00 01 0b 00 02 <<<双点遥控反校 68 0e 5a 00 18 00 2d 01 09 00 01 00 01 0b 00 02
0e 5a 00 18 00 2d 01 09 00 01 00 01 0b 00 02 >>>确认 68 04 01 00 5c 00
68 04 01 00 5c 00 3.7测试过程
长度 I格式第一位组:发送列序号低7位 <45> I格式第二位组:发送序列号高8位 I格式第三位组:接收列序号低7位+1bit <12> I格式第四位组:接收序列号高8位 类型标识:<45>遥控 可变结构限定词:单个信息,数量1个 传送原因:<9> 子站向主站回答遥控停止激活确认 原发地址:00 公共地址:1 信息体地址B01H 信息体地址最高字节(保留未用) 遥控信息元素:选择,合 启动符 长度 S格式第一位组:01 S格式第二位组 S格式第三位组:接收列序号低7位+1bit <46> S格式第四位组:接收序列号高8位 ? 测试过程
>>>(U)激活测试数据传输 68 04 43 00 00 00
68 04 43 00 00 00 68 04 83 00 00 00 启动符 长度 U格式:1000011 激活测试 U格式第二位组 U格式第三位组 U格式第四位组 启动符 长度 U格式:10000011 应答测试 U格式第二位组 U格式第三位组 U格式第四位组 <<<(U)应答测试数据传输 68 04 83 00 00 00
4 常用概念与超时定义
1、发送、接收序号循环计数,达到最大值后,再归零,重新计数。 2、公共地址的高字节基本不会用到,一般情况下高字节为0。
3、IP地址是网络层,ASDU地址是应用层,必须都要满足,才能算收到的正确报文。
4、确认机制的说明:回s帧是主站收到帧的一种确认,如果主站正好有I帧回,也是一种确认,如果长时间不回确认,就会判超时。规约只规定,收到的帧数达到12帧,则必须回S或者I帧确认,至于程序设计时做成收到一帧即回确认,也是可以的。只要不违反规约,你想怎么设计都行。
5、重发次数的目的不是为了连续发送,是为了判定超时发测试帧,测试帧再没有回复,断链路。
超时的定义: 参数 t0 t1 t2 t3 默认值 30s 15s 10s 20s 备注 连接建立的超时 发送或测试APDU的超时 无数据报文t2