0 引言
在工農(nóng)業(yè)生產(chǎn)和日常生活中,溫度的測(cè)量及控制越來(lái)越重要。傳統(tǒng)的溫度控制系統(tǒng)采用熱敏電阻器或熱電偶測(cè)量溫度,,但是由于模擬溫度傳感器輸出的是模擬信號(hào),必須經(jīng)過A/D轉(zhuǎn)換等環(huán)節(jié)才能獲得數(shù)字信號(hào),,再加上這種溫度采集電路有時(shí)需要冷端補(bǔ)償電路,,這樣增加了電路的復(fù)雜性,且電路易受干擾,使采集到的數(shù)據(jù)準(zhǔn)確性不高,。隨著技術(shù)的發(fā)展,,目前國(guó)際上新型溫度傳感器已從模擬式向數(shù)字式,從集成化向智能化,、網(wǎng)絡(luò)化的方向飛速發(fā)展,。智能化溫度傳感器DS18B20將溫度傳感器、寄存器,、接口電路集成在一個(gè)芯片中,,能直接輸出數(shù)字信號(hào)。本論文設(shè)計(jì)了以ATmega16單片機(jī)和DS18B20為主構(gòu)成的智能溫控系統(tǒng),,該系統(tǒng)的溫度啟控點(diǎn)可以根據(jù)用戶需要而自行設(shè)定,。
1 系統(tǒng)控制原理及總體構(gòu)成
1.1 系統(tǒng)總體構(gòu)成
溫控系統(tǒng)主要有2大任務(wù);采集溫度信息和能對(duì)溫度實(shí)時(shí)控制,。為完成控制要求,,本智能溫控系統(tǒng)的總體構(gòu)成如圖1所示。
1.2 系統(tǒng)控制原理
智能溫控系統(tǒng)通過DS18B20采集溫度信息并將其傳送到ATmega16單片機(jī)中,,單片機(jī)再將采集的溫度信息與用戶設(shè)定的溫度值進(jìn)行比較,,從而控制加熱/通風(fēng)執(zhí)行機(jī)構(gòu)是否需要加熱或降溫。用戶可通過鍵盤輸入來(lái)設(shè)置溫度值,,LCD顯示用戶設(shè)定的溫度值,、當(dāng)前采集溫度值。如果發(fā)生故障時(shí),,系統(tǒng)發(fā)出聲,、光報(bào)警。
2 系統(tǒng)的硬件設(shè)計(jì)
系統(tǒng)硬件電路的設(shè)計(jì)主要包括4大部分:?jiǎn)纹瑱C(jī)核心部分,、DS18B20溫度采集模塊,、加熱/通風(fēng)執(zhí)行機(jī)構(gòu)、報(bào)警電路,。
2.1 單片機(jī)核心部分
ATmegal6單片機(jī)采用Harvard結(jié)構(gòu),,內(nèi)置WDT,具有高速,、低功耗,,可直接驅(qū)動(dòng)LED、SSR或繼電器等特點(diǎn),,因此本系統(tǒng)采用該單片機(jī)作為微處理器中,。單片機(jī)核心部分的設(shè)計(jì)主要包括ATmega16單片機(jī)的最小系統(tǒng)、4×4鍵盤,、漢字式LCD(SMG12864)液晶顯示,、電壓檢測(cè)和報(bào)警電路的設(shè)計(jì),。其中,PB2,,PB3作為電壓檢測(cè)輸入端,,若系統(tǒng)發(fā)生欠壓、失壓或過壓時(shí)可產(chǎn)生報(bào)警信號(hào),;PB6、PB7與報(bào)警電路連接,,控制聲,、光報(bào)警;PC端8個(gè)引腳與SMG12864A連接,,控制漢字式LCD顯示,;PC端8個(gè)引腳外接4×4鍵盤,使用戶進(jìn)行溫度設(shè)定,;PD4,、PD5分別作為加熱執(zhí)行機(jī)構(gòu)和通風(fēng)執(zhí)行機(jī)構(gòu)的控制信號(hào)輸出端;PA0與DS18B20的DQ進(jìn)行連接,,作為溫度采集信號(hào)輸入端,。
2.2 DS18B20溫度采集模塊
在眾多應(yīng)用于溫度監(jiān)測(cè)的溫敏元件中,雖然溫敏電阻成本低,,但后續(xù)電路復(fù)雜,,且需要進(jìn)行溫度標(biāo)定,因此本系統(tǒng)采用DS18B20進(jìn)行溫度采集,。DS18B20是美國(guó)Dallas半導(dǎo)體公司生產(chǎn)的新一代1-wire總線的數(shù)字式溫度傳感器,,測(cè)量范圍在-55~+125℃,最大分辨可達(dá)0.062 5℃,。
DS18B20的TO-92封裝有3個(gè)引腳:GND,、DQ和VDD。DS18B20可采用2種方式供電:一種是采用電源供電方式(即GND與地線連接,,DQ與ATme-ga16的PA0連接,,VDD與5V電源連接);另一種是寄生電源供電方式(即VDD和GND接地,,DQ與ATmega16的PA0連接),。由于外部電源供電方式,工作穩(wěn)定可靠,,抗干擾能力強(qiáng),,電路簡(jiǎn)單,因此本系統(tǒng)采用外部電源供電方式,。外部電源供電方式的I/O線可不需要接強(qiáng)上拉,,不存在電源電流不足的問題,。
DS18B20內(nèi)部自帶A/D轉(zhuǎn)換器,通過內(nèi)部的溫度采集,、A/D數(shù)據(jù)轉(zhuǎn)換等過程,,以形成與溫度相對(duì)應(yīng)的數(shù)字值,最后將該數(shù)字值由DS18B20的DQ端經(jīng)PA0送給ATmega16單片機(jī),。測(cè)溫原理如圖2所示,。
2.3 加熱/通風(fēng)執(zhí)行機(jī)構(gòu)
加熱/通風(fēng)主要是通過控制風(fēng)扇轉(zhuǎn)動(dòng)以達(dá)到降溫的目的,或者通過控制加熱器加熱達(dá)到升溫的目的,。溫度的上升或下降具有一定的慣性,,因此要想達(dá)到精度較高的溫控效果必須要設(shè)計(jì)相應(yīng)的控制電路。傳統(tǒng)的加熱/通風(fēng)執(zhí)行機(jī)構(gòu)可能采用電磁繼電器作為開關(guān)元件,,其缺點(diǎn)是壽命短,、開關(guān)速度慢、溫度變化慣性大,,難以滿足工藝要求,。本系統(tǒng)采用固態(tài)繼電器(Solid State Relay,SSR)作為加熱/通用執(zhí)行機(jī)構(gòu)的開關(guān)元件,,它具有壽命長(zhǎng),、可靠性高、開關(guān)速度快,、電磁干擾小,、無(wú)噪聲、無(wú)火花等特點(diǎn),。
要達(dá)到較好的溫控效果,,風(fēng)扇的轉(zhuǎn)速和通過加熱器的電流大小應(yīng)能發(fā)生改變,即功率可調(diào),。采用可控硅實(shí)現(xiàn)交流調(diào)功時(shí)通常有2種方法:一種是改變負(fù)載電壓波形的導(dǎo)通角,,即調(diào)相;另一種是負(fù)載電壓波形不變而改變其電壓波形在時(shí)間段內(nèi)的出現(xiàn)次數(shù),,即PWM脈沖調(diào)功,。調(diào)相調(diào)功采用移相觸發(fā),PWM脈沖調(diào)功采用過零觸發(fā),。由于過零觸發(fā)方式不對(duì)電網(wǎng)造成嚴(yán)重污染和干擾其它用電設(shè)備,,是應(yīng)用較為廣泛的一種方法,因此本系統(tǒng)采用PWM調(diào)功,??梢酝ㄟ^軟件編程方式由ATmega16的PD4(OC1B)和PD5(OC1A)直接輸出PWM波形來(lái)控制風(fēng)扇的轉(zhuǎn)速和加熱器電流的大小。
加熱/通風(fēng)執(zhí)行機(jī)構(gòu)的開關(guān)元件選用交流過零觸發(fā)型SSR,,控制方法采用過零觸發(fā),,當(dāng)控制信號(hào)輸入后,,SSR在交流電源為零電壓附近導(dǎo)通。通風(fēng)執(zhí)行機(jī)構(gòu)的電路如圖3所示,,加熱執(zhí)行機(jī)構(gòu)的電路與此電路類似,。
2.4 報(bào)警電路
本系統(tǒng)采用蜂鳴器作為聲音報(bào)警電路,它由晶體管和蜂鳴器組成,。采用發(fā)光二極管作為系統(tǒng)異常顯示,,它由紅、綠發(fā)光二極管及限流電阻構(gòu)成,。單片機(jī)工作在正常情況下時(shí),,綠色發(fā)光二極管點(diǎn)亮,蜂鳴器不發(fā)聲,。當(dāng)溫度測(cè)量值超出給定的上、下限或者系統(tǒng)出現(xiàn)低電壓時(shí),,由ATmega16單片機(jī)的PB6控制蜂鳴器發(fā)聲,,PB7控制綠色發(fā)光二極管熄滅,而紅色發(fā)光二極管點(diǎn)亮,??刂品澍Q器輸出不同聲音而區(qū)分系統(tǒng)是電壓異常還是測(cè)量值超出異常。
3 系統(tǒng)的軟件設(shè)計(jì)
本系統(tǒng)采用ATmega16作為核心處理器件,,上電時(shí)首先通過PB2,、PB3檢測(cè)系統(tǒng)電壓是否異常,若異常發(fā)出報(bào)警信號(hào),。在電壓正常情況下將經(jīng)過DS18B20現(xiàn)場(chǎng)實(shí)時(shí)采集到的溫度值存入ATmega16的內(nèi)部數(shù)據(jù)存儲(chǔ)器,,并送SMG12864A顯示,同時(shí)與設(shè)定的溫度值進(jìn)行比較,,然后由ATme-ga16輸出控制信號(hào)去控制加熱/通風(fēng)執(zhí)行機(jī)構(gòu),。進(jìn)行溫度控制程序設(shè)計(jì)時(shí)還應(yīng)考慮越限報(bào)警。當(dāng)采集到的溫度值與設(shè)定的溫度值進(jìn)行比較后,,若發(fā)現(xiàn)當(dāng)前溫度值越限,,則產(chǎn)生報(bào)警信號(hào)。因此,,本系統(tǒng)的軟件設(shè)計(jì)主要包括:系統(tǒng)初始化,,鍵盤掃描、溫度讀取,、溫度顯示,、報(bào)警、加熱控制和通風(fēng)控制等,,這些操作分別由相應(yīng)子程序模塊完成,。其軟件設(shè)計(jì)流程如圖4所示,。
4 結(jié)語(yǔ)
該智能溫控系統(tǒng)在Proteus上仿真成功后,進(jìn)行了電路實(shí)物的制作,,并成功完成了整機(jī)調(diào)試,。整機(jī)在實(shí)際運(yùn)行中完全達(dá)到設(shè)計(jì)要求,并具有較高的可靠性,。若將該系統(tǒng)加以適當(dāng)?shù)臄U(kuò)展,,可以組成功能更加強(qiáng)大的溫控系統(tǒng),能形成多點(diǎn),、無(wú)線傳輸?shù)臏囟冗h(yuǎn)程監(jiān)控網(wǎng)絡(luò),。