DLMS解析器


DLMS/COSEM协议比较复杂,完成协议部分内容的协议栈以及报文解析器花了5个月时间,同时同事也完成了基于协议栈的上位机,可以实现和DLMS电表进行通信。这里记录一下完成协议栈和报文解析器过程中遇到的报文类型。
(推荐博文 https://blog.csdn.net/SGJcgj/article/details/119417655)

一、非分帧报文

1 getRequestNormal和getResponseNormal

->7E A0 1A 02 23 03 32 75 62 E6 E6 00 C0 01 81 00 01 00 09 60 63 41 FF 02 00 82 91 7E
<-7E A0 27 03 02 23 52 B9 CF E6 E7 00 C4 01 81 00 09 14 53 54 43 38 36 38 49 52 41 4E 2E 44 2E 46 2E 31 36 56 53 31 69 EE 7E

2 setRequestNormal和setResponsenormal

->7E A0 2A 00 02 0C A5 03 32 9A FB E6 E6 00 C1 01 81 00 08 00 00 01 00 00 FF 02 00 09 0C 07 E8 02 1A 01 10 02 25 00 00 00 00 3D 67 7E
<-7E A0 13 03 00 02 0C A5 52 BE D3 E6 E7 00 C5 01 81 00 36 CF 7E

3 actionRequestNormal和actionResponseNormal

->7E A0 1E 00 02 0C A5 03 DC D6 4C E6 E6 00 C3 01 81 00 46 00 00 60 03 0A FF 01 01 0F 00 39 C5 7E
<-7E A0 14 03 00 02 0C A5 1E CE 9C E6 E7 00 C7 01 81 00 00 8A B2 7E

二、分帧报文

1 getRequestNormal、getResponseWithDatablock、确认帧、 getRequestNext

-> 7E A0 1C 00 02 0C A5 03 D4 25 F7 E6 E6 00 C0 01 81 00 07 01 00 63 01 00 FF 03 00 89 5D 7E
<- 7E A8 8C 03 00 02 0C A5 7C 5E 1C E6 E7 00 C4 02 81 00 00 00 00 01 00 82 01 C6 01 82 00 20 02 04 12 00 08 09 06 00 00 01 00 00 FF 0F 02 12 00 00 02 04 12 00 03 09 06 01 00 01 08 00 FF 0F 02 12 00 00 02 04 12 00 03 09 06 01 00 02 08 00 FF 0F 02 12 00 00 02 04 12 00 03 09 06 01 00 03 08 00 FF 0F 02 12 00 00 02 04 12 00 03 09 06 01 00 04 08 00 FF 0F 02 12 00 00 02 04 12 00 03 09 06 01 00 01 07 00 FF 0F 02 12 00 00 02 94 8A 7E
-> 7E A0 0A 00 02 0C A5 03 F1 8E 6C 7E
<- 7E A8 8C 03 00 02 0C A5 7E 4C 3F 04 12 00 03 09 06 01 00 02 07 00 FF 0F 02 12 00 00 02 04 12 00 03 09 06 01 00 15 07 00 FF 0F 02 12 00 00 02 04 12 00 03 09 06 01 00 16 07 00 FF 0F 02 12 00 00 02 04 12 00 03 09 06 01 00 29 07 00 FF 0F 02 12 00 00 02 04 12 00 03 09 06 01 00 2A 07 00 FF 0F 02 12 00 00 02 04 12 00 03 09 06 01 00 3D 07 00 FF 0F 02 12 00 00 02 04 12 00 03 09 06 01 00 3E 07 00 FF 0F 02 12 00 00 02 04 12 03 AD 7E
-> 7E A0 0A 00 02 0C A5 03 11 80 8B 7E
<- 7E A8 8C 03 00 02 0C A5 70 32 D6 00 03 09 06 01 00 03 07 00 FF 0F 02 12 00 00 02 04 12 00 03 09 06 01 00 04 07 00 FF 0F 02 12 00 00 02 04 12 00 03 09 06 01 00 17 07 00 FF 0F 02 12 00 00 02 04 12 00 03 09 06 01 00 18 07 00 FF 0F 02 12 00 00 02 04 12 00 03 09 06 01 00 2B 07 00 FF 0F 02 12 00 00 02 04 12 00 03 09 06 01 00 2C 07 00 FF 0F 02 12 00 00 02 04 12 00 03 09 06 01 00 3F 07 00 FF 0F 02 12 00 00 02 04 12 00 03 6A 57 7E
-> 7E A0 0A 00 02 0C A5 03 31 82 AA 7E
<- 7E A0 61 03 00 02 0C A5 72 4B D4 09 06 01 00 40 07 00 FF 0F 02 12 00 00 02 04 12 00 03 09 06 01 00 20 07 00 FF 0F 02 12 00 00 02 04 12 00 03 09 06 01 00 34 07 00 FF 0F 02 12 00 00 02 04 12 00 03 09 06 01 00 48 07 00 FF 0F 02 12 00 00 02 04 12 00 03 09 06 01 00 1F 07 00 FF 0F 02 12 00 00 F6 CB 7E
-> 7E A0 16 00 02 0C A5 03 56 68 B9 E6 E6 00 C0 02 81 00 00 00 01 73 7F 7E
<- 7E A8 8C 03 00 02 0C A5 94 18 77 E6 E7 00 C4 02 81 01 00 00 00 02 00 82 00 7E 02 04 12 00 03 09 06 01 00 33 07 00 FF 0F 02 12 00 00 02 04 12 00 03 09 06 01 00 47 07 00 FF 0F 02 12 00 00 02 04 12 00 03 09 06 01 00 5A 07 00 FF 0F 02 12 00 00 02 04 12 00 03 09 06 01 00 0D 07 00 FF 0F 02 12 00 00 02 04 12 00 03 09 06 01 00 21 07 00 FF 0F 02 12 00 00 02 04 12 00 03 09 06 01 00 35 07 00 FF 0F 02 12 00 00 02 04 12 00 03 6F 39 7E
-> 7E A0 0A 00 02 0C A5 03 71 86 E8 7E
<- 7E A0 19 03 00 02 0C A5 96 C1 BA 09 06 01 00 49 07 00 FF 0F 02 12 00 00 C3 90 7E

三、其他类型报文

1 RR帧-确认帧

->7E A0 0A 00 02 0C A5 03 F1 8E 6C 7E
分帧报文第二帧开始需要使用RR帧读取。

2 FRMR帧-拒绝帧

->7E A0 0F 03 00 02 0C A5 97 4C 46 91 76 08 8E 34 7E
出现非校验码错误时,电表发送拒绝帧。

3 SNRM帧

->7E A0 21 00 02 0C A5 03 93 9B 39 81 80 12 05 01 80 06 01 80 07 04 00 00 00 01 08 04 00 00 00 01 53 3B 7E
设置正常响应模式。

4 UA帧-SNRM和DISC的响应帧

<-7E A0 21 03 00 02 0C A5 73 C4 02 81 80 12 05 01 80 06 01 80 07 04 00 00 00 01 08 04 00 00 00 01 53 3B 7E
<-7E A0 21 03 00 02 0C A5 73 C4 02 7E

5 DISC帧-解除连接帧

->7E A0 0A 00 02 0C A5 03 53 96 EA 7E

6 DM帧-DISC的响应帧

<- 7E A0 0A 03 00 22 00 23 1F 43 4C 7E

7 RNR-忙帧

(根据协议手动组的报文)7E A0 0A 00 02 0C A5 03 F5 AA 2A 7E

8 UI-保持链路连接

(根据协议手动组的报文)7E A0 0A 00 02 0C A5 03 03 13 B8 7E

  • 8
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值