4G模块DTU网关远程抄表方案(二):DL645/698协议国网电表
4G模块DTU网关远程抄表方案(二):DL645/698协议国网电表
1 DL 645协议简介
DL645协议是一种用于智能电能表的远程抄读通讯标准。制定该标准是为统一和规范多功能电能表与数据终端设备进行数据交换时的物理连接和通信链路及应用技术规范。DL645协议可用于远程监测电力传输和使用状态,是国家在电力行业标准中规定的统一的通信协议。
DL/T 698.45是面对对象的通信协议,适用于主站和采集终端、采集终端和电能表、主站和电能表之间。
DL645/698协议与Modbus协议类似,采用主-从模式的半双工通讯方式,多功能电能表与数据终端设备可进行点对点的或主多从的数据交换。电气层可以是经典的RS485有线通信,也可以是非接触式红外无线通信。
其中非接触式红外读表方式较为常见,它的特点是易于工程实施,电表、计量柜不需要停电接线,将支持DLT645标准的红外读表器放置在电表前方就可以读到电表电量、电压、电流、功率等数据。本篇文章主要是简要介绍DLT645协议,以及介绍利用重庆展联科技的智能网关ZL400实现高性价比4G远程抄表方案(当然也可以使用配套的ZL011红外超表器)
1.1 数据传输协议
DL645协议的信息帧由帧起始符、从站地址域、控制码、数据域长度、数据域、帧信息纵向校验码及帧结束符7个域组成。
由采集器向表计发送的查询帧数据格式如下:
代码 | 描述 |
---|---|
68h | 帧起始符 |
A0-A5 | 地址域 |
68h | 帧起始符 |
C | 控制码 |
L | 数据域长度 |
DATA | 数据域 |
CS | 校验码 |
16h | 帧结束符 |
例:读表计数据: FE FE FE FE 68 66 55 44 33 22 11 68 11 04 33 33 34 33 17 16
说 明 | 帧起始符 | 地址域 | 帧起始符 | 控制码 | 数据域长度 | 数据域 | 校验码 | 帧结束符 |
---|---|---|---|---|---|---|---|---|
实 例 | 68 | 665544332211 | 68 | 11 | 04 | 33 33 34 33 | 17 | 16 |
说明:FE FE FE FE - 引导字符;68 – 帧起始符;11 22 33 44 55 66 – 表地址; 11 – 控制码;04 – 数据域长度;33 33 34 33 – 数据域;17 – 校验码;16 – 帧结束符。
由表计向采集器发送的应答帧数据格式如下:
代码 | 描述 |
---|---|
68h | 帧起始符 |
A0-A5 | 地址域 |
68h | 帧起始符 |
C | 控制码 |
L | 数据域长度 |
DATA | 数据域(数据标识+数据) |
CS | 校验码 |
16h | 帧结束符 |
例:表计应答:FE FE FE FE 68 66 55 44 33 22 11 68 91 09 33 33 34 33 97 3C 33 33 0B 16
字节 | 0 | 1-5 | 6 | 7 | 8 | 9-13 | 14 | 15 |
---|---|---|---|---|---|---|---|---|
说 明 | 帧起始符 | 地址域 | 帧起始符 | 控制码 | 数据域长度 | 数据标识+数据 | 校验码 | 帧结束符 |
实 例 | 68 | 665544332211 | 68 | 91 | 08 | 33 33 34 33+97 3C 33 33 | XX | 16 |
说明:FE FE FE FE - 引导字符;68 – 帧起始符; 66 55 44 33 22 11 – 表地址(真实地址为112233445566); 91 – 控制码;08 – 数据域长度;33 33 34 33 – 数据标识(真是为正向有功总00100000);97 3C 33 33 – 数据(真实数据为000009.33) XX – 校验码;16 – 帧结束符。
1.1.1 帧起始符 68H
DLT645协议的数据帧每帧的开始都固定为0x68,作为数据的起始符方便接收方做数据解析
1.1.2 地址域 A0~A5(采用BCD码)
在485总线上可能挂着多个645设备,要找到指定的设备,必须要根据设备的地址查找。每台设备出厂会有自己的地址,也可以修改设备的通信地址。
地址域A0~A5用来表示电表地址,由6个字节构成,低位在前,高位在后;可以为表号、资产号、用户号、设备号等。当使用的地址码长度不足6字节时,用十六进制AAH补足6字节。
如上图该设备的地址为000001684866。
1.1.3控制码
1个字节,例如读取数据的控制码为0x11(00010001),读取通讯地址的控制码为0x13(00010011)
其中功能码又分为两种97规约和07规约
1.1.4 数据域长度L
1个字节,表示数据域的字节数,读取数据时L<= 200;写数据时L <= 50,L=0表示无数据域。
1.1.5 数据域
数据域包括数据标识和数据、密码等,其结构随控制码的功能而改变。传输时发送方按字节进行加33H处理,接收方按字节进行减33H处理。数据域为变长,字节数由数据长度L决定,传输时候。
数据标识编码具体可以查阅相关文档的《附录A.2——数据标识编码》
常见数据标识编码表如下:
发送方需要加0x33,接收方解析需要减去0x33。
发送方数据 | 33 | 33 | 33 | 33 |
---|---|---|---|---|
真实值 | 00 | 00 | 00 | 00 |
1.1.6 校验码CS
从帧起始符(0x68)开始到校验码之前的所有各字节的模256的和, 即各字节二进制算术和,不计超过256的溢出值。
1.1.7 结束符16H
DLT645的指令帧均以0x16作为结束符。
1.1.8 表计数据编码格式(采用BCD码)
所有数据项均先传送低位字节,后传送高位字节,如表计数据是000009.33,则从站应答数据如下:
D0—0x66—33+33
D1—0x3C—09+33
D2—0x33—00+33
D3—0x33—00+33
1.1.9 串口参数
DL645协议的缺省速率为2400 bps,字节校验为偶校验。也可以设置为600bps,1200bps,4800bps,9600bps,19200bps。
2 DEVELOPLINK 远程抄表方案
DEVELOPLINK展联科技的远程抄表网关(ZL400 DTU)内置了Modbus,DLT645/698,CT/J 188协议的解析,只需要简单的可视化配置,就能采集到国网电表的数据,然后将返回数据通过4G,以太网,WIFI等网络方式传到客户服务器,也可以直接解析成json格式上传。
2.1 功能:
- 支持对Modbus、DLT645/698、CT/J 188协议的水气表自动读取,直转转换json上传,支持周期轮询、变化上传;
- 支持HTTP /TCP/UDP/MQTT通信;
- 支持阿里云/腾讯云/中移物联/华为云/DevelopLink平台接入;
- 支持自定义心跳包、注册包,支持魔法值;
- 支持远程参数配置;
- 支持远程、本地固件升级;
- 支持差分升级DFOTA,CDN加速。
2.2 优势:
- 开放性:支持不同厂家的智能电表;
- 灵活性:可根据需求,自行设计轮询任务;
- 便捷性:可视化配置,无需一行代码;
- 可扩展性:能够实现多种负载控制策略;
- 低成本:高性价比远程抄表方案,适合批量使用。
2.3 应用:
- 住宅小区:人工抄表收费成本高、误差大、效率低,远程抄表能监测和故障排查十分智能
- 学校:学校配用电情况难以监测,师生用电安全隐患大,远程抄表能实时监测各区域用电情况,且可具备远程阀控功能
- 商业中心:店铺变更、临时柜台等管理不方便,催缴费困难,远程抄表能分时段、分区域进行用能数据的统计、分析和处理
- 工业园区:配用电情况难以监测及用电安全隐患大,能源能耗管理没有数据依据,远程抄表能快速直观的反映数工厂设备的实时和历史能耗情况,掌握能耗规律,为制定合理的能源管理策略、实现节能减排管理提供数据支撑。
3 案例
3.1 调试准备
硬件准备 | 软件准备 |
---|---|
ZL400 DTU(固件版本4.45.63) | 上位机 DevelopLink_SDRTU_V2.2.9 |
DL645协议电表 | |
红外抄表器(选配) |
3.2 设置串口
一般DT645协议的水表,通讯波特率为2400bp,偶检验
3.3 设置645协议轮询
- 选择645协议版本
- 配置表地址
- 选择配置命令
不需要关注645协议本身,只需要选择需要读取的量,例如这里我们读取电表的正向有功总量,即命令选择电能量/当前/正向有功/总
配置完成,点击写入配置
查看报文,可以看到发送的协议报文和水表返回的报文,以及DTU解析后的json报文{“a”:9.33}
3.4 设置网络
ZL400 DTU网络通道支持MQTT,TCP,UDP,HTTP;还内置了阿里云,腾讯云,onenet,developlink平台,华为云,jetlinks的解析内核
用户只需要选择通道类型,简单配置就能上传数据
————————————————————————————————————————
对物联网技术感兴趣请加入我们交流群,欢迎各种技术交流,
QQ群: 830407941
对我们产品感兴趣请查看:
DEVELOPLINK
DEVELOPLINK__ DTU
相关文章:
4G模块DTU网关远程抄表方案(二):DL645/698协议国网电表
4G模块DTU网关远程抄表方案(二):DL645/698协议国网电表 1 DL 645协议简介 DL645协议是一种用于智能电能表的远程抄读通讯标准。制定该标准是为统一和规范多功能电能表与数据终端设备进行数据交换时的物理连接和通信链路及应用技术规范。DL645协议可用于远程监测电力传输和使用…...
认识微服务
目录 认识微服务 单体架构 分布式架构 服务架构演变 服务治理 微服务 总结 微服务技术对比 微服务结构 微服务技术对比 企业需求 SpringCloud SpringCloud和SpringBoot的版本兼容 认识微服务 单体架构 单体架构:将业务的所有功能集中在一个项目中开发&a…...
升级Android Studio Electric Eel问题汇总
1.升级以后找不到java可执行程序 问题原因:升级后,Android Studio自带的java目录不再是根目录/jre,调整为一个新目录 Studio根目录/jbr 修改方法:1)修改系统环境变量, JAVA_HOME调整为Studio下对应的java…...
令执法机构头疼的“虚拟货币犯罪”,为何链上天眼能“行”
谈到洗钱,你脑海中率先想到的可能是影视剧中利用赌场、收藏品拍卖等来实施犯罪。其实洗钱犯罪的花样不止于此,在近期热播的扫黑剧《狂飙》中,唐小龙为洗白“赌博资金、高利贷业务”,便通过“卖酒网销”的方式达成洗钱目的。 随着科…...
【unity】开发rts 3
一 出生点、阵营类型、阵营 实例栏-GameManage,默认有一个插槽 size 插槽数量 role 权限,host是主人,权限高 type 阵营类型,不选不限制,选的效果没看懂,文档原文: The Type field in Data al…...
突破老旧OA系统局限,打通五大业务管理体系,让效率“狂飙”
目录 用无代码构建上海致远信息化平台 一、支持类(行政人事、财务)体系 二、营销体系 三、供应链体系 四、质量管理体系 五、技术研发体系 下一步规划 我们公司用的第一套系统是 IBM 的系统,部署在本地服务器,这套系统用了十几年,当时 2020 年要全部迁移到LCHub低代…...
【vue2小知识】路由守卫的使用与解决RangeError: Maximum call stack size exceeded问题的报错。
🥳博 主:初映CY的前说(前端领域) 🌞个人信条:想要变成得到,中间还有做到! 🤘本文核心:当我们在路由跳转前与后我们可实现触发的操作 【前言】当我们在做类似于登录页面的时候&…...
Google Guice 5:AOP
1. AOP 1.1 实际开发中面临的问题 在实际开发中,经常需要打印一个方法的执行时间,以确定是否存在慢操作 最简单的方法,直接修改已有的方法,在finnally语句中打印耗时 Override public Optional<Table> getTable(String da…...
【同步、共享和内容协作软件】上海道宁与ownCloud让您的团队随时随地在任何设备上轻松处理数据
ownCloud是 一款开源文件同步、共享和 内容协作软件 可让团队随时随地 在任何设备上轻松处理数据 ownCloud开发并提供 用于内容协作的开源软件 使团队能够轻松地无缝 共享和处理文件 而无需考虑设备或位置 开发商介绍 ownCloud成立于2010年,是一个托管和同…...
Linux 文件、目录与磁盘格式
用户与用户组 用户:即某个文件的拥有者,可以管理自己账号下的文件,另有一个超级账号 root,可以统一管理全局,利用 su root 命令登录该账号。用户组:相当于群组,多个用户之间可以组成用户组&…...
锁屏面试题百日百刷-Hive篇(五)
锁屏面试题百日百刷,每个工作日坚持更新面试题。锁屏面试题app、小程序现已上线,官网地址:https://www.demosoftware.cn。已收录了每日更新的面试题的所有内容,还包含特色的解锁屏幕复习面试题、每日编程题目邮件推送等功能。让你…...
java多线程(七)线程等待与唤醒
一、wait()、notify()、notifyAll()等方法介绍 在Object.java中,定义了wait(), notify()和notifyAll()等接口。wait()的作用是让当前线程进入等待状态,同时,wait()也会让当前线程释放它所持有的锁。而notify()和notifyAll()的作用࿰…...
第13天-仓储服务(仓库管理,采购管理 ,SPU规格维护)
1.仓储服务开发配置 1.1.加入到Nacos注册中心 spring:application:name: gmall-warecloud:nacos:discovery:server-addr: 192.168.139.10:8848namespace: 36854647-e68c-409b-9233-708a2d41702c1.2.配置网关路由 spring:cloud:gateway:routes:- id: ware_routeuri: lb://gmal…...
Maven 命令行及例子
基本 mvn -v - show-version -version 显示版本信息mvn -h - help 显示帮助信息mvn -e -errors控制 maven 的日志级别,产生执行错误相关消息mvn -q - quiet 控制 maven 的日志级别,仅仅显示错误mvn -o - offline 运行 offline 模式,不联网更…...
JavaScript手写题
一、防抖 function debounce(fn, delay200) {let timeout null; // 定时器控制return function(...args) {if (timeout) { // 定时器存在,表示某个动作之前触发过了clearTimeout(timeout); // 清除定时器timeout null;} else {// 对第一次输入立即执行fn.apply…...
为什么图标的宽度总是8的倍数?
对于 Windows 上的所有图标而言,它的宽度总是8的倍数,这可不是因为人们喜欢2的幂,虽然在计算机世界,你会看到很多这样的数字,例如,1024,4096等。 在 Windows 的早期阶段,大多数显卡…...
常用的xpath
一、xpath 语法 简单看一下菜鸟教程即可 1、基本语法 XPath 使用路径表达式在 XML 文档中选取节点。节点是通过沿着路径或者 step 来选取的。 下面列出了最有用的路径表达式: 表达式描述nodename选取此节点的所有子节点。/从根节点选取(取子节点&#…...
【035】基于java的进销库存管理系统(Vue+Springboot+Mysql)前后端分离项目,附万字课设论文
1.3 系统实现的功能 本次设计任务是要设计一个超市进销存系统,通过这个系统能够满足超市进销存系统的管理及员工的超市进销存管理功能。系统的主要功能包括:首页、个人中心、员工管理、客户管理、供应商管理、承运商管理、仓库信息管理、商品类别管理、 …...
【Spark分布式内存计算框架——Spark Streaming】7. Kafka集成方式
集成方式 Spark Streaming与Kafka集成,有两套API,原因在于Kafka Consumer API有两套, 文档:http://spark.apache.org/docs/2.4.5/streaming-kafka-integration.html。 方式一:Kafka 0.8.x版本 老的Old Kafka Consum…...
如何引入elementUI
elementUI的引入完整引入按需引入完整引入 在 main.js 中写入以下内容: import Vue from ‘vue’; import ElementUI from ‘element-ui’; import ‘element-ui/lib/theme-chalk/index.css’; import App from ‘./App.vue’; Vue.use(ElementUI); new Vue({ el: ‘…...
vue3+rust个人博客建站日记4-Vditor搞定MarkDown
即然是个人博客,那么绝对不能丢给自己一个大大的输入框敷衍了事。如果真是这样,现在就可以宣布项目到此结束了。如今没人享受用输入框写博客。作为一个有追求的程序员,作品就要紧跟潮流。 后来,Markdown 的崛起逐步改变了大家的排…...
KDZD-JC软化击穿试验仪
一、概 述 KDZD-JC智能软化击穿试验仪是根据GB/T4074.6-2008和idtIEC60851-6:2004标准而设计的一种新型漆包圆线检测仪器。主要适用于固体绝缘材料(如:塑料、橡胶、层压材料、薄膜、树脂、云母、陶瓷、玻璃、绝缘漆等绝缘材料及绝缘件)在工…...
【数据结构】单链表的C语言实现--万字详解介绍
📝个人主页:Sherry的成长之路 🏠学习社区:Sherry的成长之路(个人社区) 📖专栏链接:数据结构 🎯长路漫漫浩浩,万事皆有期待 文章目录1.链表1.1 链表的概念…...
电子科技大学软件工程期末复习笔记(七):测试策略
目录 前言 重点一览 V模型 回归测试 单元测试 集成测试 重要概念 自顶向下的集成方法 自底向上的集成方法 SMOKE方法 系统测试 验收测试 α测试 β测试 本章小结 前言 本复习笔记基于王玉林老师的课堂PPT与复习大纲,供自己期末复习与学弟学妹参考用…...
逆向-还原代码之除法 (Interl 64)
除法和32位差不多,毕竟背后的数学公式是一样的。区别只是32位的乘法需要两个寄存器来存放大数相乘的结果,而64位的不需要,一个寄存器就能存下。所以在64位的环境下,多了右移32位这条指令,其他指令一样。 //code #incl…...
Python WebDriver自动化测试
Webdriver Selenium 是 ThroughtWorks 一个强大的基于浏览器的开源自动化测试工具,它通常用来编写 Web 应用的自动化测试。 Selenium 2,又名 WebDriver,它的主要新功能是集成了 Selenium 1.0 以及 WebDriver(WebDriver 曾经是…...
2023年微信小程序获取手机号授权登录注册详细教程,包含服务端教程
前言 小程序中有很多地方都会用到用户的手机号,比如登陆注册,填写收货地址等等。有了这个组件可以快速获取微信绑定手机号码,无须用户填写。网上大多数教程还是往年的,而微信官方的api已做了修改。本篇文章将使用最新的方法获取手…...
YOLOv8模型学习笔记
在前面的章节中博主学习了YOLOv5的相关知识,从YOLOv5的数据增强处理到模型设计,从正负样本匹配策略到LOSS设计,今天博主学习的是YOLOv8,同为ultralytics公司的产品,两者无论是思想层面还是具体的设计方面都有着异曲同工…...
Java SE知识点1
一、continue、break、和return的区别是什么? 在循环结构中,当循环条件不满足或者循环次数达到要求时,循环会正常结束。但是,有时候可能需要 在循环的过程中,当发生了某种条件之后 ,提前终止循环,这就需要用到下面几个关键词: 1. continue :指跳出当前的这一次循环,…...
华为OD机试模拟题 用 C++ 实现 - 端口合并(2023.Q1)
最近更新的博客 【华为OD机试模拟题】用 C++ 实现 - 最多获得的短信条数(2023.Q1)) 文章目录 最近更新的博客使用说明端口合并题目输入输出示例一输入输出说明示例二输入输出说明示例三输入输出说明...
网站空间 虚拟主机/中国免费网站服务器下载
爬虫现在的火热程度我就不说了,先说一下这门技术能干什么事儿,主要为以下三方面: 1.爬取数据,进行市场调研和商业分析 爬取知乎、豆瓣等网站的优质话题内容;抓取房产网站买卖信息,分析房价变化趋势、做不…...
制作网站付费软件/国内seo做最好的公司
1、STL中的容器 STL中的常用容器包括:顺序性容器(vector、deque、list)、关联容器(map、set)、容器适配器(queue、stack), 主要是分为 我们常用到的STL容器有vector、list、deque、…...
石排网站设计/网站seo推广
引言 在工作中引入Angular框架将近一年了,在这一年中不断的踩坑和填坑,当然也学习和积累了很多的知识,包括MVVM框架、前后端分离、前端工程化、SPA优化等等。因此想通过Angular开发实践这系列的文章分享下自己的所学,达到交流和分…...
南水北调中线干线工程建设管理局网站/新闻软文发布平台
(1)Constructing Objects at Run Time in SilverlightSilverlight的内容在你的页面上就像一个对象层次在树的结构中样.这是单个的.一个在这个结构中最顶上的对象是root object,也是Silverlight plug-in的Source指定相应的XAML中的root.这 个root对象通常是一个Canvas对象,因为C…...
北京网络营销推广外包/一键优化软件
环境介绍:zabbix版本:3.0.5操作系统:Centos6.8IP地址:192.168.10.1502. 安装sendEmailsendEmail是一个免费、轻量级、命令行的SMTP邮件客户端。如果你需要使用命令行方式发送邮件,那么sendEmail是非常完美的选择&#…...
新疆今日头条新闻消息/seo是啥
这里将告诉您linux 源码编译安装MySQL,教程操作步骤:源码编译安装mysql 一 准备工作 添加一块硬盘 用该硬盘创建逻辑卷1检测新此盘 df -hT2创建物理卷 pvcreate /dev/sd。。。3创建卷组 vgcreate 卷组名 /dev/sd。。。4创建逻辑卷 lvcreate -L 几G -n 逻辑卷名 卷组名5查看一下…...