CJ/T-188 水表协议解析
最近在能水表集中器 终于把 CJ/T-188搞明白,写成文章的形式和大家分享,请大家赐教。CJ/T-188 水表协议解析
本文以实例说明CJ/T-188水表协议的解析过程,以下数据未经特殊说明,均指十六进制。
数据发送:
FE FE FE FE 68 10 44 33 22 11 00 33 78 01 03 1F 90 00 80 16
说明如下:
FE FE FE FE:协议头(1-4组)。
68:帧起始符。
10:仪表类型,此实例指冷水水表,还可定义为:
10:冷水水表
11:生活热水水表
12:直饮水水表
13:中水水表
20:热量表(记热量)
21:热量表(记冷量)
30:燃气表
40:电度表
44 33 22 11 00:倒序为0011223344(以BCD码形式看待),表示表号。
33 78:倒序为7833(以BCD码形式看待),表示厂家代码。
01:控制码表示读表计数据,后面跟固定数据域长度、数据标识和序列号。
03:数据域长度(固定)。
1F 90:数据标识(固定)。
00:序列号(固定)。
80:累加和,68+10+44+33+22+11+00+33+78+01+03+1F+90+00=80。
16;结束符。
回复数据:
FE FE FE FE 68 10 44 33 22 11 00 33 78 81 16 1F 90 00 00 77 66 55 2C 00 77 66 55 2C 31
00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
01 22 11 05 15 20 21 84 08 16
25 26 27 28 29 30 31 32 33 34
说明如下:
FE FE FE FE:协议头(1-4组)。
68:帧起始符。
10:仪表类型。
44 33 22 11 00:倒序为0011223344(以BCD码形式看待),表示表号。
33 78:倒序为7833(以BCD码形式看待),表示厂家代码。
81:实际为控制码+80,我们可以简单认为只有81正确,非81均为异常,不进行解析。
16:数据域长度,为十进制22,表示后面有22个有效数据。
1F 90:数据标识(固定)。
00:序列号(固定)。
00 77 66 55:倒序为556677.00(以BCD码形式看待),表示累计用量。
2C:立方米,其它单位见附1。
00 77 66 55:倒序为556677.00(以BCD码形式看待),表示本月用量。
2C:立方米,其它单位见附1。
31 01 22 11 05 15 20:2015-05-11 22:01:31,表示实时时间。
21 84:状态,两字节,第1字节定义如下,第2字节由厂家自定义。
68:累加和,68+10+44+33+22+11+00+33+78+81+16+1F+90+00+00+77+66+55+2C+00+77+66+55 2C+31+01+22+11+05+15+20+21+84=08。
16;结束符。
附:单位代号
原创性文章,转载请注明出处 http://user.qzone.qq.com/2756567163。
楼主,关键是充费协议 我说的是 CJ/T-188 和电表的协议差不多嘛 是的 还有暖表 燃气表 188协议本身很简单,比较容易纠结的就是协议规范中没明确数据是采用低字节在前还是高字节在前。
就连188协议的几个起草单位都没商量好统一用哪个,有的高字节在前,有的低字节在前,真是日了狗了。 观看协议文本 很难闹清楚 dalarang 发表于 2015-7-10 16:07
188协议本身很简单,比较容易纠结的就是协议规范中没明确数据是采用低字节在前还是高字节在前。
就连188协 ...
同一个厂商,不同批次的表,都有高低字节之分。狗日 不错的分析,收藏了 niaojingxin 发表于 2015-7-10 15:41
和电表的协议差不多嘛
97 08 规约雷同
页:
[1]