RS-485接口在真空測量中的應(yīng)用

2014-03-10 王遜 北京大學(xué)電子學(xué)系,

  本文以DL系列真空計為例,介紹RS-485接口在真空計中的使用方法。

  近年來,許多用戶要求用計算機(jī)根據(jù)壓強(qiáng)、溫度等參量對一個系統(tǒng)進(jìn)行控制。壓強(qiáng)、溫度等傳感器通過RS-485接口將數(shù)據(jù)傳送給計算機(jī)。選擇RS-485是因為它能允許多個傳感器連接到同一總線上,如圖1所示。

RS-485接口連接示意圖

圖1 RS-485接口連接示意圖

  計算機(jī)(或其它主設(shè)備)可以在任意指定時刻與其中一個傳感器(從設(shè)備)通信,每一個傳感器都有一個獨(dú)立地址。計算機(jī)若要得到某一傳感器的信息,就發(fā)送命令到總線,命令中包含所需采集數(shù)據(jù)傳感器的地址,發(fā)送后就等待讀傳感器的應(yīng)答。從設(shè)備收到自己地址的信息后,就通過總線發(fā)送數(shù)據(jù)給計算機(jī)。計算機(jī)與從設(shè)備之間應(yīng)有通訊協(xié)議,協(xié)議可以自行設(shè)計,也可以參照相關(guān)標(biāo)準(zhǔn)制定。

1、通訊協(xié)議

  DL系列真空計與主機(jī)的通訊協(xié)議是參照Modbus通訊協(xié)議及用戶要求制定的。Modbus協(xié)議是應(yīng)用于電子控制器上的一種通用語言,傳輸方式有兩種,即ASCII模式和RTU模式。ASCII模式是以ASCII碼發(fā)送,采用異步通訊傳送。

  例如:DL-6型電阻真空計的地址為06,波特率為9600,計算機(jī)應(yīng)發(fā)送:061],其中06為地址,DL-6接收信號后發(fā)送:25+3〉,表示壓強(qiáng)值為2.5×103Pa。

  再如DL-7型電離真空計的地址為07,發(fā)送壓強(qiáng)值為4.6×10-2Pa,波特率為9600,計算機(jī)應(yīng)發(fā)送:071],其中07為地址,DL-7接收信號后發(fā)送:46-2〉,表示壓強(qiáng)值為4.6×10-2Pa。RTU模式(遠(yuǎn)程終端單元)通信是以16進(jìn)制字符通信,1個起始位,8個數(shù)據(jù)位,1個停止位,有CRC校驗。

  例如:DL-6型電阻真空計的地址為06,波特率為9600。主機(jī)發(fā)送格式:060400000002CRC。其中:06表示DL-6地址,02表示發(fā)送2個數(shù)據(jù),即壓強(qiáng)值與指數(shù)值。

  DL-6接收信號后發(fā)送:060404001C0002CRC。其中:06表示DL-6地址,1C表示壓強(qiáng)數(shù)值,28的十六進(jìn)制數(shù),02表示壓強(qiáng)指數(shù)值,發(fā)送壓強(qiáng)值為2.8×102Pa。

  如果是負(fù)指數(shù),應(yīng)以補(bǔ)碼表示,例如10-1補(bǔ)碼為FFFF。

  再如DL-7型電離計的地址為07,波特率為9600。主機(jī)發(fā)送格式為070400000002CRC。其中:07表示DL-7地址,02表示發(fā)送2個數(shù)據(jù),即壓強(qiáng)值與指數(shù)值。

  DL-7接收信號后發(fā)送:070404001C0006CRC。其中:07表示DL-7地址,1C表示壓強(qiáng)數(shù)值,28的十六進(jìn)制數(shù),06表示壓強(qiáng)指數(shù)值,發(fā)送壓強(qiáng)值為2.8×10-6Pa。

  如果是DL-5型電離計,主機(jī)發(fā)送格式:050400000002CRC,DL-5接收信號后發(fā)送:050404001C0003CRC,表示發(fā)送:2.8×10-3Pa壓強(qiáng)值。

2、RS-485接口

  DL系列真空計RS-485接口采用UT-2211轉(zhuǎn)接器,真空計原有RS-232接口,經(jīng)過UT-2211轉(zhuǎn)換為RS-485信號,波特率是9600。主設(shè)備中的RS-485與UT-2211的連接方法如圖2所示。

主設(shè)備RS-485與UT-2211的連接

圖2 主設(shè)備RS-485與UT-2211的連接

3、真空計主程序框圖

  配RS-485接口的真空計使用ATMega16單片機(jī),AD變換使用2412芯片,用C語言編程。主程序框圖如圖3。

主程序框圖

圖3 主程序框圖

4、小結(jié)

  計算機(jī)與諸多傳感器相連時,采用RS-485接口可以將多個傳感器并接在同一總線上,每個傳感器有一個地址,計算機(jī)需要任何數(shù)據(jù),應(yīng)發(fā)送命令給該地址,該傳感器收到命令后發(fā)送數(shù)據(jù)給計算機(jī)。任何傳感器如沒有接到命令,是不會發(fā)送信號的,以保持總線僅傳送單一的信號。