当前位置: 首页 > news >正文

嵌入式实现DLT645协议

简述

DLT645 是中国电力行业电表通信规约,主要通过RS-485与上位机(采集器、DTU、主站)通信。 常见版本有:

DL/T 645-1997(老版) DL/T 645-2007(当前主流) DL/T 645-2019(最新,向下兼容 2007,大多表仍是 2007)

它解决的问题:

电表如何以统一格式上传数据 如何读电量、功率、电压、需量等 如何写参数(校时、抄表周期等) 如何确保表计数据安全(密码/权限)

通讯物理层

接口:485(半双工) 波特率:2400 / 4800 / 9600(典型是 2400bps) 校验位:偶校验

软件开发

软件部分已实现DLT645读取数据,如:读表号、正向电能、反向电能、A、B、C值等。 使用标准C语言,内部提供使用文档。

帧格式

以下是DLT645-2007的帧格式

帧起始符68H

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

地址域A0-A5

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

控制码C

数据域长度L

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

数据域DATA

数据域包括数据标识、密码、操作者代码、数据、帧序号等,其结构随控制码的功能而改变。传输时发送方按字节进行加 33H 处理,接收方按字节进行减 33H 处理。

数据标识

在帧格式数据域中,会有数据标识,一共四个字节(DI3-DI1)。数据类型分七大类:电能量、最大需量及发生时间、变量、事件记录、参变量、冻结量、负荷记录。

校验码CS

跳过第一个起始符,从地址到校验前所有字节和的低8位,示例如下

报文 68 01 02 03 04 05 06 68 11 04 33 33 34 35 CS 16 计算CS (68 + 01 + 02 + 03 + 04 + 05 + 06 + 68 + 11 + 04 + 33 + 33 + 34 + 35) 取低 8 位

数据传输

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

传输次序
所有数据项均先传送低位字节,后传送高位字节。数据传输的举例:电能量值为 123456.78kWh,其传输次序如图

数据交互

主站请求

可以分为4种帧格式,最常用的是第一种,如下图

帧格式 2(m=1,读给定块数的负荷记录)

帧格式 3(m=6,读给定时间、块数的负荷记录)

帧格式 4(液晶查看命令使用帧格式 4)

从机应答

正常情况,无后续数据帧(C=91H)

正常情况,有后续数据帧(C=B1H)

异常情况(C=D1H)

软件开发

1. 文件结构

  • dlt645.h: 头文件,包含常量定义、结构体声明和 API 接口。
  • dlt645.c: 源文件,包含协议的具体实现(组包、解包、校验、数据处理)。

2. 关键数据结构

dlt645_frame_t

用于存储解析后的帧信息。

typedefstruct{
http://www.cnnetsun.cn/news/90487.html

相关文章:

  • Docker多阶段构建与精简基础镜像(边缘Agent瘦身必看)
  • PPIO上线阿里Wan 2.6:制作电影级AI视频,对标Sora2
  • 【混合检索的Dify结果融合】:揭秘高效信息聚合背后的黑科技
  • 从零搭建高效音频流水线:Dify 1.7.0切片配置完整教程
  • 大数据ETL中的数据质量提升工具与方法
  • 筑巢引凤 - Ascend C开发环境极速部署与验证全攻略
  • 模型训练中的精度保障:Ascend C算子数值稳定性分析
  • 【金融风险对冲实战指南】:掌握R语言在投资组合风险管理中的7大核心技巧
  • 空间转录组批次校正实战指南(R语言完整代码+案例解析)
  • 计算机毕业设计附项目源码帮做/Java管理系统/springboot网站/深度学习/神经网络算法/yolo图像识别/从选题到部署,一篇搞定!
  • 紧急应对模型版本混乱:R与Python部署同步的实时解决方案
  • 气象模型预测失败的真相,R语言误差分析告诉你答案
  • 【Dify 1.7.0语音识别革命】:为什么专业团队都在抢用新转写引擎?
  • 强化学习DeepQLearning求最优策略的代码实现
  • 加密PDF处理新进展(Dify进度跟踪深度剖析)
  • 从零构建智能Agent文档系统:Dify配置与最佳实践全揭秘
  • 高负载环境下Docker Offload调度失控?优先级设置不当是元凶!
  • 还在手动校验语音数据?Dify 1.7.0自动检测功能已上线(限时体验)
  • 专家警告:不掌握量子计算镜像缓存技术,你的研发效率已落后同行三年
  • 对标行业高标准,全星研发项目管理系统赋能汽车芯片研发升级:PLM系统更专业化
  • LC.669 | 修剪二叉搜索树 | 树 | 递归与重连
  • DAY29 pipeline管道
  • A29语音模组:100dB消回音黑科技,超大音量下也能清晰通话
  • 1688 拍立淘接口(item_search_img)技术全景解析
  • Dify如何逆向解析加密PDF?,深入剖析现代文档安全的攻防博弈
  • 测试工程师必备:利用Apipost AI编写脚本,快速实现多接口串联流程
  • IP 扫盲:不要再迷信家宽
  • 基于协同过滤算法的动漫推荐系统源码 Java+SpringBoot+Vue3
  • 高效量子电路设计秘籍(R驱动的3种前沿优化策略)
  • 分分钟带你杀入Kaggle Top 1%,大牛带队,100%拿牌!