收藏本站
設為首頁 | 收藏本站
聯(lián)系方式

聯(lián)系人:李經(jīng)理

手 機:15161725556

聯(lián)系人:柏經(jīng)理

手 機:15261725556

電 話:0517-86919886

傳 真:0517-86892227

郵 箱:aokeyb@163.com

地 址:江蘇金湖工業(yè)園區(qū)


新聞詳情

SB-2100流量積算儀通信協(xié)議

瀏覽數(shù):760 
文章附圖

SB-2100系列標準通信協(xié)議:

201007170440454352.jpg

1、通信接口RS485RS232波特率范圍1200-9600。

2儀表接線端為A, BCOM。

3、通信協(xié)議符合MODBUS規(guī)約。說明書表2中寄存器編號為寄存器地址。

4、通信信息組成:地址碼-功能碼-數(shù)據(jù)段-CRC校驗碼,一條消息連續(xù)發(fā)送和接收,字符間隔不能大于一個字符,否則認為一條新消息開始或老消息結束。信息體由十六進制數(shù)組成。.

5、數(shù)據(jù)定義:累積量為4字節(jié)十六進制定點數(shù),瞬時量(包括溫度壓力等)4字節(jié)浮點數(shù)。.

6通信命令:

  功能碼03-用來讀取顯示數(shù)據(jù)

  發(fā)送   01    ;地址          回應   01   ;地址   

         03    ;功能碼              03   ;功能碼

         00    ;寄存器地址高        04   ;字節(jié)個數(shù)

         01    ;寄存器地址低(顯示地址) XX ;數(shù)據(jù)1

         00    ;寄存器個數(shù)高        XX   ;數(shù)據(jù)2

         02    ;寄存器個數(shù)低        XX   ;數(shù)據(jù)3

        CRCL   ;CRC校驗碼低       XX   ;數(shù)據(jù)4

        CRCH   ;CRC校驗碼高     CRCL ;CRC校驗碼低

                                CRCH ;CRC校驗碼

說明:地址=儀表號,寄存器地址=顯示項目編號

回應字節(jié)個數(shù)=(發(fā)送)寄存器個數(shù)低X2

     

功能碼04-用來讀取數(shù)設定數(shù)據(jù)和碼設定數(shù)據(jù),

寄存器個數(shù)=13讀碼設定;=463讀數(shù)設定。           

       讀取數(shù)設定數(shù)據(jù)

   發(fā)送   01 ;地址            回應   01 ;地址   

         04 ;功能碼                04 ;功能碼

        00 ;寄存器地址高           04 ;字節(jié)個數(shù)

        01 ;寄存器地址低(數(shù)設定地址)XX ;數(shù)據(jù)1

         00   ;寄存器個數(shù)高           XX   ;數(shù)據(jù)2

         02   ;寄存器個數(shù)低           XX   ;數(shù)據(jù)3

       CRCL ;CRC校驗碼低           XX   ;數(shù)據(jù)4

       CRCH ;CRC校驗碼高         CRCH ;CRC校驗碼低

                                   CRCL ;CRC校驗碼

      說明:地址=儀表號,寄存器地址=數(shù)設定地址編號

回應字節(jié)個數(shù)=(發(fā)送)寄存器個數(shù)低(163

讀取碼設定數(shù)據(jù)

   發(fā)送   01 ;地址             回應   01 ;地址   

         04 ;功能碼                    04 ;功能碼

         00 ;寄存器地址高              02 ;字節(jié)個數(shù)

         01 ;寄存器地址低(碼設定地址) 03 ;數(shù)據(jù)1碼內(nèi)容

         00 ;寄存器個數(shù)高              04 ;數(shù)據(jù)2 碼內(nèi)容

         01 ;寄存器個數(shù)低            CRCL ;CRC校驗碼低

        CRCL ;CRC校驗碼低        CRCH ;CRC校驗碼

        CRCH ;CRC校驗碼高           

  說明:地址=儀表號,寄存器地址=碼設定地址編號

回應字節(jié)個數(shù)=(發(fā)送)寄存器個數(shù)低(13X2

功能碼06-用來進行碼設定

   發(fā)送   01 ;地址             回應   01   ;地址   

         06 ;功能碼                 06   ;功能碼

         00 ;寄存器地址高           00   ;寄存器地址高

         01 ;寄存器地址低(碼設定地址)01 ;寄存器地址低

         00 ;數(shù)據(jù)高                 00   ;數(shù)據(jù)高     

         04 ;數(shù)據(jù)低                 04   ;數(shù)據(jù)低     

       CRCL ;CRC校驗碼低       CRCL   ;CRC校驗碼

       CRCH ;CRC校驗碼高      CRCH   ;CRC校驗碼高

     功能碼10H-用來數(shù)設定(如:100=42H,c8H,00H,00H

發(fā)送   01 ;地址                  回應 01   ;地址   

      10H ;功能碼                   10H   ;功能碼

      00   ;寄存器地址高              00 ;寄存器地址高

      01   ;寄存器地址低(數(shù)設定地址)   01   ;寄存器地址低

      00   ;寄存器個數(shù)高             00   ;寄存器個數(shù)高  

      04   ;寄存器個數(shù)低             04   ;寄存器個數(shù)低  

      04   ;數(shù)據(jù)個數(shù)            CRCL   ;CRC校驗碼低     

     42h   ;數(shù)據(jù)1                CRCH   ;CRC校驗碼   

      C8   ;數(shù)據(jù)2

      00   ;數(shù)據(jù)3

     00H   ;數(shù)據(jù)4

    CRCL   ;CRC校驗碼低           

    CRCH   ;CRC校驗碼高

7CRC校驗碼計算

    01 ;地址        N1         CRC=0FFFFH為初值       

     10 ;功能碼      N2        CRCLN1異或運算       

     00 ;寄存器地址高N3     CRC右移1位,若移出位為1

     01 ;寄存器地址低N4      CRC=CRCA001H異或,

     00 ;寄存器個數(shù)高N5    若移出位為0CRC=CRC   

     04 ;寄存器個數(shù)低N6    右移8次完成N1計算

     04 ;數(shù)據(jù)個數(shù)   N7                      

     80 ;數(shù)據(jù)1       N8    CRCLN11異或運算

     04 ;數(shù)據(jù)2       N9      CRC右移1位,若移出位為1                     

     80 ;數(shù)據(jù)3      N10      CRC=CRCA001H異或,                   

     80 ;數(shù)據(jù)4      N11    若移出位為0CRC=CRC  

   CRCL   ;CRC校驗碼低       右移8次完成N11計算     

   CRCH   ;CRC校驗碼高       最后得到CRC校驗值   

8、sb2100系列儀表浮點數(shù)據(jù)格式

      長度為4字節(jié), 采用IEEE標準方式,其中尾數(shù)高位始終為1,位的分布如下:1位符號位,8位指數(shù)位,24位尾數(shù),符號位是最高位,尾數(shù)為低位23,按字節(jié)排序如下:  

地址      0          1          2         3  

    內(nèi)容MMMMMMMM   MMMMMMMM   EMMMMMMM SEEEEEEEE

其中   S:符號位,0=正數(shù),1=負數(shù).

      E:指數(shù)(在二個字節(jié)中),偏移碼為127.

      M:23位尾數(shù),最高位為1,有效位為24.

例如:100=0x00,0x00,0xc8,0x42

    0=0x00,0x00,0x00,0x00

    -100=0x00,0x00,0xc8,0xc2

9、通信舉例

儀表地址設為01,通信波特率=4800,n,8,1(儀表碼地址0801,0905)。

1:讀取儀表瞬時流量F,F=100. (4字節(jié)浮點數(shù))

上位機發(fā)送:0x01,0x03,0x00,0x00,0x00,0x02,0xc4,0x0B

儀表回傳:0x01,0x03,0x04,0x00,0x00,0xc8,0x42,0x2d,0xc2

2:讀取儀表累積流量S,S=12345.(4字節(jié)定點數(shù))

上位機發(fā)送:0x01,0x03,0x00,0x14,0x00,0x02,0x84,0x0f

儀表回傳:0x01,0x03,0x04,0x39,0x30,0x00,0x00,0xf6,0xa0

  3: 讀取儀表所有顯示數(shù)據(jù),包括瞬時,頻率,差壓, 壓力,溫度,密度,熱量,累積流量,累積熱量等1248個字節(jié)

上位機發(fā)送:0x01,0x03,0x00,0x00,0x00,0x18,0x45,0xc0

儀表回傳:0x01,0x03,0x30,

0x69,0x00,0xc8,0x42,   (瞬時=100.0008)

0x86,0x00,0x00,0x00,(頻率=0

0x00,0x00,0xc8,0x44,(差壓=1600

0x9e,0x99,0x99,0x3f,(壓力=1.20

0x7d,0x1f,0x39,0x43,(溫度=185.123

0x00,0x00,0x80,0x3f,(密度=1.0

0x00,0x00,0x00,0x00,(熱量=0.0

0x00,0x00,0x00,0x00,(保留)

0x00,0x00,0x00,0x00,(保留)

0x00,0x00,0x00,0x00,(保留)

0x60,0x30,0x00,0x00,(累積=12384

0x0a,0x00,0x00,0x00,(累積熱=10

0xf5(校驗碼低),0xb9(校驗碼高)

  4: 讀取儀表實時時間051208212108,時間格式為6字節(jié)BCD

上位機發(fā)送:0x01,0x04,0x00,0x29,0x00,0x03,0xc3,0x61

儀表回傳:0x01,0x04,0x06,

            0x08(),  

0x21(),

0x21(),

0x08(),

0x12(),

0x05(),

0x81(校驗碼低),0x9a(校驗碼高)

10、波特率說明

4800n81表示波特率為4800,1位開始位,8位數(shù)據(jù)位,1位停止位,無校驗

4800e81表示波特率為4800,1位開始位,8位數(shù)據(jù)位,1位停止位,耦校驗

//顯示寄存器定義

//流量積算儀SB2100A

寄存器地址     變量名稱          數(shù)據(jù)類型   

00-01            瞬時流量          float

02-03              頻率            float

04-05              差壓            float

06-07              壓力            float

08-09              溫度            float

10-11              密度            float

12-13              熱瞬時量        float

14-15              熱焓            float

16-17              保留            float

18-19              保留            float

20-21             累積流量     unsigned long int

22-23             累積熱量     unsigned long int

24-25             停電次數(shù)     unsigned long int

26-27             停電時間     unsigned long int