常用传感器协议2:CJ/T-188 冷热量表协议解析1

来源:互联网 发布:剑灵男力士捏脸数据图 编辑:程序博客网 时间:2024/04/28 14:00

    本文以实例说明CJ/T-188冷热量表协议的解析过程,以下数据未经特殊说明,均指十六进制。

    数据发送:
        FE FE FE FE 68 20 44 33 22 11 00 33 78 01 03 1F 90 01 91 16
        说明如下:
            FE FE FE FE:协议头(1-4组)。
            68:帧起始符。
            20:仪表类型,此实例指冷水水表,还可定义为:
                10
:冷水水表
                11
:生活热水水表
                12
:直饮水水表
                13:中水水表
                20:热量表(记热量)
                21
:热量表(记冷量)
                30:燃气表
                40:电度表 
            44 33 22 11 00:倒序为0011223344(以BCD码形式看待),表示表号。
            33 78:倒序为7833
(以BCD码形式看待),表示厂家代码。
            01:控制码表示读表计数据,后面跟固定数据域长度、数据标识和序列号。
            03:数据域长度(固定)。 
            1F 90:数据标识
(固定)。
            01:序列号(固定)。
            91:累加和,
68+20+44+33+22+11+00+33+78+01+03+1F+90+01=91。
            16;结束符。

    回复数据:
        FE FE FE FE 68 20 44 33 22 11 00 33 78 81 2E 1F 90 01 78 56 34 12 05 78 56 34 12 05 78
                    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
56 34 12 17 78 56 34 12
 35 78 56 34 12 2C 56 34 12 56 34 12 56 34 12 20 14 03 18 12 56 59 00 
25 26 27 28 29 30 31 32 33 34
 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
  
00 91 16 
56 57 58 
        说明如下:
        
FE FE FE FE:协议头(1-4组)。
            68:帧起始符。
            20:仪表类型。
            
44 33 22 11 00:倒序为0011223344(以BCD码形式看待),表示表号。
            33 78:倒序为7833
(以BCD码形式看待),表示厂家代码。
            81:实际为控制码+80,我们可以简单认为只有81正确,非81均为异常,不进行解析。
            2E:数据域长度,为十进制46,表示后面有46个有效数据。
            
1F 90:数据标识(固定)。
            01:序列号(固定)。 
            78 56 34 12 05:结算日热量(123456.78-kwh)。
            78 56 34 12 05:当前热量(
123456.78-kwh)。
            78 56 34 12 17:热功率(123456.78-kw)。
            78 56 34 12 35:瞬时热量(123456.78-mmm/h)。
            78 56 34 12 2C:当前累计流量(123456.78-mmm)。
            56 34 12:供水温度(1234.56-0C)。 (注1)
            56 34 12:回水温度
(1234.56-0C)。 (注1)
            56 34 12:仪表累计工作时间(123456-h)。 
            20 14 03 18 12 56 59:当前日期,2014-03-18 12:56:59
            00 00:状态,两个字节,00 00表示正常,01 00表示欠压。

            91:累加和,
68+20+44+33+22+11+00+33+78+81+2E+1F+90+01+78+56+34+12+05+78+56+34+12+05+78+56+34+12+17+78+56+34+12+35+78+56+34+12+2C+56+34+12+56+34+12+56+34+12+20+14+03+18+12+56+59+00+00=06。
            16:结束符。 
 
  
注1:此处为摄氏度符号,为了防止混淆,本文所有数值和单位之间加“-”,予以分隔。
注2:单位符号可查看日志:
http://user.qzone.qq.com/2756567163/blog/1436472675 

原创性文章,转载请注明出处 http://user.qzone.qq.com/2756567163。
1 0