精品视频一区二区观看,欧美一区二区视频三区,日韩一区二区三区不卡,欧美中文综合在线视频,欧美综合网亚洲综合网

      ? ? ? ?

      咨詢電話

      ENGLISH0755-88840386
      新聞中心

      咨詢電話

      0755-88840386
      您的位置:首頁 > 學(xué)習(xí)專題 > 專業(yè)技術(shù)專題 > 工業(yè)自動化稱重儀表>詳情頁

      自動稱重顯示控制器儀表與計(jì)算機(jī)的數(shù)據(jù)通訊

      發(fā)布時(shí)間:2020-04-13 15:14:52 |來源:網(wǎng)絡(luò)轉(zhuǎn)載

      1. AD-4322A 稱重顯示儀表的參數(shù)設(shè)置

      AD- 4322A 是日本產(chǎn)稱重顯示儀表 , 性能穩(wěn)定 ,A/D 轉(zhuǎn)換精度高、速度快,在我公司的應(yīng)用十分廣泛。其串行接口附件 OP -4 提供標(biāo)準(zhǔn)RS-232C 口 ,采用半雙工異步傳輸方式進(jìn)行串行通訊。

      1. 1 AD- 4322A 功能鍵的設(shè)置   

      1. 2 AD-4322A 發(fā)送數(shù)據(jù)時(shí)的數(shù)據(jù)格式

      AD -4322A 發(fā)送的數(shù)據(jù)共 18位 ,其含義如下:  

      說明:

      標(biāo)志 1: 超最大量程/低于最小分度值/靜止/不穩(wěn)定之一

      標(biāo)志 2: 凈重/毛重/皮重之一

      單  位: kg/t/1b 之一

      定義符 : CR 為回車符, LF 為換行符, LF 是數(shù)據(jù)發(fā)送結(jié)束的標(biāo)志 。

      例如 : 某一靜止物體的凈重約為 350. 7kg ,那么其數(shù)據(jù)格式為: 

      1. 3 AD-4322A 中有關(guān)通訊參數(shù)

      本程序中,有關(guān)的通訊參數(shù)共 4個 :

      波特率 : 2400bps

      數(shù)據(jù)位 : 7 位

      停止位 : 1 位

      奇偶性 : 偶校驗(yàn)方式

      2. 通訊軟件的編制

      通訊軟件采用 Turbo C 設(shè)計(jì) , 是一個內(nèi)存駐留程序 , 當(dāng)通訊條件( AD-4322A 顯示的數(shù)據(jù)穩(wěn)定) 滿足時(shí),通訊結(jié)果以中斷方式采集到計(jì)算機(jī) , 存放于內(nèi)存 0000: 0200H 處。駐留程序在內(nèi)存中占 200 節(jié)( 每節(jié)16 個字節(jié)) , 約 3K 。位置由系統(tǒng)自動分配。程序清單如下 :

      / *a. c: 主程序* /

      # include”dos. h”

      # include”stdio . h' ”

      void tsr ( unsigned int) ;

      void interrupt seri( void) ;

      char far * rec =( char far *)MK_FP( 0x0000, 0x0200) ;

      / *通訊數(shù)據(jù)在內(nèi)存中的起始位置* /

      main( )

      { disable( ) ; / *關(guān)閉低級到中斷* /

      setvect( 0x0c, seri) ; / *設(shè)置中斷程序入口地址* /

      outportb( 0x21, 0x24) ; / *向 COMI 發(fā)送通訊參數(shù)* /

      outportb( 0x3fb, 0x80) ;

      outportb( 0x3f8, 0x30) ;

      outportb( 0x3f9, 0x00) ;

      outportb( 0x3fb, 0x0a) ;

      outportb( 0x3fc, 0x08) ;

      outportb( 0x3f9, 0x01) ;

      enable( ) ; / *開放低級別中斷* /

      tar( 200) ;

      }

      void tsr ( unsigned int size)

      / *內(nèi)存駐留子程序* /

      / *功能: 結(jié)束主程序并將主程序駐留在內(nèi)存中* /

      { union REGS r;

      r. h. ah =0x31; / * INF 2IH 中的入口參數(shù), 使用 31# 子功能* /

      r. h. al=0;

      r. x . dx =size; / *編繹, 連接后駐留內(nèi)存程序的長度* /

      int86( 0x21. &r. & r) ; / *系統(tǒng)功能調(diào)用* /

      }

      void interrupt seri ( void)

      / *中斷子程序* /

      / *功能: 將 AD-4422A 的數(shù)據(jù)采集過來,存放于內(nèi)存 0000: 0200H 處* /

      { char far *recl =( char far *)MK FP( 0x0000, 0x0200) ;

      ( *rec) =inportb( 0x3f8) ; / *從 COMI 口取回一個字節(jié)* /

      if ( ( *rec) ==0x0a

      rec=rec1;

      else

      rec ++ ;

      outporbt( 0x20, 0x20) ; }

      3. “軟件接口—數(shù)據(jù)處理程序

      通訊的結(jié)果數(shù)據(jù)存放于內(nèi)存0000: 0200H 處 , 但 FOXPRO 沒有這種數(shù)據(jù)的處理能力 ,為此 ,必須制作一個“軟件接口” , 將存放于內(nèi)存中的數(shù)據(jù)轉(zhuǎn)換成 FOXPRO 處理的數(shù)據(jù)形式 。

      在這里, 用 C 語言開發(fā)了一個小程序,將內(nèi)存 0000: 0200H 處的數(shù)據(jù)輸出到一個文本文件 ,以便利用。程序清單如下 :

      # include”dos. h”

      # include”stdio . h”

      char far * rec =( char far *)MK_FP( 0x0000, 0x0200) ;

      / *定義要處理的數(shù)據(jù)在內(nèi)存中的位置* /

      main( )

      { FILE *f. *fopen( ) ;

      int i;

      f=fopen( ”data . dat” ,”w”) ;

      / *data . dat 是存放通訊結(jié)果數(shù)據(jù)的文本文件* /

      for( i=0; i<16; i ++ )

      fpute( rec[ i] , f) ;

      fclose( f) ;

      exit( 0) ; }

      4.結(jié)束語

      上述程序在 AST4/66d 上調(diào)試通過 。實(shí)現(xiàn)了計(jì)算機(jī)與 AD - 4322A的通訊, 并對通訊數(shù)據(jù)進(jìn)行和必要的處理。這種方法還可以推廣應(yīng)用到其他類型的稱重顯示儀表。有興趣的同行不妨一試 。

      稱重顯示儀表與計(jì)算機(jī)的通訊是一項(xiàng)基礎(chǔ)的技術(shù)工作, 為采用計(jì)算機(jī)管理計(jì)量信息奠定了非常堅(jiān)實(shí)的技術(shù)基礎(chǔ)。

       

      本文源于網(wǎng)絡(luò)轉(zhuǎn)載,如有侵權(quán),請聯(lián)系刪除

      分享到