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