DL/T645-2007通信协议调试记录(DDS1886)

摘要

只要是支持DL/T645-2007通信协议的设备,在串口设置正确的情况下(2400、偶校验),可以通过下面字符读取A相电压

1)不知道地址

FE FE FE FE 68 AA AA AA AA AA AA 68 11 04 33 34 34 35 B1 16

2)地址:210507016998

FE FE FE FE 68 98 69 01 07 05 21 68 11 04 33 34 34 35 B1 16


接下来根据文档《DLT645-2007最新通信协议》,讲解原因

1、硬件连接

本次实验只连接了电表的电源(引脚1和引脚3)和RS485(引脚11和引脚12)

 

2、前导字节

在主站发送信息之前,先发送 4 个字节 FEH,以唤醒接收方。

3、数据帧格式

说明代码十六进制
帧起始符68H68H
地址域A0AAH
A1AAH
A2AAH
A3AAH
A4AAH
A5AAH
帧起始符68H68H
控制码C11H
数据域长度L04H
数据域(数据标识)DI000+33H=33H
DI101+33H=34H 
DI201+33H=34H
DI302+33H=35H 
校验码CSB1H 
帧结束符16H 16H 

1)地址域能写成AAH的原因

5.2.2 地址域 A0~A5
        地址域由 6 个字节构成,每字节 2 位 BCD 码,地址长度可达 12 位十进制数。每块表具有唯一的通信地址,且与物理层信道无关。当使用的地址码长度不足 6 字节时,高位用“0”补足 6 字节。
        通信地址 999999999999H 为广播地址,只针对特殊命令有效,如广播校时、广播冻结等。广播命令不要求从站应答。
        地址域支持缩位寻址,即从若干低位起,剩余高位补 AAH 作为通配符进行读表操作,从站应答帧的地址域返回实际通信地址。
        地址域传输时低字节在前,高字节在后。

2)数据域(数据标识)的来源

4、校验码CS的计算

1)校验码计算依据

5.2.6 校验码 CS
从第一个帧起始符开始到校验码之前的所有各字节的模 256 的和,即各字节二进制算术和,不计超过 256 的溢出值。

2)MATLAB代码

%% CSDN:地址全为AA——A 相电压——DI3:DI0=02 01 01 00
str='68 AA AA AA AA AA AA 68 11 04 33 34 34 35';
data_hex = sscanf(str,'%x');
result=dec2hex(sum(data_hex))

 3)运行结果

取后两位,CS=B1H

5、串口设置

1)波特率:2400

2)校验位:偶校验(even)

3)数据位:8,停止位:1

6、实验

 1)串口工具下载地址

UartAssist串口调试助手 V5.0.3-软件工具-野人家园http://www.cmsoft.cn/resource/101.html

7、返回数据分析

十六进制说明
FE前导字节
68帧起始符
98地址域:A0
69地址域:A1
01地址域:A2
07地址域:A3
05地址域:A4
21地址域:A5
68帧起始符
91控制码
06数据域长度
33数据域:数据标识:DI0
34数据域:数据标识:DI1
34数据域:数据标识:DI2
35数据域:数据标识:DI3
66数据域:A相电压:低位
54数据域:A相电压:高位
F1校验码
16 帧结束符

1)A相电压解读依据

 

 2)MATLAB代码

%% A 相电压数据解读
str='66 54';
x33H='33';
data_hex = sscanf(str,'%x');%以16进制读入str,输出10进制
data_hex_x33H=sscanf(x33H,'%x');
tmp_dec =dec2hex(data_hex-data_hex_x33H);
tmp_hex = str2num(tmp_dec);
VA=(tmp_hex(1)+tmp_hex(2)*100)/10

3) 运行结果

附图-电表

1)地址域高位

2)地址域低位

3) 使用电量

 4)功率

5) 电压UA

 6)电流LA

 7)功率因数

参考文献

DLT645-2007电能表通讯协议_Jason噗噗的博客-CSDN博客_dlt645-2007DLT645-2007通讯协议:1.发送的帧格式:1.1 帧起始符 0x68H 这个不多说,记住就好;1.2 地址域A0-A5地址域由 6 个字节构成,每字节 2 位 BCD 码,地址长度可达12位十进制数。每块表具有唯一的通信地址,且与物理层信道无关。当使用的地址码长度不足 6 字节时,高位用“0”补足。通信地址999...https://blog.csdn.net/u013184273/article/details/98083050
DL/T 645-2007多功能电表通信规约_纸短情长ZF的博客-CSDN博客_dlt6142007通讯协议中华人民共和国电力行业标准 DL/T 645-2007 多功能电表通信规约解析最近在给一家企业做能源管理系统(EMS),用C#做上位机采集用电、用水、用汽等信息,其中常用的接线方式为RS485,常用通信协议为MODBUS协议。在做电能表数据采集的时候,电表的协议是 DL/T 645-2007,之前花了好多时间寻找资料,解析协议,所以特此记录一下。整个EMS系统的通信方式为:主机发送请求——从机接收请求——从机返回数据——主机接收数据下图是实际在厂区中安装的一块电能表,我印象中这种表好像是https://blog.csdn.net/m0_49284219/article/details/112978577

DLT645-2007最新通信协议.pdf-其它文档类资源-CSDN下载dlt645_2007版通信协议字迹清晰更多下载资源、学习资料请访问CSDN下载频道.https://download.csdn.net/download/red131498/12174102?utm_medium=distribute.pc_relevant.none-task-download-2~default~baidujs_baidulandingword~default-1-12174102-blog-112978577.pc_relevant_multi_platform_featuressortv2removedup&spm=1001.2101.3001.4242.2&utm_relevant_index=4

  • 6
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值