今天在山东的一个供电局用DNP规约通下面的配网,遥控一直遥不了,有返校但是执行不了,老报没有接受到select报文。
我发的选择报文如下(16进制):
xx xx 03(选择) 0c 01 17 01 01 03(合) 01 00 00 00 00 00 00 00 00 00
收到返校
xx xx a0 00 03(选择) 0c 01 17 01 01 03(合) 01 00 00 00 00 00 00 00 00 00(00 表示返校成功)
发执行:
xx xx 04(执行) 0c 01 17 01 01 03(合) 01 00 00 00 00 00 00 00 00 00
收到返校:
xx xx 04(执行) 0c 01 17 01 01 03(合) 01 00 00 00 00 00 00 00 00 02(02 表示之前没有选择报文)
为什么不行呢?
终于找出原因了:
有两方面的原因:
1.我上面的XX XX是发送序号,假如选择报文的发送序号是 c0 c0 的话,那么执行报文必须就要是c1 c1 比选择的大一个
选择: c0 c0 03(选择) 0c 01 17 01 01 03(合) 01 00 00 00 00 00 00 00 00 00
执行: c1 c1 04(执行) 0c 01 17 01 01 03(合) 01 00 00 00 00 00 00 00 00 00
2.合的代码是 0x41 分的代码是0x81
选择: c0 c0 03(选择) 0c 01 17 01 01 41(合) 01 00 00 00 00 00 00 00 00 00
选择: c0 c0 03(选择) 0c 01 17 01 01 81(分) 01 00 00 00 00 00 00 00 00 00
DNP规约上明明写着是41是脉冲合上,而82是脉冲断开,根本就没有81这一说的,但是到网上搜了下,别人都是我上面写的这种,自己
就试了一下,果真成功了,03,04 的我自己就没有再试,也不想折腾了吧。
还有,开始继电器是打在就地的,是不可以遥控的,我试了两天就遥不起来,一直都在怀疑我写的规约的问题。最后实在是没有办法了,叫人到现场一看,果真是就地的。我差点没有吐血呀!.
这次这个DNP的遥控弄的我好郁闷哦......