侯佳亮 張濤 盧涵宇
摘要:隨著計(jì)算機(jī)和物聯(lián)網(wǎng)技術(shù)的快速發(fā)展,人們對(duì)室內(nèi)溫度控制的要求越來(lái)越高。本文設(shè)計(jì)的室內(nèi)測(cè)溫控制系統(tǒng),以AT89C52芯片為核心,采用單片機(jī)、DS18820傳感器為測(cè)量元件,按鍵設(shè)定為輸入,通過(guò)LCDl602顯示構(gòu)成自動(dòng)化測(cè)溫控制系統(tǒng)。應(yīng)用定值開關(guān)算法及溫度控制系統(tǒng)軟件,最終實(shí)現(xiàn)對(duì)室內(nèi)溫度的精確實(shí)時(shí)監(jiān)測(cè)和自動(dòng)調(diào)控。
關(guān)鍵詞:AT89C52;DSl8820溫度傳感器;LCD1602;溫度控制
中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-3044(2020)13-0242-03
溫度是反映物體或者環(huán)境的冷熱程度,隨著科技的進(jìn)步和人們生活水平的不斷改善,溫度自動(dòng)檢測(cè)與控制在工農(nóng)業(yè)等方面應(yīng)用越來(lái)越普及,比如在智能家居中溫度的自動(dòng)調(diào)節(jié),蔬菜大棚智能溫室等。因此室內(nèi)溫度檢測(cè)系統(tǒng)的廣泛應(yīng)用也逐漸成為研究熱點(diǎn)。
本論文設(shè)計(jì)在結(jié)合溫度檢測(cè)與單片機(jī)功能的基礎(chǔ)上,設(shè)計(jì)以單片機(jī)為核心的測(cè)溫系統(tǒng)。主要采用模塊化和層次化的理念,把溫度獲取、單片機(jī)計(jì)算以及LCD顯示系統(tǒng)性相結(jié)合。測(cè)溫系統(tǒng)以5l單片機(jī)最小系統(tǒng)為核心,DSl8820傳感器為測(cè)量元件,按鍵設(shè)定為輸入,通過(guò)LCDl602顯示構(gòu)成自動(dòng)化測(cè)溫控制系統(tǒng)。從而實(shí)現(xiàn)室內(nèi)溫度的實(shí)時(shí)監(jiān)控以及超過(guò)(低于)設(shè)定溫度時(shí)并進(jìn)行自動(dòng)報(bào)警,同時(shí)可以控制其他升溫(降溫)設(shè)備系統(tǒng),以此來(lái)維持室內(nèi)溫度的恒定。
1整體系統(tǒng)電路設(shè)計(jì)
基本單片機(jī)的室內(nèi)測(cè)溫控制系統(tǒng)設(shè)計(jì)共有六大電路部分:主控電路、溫度測(cè)量電路、溫度顯示部分、溫度設(shè)定電路、溫度控制電路、溫度報(bào)警電路。系統(tǒng)的整體設(shè)計(jì)框圖如圖1所示。主控部分采用AT89C52單片機(jī)作為主體,編程控制硬件電路,實(shí)現(xiàn)自動(dòng)檢測(cè)參數(shù)指標(biāo)。溫度測(cè)量電路主要進(jìn)行溫度的檢測(cè),溫度的測(cè)量主要是對(duì)溫室內(nèi)的溫度進(jìn)行實(shí)時(shí)的采集,DS18820芯片把所采集到的溫度傳送給主控制單元;溫度的設(shè)定部分主要是根據(jù)室內(nèi)所需要。
需要的相對(duì)恒定的溫度范圍進(jìn)行設(shè)定(包括溫度范圍的上限值和溫度范圍的下限值)。溫度顯示電路主要是把主控單元輸出的數(shù)據(jù)通過(guò)LCDl602液晶顯示出來(lái),以便看工作人員觀察;溫度的控制部分主要是實(shí)時(shí)溫度不在所設(shè)定的溫度范圍內(nèi)時(shí),通過(guò)控制外部降溫或者升溫設(shè)備絕對(duì)室內(nèi)進(jìn)行經(jīng)文或者升溫處理;溫度的報(bào)警電路設(shè)計(jì)主要是在實(shí)時(shí)溫度如果不在所設(shè)定的溫度范圍內(nèi)時(shí)會(huì)自動(dòng)發(fā)出報(bào)警提醒。
2主要硬件設(shè)計(jì)
2.1主控電路
主控電路的硬件連接比較簡(jiǎn)單,可以利用單片機(jī)的引腳口P1、P2、P3中的任意一個(gè)接口與單總線連接起來(lái)從而實(shí)現(xiàn)雙向數(shù)據(jù)傳輸,同時(shí)還可以通過(guò)轉(zhuǎn)換器串行口使單片機(jī)與和計(jì)算機(jī)相連接,這樣一來(lái)便可以是實(shí)現(xiàn)溫控系統(tǒng)與Windows操作系統(tǒng)之間進(jìn)行軟件管理。
單片機(jī)工作需要三個(gè)基本條件:接電路供電電源、接石英晶體振蕩器和按鍵復(fù)位電路以及把程序燒錄到單片機(jī)最小系統(tǒng)芯片中,如圖2所示。
STC89C52單片機(jī)的最小化系統(tǒng)的設(shè)計(jì)中只使用了單片機(jī)的一片集成化電路,這樣一來(lái)可以實(shí)現(xiàn)電路系統(tǒng)的低功耗、簡(jiǎn)單運(yùn)算控制等。
單片機(jī)通常情況下在每次正常的開機(jī)或者工作過(guò)程中處于非正常工作狀態(tài)時(shí),都需要對(duì)系統(tǒng)進(jìn)行初始化操作,以便中央處理單元(CPU)和其他的功能性部件都處于一個(gè)確定話的初始狀態(tài),在并在此以后按照這個(gè)狀態(tài)開始后續(xù)的工作。從單片機(jī)的工作電路原理中可以看出單片機(jī)或者其最小系統(tǒng)的復(fù)位工作都是需要外部電路進(jìn)行實(shí)現(xiàn)的。其中原理為當(dāng)時(shí)鐘電路開始工作以后,如果在單片機(jī)的RST(復(fù)位)引腳上出現(xiàn)兩個(gè)或者兩個(gè)以上的機(jī)器周期處于高電平的工作狀態(tài)時(shí),此時(shí)單片機(jī)可以實(shí)現(xiàn)初始化狀態(tài)。
2.2溫度測(cè)量電路
本設(shè)計(jì)采用DSl8820溫度傳感器芯片。該芯片的內(nèi)部結(jié)構(gòu)如圖3所示。該傳感器主要有三部分組成,分別為64位的閃存ROM、溫度傳感器以及非易失性溫度報(bào)警觸發(fā)器(Non-vola-tile Temperature Marm Starter)TH和TL。這種智能傳感器的供電方式?jīng)]有太多的限制,既可以通過(guò)寄生供電(Parasite Power)也可以通過(guò)外部電源(+5V)另外供電。如果是在寄生供電的情況下,在總線處于高電平時(shí)DSl8820便可以從總線上獲得能量存儲(chǔ)到自己內(nèi)部電容上,當(dāng)總線處于低電平時(shí),便可以有自己內(nèi)部電容為其供電。
2.3溫度顯示電路
本測(cè)溫控制系統(tǒng)的顯示主要是體現(xiàn)在實(shí)時(shí)檢測(cè)溫度變化范圍以及與溫度相關(guān)數(shù)據(jù)的顯示。由于LCD液晶顯示不僅可以顯示數(shù)字,還可以顯示文字、圖形等,而且背光的亮度也是可調(diào)節(jié)以便達(dá)到節(jié)能的標(biāo)準(zhǔn)。因此在本設(shè)計(jì)中研究的溫控電路設(shè)計(jì)中顯示模塊使用的是LCD1602液晶,系統(tǒng)的顯示電路可以用來(lái)顯示DS18820采集到的周圍環(huán)境或者物體溫度的實(shí)時(shí)溫度和相關(guān)數(shù)值等。溫度顯示電路如圖4所示。
2.4溫度控制電路
溫度控制模塊包含:降溫電路和升溫電路二個(gè)子模塊。降溫電路的設(shè)計(jì)中主要是由NPN三極管、繼電器、降溫模擬風(fēng)扇等元件組成。三極管的集電極通過(guò)一個(gè)單向?qū)ǖ亩O管接的是+5V的電壓源,基極是通過(guò)一個(gè)電阻(R6)和單片機(jī)的P1.5口相連接,三極管的發(fā)射極接地,而在二極管D2的兩端并聯(lián)一個(gè)繼電器,繼電器的作用是控制降溫風(fēng)扇對(duì)溫室內(nèi)的溫度進(jìn)行降溫處理。通過(guò)這樣的電路設(shè)計(jì)可以對(duì)室內(nèi)進(jìn)行通風(fēng),以便達(dá)到降溫的目的。
升溫電路的設(shè)計(jì)中同樣也是由NPN三極管、控制繼電器、模擬升溫加熱絲等組成。三極管的集電極通過(guò)一個(gè)單向?qū)ǖ亩O管接的是VCC電壓源,基極是通過(guò)一個(gè)電阻(R7)和單片機(jī)的P1.6口相連接,三極管的發(fā)射極接地,而在二極管D4的兩端并聯(lián)一個(gè)繼電器,繼電器的作用是控制升溫加熱絲對(duì)溫室內(nèi)的溫度進(jìn)行升溫處理。通過(guò)這樣的電路設(shè)計(jì)可以對(duì)室內(nèi)進(jìn)行升溫處理。
2.5溫度報(bào)警電路
本溫控系統(tǒng)的報(bào)警電路設(shè)計(jì)主要是由PNP三極管、限流電阻和LED發(fā)光二極管組成。其中PNP三極管的發(fā)射極接的是+5V的電壓源,三極管的基極可以通過(guò)一個(gè)1K的電阻和單片機(jī)的P1.3口以及P1.4口相連接,三極管的集電極可以接地。通過(guò)這樣的電路設(shè)計(jì)可以實(shí)現(xiàn)溫度報(bào)警的目的,溫度報(bào)警的電路如圖5所示。
本溫控系統(tǒng)所設(shè)計(jì)的溫度報(bào)警電路的主要工作方法是:當(dāng)DSl8820傳感器所獲取的實(shí)際溫度在所設(shè)定的溫度范圍之內(nèi)時(shí),對(duì)應(yīng)于單片機(jī)P1.4口輸出的是高電平,此時(shí)PNP三極管的發(fā)射極和基極之間是不會(huì)導(dǎo)通的,因此發(fā)射極和集電極之間不能構(gòu)成回路,報(bào)警指示燈也就不會(huì)被點(diǎn)亮;同樣的道理,如果被測(cè)量的溫度不在所設(shè)定的范圍之內(nèi)(高于設(shè)定溫度范圍的最大值或者低于設(shè)定溫度范圍的最小值),此時(shí)單片機(jī)對(duì)應(yīng)的I/O引腳便會(huì)輸出低電壓,PNP三極管的發(fā)射極和基極之間便會(huì)被導(dǎo)通,此時(shí)控制發(fā)射極和集電極之間的回路也會(huì)被導(dǎo)通,對(duì)應(yīng)的報(bào)警指示燈會(huì)被點(diǎn)亮。
2.6電源模塊
本設(shè)計(jì)電源模塊通過(guò)電路設(shè)計(jì)可以給系統(tǒng)中的各個(gè)元器件進(jìn)行供電,以保證系統(tǒng)的正常運(yùn)行。電源電路如圖6所示,供電電路由濾波器、變壓器、集成穩(wěn)壓以及二極管整流橋構(gòu)成了該系統(tǒng)穩(wěn)壓電源電,可以提供穩(wěn)定而且合適的電能。
3系統(tǒng)測(cè)試和實(shí)現(xiàn)
本系統(tǒng)的軟件設(shè)計(jì)主要分三大模塊:系統(tǒng)主程序模塊、溫度采集模塊程序、LCD1602顯示驅(qū)動(dòng)程序模塊。系統(tǒng)需要完成對(duì)各接口芯片的初始化,設(shè)置啟動(dòng)/清除標(biāo)志寄存器、顯示寄存器和語(yǔ)音寄存器,并對(duì)它們進(jìn)行初始化,還需要中斷向量的設(shè)計(jì)以及開中斷、循環(huán)等待等工作,溫度檢測(cè)子程序主要是溫度控制,LCD顯示子程序主要是溫度顯示和報(bào)警。系統(tǒng)主程序流程圖如圖7所示。
4結(jié)論
本文設(shè)計(jì)了基于單片機(jī)的室內(nèi)溫度測(cè)量控制系統(tǒng),系統(tǒng)包含AT89C52單片機(jī)、DS18820數(shù)字溫度傳感器、LCD1602的顯示電路、溫度設(shè)定電路等電路,系統(tǒng)中選擇定值開關(guān)控制法、PID線性溫度控制法和智能溫度控制法進(jìn)行搭配組合,實(shí)現(xiàn)對(duì)水溫的精確監(jiān)控基于系統(tǒng)操作簡(jiǎn)單,實(shí)用性強(qiáng)。