智能电表测试软件DL/T645-2007的使用

本文详细介绍了DLT645-2007智能电表测试工具,涵盖了软件安装、串口配置、电表地址获取、各类数据读取(电压、电流、电能量、功率)以及操作流程,帮助用户理解和使用该工具进行电表通信和参数设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、 简介

DLT645-2007智能电表测试工具是一个电表DLT645协议测试工具,支持2007版的协议,可读取和设置的参数包括:读取智能电表数据、读取后续数据、读取通信地址、更改通讯速率、修改密码、最大需量清零、电表清零、事件清零、跳闸控制、端子控制、广播校时、身份认证、参数密钥更新等。

二、软件安装:

本软件为绿色软件,只需要把安装包中的所有文件复制到同一个目录中,就可以直接运行,可运行文件为DL645.exe,

整个软件包组成文件如下:

1. DL645.exe 此文件为主程序文件

2. DL645.Ini 此文件为配置文件,记录了当前操作用户的电能表配置信息。

3. dl645.mdb

4. DLT645DLL.dll

5. TestZhuzhan.dll

6. DriverDLC.dll

7. MFC42D.DLL

8. MFCN42D.DLL

9. MFCO42D.DLL

10. MSVCRTD.DLL

三、软件运行:

首先:软件在运行前先确定你的电脑中配置有相应的RS232串口,如果没有RS232串口本软件运行不正常。使用本软件前确定你的电脑通过RS232或者RS232转485与电能表连接正常。

然后:运行DL645.EXE 出现如下窗口界面。

软件界面中分了四个总要区域:

1- 操作项目区:本区域提供了电能表可以操作的类型,如读数据,写数据等,不同的选项对应了不同的功能大类。

2- 数据设置区:本区域根据用户选择的操作项目不同,可以输入不同的参数。输入区分三个栏目,第一栏为数据项目名称,第二栏为数据输入区域,第三栏为数据项目说明。

3- 发送报文区:本区域显示根据用户选择操作项目和输入数据生成最终的数据报文,本报文发送给电能表,电能表就能对应的操作,用户也可以在此区域内自定义报文,然后自定义发送。HEX报文1为空格分隔十六进制字符报文,HEX报文2为分隔十六进制字报文,但数据区域没有加33H,可以更明了的看出每一个字节的十六进制数。

4- 操作日志区:本区域每一行记录了操作的报文及报文返回结果,分四个栏目,时间表示当前操作时间,方向表示当前操作方向:发送:从电脑发送到电能表的报文;接收:从电能表发送到电脑的报文;解析:报文经本软件解析后分区域显示;结果:报文经本软件协议解析后的数据项目结果。报文:以十六进制分隔字符方式显示原始报文及解析结果。可以双击某条记录打开显示报文窗口来显示更详细的报文。

四、软件串口配置:

首先需要确定电表的波特率多少,选择对应的波特率才能正常建立通讯,常用波特率为2400bps和9600bps

串口号可以进设备管理器“端口”查看

五、电表地址读取:

发送命令:68 AA AA AA AA AA AA 68 13 00 DF 16

回复:68 01 00 00 00 00 00 68 93 06 34 33 33 33 33 33 9D 16

其中电表地址:34 33 33 33 33 33减去0x33为01 00 00 00 00 00,然后倒序后通信地址为00 00 00 00 00 01 控制码为0x93 长度:0x06 CS校验:0x9d 帧尾:0x16

六、电压(电流)读取

6.1、A相电压读取

其中命令发送:68 01 00 00 00 00 00 68 11 04 33 34 34 35 B6 16

回复:68 01 00 00 00 00 00 68 91 06 33 34 34 35 CB 55 58 16

其中数据标识:33 34 34 35减去33H为00 01 01 02,然后倒序后址为02 01 01 00;

数据:CB 55减去33H为99 22,,然后倒序后为22 99 (电压)

控制码为:91H;长度:06H CS校验59H 帧尾:16H

6.2、B相电压读取

发送命令:68 01 00 00 00 00 00 68 11 04 33 35 34 35 B7 16

回复:68 01 00 00 00 00 00 68 D1 01 35 D8 16

数据标识:数据:02结果:异常应答,无请求数据(单相电表) CS校验:d8H 帧尾:16H

6.3、C相电压读取

发送命令:68 01 00 00 00 00 00 68 11 04 33 36 34 35 B8 16

回复:68 01 00 00 00 00 00 68 D1 01 35 D8 16

数据标识:数据:02结果:异常应答,无请求数据 (单相电表) CS校验:d8H 帧尾:16H

6.4、电压数据块读取

发送命令:68 01 00 00 00 00 00 68 11 04 33 32 34 35 B4 16

回复:68 01 00 00 00 00 00 68 91 0A 33 32 34 35 BB 55 BB 55 BB

6.5、A相电流读取

发送命令:68 01 00 00 00 00 00 68 11 04 33 34 35 35 B7 16

回复:68 01 00 00 00 00 00 68 91 07 33 34 35 35 B3 33 33 53 16

数据标识:33 34 35 35减去33H为:00 01 02 02,然后倒序为:02 02 01 00;

数据:B3 33 33减去33H为:80 00 00,然后倒序为:00 00 80表示0.8A(电流);

控制码:0x91 长度:0x07 CS校验:0xB7 帧尾:0x16

6.6、B相电流读取

发送命令68 01 00 00 00 00 00 68 11 04 33 35 35 35 B8 16:

回复:68 01 00 00 00 00 00 68 D1 01 35 D8 16

数据标识:数据:02(单相电表)

控制码:0xD1 长度:0X01 CS校验:0xD8 帧尾:0x16

6.7、C相电流读取

发送命令68 01 00 00 00 00 00 68 11 04 33 35 35 35 B9 16:

回复:68 01 00 00 00 00 00 68 D1 01 35 D8 16

数据标识:数据:02(单相电表)

控制码:0xD1 长度:0X01 CS校验:0xD8 帧尾:0x16

6.8、数据块电流读取

发送命令:68 01 00 00 00 00 00 68 11 04 33 32 35 35 B5 16

回复:68 01 00 00 00 00 00 68 91 0D 33 32 35 35 B3 33 33 B3 33 33 B3 33 33 89 16

数据标识:33 32 35 35减去33H为00 FF 02 02,然后倒序为:02 02 FF 00(数据块电流);

数据:B3 33 33 B3 33 33 B3 33 33减去33H为80 00 00 80 00 00 80 00 00然后倒序为:00 00 80 00 00 80;

控制码:0x91 长度:0x0D CS校验:0x89 帧尾:0x16

七、电能量

发送命令:68 01 00 00 00 00 00 68 11 04 33 33 33 33 B2 16

回复:68 01 00 00 00 00 00 68 91 08 33 33 33 33 35 4C 33 33 1D 16

其中数据标识:33 33 33 33减去33H为00 00 00 00,然后倒序为00 00 00 00;

数据:35 4c 33 33 减去33H为02 19 00 00,然后倒序为00 00 19 02

00 控制码为0x91 长度:0x08 CS校验:0x1d 帧尾:0x16

7.1、电能量(正向有功)

发送命令:68 01 00 00 00 00 00 68 11 04 33 33 34 33 B3 16

回复:68 01 00 00 00 00 00 68 91 08 33 33 34 33 46 4C 33 33 2F 16

其中数据标识:33 33 34 33减去33H为00 00 0100,然后倒序为00 01 00 00;

数据:46 4c 33 33 减去33H为13 19 00 00,然后倒序为00 00 19 13;当前正向有功总电能为19.13(kWh) CS校验:0x2F 帧尾:0x16

7.2、电能量(反向有功)

发送命令:68 01 00 00 00 00 00 68 11 04 33 33 35 33 B4 16

回复:68 01 00 00 00 00 00 68 91 08 33 33 35 33 33 33 33 33 04 16

其中数据标识:33 33 35 33减去33H为00 00 02 00,然后倒序为00 02 00 00;

数据:33 33 33 33 减去33H为00 00 00 00,然后倒序为:00 00 00 00;

结果(当前反向有功总电能:(0.00kWh)),则总电能量为19.13kWh CS校验:0x04 帧尾:0x16

八、总功率

8.1、瞬时有功功率

发送命令:68 01 00 00 00 00 00 68 11 04 33 33 36 35 B7 16

回复:68 01 00 00 00 00 00 68 91 07 33 33 36 35 93 33 33 33 16

数据标识:33 33 36 35减去33H为00 00 03 02,然后倒序为:02 03 00 00

数据:93 33 33减去33H为60 00 00,然后倒序为:00 00 60

CS校验:0x33 帧尾:0x16

8.2、瞬时无功功率

发送命令:68 01 00 00 00 00 00 68 11 04 33 33 37 35 B8 16

回复:68 01 00 00 00 00 00 68 91 07 33 33 37 35 63 33 B3 84 16

数据标识:33 33 37 35减去33H为00 00 04 02,然后倒序为02 04 00 00;

数据:63 33 B3减33H为30 00 80,然后倒序为80 00 30

控制码:0x91 长度: 0x 07 CS校验:0x84 帧尾:0x16

8.3、瞬时视在功率

发送命令:68 01 00 00 00 00 00 68 11 04 33 33 38 35 B9 16

回复:68 01 00 00 00 00 00 68 91 07 33 33 38 35 A3 33 33 45 16 控制码:0x91 长度:0x07

数标识:33 33 38 35减去33H为00 00 05 02,然后倒序为02 05 00 00

数据:A3 33 33 减去33H为70 00 00 ,然后倒序为00 00 70 CS校验:0x45 帧尾:0x16

8.4、功率因素

发送命令:68 01 00 00 00 00 00 68 11 04 33 33 39 35 BA 16

回复:68 01 00 00 00 00 00 68 D1 01 35 D8 16

数据标识:数据:02 控制码:0xd1 长度:01 cs校验:0xD8 帧尾:0x16

### 关于DL/T645-2007电表通信协议标准文档下载 DL/T645-2007《多功能电能表通信协议》是电力行业中用于电能表与数据终端设备之间通信的标准协议。该协议详细规定了物理层、数据链路层的通信规则,包括通信接口、帧结构、命令格式、数据编码、错误校验及传输机制等[^3]。此标准广泛应用于智能电网、能源管理和自动化计量等领域,确保不同厂家生产的电能表能够通过统一的通信协议实现互联互通。 #### 下载资源 1. **官方或权威机构**:建议从中国电力行业相关官方网站或权威机构获取最新版本的DL/T645-2007标准文档,以确保内容的准确性和合法性。 2. **第三方资源平台**: - 可参考提供的项目地址,例如:https://gitcode.com/open-source-toolkit/0bec3,该仓库提供了一个DL/T645-2007电表通讯协议解析工具,用户可以利用该工具进行详细的通讯参数设置,并查看16进制格式的发送和接收命令[^2]。 - 此外,还有DL/T645电表规约测试软件下载地址:https://gitcode.com/open-source-toolkit/9fe08,包含97和2007两个版本,适用于电力行业相关人员进行电表规约的测试工作[^5]。 #### 注意事项 在下载和使用DL/T645-2007标准文档时,请注意以下几点: - 确保下载来源可靠,避免使用非法或盗版资源。 - 根据实际需求合理使用文档,尊重版权并用于合法用途。 - 在实施具体项目或设计时,建议参考最新版的标准或咨询相关专业机构,以获取最准确的技术指导[^3]。 #### 示例代码:基于DL/T645-2007的简单通信帧构造 以下是一个基于DL/T645-2007协议的简单通信帧构造示例(Python语言): ```python def construct_dl645_frame(address, control_code, data): # 构造DL/T645-2007通信帧 start_byte = 0x68 # 起始字节 end_byte = 0x16 # 结束字节 frame = bytearray() # 添加起始字节 frame.append(start_byte) # 添加地址字段(6字节) frame.extend(address.to_bytes(6, byteorder='big')) # 再次添加起始字节 frame.append(start_byte) # 添加控制码 frame.append(control_code) # 添加数据长度 data_length = len(data) frame.append(data_length) # 添加数据 frame.extend(data) # 计算校验和 checksum = sum(frame[1:]) % 256 frame.append(checksum) # 添加结束字节 frame.append(end_byte) return frame # 示例调用 address = 0x123456789ABC # 地址 control_code = 0x11 # 控制码 data = b'\x01\x02\x03' # 数据 frame = construct_dl645_frame(address, control_code, data) print("DL/T645-2007 Frame:", frame.hex()) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值