188直读水表通讯协议和通讯规约
使用C#实现CJ-T188水表协议和DL-T645电表协议的解析与编码

使⽤C#实现CJ-T188⽔表协议和DL-T645电表协议的解析与编码⼀、协议的定义要对某种协议进⾏编解码操作,就必须知道协议的基本定义,⾸先我们来看⼀下 CJ/T188 的数据帧定义(协议定义),了解请求数据与响应数据的基本结构。
1.1 CJ/T188 ⽔表通讯协议请求帧:例如有以下请求帧数据(读取⽔表数据):68 10 01 00 00 05 08 00 00 01 03 1F 90 00 39 16对应的解释如下。
表计类型表:响应帧(读表操作):字节值描述00x68数据帧开始标识。
1T 表计类型代码,详细信息请参考 表计类型表 。
2-8A0-A6表计地址,⽔表设备的具体地址,这⾥是 BCD 形式。
9CTR_01协议控制码,例如 0x1 就是读表数据。
100x3数据域长度。
11-120x1F,0x90数据标识 DI0-DI1。
130x00序列号,⼀般为 0x00,序列号也被作为整个数据域的长度。
14CS 表⽰校验和数据,即 0-13 位置的所有字节的累加和。
150x16数据帧的结束标识。
顺序012-891011-12131415说明帧头类型地址CTR_0长度数据标识序列号校验和帧尾实例681001 00 0005 08 000001031F 90003916值含义10冷⽔⽔表11⽣活热⽔⽔表12直饮⽔⽔表13中⽔⽔表20热量表 (记热量)21热量表 (记冷量)30燃⽓表40电度表字节值描述00x68数据帧开始标识。
1T 表计类型代码,详细信息请参考 表计类型表 。
2-8A0-A6表计地址,⽔表设备的具体地址,这⾥是 BCD 形式。
Processing math: 100%9CTR_1协议控制码,在返回帧含义即是请求帧的控制码加上 0x80。
10L数据域长度。
11-120x1F,0x90数据标识 DI0-DI1。
130x00序列号,⼀般为 0x00。
14-17ALL DATA累计⽤量,以 BCD 形式进⾏存储。
CJ188通讯协议

字节
Code
描述
0
68H
帧开始标志
1
T
表计类型代码
2-8
A0-A6
表计地址
9
81H
CTR_1
10
L
数据域长度
11-12
901FH
数据标识 DI0-DI1
13
SER
序号
14-17
DATA
当前累积流量(D0-D3)
18
S0
状态 0
19
S1
状态 1(保留字节,置为 00)
20
CS
校验和
21
16H
帧结束
光电直读仪表 CJ-T188 通讯规约
2016 年 2 月
目录
第 1 章 概述………………………………………………………………………… 3 第 2 章 表计地址及数据编码格式………………………………………………… 4 第 3 章 数据传输协议……………………………………………………………… 6
3.1 读表计数据………………………………………………………………… 6 3.2 读表计地址………………………………………………………………… 7 3.3 设置表计地址……………………………………………………………… 9 3.4 写阀门控制……………………………………………………………… 11 附录 1 测试报文…………………………………………………………………… 14 附录 2 M-bus 接口………………………………………………………………… 15
数据服务器
WEB 方 式 数 据管理系统
现场集中器
内部局域网 工作站
前端管理机 收费票据打印
本协议为主-从模式的半双工通讯方式。集中器为主叫方,水、燃气等表计均为被叫方。 每个水、燃气表计均有各自的地址编码。通讯链路的建立与解除均由主叫方来完成。
水务通讯规约

水务通讯规约水务通讯规约在水务管理中扮演着至关重要的角色,它是确保水务系统中各种设备、系统之间能够顺畅、高效地进行信息交换和协同工作的基础。
本文将对水务通讯规约的定义、分类、应用及其重要性进行详细阐述,以期为读者提供一个全面、深入的理解。
一、水务通讯规约的概念与分类水务通讯规约是指在水务领域中,为实现不同设备、系统之间的信息传输和共享而制定的一套标准化的通信协议。
这些规约确保了各种水务设备和系统能够按照统一的标准进行数据的采集、传输、处理和控制,从而实现整个水务系统的高效运行。
根据不同的应用场景和需求,水务通讯规约可以分为多种类型。
例如,有针对水表远程抄读的通讯规约,如M-Bus、Wireless M-Bus等;有用于泵站监控和控制的通讯规约,如Modbus、Profibus等;还有用于水质监测和数据传输的通讯规约,如OPC、MQTT等。
这些规约各具特点,适用于不同的水务管理场景。
二、水务通讯规约的应用领域1. 远程抄表系统:在远程抄表系统中,通讯规约是实现水表数据远程传输的关键。
通过采用适当的通讯规约,水表可以将用水量、时间等数据实时传输到管理中心,大大提高了抄表效率和准确性。
2. 泵站监控系统:泵站是水务系统中的重要组成部分,其运行状态直接影响到供水质量和效率。
通过应用通讯规约,泵站监控系统可以实时采集泵站的各种运行参数,如流量、压力、电耗等,并进行远程控制和调节,确保泵站的安全、高效运行。
3. 水质监测系统:水质监测是水务管理的重要环节,对于保障供水安全具有重要意义。
通讯规约在水质监测系统中发挥着至关重要的作用,它可以将各个监测点的水质数据实时传输到中心服务器,为水质分析和处理提供及时、准确的信息支持。
4. 漏损检测系统:漏损检测是水务管理中的一项重要任务,它可以帮助及时发现和修复管网漏损,减少水资源的浪费。
通过应用通讯规约,漏损检测系统可以实时监测管网的压力、流量等参数,及时发现异常并进行报警和处理。
188水表远传协议

水表通信协议V2.2(DZ)综述此协议是基于188协议进行整理的,适用于一般远传水表。
传输时波特率为2400bps、偶校验、数据位为8位、停止位为1位。
同一帧数据中无特殊说明时一般为低字节在前,高字节在后。
在发送数据帧前,先发送1-4个0XFE。
帧起始符 68H:标识一帧信息的开始,其值为68H=01101000B。
仪表类型T在此协议中全固定为10H,表示水表。
地址域A0---A6地址域(A0--A6)由7字节BCD码组成。
低在前,高在后。
控制码CD7=0:由主站发出的命令帧D7=1:由从站发出的应答帧D6=0:从站正确应答D6=1:从站对异常信息的应答D5~D0:000001:读数据000100:写数据000011:读地址(表号)010101:写地址(表号)1XXXXX:厂商自定义.其他: 暂保留未用数据长度L:L 为数据域的字节数。
L=0 表示无数据域。
数据域DATA:数据域包括数据标识、序列号和数据等,其结构随控制码的功能而改变。
校验码CS:从帧起始符开始到校验码之前的所有各字节的模256 的和,即各字节二进制算术和,不计超过256 的溢出值。
结束符 16H:标识一帧信息的结束,其值为16H=00010110B二、协议帧2.1 读数据2.1.1 主站请求帧功能:请求读数据控制码:C=CTR_0数据长度:L=03H数据标识: DI0,DI1;序列号: SER功能:从站正常应答控制码: C=CTR_1数据长度:L=03H+m(数据长度)数据标识: DI0,DI1;序列号: SER2.1.3 从站异常应答帧功能:从站收到非法的数据请求或无此数据控制码: C=CTR_2数据长度: L=03H序列号: SER注:序列号SER,状态ST0,ST1见备注1。
2.1.5 主站请求读数据标识说明3.1 写数据3.1.1 主站请求帧功能:请求读数据控制码:C=CTR_3数据长度:L=03H+m(数据域长度) 数据标识: DI0,DI1;序列号: SER功能:从站正常应答控制码: C=CTR_4数据长度:L=03H+m(数据长度)数据标识: DI0,DI1;序列号: SER3.1.3 从站异常应答帧功能:从站收到非法的数据请求或无此数据控制码: C=CTR_5数据长度: L=03H序列号: SER3.1.5主站请求写数据标识说明4.数据表达格式说明备注1:SER固定为00。
水表通讯协议书范本最新

水表通讯协议书范本最新水表通讯协议书甲方:(填写姓名/单位名称/地址/法定代表人/联系电话等基本信息,以下简称“供水公司”)乙方:(填写姓名/地址/联系电话等基本信息,以下简称“用户”)鉴于:1、供水公司是经过批准的供水服务商,拥有水资源的开发和供应权;2、用户需要供水公司提供生活用水服务;3、为了确保用户享有合法权益,供水公司和用户经友好协商,达成协议,兹立此水表通讯协议书。
一、甲乙双方的身份1.1 供水公司的身份:(1)供水公司是经过国家政府批准的供水服务商,具有独立法人资格;(2)供水公司有权发行水费账单,收取用户使用水费,并向用户提供生活用水服务。
1.2 用户的身份:(1)用户是生活用水的使用者;(2)用户有权按照国家政府的相关规定要求供水公司提供合格的生活用水服务;(3)用户应保证提供的信息真实、准确、完整并在合理期限内告知供水公司。
二、甲乙双方的权利和义务2.1 供水公司的权利和义务:(1)供水公司有权决定水费收费标准,并按照规定向用户收取费用;(2)供水公司有权依据本协议的规定检查用户水表的运行状态并及时维修;(3)供水公司有权依法处理用户违反合同的行为,并向有关部门报告;(4)供水公司应保证提供的水源符合国家相关法规标准,并及时告知用户供水状况。
2.2 用户的权利和义务:(1)用户有权监督供水公司的服务质量、收费情况等,有权要求供水公司提供详细的水费账单和供水数据;(2)用户有义务按照规定缴纳水费,并保证非法使用水源、盗窃水源等行为;(3)用户应保证用水的合法性,不得违反国家法律法规的相关规定;(4)用户应向供水公司提供真实、准确、完整的个人信息,以方便供水公司提供生活用水服务。
三、履行方式和期限3.1 供水公司应每月定期向用户提供水费收费标准和账单,并要求用户按照规定期限缴纳。
3.2 用户应根据水费账单的收到时间,在规定的时间内缴纳水费,否则将产生违约责任。
3.3 如用户发现水表运行异常,应立即通知供水公司,供水公司应在合理时间内进行检查和维修。
光电直读水气表通讯协议(188)

1、本协议符合CJ-T188-2004用户计量仪表数据传输技术条件,仪表的通讯接口形式为M-BUS(Meter-bus)通信接口。
3、数据链路层本协议采用主-从结构的半双工通信方式。
手持单元或其它数据终端为主站,表计为从站。
每个表计均有各自的地址编码。
通信链路的建立与解除均由主站发出的信息帧来控制。
每帧由帧起始符、从站地址域、控制码、数据长度、数据域、帧信息纵向校验码及帧结束符等7 个部分组成。
每部分由若干字节组成。
3.1 字节格式为每字节含8位二进制码,传输时加上一个起始位(0)、一个偶校验位(E)和一个停止位(1),共11位。
其字节传输序列如图1。
D0是字节的最低位,D7是字节的最高位,先传低位,后传高位。
图1、字节传输序列3.2 帧格式表1、帧格式3.2.1 帧起始符固定为68H,标识一帧信息的开始,仪表类型T通过写表地址命令设置,如写表地址命令帧中仪表类型T为10H,则表地址成功设置后,此表的表类型就是10H,具体表类型T的定义如表2:表2、仪表类型T3.2.2地址域(A0~A6)由七个字节组成,每个字节为2位BCD码格式。
地址长度为14位十进制数,低地址在前,高地址在后。
当表地址为AA AA AA AA AA AA AA 为广播地址,广播地址只能应用于点对点的通讯中。
3.3.3 控制码(C)的格式按图2所示:D7:0-由主站发出的控制帧;1-由从站发出的应答帧。
D6:0-通讯正常;1-通讯异常。
D5~D0:000000:保留;000001:读数据;000100:写数据;001001:读密钥版本;000011:读地址(表号);010101:写地址(表号);010110:写机电同步数(置表底数);1XXXXX:厂商自定义。
3.2.4 数据长度(L)为数据源的字节数,用十六进制表示。
读数据时L小于或等于64H,写数据时L小于或等于32H,L等于零表示无数据域。
3.2.5 数据域(DATA)包括数据标识、序列号和数据,其结构随控制码的功能而改变。
DDZY188(-Z)使用说明书10[1].05.27
![DDZY188(-Z)使用说明书10[1].05.27](https://img.taocdn.com/s3/m/452e4cb4fab069dc5022018b.png)
16
用户户号低8位
XXXXXXXX
17
用户户号高4位
XXXX
18
表号低8位
XXXXXXXX
19
表号高4位
XXXX
20
当前日期
XX.XX.XX
21
当前时间
XX.XX.XX
22
故障代码
Err-XX
23
电压
XXX.X V
24
电流
XXX. XXX A
25
零线电流
XXX.XXXA
26
功率
XX.XXXX kW
27
4.4报警显示:报警时LCD根据不同故障立即停留在报警代码上或插到循显第一屏显示,且背光灯和报警灯持续点亮。
5费控功能
费控功能的实现为远程方式:通过RS485或载波虚拟介质和远程售电系统实现。
6事件记录功能
6.1永久记录电能表清零事件的发生时刻及清零时的电能量数据。
6.2记录编程总次数,最近10次编程的时刻、操作者代码、编程项的数据标识。
抗静电能力
>15 kV
设计使用寿命
≥10年
海德瑞188通讯协议

00 01 16
该指令前端若干个 73 为启动码,个数用户可自定。发送指令中必须要有划线部分内
容,否则通讯不成功。
接收数据 FE FE FE FE FE FE FE FE FE FE FE FE FE 68 25 57 18 10 21 00 11 11 81 3A 3F 90
○1 ○2
○3
○4 ○5 ○6 ○7
73 73 73 73 73 73 73 73 73 73 73 73 73 73 73 73 73 73 73 73 73 73 73 73 73 73 73 73 73 73
73 73 73 73 73 73 73 73 73 73 73 73 73 FE FE 68 20 AA AA AA AA AA AA AA 01 03 3F 90
○17
○18
○19
○20
○21 ○22 ○23
○1 帧起始
68H
一个字节
○2 仪表类型 20H~29H
一个字节
○3 地址 A0-A3 表号
四个字节
○4 地址 A4-A6 厂商代码
三个字节
○5 控制字
81H
○6 数据长度 3AH
○7 数据标识 903FH
○8 序列号 SER XXH
○9 供水温度 XXXXXXH
73 73 73 73 73 73 73 73 73 73 73 73 73 73 73 73 73 73 73 73 73 73 73 73 73 73 73 73 73 73 73
○9
○10 ○11
数据分析:
○1 帧起始符 68H
一个字节
○2 仪表类型 20H-28H
一个字节
○3 地址 A0-A3 表号
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
总线制直读水表通讯协议和通讯规约参照JC/T188改编水表接口协议(V1.0)第1章概述本规范是专线集中抄表系统下行接口通讯协议(除少部分自定义部分外,均参照CJ/T 188-2004 中华人民共和国城镇建设行业标准)。
协议内容分为两层:控制帧、文件传输协议。
网络拓扑图如下:本协议为主-从模式的半双工通讯方式。
采集器为主叫方,水表为被叫方。
每个水表均有各自的地址编码。
通讯链路的建立与解除均由采集器来完成。
字节格式符合CJ/T188-2004标准字节格式,即每字节含8位二进制码,传输时加上1位起始位(0)、一个偶校验位、一个停止位(1),共11位。
通讯波特率为2400bps 。
校验码(CS )符合CJ/T188-2004,即从起始符(0x68)开始到校验码之前的所有字节和的模256。
本通讯协议适用范围第2章控制帧由主叫发往被叫的控制帧以SND_为前缀,由被叫发往主叫的控制帧以RSP_为前缀。
采集器与表计之间的通讯包含以下几个命令帧,如下:1、读表计数据:SND_SU2、读表计地址:SND_UD_RAD3、设置表计地址:SND_UD_AD4、读表计状态:SND_UD_CK第3章表计地址及数据编码格式1、表计地址编码格式(采用BCD码):A0—生产流水号最低字节;A1—生产流水号次高字节;A2—生产流水号最高字节;A3—表计生产月份;A4—表计生产年份;A5—生产厂商代码低字节;A6—生产厂商代码高字节;2、表计数据编码格式(采用BCD码):如表计数据是123456.78,则数据编码如下:D0—0x78;D1—0x56;D2—0x34;D3—0x12;3、表类型代码说明:水表为: 10热水表: 20燃气表为:30热量表: 40 (注:热水表、燃气表为、热量表代码预留为以后系统扩展应用)4、传输要求:采集器在发送命令帧之前先发送2字节0xfe;在采集器发出命令帧到表计应答时间<1秒,其它符合CJ/T188-2004。
第4章数据传输协议1、读表计数据1.1 采集器——>表计控制码(CTR_0):01h;数据长度:L = 03h;数据标识(DI0 DI1):901F h;序列号:SER;帧数据:字节Code 描述0 68h 帧开始标志1 T 表计类型代码2-8 A0-A6 表计地址9 01h CTR_010 03h 数据域长度L11-12 901Fh 数据标识DI0-DI113 SER 序列号(00h)14 CS 校验和15 16h 帧结束例:读表计数据:68 10 01 00 00 05 08 00 00 01 03 90 1f 00 39 16 (针对水表)顺序0 1 2--8 9 10 11-12 13 14 15 说明68h T ADDR 01H 03 901Fh 00 CS 16h 实例68 10 01 00 00 05 08 00 00 01 0390 1F 00 39 161.2 表计——>采集器控制码(CTR_1):81h;数据长度:L = 9h;数据标识(DI0 DI1):901F h;序列号:SER;帧数据:字节Code 描述0 68h 帧开始标志1 T 表计类型代码2-8 A0-A6 表计地址9 81h CTR_110 L 数据域长度11-12 901Fh 数据标识DI0-DI113 SER 序号(00h)14-17 CURDATA 当前累积流量(D0-D3)18 S0 状态019 S1 状态1(保留字节,置为ff)20 CS 校验和21 16h 帧结束采集器根据收到的内容,应答正确,或没有应答。
例:表计应答:68 10 01 00 00 05 08 00 00 81 09 90 1F 00 00 23 01 00 00 FF E2 16 (针对水表)说明:表计地址为00 00 08 05 00 00 01 的水表回复当前累积量00 23 01 00(000123.00为真实数据)顺序0 1 2--8 9 10 11-12 13 14-17 18 19 20 21 说明68h T ADDR 81H L 901Fh SER CURDA TA S0 S1 CS 16h实例68 10 01 00 00 0508 00 00 81 0990 1F 00 00 23 010000 FF E2 162、读表计地址2.1 采集器——>表计控制码(CTR_0):03h;数据长度:L = 03h;数据标识(DI0 DI1):810Ah;序列号:SER;帧数据:字节Code 描述0 68h 帧开始标志1 T 表计类型代码(AAh)2-8 A0-A6 表计地址为AA AA AA AA AA AA AAh9 03h CTR_010 03h 数据域长度L11-12 810Ah 数据标识DI0-DI113 SER 序列号(00h)14 CS 校验和15 16h 帧结束例:读表计地址:68 aa aa aa aa aa aa aa aa 03 03 81 0a 00 49 16顺序0 1 2--8 9 10 11-12 13 14 15 说明68h T A0-A6 03H L 810Ah SER CS 16h 实例68 aa aa aa aa aa aa aa aa 03 0381 0A 00 49 162.2 表计——>采集器控制码(CTR_1):83h;数据长度:L = 03h;数据标识(DI0 DI1):810Ah;序列号:SER;帧数据:字节Code 描述0 68h 帧开始标志1 T 表计类型代码2-8 A0-A6 表计地址9 83h CTR_110 L 数据域长度11-12 810Ah 数据标识DI0-DI113 SER 序号(00h)14 CS 校验码15 16h 帧结束采集器根据收到的内容,应答正确,或没有应答。
例:表计应答:68 10 01 00 00 05 08 00 00 83 03 81 0A 00 97 16 (针对水表)顺序0 1 2--8 9 10 11-12 13 14 15 说明68h T A0-A6 83H L 810Ah SER CS 16h83 03 81 0A 00 97 16 实例68 10 01 00 00 0508 00 003、设置表计地址3.1采集器——>表计控制码(CTR_3):15h;数据长度:L = 0Ah;数据标识(DI0 DI1):A018h;序列号:SER;帧数据:字节Code 描述0 68h 长帧开始标志1 T 表计类型代码(原类型或AAh)2-8 A0-A6 表计地址(原地址或全AAh)9 15h CTR_310 L 数据域长度L = 0Ah11-12 A018h 数据标识DI0-DI113 SER 序号(00h)14-20 A0-A6 欲设新地址21 CS 校验和22 16h 帧结束例1:设置表计地址68 aa aa aa aa aa aa aa aa 15 0a a0 18 00 01 00 00 05 08 00 00 9d 16说明:把表计地址设为01 00 00 05 08 00 00 (实际地址为000805000001)顺序0 1 2--8 9 10 11-12 13 14-20 21 22 说明68h T ADDR 15H L A018h SER A0-A6 CS 16h实例68 aa aa aa aa aaaa aa aa 15 0A A0 18 00 01 00 00 0508 00 009D 16例2:设置表计地址68 10 02 00 00 05 08 00 00 15 0a a0 18 00 01 00 00 05 08 00 00 6C 16说明:把电表原地址为05 00 00 05 08 00 00 设为01 00 00 05 08 00 00 01 现在新地址为00000805000001顺序0 1 2--8 9 10 11-12 13 14-20 21 22 说明68h T ADDR 15H L A018h SER A0-A6 CS 16h实例68 10 02 00 00 0508 00 00 15 0A A0 18 00 01 00 00 0508 00 006C 163.2 表计——>采集器控制码(CTR_4):95h;数据长度:L = 03h;数据标识(DI0 DI1):A018h;序列号:SER;帧数据:字节Code 描述0 68h 长帧开始标志1 T 表计类型代码2-8 A0-A6 表计地址(新设置的地址)9 95h CTR_410 03h 数据域长度11-12 A018h 数据标识DI0-DI113 SER 序号(00h)14 CS 校验和15 16h 帧结束采集器根据收到的内容,应答正确,或没有应答。
例:表计应答:68 10 01 00 00 05 08 00 00 95 03 A0 18 00 D6 16 (针对水表)顺序0 1 2--8 9 10 11-12 13 14 15 说明68h T A0-A6 95H L 810Ah SER CS 16h95 03A0 81 00 D6 16 实例68 10 01 00 00 0508 00 00。