你懂不懂DL/T645协议?看这篇文章,包你懂!

汇聚之精 2025-06-14 4584人围观 电力能源二维码电子

协 议 简 介

DL/T645-2007是中国电力行业的标准协议,全称为《多功能电能表通信协议》。它规定了电能表与外部设备(如数据采集器、集中器等)之间的通信规则,主要用于电能表的数据读取、参数设置、设备控制等操作。

wKgZPGhKnLmAFY6MAAElPY3bfco127.png

该协议是电力系统中电能表通信的基础标准之一,广泛应用于智能电网、能源管理等领域。

简单来说, DL/T645-2007协议简单易用,开发门槛低,数据解析无需复杂计算,硬件广泛支持,维护成本低。

相反, DL/T698.45协议采用对象模型,扩展性强,可实现高效通信,不仅能采集数据,还支持远程控制,故障诊断,适用于智能电网等复杂场景。

但698却无法完全替代645,原因是645开发和使用成本更低,对于简单抄表场景,645性价比更高,所以,在短期内,DLT645仍是存量市场的主力协议。

DLT645协议覆盖了电能表的所有功能,包括电能量、事件、冻结、需量、负荷记录、身份认证、写入数据、广播校时等等,功能虽然很多,但是实际项目中经常用到的只有那几个功能,我们不用研究太深入,掌握基础功能满足项目要求就可以了。

DL/T645-2007协议的帧格式

字段 代码 长度(字节) 说明
起始符 68H 1 固定为0x68
地址域 A0A1A2A3A4A5 6 电能表的地址(唯一标识)
起始符 68H 1 固定为0x68
控制码 C 1 指示操作类型(读、写等)
数据长度 L 1 数据域的长度
数据域 DATA 可变 具体的数据内容
校验码 CS 1 从起始符到数据域的累加和校验
结束符 16H 1 固定为0x16

DLT645协议帧格式解读

前导字节:

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

帧起始符 68H:

标识一帧信息的开始,其值为 68H=01101000B 。

地址域:

地址域由6 个字节构成,每字节 2 位 BCD 码,地址长度可达12 位十进制数

每块表具有唯一的通信地址,且与物理层信道无关。当使用的地址码长度不足 6 字节时, 高位用 “ 0 ” 补足。

通信地址 999999999999H 为广播地址,只针对特殊命令有效,如广播校时 和 广播冻结等。广播命令不要求从站应答 。

地址域 支持缩位寻址,即从若干低位起,剩余高位补 AAH 作为通配符进行读表操作,从站应答帧的地址域返回实际通信地址。

地址域传输时低字节在前,高字节在后。

控制码 C:

控制码的格式如下所示:

wKgZPGhKnLuAcvyGAAC87DaOcAQ659.jpg

以下为解析示例中会用到的控制码:

▌示例:C=11H,为请求读电能表数据,转换为二进制:00010001,对应到以上格式就是D7为0(主站发出的命令帧),D6为0(从站正确应答),D5为0(无后续数据帧),D4~D0:10001读数据

▌示例: C=93H,为从站正常应答帧,转换为二进制:10010011,对应到以上格式就是D7为1(从站发出的应答帧),D6为0(从站正确应答),D5为0(无后续数据帧),D4 ~D0:10011读通讯地址

▌ 示例: C=91H,为从站正常应答帧,转换为二进制: 10010001 ,对应到以上格式就是D7为1(从站发出的应答帧),D6为0(从站正确应答),D5为0(无后续数据帧),D4 ~D0:10001为读数据

▌ 示例: C=13H,为请求读电能表通信地址,仅支持点对点通信。转换为二进制: 00010011 ,对应到以上格式就是D7为0(主站发出的应答帧),D6为0(从站正确应答),D5为0(无后续数据帧),D4 ~D0:10011读通讯地址

数据域长度 L:

L为数据域的字节数。读数据时 L ≤ 200 ,写数据时 L ≤ 50 , L =0 表示无数据域。

数据域 DATA:

数据域包括数据标识、密码、操作者代码、数据、帧序号等,其结构随控制码的功能而改变。

传输时发送方按字节进行加 33H 处理,接收方按字节进行减 33H 处理。所有数据项均先传送低位字节,后传送高位字节。数据传输的举例:电能量值为 123456.78kWh ,其传输次序如图:

校验码 CS:

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

结束符 16H:

标识一帧信息的结束,其值为 16H=00010110B。

DLT645获 取 电 表 地 址 示 例

发送查询指令帧:FEFEFE68AAAAAAAAAAAA681300DF16

解析:FEFEFE(前缀唤醒电表)

68(起始符) AAAAAAAAAAAA(电表地址编号通配符)

68(起始符)

13(控制码)

00(数据域长度)

DF(校验码)

16(结束符)

返回帧:FEFE680000000000556893063333333333884516

解析:FEFE(唤醒前缀)

68(起始符) 603000042420(电表通信地址)

68(起始符)

93(控制码)

06(数据域长度) C7333333333388(数据域,减去33后反转数据就是电表通讯地址)

45(校验码)

16(结束符)

DLT645报 文 解 析 示 例

发送查询指令:68000000000055681104333334334516

解析:68(起始符)

000000000055(电表通信地址)

68(起始符)

11(控制码:请求读取电能表数据)

04(数据域长度)

33333433(减33H,然后反转,就是00010000)

45(校验码)

16(结束符)

返回指令:680000000000556891083333343369AA85385B16

解析:68(起始符)

000000000055(电表通信地址)

68(起始符)

91(控制码,没有后续)

08(数据域长度,数据域有8个字节)

3333343369AA8538(减33后反转数据:05527736000100;由于此电能表电能小数位为2位,则实际为:55277.36kWh)

5B(校验码)

16(结束符)

以来示例源自瑞银电子的上位机软件,与电能表通讯进行实例演示,以下截图是上位机软件读取电能表正向有功总能量的实例。

wKgZPGhKnL2AUeqeAAOgY26A2b4334.png

上位机软件上的数据一共四条:

▌第一条发送命令,控制码是C=13H(主站/上位机请求读通讯地址)。是采用AAAAAAAAAAAA缩位寻址,请求电能表的通讯地址。

▌第二条为接收到电能表的数据,控制码是 C=93H(电表返回通讯地址)。返回电能表真实通讯地址:550000000000

▌第三条为上位机发送读取电能表正向有功总电能的命令,控制码是 C=11H(主站/上位机请求读电表数据)

▌第四条为电能表回传的 电能表正向有功总电能的数据,控制码是 C=91H,(电表返回主站/上位机需要读取的数据)

徐昌国销售工程师

以上,基本介绍清楚了 DL/T645协议的数据格式,而实际上,就不需要我们像机器那样去解读每条命令/报文,只需了解协议的规则即可!

DJZ1226直流智能电能表通讯协议

当然,作为研发人员,懂这方面是真有必要,以上给出瑞银电子DJZ1226直流智能电能表的通讯协议二维码下载链接(如无法下载,请联系客服),购买过瑞银电子DJZ1225直流电能表的用户,可以结合更加全面的 DL/T645-2007协议,去深入了解。

审核编辑 黄宇

Powered By Z-BlogPHP