陳鵬,黃斌
(福建省電子產(chǎn)品監(jiān)督檢驗所 福建 福州 350003)
溫度測量在環(huán)境試驗中是常見的一種測量方式。傳統(tǒng)的溫度測量設(shè)備顯示樣品溫度于設(shè)備箱上,需要試驗人員定時查看和記錄,這極大地浪費了人力而且?guī)碇T多不便。當溫度試驗箱種類多而且需要長時間試驗時情況更糟,因為試驗人員需要三班倒不間斷試驗過程記錄。因此,改造傳統(tǒng)的高低溫箱記錄方式已經(jīng)成為當務(wù)之急,同時,市場需要一種經(jīng)濟的設(shè)計方式。
本研究中一種以微控制器為基礎(chǔ)的溫度記錄系統(tǒng)被開發(fā),以滿足溫度數(shù)據(jù)測量記錄的低成本和靈活模式。開發(fā)系統(tǒng)的主要硬件包括一臺微型計算機,一個以BASIC Stamp[1]為基礎(chǔ)的微控制器電路板以及串行通訊鏈接設(shè)備。兩線串行接口數(shù)字傳感器DS1621[2]被用來進行溫度測量,微型計算機運行控制程序。一旦用戶在微型計算機界面上決定實時記錄信息,信息便通過RS-232端口送往微控制器。微型計算機和微控制器通過特定的串行通信協(xié)議通信,微型計算機告知微控制器溫度測量何時開始以及測量次數(shù)并等待微控制器發(fā)送具體數(shù)據(jù)。電路板的設(shè)計考慮了開放式結(jié)構(gòu)。該系統(tǒng)采用了28引腳易于插拔的插座來容納BASIC Stamp微控制器。微控制器將通過軟件模擬片內(nèi)集成總線I2C[3]轉(zhuǎn)換讀取的溫度數(shù)據(jù)并實時傳送回微型計算機。
系統(tǒng)的主要原理圖如圖1所示。其中BASIC Stamp微控制器是美國Parallax公司的產(chǎn)品,采用5 V直流電源供電,支持在線串行編程,最高時鐘頻率達到20 MHz,通訊波特率設(shè)定為9 600。BASIC Stamp微控制器帶有片上BASIC解釋芯片、內(nèi)存 (包括EEPROM和RAM)、5 V穩(wěn)壓器和一些通用輸入/輸出端口。該微控制器的工作溫度為0~70℃,每秒鐘約執(zhí)行4 000條指令,低電平復(fù)位。EEPROM可以存儲大約500條指令。端口P是雙向輸入/輸出復(fù)用管腳,可以進行設(shè)置,其中P0和P1分別與傳感器DS1621的串行數(shù)據(jù)線SDA以及串行時鐘線SCL管腳相連,上拉電阻均為2 kΩ接+5 V。因為增強特性,該微控制器是串行通信的很好選擇,通過簡單指令即可完成串行通信。微型計算機和BASIC Stamp(具體型號BS2)的通信連接如圖2所示,連接通過若干導(dǎo)線完成。注意DTR與ATN在下載完程序后要斷開以便傳感器的數(shù)據(jù)能傳回微型計算機。另外,下載程序時DTR與ATN必須連接,否則BASIC Stamp不能被微型計算機識別從而無法編程。
圖3給出的是地址線A2A1A0連接為000的示意圖,其余DS1621傳感器地址連線類推。DS1621傳感器溫度測量范圍從-55~125℃,一般能滿足日常環(huán)境試驗要求,測量時不需要外部元件,溫度轉(zhuǎn)換時間小于一秒。該傳感器工作電壓介于2.7~5.5 V,數(shù)據(jù)讀寫采用兩線串行接口,溫度為9位數(shù)值,管腳數(shù)為8個。
圖1 系統(tǒng)框圖Fig.1 Diagram of the system
圖2 微型計算機和BASIC Stamp的串行連接Fig.2 Serial link between the PC and the BASIC Stamp
圖3 DS1621傳感器連接圖Fig.3 Connection of the DS1621 sensor
微型計算機通過用戶友好命令程序與用戶交互,編程語言為Visual Basic 6.0[4]。首先用戶選擇環(huán)境試驗產(chǎn)品類別和記錄名稱,用戶可以自己修改產(chǎn)品類別選項(手動輸入)。然后用戶輸入試驗的起始時間和結(jié)束時間并輸入記錄保存的時間間隔便自動生成一個相應(yīng)文件用來保存定時的溫度記錄。圖4給出了部分用戶主界面并輪流顯示兩臺設(shè)備的溫度,用戶被允許視具體連接情況選擇通信串口號(COM1或COM2),但通信波特率固定。主界面會通知微控制器何時開始溫度測量,這里需要進行串口編程[5]。同時,程序還允許用戶修改記錄顯示的頻率。當記錄結(jié)束時,生成的文本文件中包括記錄時間、日期、設(shè)備號以及具體溫度值。用戶可以將生成的文件通過按鍵轉(zhuǎn)換成Excel文件并可添加其試驗信息并打印保存。
圖4 用戶主程序界面Fig.4 User command program interface
微控制器采取輪循的方法對所連接的DS1621溫度傳感器進行數(shù)字轉(zhuǎn)換的讀取。程序首先定義了若干變量并指定了讀取的數(shù)據(jù)線和時鐘線管腳,然后定義通信波特率。接著微控制器啟動溫度傳感器并進入設(shè)置寄存器定義為單一測量。在主程序中,微控制器啟動測量并發(fā)送指令EEh并等待轉(zhuǎn)換結(jié)束。在此之后,程序發(fā)送讀取溫度指令A(yù)Ah到傳感器并讀取溫度寄存器的高字節(jié)。接著,程序發(fā)送A8h讀取傳感器的計數(shù)器值。最后,程序發(fā)送A9h讀取傳感器的斜坡值。程序中用的最頻繁的是SHIFTOUT指令以及應(yīng)答子程序。另外,程序也使用了SHIFTIN指令。在這一系列步驟之后,程序根據(jù)經(jīng)驗公式轉(zhuǎn)換計算具體溫度值并判斷溫度的正負。最后,溫度值被以十進制數(shù)的形式通過串口回傳給微型計算機。
微控制器程序采用PBASIC語言編程,將編寫過的程序下載到微控制器并解釋是必要的,故而程序必須指定下載串口號和微控制器具體型號。當用戶按下Run按鍵程序,便進行語法檢查并下載執(zhí)行。至于EEPROM以及RAM的使用情況可以通過程序編輯器[6]查詢。
文中討論了新型簡易低成本溫度自動記錄系統(tǒng)的制作及編程,說明了環(huán)境試驗溫度集中自動記錄的低成本和簡單實現(xiàn)是可行的。整個實驗電路(不包含微型計算機)硬件成本不超過600元人民幣。系統(tǒng)成功地日夜連續(xù)測量記錄3個傳感器的溫度,分辨率為0.1℃。該系統(tǒng)已經(jīng)被證實有效,在本所環(huán)境試驗設(shè)備自動化改造初級階段中得到應(yīng)用驗證,較精確地記錄了溫度值,這可以通過溫度計顯示值加以比較。由于溫度測量范圍的局限,該研究項目的高溫測量能力有待進一步提高到200℃。由于采用的微控制器和溫度傳感器很靈巧方便,這給設(shè)計帶來了便利。
[1]Parallax Inc.BASIC Stamp Syntax and Reference Manual 2.2[EB/OL].(2005-02-08)[2011-07-08].http://www.parallax.com/Portals/0/Downloads/docs/prod/stamps/web-BSM-v2.2.pdf.
[2]Maxim Integrated Products.DS1621 Digital Thermometer and Thermostat[EB/OL].(2005-09-15)[2011-07-08].http://data sheets.maxim-ic.com/en/ds/DS1621.pdf
[3]何立民.I2C總線應(yīng)用系統(tǒng)設(shè)計[M].北京:北京航空航天大學(xué)出版社,1995.
[4]楊章偉.Visual Basic完全自學(xué)寶典[M].北京:清華大學(xué)出版社,2008.
[5]Jan Axelson.串行端口大全[M].北京:中國電力出版社,2001.
[6]Parallax Inc.BASIC Stamp Windows Editor V2.5.2.[EB/OL].(2011-03-11)[2011-07-08].http://www.parallax.com/Portals/0/Downloads/sw/bs/win/Setup-Stamp-Editor-v2.5.2.exe.