引 言
隨著時代的發(fā)展,數(shù)字化控制無疑是人們追求的目標(biāo)之一,它給人們帶來的方便也是不可否定的,其中數(shù)字溫度計就是一個典型的例子,它在信息、電子、物流等許多領(lǐng)域都有廣泛的應(yīng)用。隨著人們對它的要求越來越高,為現(xiàn)代人工作、科研、生活提供更好、更方便的設(shè)施,就需要從單片機(jī)技術(shù)人手,朝著數(shù)字化、智能化控制方向發(fā)展。
這里介紹一種數(shù)字溫度計的設(shè)計制作方案。該設(shè)計控制器使用單片機(jī)STC89C58,測溫傳感器使用LM94022,用FM1602C液晶顯示實(shí)現(xiàn)溫度顯示,設(shè)計制作了寬量程高精度多功能數(shù)字溫度計能準(zhǔn)確達(dá)到各種要求。本文設(shè)計研制的數(shù)字溫度計與傳統(tǒng)的溫度計相比,具有讀數(shù)方便,測溫范圍廣,測溫準(zhǔn)確的特點(diǎn),其輸出溫度和時間采用數(shù)字顯示,該數(shù)字溫度計不僅分辨率高,還可以設(shè)置報警溫度上下限,當(dāng)溫度達(dá)到高、低限溫控制點(diǎn)發(fā)出聲光報警。該設(shè)備主要用于對測溫比較準(zhǔn)確的場所或科研實(shí)驗(yàn)室。
1 系統(tǒng)設(shè)計方案的論證與比較
1.1 運(yùn)用LED數(shù)碼管顯示與運(yùn)用LCD液晶顯示溫度及時間
運(yùn)用LED顯示,提供的信息較少,界面不美觀,顯示時間和溫度極不方便,所占體積也大,且在要表達(dá)較多信息時(如兩路溫度值時和時間),需要大量的LED和占用較多的引腳,軟件設(shè)計也相對復(fù)雜。
LCD可以提供較強(qiáng)的頁面顯示功能,功率小,頁面相對于LED顯示更直觀,更明了;在顯示信息較多時,比LED所占的空間小,性價比更高。
很容易看出,在本設(shè)計中采用LCD作為顯示更好。
2.2 靈敏度選擇端GS0及GS1
LM94022根據(jù)對GS0,GS1施加的不同電平有4種靈敏度供用戶選擇,如表2所示。用戶可根據(jù)測溫范圍及接口電路的工作電壓條件合理選擇。靈敏度由GS0及GS1的電平確定,高電平要求VDD>1.5 V;低電平要求VDD<0.5 V。
2.3 LM94022的輸出特性
LM94022的輸出特性如圖2所示,這是測量溫度與輸出電壓在不同靈敏度時的特性。由于輸出電壓隨溫度升高而下降,其靈敏度為負(fù)值。在VDD=5 V時,不同靈敏度下幾個特定溫度值的輸出電壓如表2所示(典型值)。
數(shù)字溫度計電路設(shè)計的總體方案如圖3所示。采用STC89C58單片機(jī)作為主控器件;LCD采用FM1602,單片機(jī)中的P0作為其接口,并由P2.5~P2.7控制,用以驅(qū)動LCD的顯示;時鐘芯片采用DS1302,用腳P2.2~P2.4作為時鐘芯片控制引腳;LM94022作為溫度傳感芯片,并用TLC2543將其轉(zhuǎn)化成數(shù)字信號,用P3.2~P3.6作為ADC的控制引腳;P1口作為鍵盤的輸人口,用以接收由鍵盤輸出的信號;用P2.1和P2.0分別作為溫度過高和溫度過低的報警控制引腳,P3.7作為蜂鳴器的控制引腳。
3.1 溫度采樣
LM94022采用“10”模式,在0~100℃范圍內(nèi),用轉(zhuǎn)化公式:
T=(1 568-V)×0.122 699 38
對輸出電壓采樣(用運(yùn)放LM2015作電壓跟隨器)并用ADC轉(zhuǎn)化,由單片機(jī)提取,計算并轉(zhuǎn)化成溫度。
3.2 時鐘電路
時鐘采用備用電池,在第一次設(shè)定時間后,所儲存的信息不會丟失,待下一次電路啟動的時候,無需再次設(shè)定時間,方便使用。
3.3 人機(jī)交換電路
系統(tǒng)由鍵盤作為人機(jī)交換器,4×4結(jié)構(gòu)如圖4所示。其中,Time用于時間設(shè)定;L-tem和H-tem分別用于低溫和高溫設(shè)定;Return用于返回主界面。
3.4 復(fù)位功能
當(dāng)按下復(fù)位鍵時,對系統(tǒng)初始化,系統(tǒng)的低溫設(shè)置為0.0℃,高溫設(shè)置為90.0℃。
3.5 顯示界面
第一行顯示時間,第二行顯示第一路和第二路的溫度,當(dāng)出現(xiàn)緊急情況時,第二行顯示原因,第一行顯示第幾路出錯,并將有蜂鳴器鳴叫和LED燈提示。
3.6 數(shù)據(jù)存儲
硬件存儲功能沒有實(shí)現(xiàn),由于分工出現(xiàn)一些小的問題,導(dǎo)致軟硬件結(jié)合不當(dāng),設(shè)計脫節(jié),最終沒能實(shí)現(xiàn)存儲功能。
4 系統(tǒng)軟件設(shè)計
系統(tǒng)的軟件由三大模塊組成:主程序模塊、功能實(shí)現(xiàn)模塊和運(yùn)算控制模塊。
4.1 主程序流程
系統(tǒng)上電復(fù)位后,進(jìn)行初始化:選擇T0中斷(工作方式1)并設(shè)置定時器初值,溫度測試電路初始化,顯示電路初始化。若有按鍵按下,禁止T0中斷,顯示處理相應(yīng)事件的界面。處理完事件后,按下Return鍵,T0中斷重新開啟,回到正常的溫度顯示界面;沒有按鍵按下時,如果T0中斷,則更新溫度值,如圖5所示。
4.2 顯示更新程序流程
圖6為顯示更新程序流程圖。如果T0中斷,讀取溫度值并更新溫度值,溫度更新時間為50 ms。對新讀取的溫度值進(jìn)行處理,如果高于或低于設(shè)定溫度值,發(fā)出警報,相應(yīng)二極管發(fā)光。最終讀取并顯示溫度信息及時間。
5 測試與結(jié)果分析
5.1 系統(tǒng)調(diào)試參數(shù)分析
測試儀器:萬用表,加熱儀器。
采用程序模擬,事先在電腦軟件上將其模擬好后再下載到單片機(jī)中,由于時間有限,有部分硬件程序并未實(shí)現(xiàn)。下面就測試結(jié)果做大概描述:
表3給出了用萬用表測量LM94022在“10”模式下的電壓輸出值和PDF上的溫度值。
由表3得出顯示溫度比LM94022輸出所代表的溫度小0.46℃,于是將線性公式加以修正:
Tem=Tem+0.46
原因分析:可能是與限流電阻的壓降作用有關(guān),由于限流電阻的作用是必不可少的,而且LM94022輸出電壓波動不大,故用一修正值來彌補(bǔ)這一壓降,以達(dá)到較高精度。
5.2 系統(tǒng)實(shí)現(xiàn)的功能
(1)能數(shù)字顯示被測溫度,測量溫度范圍為0~100℃;
(2)分辨率不低于0.5℃;
(3)提高溫度測量精度,使分辨率不低于0.1℃;
(4)帶有計時和時間顯示功能;
(5)至少有高、低兩路限溫控制輸出接口控制外部電路,實(shí)際制作時可用發(fā)光二極管模擬顯示其控制狀態(tài)輸出;
(6)高、低兩路限溫控制點(diǎn)可在0~100℃范圍內(nèi)獨(dú)立設(shè)置;
(7)當(dāng)溫度達(dá)到高、低限溫控制點(diǎn)發(fā)出聲光報警;
(8)自動順時測量溫度值;
(9)多路溫度巡檢(至少兩路)。
另外,溫度傳感器可通過導(dǎo)線連接而移動,方便測量不同地點(diǎn)的溫度,切實(shí)達(dá)到多路測量可移動的效果,改變測量地點(diǎn)時操作方便。
6 結(jié) 語
該文報道的溫度計采用了高分辨率的溫度測控芯片LM94022,用FM1602C液晶顯示實(shí)現(xiàn)溫度顯示,以STC89C58單片機(jī)為控制中心,設(shè)計制作了寬量程、高精度、多功能數(shù)字溫度計能準(zhǔn)確達(dá)到各種要求。與傳統(tǒng)的溫度計相比,該數(shù)字溫度計具有讀數(shù)方便,測溫范圍廣,測溫準(zhǔn)確,其輸出溫度和時間采用數(shù)字顯示的特點(diǎn),不僅分辨率高,還可以設(shè)置報警溫度上下限,當(dāng)溫度達(dá)到高、低限溫控制點(diǎn)發(fā)出聲光報警,在實(shí)際溫度控制系統(tǒng)中有廣泛的應(yīng)用。