其他分享
首页 > 其他分享> > DL645通信协议97/07规约(附上下行例子)

DL645通信协议97/07规约(附上下行例子)

作者:互联网

DL/T645规约是针对电表通信而制定的通信协议,目前分两个版本,一个为1997年制定的成为97规约,还有就是07年指定的07规约。目前二者并存于市场中,要弄清楚二者的差异

一、数据帧格式

在这里插入图片描述
这里需要注意的点有:
1、地址域长度不足时有用00H补齐的,也有用AA补齐的,这里可以自己测试一下。
2、数据域中的数据接受和发送的时候都是需要处理的,主站加0x33,从站减0x33。
3、所有的数据项(地址域、数据域)都需要按着低字节在前,高字节在后的远程传输。
4、一般需要在每一帧数据前加上前导字节:FE FE FE FE即可(用在需要唤醒的设备上)
5、FE FE FE 68 AA AA AA AA AA AA 68 13 00 DF 16可以读出准确地址,AA AA AA AA AA AA算是读表地址专用地址,13控制码,根据协议,就是读地址控制码,DF为校验,16是结尾。
6、校验码从第一个起始符算起,包含第一个起始符
7、数据域的结构随控制码的功能而改变,可以是:数据标识、密码、操作者代码、数据、帧序号等

二、控制码

在这里插入图片描述

三、常见数据标识

在这里插入图片描述

四、举例说明

发送查表数据: 68 25 04 03 02 01 00 68 11 04 33 33 34 33 E1 16

数据 含义
68 起始帧
25 04 03 02 01 00 地址域,实际地址为0102030425
68 起始帧
11 控制码,07规约中读数据
04 数据域数据长度
33 33 34 33 数据域,剪掉33H为00 00 01 00,再高低位反转得到实际数据为 00 01 00 00,表示读正向有功总
E1 校验码
16 结束符

返回数据: 68 25 04 03 02 01 00 68 91 08 33 33 34 33 75 39 45 33 8B 16

数据 含义
68 起始帧
25 04 03 02 01 00 地址域,实际地址为0102030425
68 起始帧
91 控制码:10010001,第一位1代表从站发给主站,后面的10001=11H读数据
08 数据长度
33333433 75394533 同上解析,00010000表示正向有功总;75394533->42061200,得到的数值为1206.42
8B CS校验
16 结束符

标签:AA,00,07,33,通信协议,上下行,FE,68,数据
来源: https://blog.csdn.net/qq_43448742/article/details/106792002