4G模块DTU网关远程抄表方案(三):水气电表188协议
1 CTJ 188协议简介
CJ/T188协议规定了户用计量仪表(以下简称仪表),包括水表、燃气表、热量表等仪表数据传输的基本原则,接口形式及物理性能、数据链路、数据标识及数据安全性和数据表达格式的要求。
CJ/T188协议为主-从模式的半双工通讯方式,其适用于仪表主站与从站间,一主一从或一主多从数据交换的集中抄表系统。
1.1 数据传输协议
 由采集器向表计发送的查询帧数据格式如下:
| 字节 | Code | 描述 | 
|---|---|---|
| 0 | 68h | 帧起始符 | 
| 1 | T | 表计类型代码 | 
| 2-8 | A0-A6 | 表计地址 | 
| 9 | 01h | 控制码 CTR_0 | 
| 10 | 03h | 数据域长度L | 
| 11-12 | 901Fh | 数据标识DI0-DI1 | 
| 13 | SER | 序列号(01h) | 
| 14 | CS | 校验码 | 
| 15 | 16h | 帧结束符 | 
例:读表计数据: FE FE FE 68 10 77 66 55 44 33 22 11 01 03 90 1f 01 08 16(针对水表)
| 字节 | 0 | 1 | 2-8 | 9 | 10 | 11-12 | 13 | 14 | 15 | 
|---|---|---|---|---|---|---|---|---|---|
| 说 明 | 68h | T | ADDR | 01H | 03 | 901Fh | SER | CS | 16h | 
| 实 例 | 68 | 10 | 77665544332211 | 01 | 03 | 90 1F | 01 | 08 | 16 | 
说明:FE FE FE - 引导字符;68 – 帧起始符;10 – 表计类型;11 22 33 44 55 66 77 – 表地址;
 01 – 控制码;03 – 数据域长度;90 1F – 数据标识;01 – 序列号;3D – 校验码;16 – 帧结束符。
 由表计向采集器发送的应答帧数据格式如下:
| 字节 | Code | 描述 | 
|---|---|---|
| 0 | 68h | 帧起始符 | 
| 1 | T | 表计类型代码 | 
| 2-8 | A0-A6 | 表计地址 | 
| 9 | 81h | 控制码 CTR_1 | 
| 10 | L | 数据域长度 | 
| 11-12 | 901Fh | 数据标识DI0-DI1 | 
| 13 | SER | 序列号(01h) | 
| 14-17 | CURDATA | 当前累积流量(D0-D3) | 
| 18 | S0 | 状态0 | 
| 19 | S1 | 状态1(保留字节,置为ff) | 
| 20 | CS | 校验码 | 
| 21 | 16h | 帧结束符 | 
例:读表计数据: 表计应答:FE FE FE 68 10 77 66 55 44 33 22 11 81 09 90 1F 01 78 56 34 12 00 FF XX 16 (针对水表) ( DI0 DI1为:901F h)
| 字节 | 0 | 1 | 2-8 | 9 | 10 | 11-12 | 13 | 14-17 | 18 | 19 | 20 | 21 | 
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 说 明 | 68h | T | ADDR | 81H | L | 901Fh | SER | CURDATA | S0 | S1 | CS | 16h | 
| 实 例 | 68 | 10 | 77665544332211 | 81 | 09 | 90 1F | 01 | 12 34 56 78 | 00 | FF | XX | 16 | 
说明:FE FE FE - 引导字符;68 – 帧起始符;10 – 表计类型;77 66 55 44 33 22 11 – 表地址(真实地址为11223344556677); 81 – 控制码;09 – 数据域长度;90 1F – 数据标识;01 – 序列号;78 56 34 12 – 当前累积流量(真是数据为123456.78);00 FF – 表计状态;XX – 校验码;16 – 帧结束符。
1.1.1 表类型代码
水表为: 10
 燃气表为:30
 电表为: 40
1.1.2 表计地址编码格式(采用BCD码)
A0—生产流水号最低字节;
 A1—生产流水号次高字节;
 A2—生产流水号最高字节;
 A3—表计生产月份;
 A4—表计生产年份;
 A5—生产厂商代码低字节;
 A6—生产厂商代码高字节;
1.1.3表计数据编码格式(采用BCD码)
如表计数据是123456.78,则数据编码如下:
 D0—0x78;
 D1—0x56;
 D2—0x34;
 D3—0x12;
1.1.4校验码CS
从帧起始符(0x68)开始到校验码之前的所有各字节的模256的和, 即各字节二进制算术和,不计超过256的溢出值
2 DEVELOPLINK 远程抄表方案
DEVELOPLINK展联科技的远程抄表网关(DTU)内置了Modbus,CT/J 188协议的解析,只需要简单的可视化配置,就能采集到水气表的数据,然后将返回数据通过4G,以太网,WIFI等网络方式传到客户服务器,甚至可以自主解析后以json格式上传。
2.1 功能:
- 支持对Modbus、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 | 
| 188协议水表 | 

3.2 设置串口
一般CT/J 188协议的水表,通讯波特率为2400bp,偶检验
 
3.3 设置188协议轮询
- 选择188协议版本
- 配置表地址
- 选择表类型
  
 不需要关注188协议本身,只需要选择需要读取的量,例如这里我们读取水表的总量,即命令选择总量
  
 配置完成,点击写入配置
  
 查看报文,可以看到发送的协议报文和水表返回的报文,以及DTU解析后的json报文{“a”:258} 
3.4 设置网络
ZL400 DTU网络通道支持MQTT,TCP,UDP,HTTP;还内置了阿里云,腾讯云,onenet,developlink平台,华为云,jetlinks的解析内核
 用户只需要选择通道类型,简单配置就能上传数据
 
 ————————————————————————————————————————
 对物联网技术感兴趣请加入我们交流群,欢迎各种技术交流,
 QQ群: 830407941
 对我们产品感兴趣请查看淘宝,免费定制项目:
 DEVELOPLINK
 DEVELOPLINK__ DTU



![[软件工程导论(第六版)]第3章 需求分析(课后习题详解)](https://img-blog.csdnimg.cn/4c778e1d5cb54e648742e2fea5fe8afc.png)















