摘要:溫度測量在環(huán)境試驗(yàn)中是常見的一種測量方式。傳統(tǒng)的溫度測量設(shè)備顯示樣品溫度于設(shè)備箱上,需要試驗(yàn)人員定時(shí)查看和記錄,這極大地浪費(fèi)了人力而且?guī)碇T多不便。當(dāng)溫度試驗(yàn)箱種類多而且需要長時(shí)間試驗(yàn)時(shí)情況更糟,因?yàn)樵囼?yàn)人員需要三班倒不間斷試驗(yàn)過程記錄。因此,改造傳統(tǒng)的高低溫箱記錄方式已經(jīng)成為當(dāng)務(wù)之急,同時(shí),市場需要一種經(jīng)濟(jì)的設(shè)計(jì)方式。
本研究中一種以微控制器為基礎(chǔ)的溫度記錄系統(tǒng)被開發(fā),以滿足溫度數(shù)據(jù)測量記錄的低成本和靈活模式。開發(fā)系統(tǒng)的主要硬件包括一臺(tái)微型計(jì)算機(jī),一個(gè)以BASICStamp為基礎(chǔ)的微控制器電路板以及串行通訊鏈接設(shè)備。兩線串行接口
數(shù)字傳感器DS1621被用來進(jìn)行溫度測量,微型計(jì)算機(jī)運(yùn)行控制程序。一旦用戶在微型計(jì)算機(jī)界面上決定實(shí)時(shí)記錄信息,信息便通過RS-232端口送往微控制器。微型計(jì)算機(jī)和微控制器通過特定的串行通信協(xié)議通信,微型計(jì)算機(jī)告知微控制器溫度測量何時(shí)開始以及測量次數(shù)并等待微控制器發(fā)送具體數(shù)據(jù)。電路板的設(shè)計(jì)考慮了開放式結(jié)構(gòu)。該系統(tǒng)采用了28引腳易于插拔的插座來容納BASICStamp微控制器。微控制器將通過軟件模擬片內(nèi)集成總線I2C轉(zhuǎn)換讀取的溫度數(shù)據(jù)并實(shí)時(shí)傳送回微型計(jì)算機(jī)。
1、系統(tǒng)硬件設(shè)計(jì)
系統(tǒng)的主要原理圖如圖1所示。其中BASICStamp微控制器是美國Parallax公司的產(chǎn)品,采用5V直流電源供電,支持在線串行編程,zui高時(shí)鐘頻率達(dá)到20MHz,通訊波特率設(shè)定為9600。BASICStamp微控制器帶有片上BASIC解釋芯片、內(nèi)存(包括EEPROM和RAM)、5V穩(wěn)壓器和一些通用輸入/輸出端口。該微控制器的工作溫度為0~70℃,每秒鐘約執(zhí)行4000條指令,低電平復(fù)位。EEPROM可以存儲(chǔ)大約500條指令。端口P是雙向輸入/輸出復(fù)用管腳,可以進(jìn)行設(shè)置,其中P0和P1分別與傳感器DS1621的串行數(shù)據(jù)線SDA以及串行時(shí)鐘線SCL管腳相連,上拉電阻均為2kΩ接+5V。因?yàn)樵鰪?qiáng)特性,該微控制器是串行通信的很好選擇,通過簡單指令即可完成串行通信。微型計(jì)算機(jī)和BASICStamp(具體型號(hào)BS2)的通信連接如圖2所示,連接通過若干導(dǎo)線完成。注意DTR與ATN在下載完程序后要斷開以便傳感器的數(shù)據(jù)能傳回微型計(jì)算機(jī)。另外,下載程序時(shí)DTR與ATN必須連接,否則BASICStamp不能被微型計(jì)算機(jī)識(shí)別從而無法編程。
圖3給出的是地址線A2A1A0連接為000的示意圖,其余DS1621傳感器地址連線類推。DS1621傳感器溫度測量范圍從-55~125℃,一般能滿足日常環(huán)境試驗(yàn)要求,測量時(shí)不需要外部元件,溫度轉(zhuǎn)換時(shí)間小于一秒。該傳感器工作電壓介于2.7~5.5V,數(shù)據(jù)讀寫采用兩線串行接口,溫度為9位數(shù)值,管腳數(shù)為8個(gè)。
2、軟件設(shè)計(jì)
2.1微型計(jì)算機(jī)程序
微型計(jì)算機(jī)通過用戶友好命令程序與用戶交互,編程語言為VisualBasic6.0。首先用戶選擇環(huán)境試驗(yàn)產(chǎn)品類別和記錄名稱,用戶可以自己修改產(chǎn)品類別選項(xiàng)(手動(dòng)輸入)。然后用戶輸入試驗(yàn)的起始時(shí)間和結(jié)束時(shí)間并輸入記錄保存的時(shí)間間隔便自動(dòng)生成一個(gè)相應(yīng)文件用來保存定時(shí)的溫度記錄。圖4給出了部分用戶主界面并輪流顯示兩臺(tái)設(shè)備的溫度,用戶被允許視具體連接情況選擇通信串口號(hào)(COM1或COM2),但通信波特率固定。主界面會(huì)通知微控制器何時(shí)開始溫度測量,這里需要進(jìn)行串口編程。同時(shí),程序還允許用戶修改記錄顯示的頻率。當(dāng)記錄結(jié)束時(shí),生成的文本文件中包括記錄時(shí)間、日期、設(shè)備號(hào)以及具體溫度值。用戶可以將生成的文件通過按鍵轉(zhuǎn)換成Exeel文件并可添加其試驗(yàn)信息并打印保存。
2.2微控制器程序
微控制器采取輪循的方法對所連接的DS1621溫度傳感器進(jìn)行數(shù)字轉(zhuǎn)換的讀取。程序首先定義了若干變量并了讀取的數(shù)據(jù)線和時(shí)鐘線管腳,然后定義通信波特率。接著微控制器啟動(dòng)溫度傳感器并進(jìn)入設(shè)置寄存器定義為單一測量。在主程序中,
微控制器啟動(dòng)測量并發(fā)送指令EEh并等待轉(zhuǎn)換結(jié)束。在此之后,程序發(fā)送讀取溫度指令A(yù)Ah到傳感器并讀取溫度寄存器的高字節(jié)。接著,程序發(fā)送A8h讀取傳感器的計(jì)數(shù)器值。zui后,程序發(fā)送A9h讀取傳感器的斜坡值。程序中用的zui頻繁的是SHIFTOUT指令以及應(yīng)答子程序。另外,程序也使用了SHIFTIN指令。在這一系列步驟之后,程序根據(jù)經(jīng)驗(yàn)公式轉(zhuǎn)換計(jì)算具體溫度值并判斷溫度的正負(fù)。zui后,溫度值被以十進(jìn)制數(shù)的形式通過串口回傳給微型計(jì)算機(jī)。
微控制器程序采用PBASIC語言編程,將編寫過的程序下載到微控制器并解釋是必要的,故而程序必須下載串口號(hào)和微控制器具體型號(hào)。當(dāng)用戶按下Run按鍵程序,便進(jìn)行語法檢查并下載執(zhí)行。至于EEPROM以及RAM的使用情況可以通過程序編輯器查詢。
3、結(jié)束語
文中討論了新型簡易低成本溫度自動(dòng)記錄系統(tǒng)的制作及編程,說明了環(huán)境試驗(yàn)溫度集中自動(dòng)記錄的低成本和簡單實(shí)現(xiàn)是可行的。整個(gè)實(shí)驗(yàn)電路(不包含微型計(jì)算機(jī))硬件成本不超過600元人民幣。系統(tǒng)成功地日夜連續(xù)測量記錄3個(gè)傳感器的溫度,分辨率為0.1℃。該系統(tǒng)已經(jīng)被證實(shí)有效,在本所環(huán)境試驗(yàn)設(shè)備自動(dòng)化改造初級(jí)階段中得到應(yīng)用驗(yàn)證,較地記錄了溫度值,這可以通過溫度計(jì)顯示值加以比較。由于溫度測量范圍的局限,該研究項(xiàng)目的高溫測量能力有待進(jìn)一步提高到200℃。由于采用的微控制器和溫度傳感器很靈巧方便,這給設(shè)計(jì)帶來了便利。