![[畢業(yè)論文]溫控自動風(fēng)扇系統(tǒng)論文_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/4/2f4b4871-67de-41f4-9db8-3a2ed938e707/2f4b4871-67de-41f4-9db8-3a2ed938e7071.gif)
![[畢業(yè)論文]溫控自動風(fēng)扇系統(tǒng)論文_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/4/2f4b4871-67de-41f4-9db8-3a2ed938e707/2f4b4871-67de-41f4-9db8-3a2ed938e7072.gif)
![[畢業(yè)論文]溫控自動風(fēng)扇系統(tǒng)論文_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/4/2f4b4871-67de-41f4-9db8-3a2ed938e707/2f4b4871-67de-41f4-9db8-3a2ed938e7073.gif)
![[畢業(yè)論文]溫控自動風(fēng)扇系統(tǒng)論文_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/4/2f4b4871-67de-41f4-9db8-3a2ed938e707/2f4b4871-67de-41f4-9db8-3a2ed938e7074.gif)
![[畢業(yè)論文]溫控自動風(fēng)扇系統(tǒng)論文_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/4/2f4b4871-67de-41f4-9db8-3a2ed938e707/2f4b4871-67de-41f4-9db8-3a2ed938e7075.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、精準(zhǔn)溫度顯示的溫控自動風(fēng)扇系統(tǒng)方振杰 06電信1班 3060432035摘 要本設(shè)計為一種溫控風(fēng)扇系統(tǒng),具有靈敏的溫度感測和顯示功能,系統(tǒng)AT89C5 單片機(jī)作為控制平臺對風(fēng)扇轉(zhuǎn)速進(jìn)行控制。可由用戶設(shè)置高、低溫度值,測得溫度值在高低溫度之間時打開風(fēng)扇弱風(fēng)檔,當(dāng)溫度升高超過所設(shè)定的溫度時自動切換到大風(fēng)檔,當(dāng)溫度小于所設(shè)定的溫度時自動關(guān)閉風(fēng)扇,控制狀態(tài)隨外界溫度而定。所設(shè)高低溫值保存在溫度傳感器DS18B20內(nèi)部E2ROM中,掉電后仍然能保存上次設(shè)定值,性能穩(wěn)定,控制準(zhǔn)確。關(guān)鍵詞: 自動控制;單片機(jī);溫控;風(fēng)扇目 錄摘 要1目 錄21引言32 方案論證42.1 溫度傳感器的選用42.2 控制核心的
2、選擇52.3顯示電路52.4調(diào)速方式62.5控制執(zhí)行部件63 系統(tǒng)簡述74 硬件設(shè)計84.1、本系統(tǒng)各器件簡介84.1.1 DS18B20 單線數(shù)字溫度傳感器簡介84.1.2 AT89C52 單片機(jī)簡介94.1.3 八段LED 數(shù)碼管114.2 各部分電路設(shè)計124.2.1 電源電路124.2.2 數(shù)碼管顯示電路124.2.3 聲響、溫度采集、溫度設(shè)定以及復(fù)位電路134.2.4 溫控自動電路144.2.5無級調(diào)速電路155 軟件設(shè)計176 安裝調(diào)試19參考文獻(xiàn)20附錄1 程序流程圖21附錄2 源程序281引言生活中,我們經(jīng)常會使用一些與溫度有關(guān)的設(shè)備。比如,現(xiàn)在雖然不少城市家庭用上了空調(diào),但在
3、占中國大部分人口的農(nóng)村地區(qū)依舊使用電風(fēng)扇作為降溫防暑設(shè)備,春夏(夏秋)交替時節(jié),白天溫度依舊很高,電風(fēng)扇應(yīng)高轉(zhuǎn)速、大風(fēng)量,使人感到清涼;到了晚上,氣溫降低,當(dāng)人入睡后,應(yīng)該逐步減小轉(zhuǎn)速,以免使人感冒。雖然電風(fēng)扇都有調(diào)節(jié)不同檔位的功能,但必須要人手動換檔,睡著了就無能為力了,而普遍采用的定時器關(guān)閉的做法,一方面是定時時間長短有限制,一般是一兩個小時;另一方面可能在一兩個小時后氣溫依舊沒有降低很多,而風(fēng)扇就關(guān)閉了,使人在睡夢中熱醒而不得不起床重新打開風(fēng)扇,增加定時器時間,非常麻煩,而且可能多次定時后最后一次定時時間太長,在溫度降低以后風(fēng)扇依舊繼續(xù)吹風(fēng),使人感冒;第三方面是只有簡單的到了定時時間就關(guān)
4、閉風(fēng)扇電源的單一功能,不能滿足氣溫變化對風(fēng)扇風(fēng)速大小的不同要求。又比如在較大功率的電子產(chǎn)品散熱方面,現(xiàn)在絕大多數(shù)都采用了風(fēng)冷系統(tǒng),利用風(fēng)扇引起空氣流動,帶走熱量,使電子產(chǎn)品不至于發(fā)熱燒壞。要使電子產(chǎn)品保持較低的溫度,必須用大功率、高轉(zhuǎn)速、大風(fēng)量的風(fēng)扇,而風(fēng)扇的噪音與其功率成正比。如果要低噪音,則要減小風(fēng)扇轉(zhuǎn)速,又會引起電子設(shè)備溫度上升,不能兩全其美。為解決上述問題,我們設(shè)計了這套溫控自動風(fēng)扇系統(tǒng)。本系統(tǒng)采用高精度集成溫度傳感器,用單片機(jī)控制,能顯示實時溫度,并根據(jù)使用者設(shè)定的溫度自動在相應(yīng)溫度時作出小風(fēng)、大風(fēng)、停機(jī)動作,精確度高,動作準(zhǔn)確。2 方案論證本系統(tǒng)實現(xiàn)風(fēng)扇的溫度控制,需要有較高的溫度
5、變化分辨率和穩(wěn)定可靠的換檔停機(jī)控制部件。2.1 溫度傳感器的選用溫度傳感器可由以下幾種方案可供選擇:方案一:選用熱敏電阻作為感測溫度的核心元件,通過運(yùn)算放大器放大由于溫度變化引起熱敏電阻電阻的變化、進(jìn)而導(dǎo)至的輸出電壓變化的微弱電壓變化信號,再用AD轉(zhuǎn)換芯片ADC0809將模擬信號轉(zhuǎn)化為數(shù)字信號輸入單片機(jī)處理。方案二:采用熱電偶作為感測溫度的核心元件,配合橋式電路,運(yùn)算放大電路和AD轉(zhuǎn)換電路,將溫度變化信號送入單片機(jī)處理。方案三:采用數(shù)字式集成溫度傳感器DS18B20作為感測溫度的核心元件,直接輸出數(shù)字溫度信號供單片機(jī)處理。對于方案一,采用熱敏電阻有價格便宜、元件易購的優(yōu)點(diǎn),但熱敏電阻對溫度的細(xì)
6、微變化不敏感,在信號采集、放大、轉(zhuǎn)換過程中還會產(chǎn)生失真和誤差,并且由于熱敏電阻的R-T關(guān)系的非線性,其本身電阻對溫度的變化存在較大誤差,雖然可以通過一定電路予以糾正,但不僅將使電路復(fù)雜穩(wěn)定性降低,而且在人體所處溫度環(huán)境溫度變化中難以檢測到小的溫度變化。故該方案不適合本系統(tǒng)。對于方案二,采用熱電偶和橋式測量電路相對于熱敏電阻其對溫度的敏感性和器件的非線性誤差都有較大提高,其測溫范圍也非常寬,從-50攝氏度到1600攝氏度均可測量。但是依然存在電路復(fù)雜,對溫度敏感性達(dá)不到本系統(tǒng)要求的標(biāo)準(zhǔn),故不采用該方案。對于方案三,由于數(shù)字式集成溫度傳感器DS18B20的高度集成化,大大降低了外接放大轉(zhuǎn)換等電路的
7、誤差因素,溫度誤差很小,并且由于其感測溫度的原理與上述兩種方案的原理有著本質(zhì)的不同,使得其溫度分辨力極高。溫度值在器件內(nèi)部轉(zhuǎn)換成數(shù)字量直接輸出,簡化了系統(tǒng)程序設(shè)計,又由于該傳感器采用先進(jìn)的單總線技術(shù)(1-WRIE),與單片機(jī)的接口變的非常簡潔,抗干擾能力強(qiáng)。關(guān)于DS18B20的詳細(xì)參數(shù)參看下面“硬件設(shè)計”中的器件介紹。2.2 控制核心的選擇方案一:采用電壓比較電路作為控制部件。溫度傳感器采用熱敏電阻或熱電偶等,溫度信號轉(zhuǎn)為電信號并放大,由集成運(yùn)放組成的比較電路判決控制風(fēng)扇轉(zhuǎn)速,當(dāng)高于或低于某值時將風(fēng)扇切換到相應(yīng)檔位。方案二:采用單片機(jī)作為控制核心。以軟件編程的方法進(jìn)行溫度判斷,并在端口輸出控制
8、信號。對于方案一,采用電壓比較電路具有電路簡單、易于實現(xiàn),以及無需編寫軟件程序的特點(diǎn),但控制方式過于單一,不能自由設(shè)置上下限動作溫度,無法滿足不同用戶以及不同環(huán)境下的多種動作溫度要求,故不在本系統(tǒng)中采用。對于方案二,以單片機(jī)作為控制器,通過編寫程序不但能將傳感器感測到的溫度通過顯示電路顯示出來,而且用戶能通過鍵盤接口,自由設(shè)置上下限動作溫度值,滿足全方位的需求。并且通過程序判斷溫度具有極高的精準(zhǔn)度,能精確把握環(huán)境溫度的微小變化。故本系統(tǒng)采用方案二。2.3顯示電路方案一:采用五位共陽數(shù)碼管顯示溫度,動態(tài)掃描顯示方式。方案二:采用液晶顯示屏LCD顯示溫度對于方案一,該方案成本低廉,顯示溫度明確醒目
9、,在夜間也能看見,功耗極低,顯示驅(qū)動程序的編寫也相對簡單,這種顯示方式得到廣泛應(yīng)用。不足的地方是掃描顯示方式是使五個LED逐個點(diǎn)亮,因此會有閃爍,但是人眼的視覺暫留時間為20MS,當(dāng)數(shù)碼管掃描周期小于這個時間時人眼將感覺不到閃爍,因此可以通過增大掃描頻率來消除閃爍感。對于方案二,液晶體顯示屏具有顯示字符優(yōu)美,不但能顯示數(shù)字還能顯示字符甚至圖形的優(yōu)點(diǎn),這是LED數(shù)碼管無法比擬的。但是液晶顯示模塊價格昂貴,驅(qū)動程序復(fù)雜,從簡單實用的原則考慮,本系統(tǒng)采用方案一。2.4調(diào)速方式方案一:采用變壓器調(diào)節(jié)方式,運(yùn)用電磁感應(yīng)原理將220V電壓通過線圈降壓到不同的電壓,控制風(fēng)扇電機(jī)接到不同電壓值的線圈上可控制電
10、機(jī)的轉(zhuǎn)速,從而控制風(fēng)扇風(fēng)力大小。方案二:采用晶閘管構(gòu)成無級調(diào)速電路。對于方案一,由于采用變壓器改變電壓調(diào)節(jié),有風(fēng)速級別限制,不能適應(yīng)人性化要求。且在變壓過程中會有損耗發(fā)熱,效率不高,發(fā)熱有不安全因素。對于方案二,以電位器控制晶閘管的導(dǎo)通角大小,可實現(xiàn)由最大風(fēng)速到關(guān)閉的無級別調(diào)速,可將風(fēng)力調(diào)節(jié)在關(guān)閉無風(fēng)到最大風(fēng)之間的任意風(fēng)力,實現(xiàn)“自由風(fēng)”。且在調(diào)速環(huán)節(jié)中基本無電力損耗。故本系統(tǒng)采用方案二。2.5控制執(zhí)行部件方案一:采用數(shù)模轉(zhuǎn)換芯片AD0832控制,由單片機(jī)根據(jù)當(dāng)前溫度值送出相應(yīng)數(shù)字量到AD0832,由AD0832產(chǎn)生模擬信號控制晶閘管的導(dǎo)通角,從而配合無級調(diào)速電路實現(xiàn)溫控時的自動無級風(fēng)力調(diào)節(jié)。
11、方案二:采用繼電器,繼電器的接有控制晶閘管導(dǎo)通角的電阻的接入電路與否由單片機(jī)控制,根據(jù)當(dāng)前溫度值在相應(yīng)管腳送出高/低電平,決定某個繼電器的導(dǎo)通角控制電阻是否接入電路。(詳見4.2.4)對于方案一,該方案能夠?qū)崿F(xiàn)在風(fēng)扇處于溫控狀態(tài)時也能無級調(diào)速,但是D/A轉(zhuǎn)換芯片價格較高,與其溫控狀態(tài)下無級調(diào)速功能相比性價比不高。對于方案二,雖然在溫控狀態(tài)下只能實現(xiàn)弱/大風(fēng)兩級調(diào)速,但采用繼電器價格便宜,控制可靠,且出于在溫控狀態(tài)時無級調(diào)速并不是特別需要的功能,綜合考慮采用方案二。3 系統(tǒng)簡述本系統(tǒng)由集成溫度傳感器、單片機(jī)、LED數(shù)碼管、繼電器、雙向晶閘管、蜂鳴器及一些其他外圍器件組成。使用具有價廉易購的AT8
12、9S52單片機(jī)編程控制,通過修改程序可方便實現(xiàn)系統(tǒng)升級。系統(tǒng)的框圖結(jié)構(gòu)如下:溫度傳感器DS18B20單片機(jī)AT89S52數(shù)碼管顯示無級調(diào)速器被控對象(風(fēng)扇)人工控制圖1 系統(tǒng)框圖4 硬件設(shè)計系統(tǒng)主要部件包括DS18B20溫度傳感器、AT89S52單片機(jī)、雙向晶閘管、五位LED數(shù)碼管和風(fēng)扇。輔助元件包括繼電器、蜂鳴器、電阻、晶振、電源、按鍵和撥碼開關(guān)等。4.1、本系統(tǒng)各器件簡介4.1.1 DS18B20 單線數(shù)字溫度傳感器簡介DS18B20 單線數(shù)字溫度傳感器是Dallas 半導(dǎo)體公司開發(fā)的世界上第一片支持“一線總線”接口的溫度傳感器。它具有3 引腳TO92 小體積封裝形式。溫度測量范圍為-55
13、+125,可編程為9 位12 位A/D 轉(zhuǎn)換精度,測溫分辨率可達(dá)0.0625。被測溫度用符號擴(kuò)展的16 位數(shù)字量方式串行輸出。工作電壓支持3V5.5V 的電壓范圍,既可在遠(yuǎn)端引入,也可采用寄生電源方式產(chǎn)生。DS18B20 還支持“一線總線”接口,多個DS18B20可以并聯(lián)到3 根或2 根線上,CPU 只需一根端口線就能與諸多DS18B20 通信,占用微處理器的端口較少,可節(jié)省大量的引線和邏輯電路。它還有存儲用戶定義報警溫度等功能。DS18B20 內(nèi)部結(jié)構(gòu)及管腳DS18B20 內(nèi)部結(jié)構(gòu)如圖所示,主要由4 部分組成:64 位ROM、溫度傳感器、非揮發(fā)的溫度報警觸發(fā)器TH 和TL、配置寄存器。其管腳
14、排列如圖所示,DQ 為數(shù)字信號端,GND 為電源地,VDD 為電源輸入端。圖1 DS18B20 內(nèi)部結(jié)構(gòu)圖2 DS18B20外形及管腳4.1.2 AT89C52 單片機(jī)簡介AT89C52 是一種帶4K字節(jié)閃存可編程可擦除只讀存儲器(FPEROM)256B片內(nèi)RAM的低電壓,高性能CMOS8 位微處理器。該器件采用ATMEL 高密度非易失存儲器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51 指令集和輸出管腳相兼容。由于將多功能8 位CPU 和閃爍存儲器組合在單個芯片中,ATMEL 的AT89C52 是一種高效微控制器,為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。AT89C52 單片機(jī)管腳AT89
15、C52單片機(jī)管腳如圖3所示。圖3 AT89C52單片機(jī)管腳各管腳功能:VCC:供電電壓。GND:接地。P0 口:P0 口為一個8 位漏級開路雙向I/O 口,每腳可吸收8TTL 門電流。當(dāng)P1 口的管腳第一次寫1 時,被定義為高阻輸入。P0 能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH 編程時,P0 口作為原碼輸入口,當(dāng)FIASH 進(jìn)行校驗時,P0輸出原碼,此時P0 外部必須被拉高。P1 口:P1 口是一個內(nèi)部提供上拉電阻的8 位雙向I/O 口,P1 口緩沖器能接收輸出4TTL門電流。P1 口管腳寫入1 后,被內(nèi)部上拉為高,可用作輸入,P1 口被外部下拉為低電平時,
16、將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH 編程和校驗時,P1 口作為第八位地接收。P2 口:P2 口為一個內(nèi)部上拉電阻的8 位雙向I/O 口,P2 口緩沖器可接收,輸出4 個TTL 門電流,當(dāng)P2 口被寫“1”時,其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2 口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2 口當(dāng)用于外部程序存儲器或16 位地址外部數(shù)據(jù)存儲器進(jìn)行存取時,P2 口輸出地址的高八位。在給出地址“1”時,它利用內(nèi)部上拉優(yōu)勢,當(dāng)對外部八位地址數(shù)據(jù)存儲器進(jìn)行讀寫時,P2 口輸出其特殊功能寄存器的內(nèi)容。P2 口在FLASH 編程和校驗時接收高八位地址信號
17、和控制信號。P3 口:P3 口管腳是8 個帶內(nèi)部上拉電阻的雙向I/O 口,可接收輸出4 個TTL 門電流。當(dāng)P3 口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3 口將輸出電流(ILL)這是由于上拉的緣故。P3 口也可作為AT89C51 的一些特殊功能口。P3.0:RXD(串行輸入口);P3.1:TXD(串行輸出口);P3.2:/INT0(外部中斷0);P3.3:/INT1(外部中斷1);P3.4:T0(記時器0 外部輸入);P3.5:T1(記時器1外部輸入);P3.6:/WR(外部數(shù)據(jù)存儲器寫選通);P3.7:/RD(外部數(shù)據(jù)存儲器讀選通)。 P3 口
18、同時為閃爍編程和編程校驗接收一些控制信號。RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時,要保持RST 腳兩個機(jī)器周期的高電平時間。ALE/PROG:當(dāng)訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH 編程期間,此引腳用于輸入編程脈沖。在平時,ALE 端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲器時,將跳過一個ALE 脈沖。如想禁止ALE 的輸出可在SFR8EH 地址上置0。此時,ALE 只有在執(zhí)行MOVX,MOVC 指令是ALE 才起作用。另外,該引腳被略微拉高。如果微處理器在
19、外部執(zhí)行狀態(tài)ALE 禁止,置位無效。/PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機(jī)器周期兩次/PSEN 有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的/PSEN 信號將不出現(xiàn)。/EA/VPP:當(dāng)/EA 保持低電平時,則在此期間外部程序存儲器(0000H-FFFFH),不管是否有內(nèi)部程序存儲器。注意加密方式1 時,/EA 將內(nèi)部鎖定為RESET;當(dāng)/EA 端保持高電平時,此間內(nèi)部程序存儲器。在FLASH 編程期間,此引腳也用于施加12V 編程電源(VPP)。XTAL1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。XTAL2:來自反向振蕩器的輸出。4.1.3 八段LED
20、數(shù)碼管本系統(tǒng)使用五個七段LED數(shù)碼管作為溫度顯示,公共陽極。4.2 各部分電路設(shè)計4.2.1 電源電路電源電路采用LM7805集成穩(wěn)壓器作為穩(wěn)壓器件,用典型接法,220V電源整流濾波后送入LM7805穩(wěn)壓,在輸出端接一個470U和0.1U電容進(jìn)一步濾除紋波,得到5V穩(wěn)壓電源。電路如圖4所示。圖4 電源4.2.2 數(shù)碼管顯示電路顯示部分包括如下圖5: 5個八段(共陽)數(shù)碼管、PNP型三極管、電阻等。其連接方式如下:應(yīng)用單片機(jī)P0口連接八段數(shù)碼管,用P2口的P2.3P2.7五個端口作為數(shù)碼管的片選信號輸出端口,其中要用8550(PNP型)三極管做驅(qū)動。又因為P0口做I/O口時要加上拉電阻,所以我們
21、給P0各位各加一個10K的電阻到電源。為了防止燒壞數(shù)碼管,所以給數(shù)碼管各段各加一個300歐姆的限流電阻。要顯示的數(shù)據(jù)通過P0口送給數(shù)碼管顯示,通過P2口的P2.7P2.3五個端口分別對數(shù)碼管進(jìn)行位選,事實上數(shù)碼管是間斷被點(diǎn)亮的,只是其間斷時間十分短,掃描周期在20ms以下,利用人眼視覺暫留,我們基本看不出它們的閃爍。圖5 顯示電路4.2.3 聲響、溫度采集、溫度設(shè)定以及復(fù)位電路電路如圖6所示,這一部分主要是由DS18B20,四個按鍵、一個電容一個三極管和一個蜂鳴器等構(gòu)成。聲響電路在每按下按鍵時會響一聲,當(dāng)沒有把DS18B20接入到電路中時,單片機(jī)就會通過蜂鳴器發(fā)出報警聲音。溫度采集電路主要是由
22、DS18B20構(gòu)成,它可以把采集的溫度數(shù)據(jù)轉(zhuǎn)化成二進(jìn)制數(shù),經(jīng)過單片機(jī)處理后輸出送數(shù)碼管顯示。 溫度設(shè)定主要是通過按鍵S1、S2|、S3來設(shè)定的。按鍵S1、S2、S3分別接入單片機(jī)的P1.4、P1.5、P1.6腳。S3是設(shè)定鍵。用于對風(fēng)速調(diào)節(jié)的上限和下限值TH、TL的設(shè)置。當(dāng)按下S1時,可以加1,長按可以快速加1,當(dāng)按下S2 時,可以減1, 長按可以快速減1。圖6 聲響、溫度采集、溫度設(shè)置及復(fù)位電路4.2.4 溫控自動電路該電路為控制風(fēng)速的人工控制與溫控兩種方式之溫控模式時的控制電路,當(dāng)選擇為溫控時,單片機(jī)默認(rèn)為弱風(fēng),當(dāng)當(dāng)前溫度低于所設(shè)的溫度下限TL時繼電器1吸合,關(guān)閉風(fēng)扇,當(dāng)當(dāng)前溫度高于所設(shè)的
23、溫度上限時繼電器2吸合,切換到強(qiáng)風(fēng)檔。電路如圖7。圖7 溫控自動電路4.2.5無級調(diào)速電路此電路如圖8所示,包括:雙向可控硅,雙觸發(fā)二極管、滑動變阻器、電容。該電路為無級調(diào)速電路,通過調(diào)節(jié)滑動變阻器的阻值來改變通過雙向二極管的電流,控制雙向晶閘管的導(dǎo)通角,從而控制電機(jī)的轉(zhuǎn)速??蓪崿F(xiàn)由最大風(fēng)速到關(guān)閉的無級別調(diào)速,可將風(fēng)力調(diào)節(jié)在關(guān)閉無風(fēng)到最大風(fēng)之間的任意風(fēng)力,實現(xiàn)“自由風(fēng)”。圖8 無級調(diào)速電路本系統(tǒng)的總電原理圖為:圖9 總電原理圖5 軟件設(shè)計程序?qū)崿F(xiàn)的功能是上電復(fù)位時檢測溫度傳感器DS18B20是否存在或它工作是否正常,當(dāng)不存在或工作不正常時從蜂鳴器發(fā)出報警聲,提示用戶檢查DS18B20,安裝或者
24、更換。這部分功能由DS18B20復(fù)位與檢測子程序RESET完成。當(dāng)檢測到傳感器工作正常后,發(fā)出溫度轉(zhuǎn)換命令及讀取溫度值命令,將從DS18B20讀取的二進(jìn)制溫度值轉(zhuǎn)換為七段碼在LED上顯示出來。顯示功能由溫度顯示子程序DISP1子程序?qū)崿F(xiàn)。在溫控自動狀態(tài),本系統(tǒng)可由用戶根據(jù)需要自由設(shè)置大小風(fēng)檔的切換溫度值TH,TL,硬件設(shè)計上為通過3個按鍵,由按鍵掃描子程序KEYSCAN子程序提供軟件支持。按下一次設(shè)置鍵K3,進(jìn)入低溫關(guān)風(fēng)扇溫度值TL設(shè)置狀態(tài),此時按下“加”鍵K1,TL值加一,長按K1不放可實現(xiàn)快速加1,按下“減”鍵K2,TL值減1,長按K2不放可實現(xiàn)快速減1。再按一次設(shè)置鍵K3,進(jìn)入高溫切換大
25、風(fēng)檔溫度值TH設(shè)置狀態(tài),此時按下“加”鍵K1,TH值加一,長按K1不放可實現(xiàn)快速加1,按下“減”鍵K2,TH值減1,長按K2不放可實現(xiàn)快速減1。下限動作溫度值TL和上限動作溫度值的設(shè)置范圍為0-120攝氏度,滿足一般使用要求。再按一次設(shè)置鍵K3退出上下限溫度設(shè)置狀態(tài),恢復(fù)到當(dāng)前溫度顯示狀態(tài)。在當(dāng)前溫度顯示狀態(tài),按下“加”鍵K1一次顯示當(dāng)前TL設(shè)定值,再按一下顯示當(dāng)前TH設(shè)定值,如此循環(huán),按設(shè)置鍵K3退回到當(dāng)前溫度顯示狀態(tài)。每次設(shè)定的TL、TH值均拷備到DS18B20的EEROM內(nèi),在單片機(jī)掉電后設(shè)定值不會丟失,在再次上電時從DS18B20的EEROM中讀回上次設(shè)定的上下限動作溫度值TH、TL,
26、用戶要實現(xiàn)根據(jù)當(dāng)前溫度實時的控制風(fēng)扇的狀態(tài),需要在程序中不時的判斷當(dāng)前溫度值是否超過設(shè)定的動作溫度值范圍,此部分功能由比較控制子程序TEMP_COMP來完成。由于單片機(jī)的工作頻率高達(dá)12MHz,在執(zhí)行程序時不斷將當(dāng)前溫度和設(shè)定動作溫度進(jìn)行比較判斷,當(dāng)超過設(shè)定溫度值范圍時及時的轉(zhuǎn)去執(zhí)行超溫處理和欠溫處理子程序,控制繼電器的吸合、斷開狀態(tài),從而控制風(fēng)扇實時的切換到關(guān)閉、弱風(fēng)、大風(fēng)三個狀態(tài)。在沒有超過設(shè)定的TL、TH值時默認(rèn)將風(fēng)扇置為弱風(fēng)檔。該比較控制程序又由溫度比較程序、超溫處理子程序和欠溫處理子程序構(gòu)成。顯示驅(qū)動程序以查七段碼取得各數(shù)碼管應(yīng)顯數(shù)字,逐位掃描顯示。主程序和個主要子程序的流程圖如附錄
27、1所示。6 安裝調(diào)試將本電路用硬件做出來,用編程器將KEIL軟件對源程序編譯生成的.HEX文件燒入AT89C52單片機(jī),將單片機(jī)插入到目標(biāo)板中,連好線。將“控制模式”開關(guān)選擇在“溫控”,打開電源,風(fēng)扇工作在弱風(fēng)檔,數(shù)碼管正常顯示當(dāng)前的溫度21.6攝氏度,第五位數(shù)碼管閃爍顯示“O”,表示當(dāng)前溫度在TL和TH值之間,沒有欠溫或超溫。按“設(shè)置”鍵及“加”“減”鍵將下限動作溫度值TL設(shè)為20攝氏度,將上限動作溫度值TH設(shè)為23攝氏度,用書對著DS18B20扇動,顯示溫度逐漸降低,當(dāng)達(dá)到19.9攝氏度時繼電器1動作,將風(fēng)扇關(guān)閉,第五位數(shù)碼管閃爍顯示“L”,表示當(dāng)前溫度低于TL值。然后用手握著DS18B2
28、0,顯示溫度逐步上升,當(dāng)達(dá)到23.1攝氏度時繼電器2動作,將風(fēng)扇切換到大風(fēng)檔,第五位數(shù)碼管閃爍顯示“H”,表示當(dāng)前溫度高于TH值。將“控制模式”開關(guān)選擇在“人控”,這時數(shù)碼管依然按照上述規(guī)律顯示,但是不能對風(fēng)扇進(jìn)行控制。用手旋動無級調(diào)速旋鈕,可以將風(fēng)扇從關(guān)閉一直連續(xù)調(diào)到最大風(fēng)速,具有無級調(diào)節(jié)風(fēng)扇風(fēng)力的功能。測試結(jié)果表明,本系統(tǒng)實現(xiàn)了預(yù)期功能。參考文獻(xiàn)1 胡漢才.單片機(jī)原理及其接口技術(shù).北京:清華大學(xué)出版社,20042 吳金戍,沈慶陽,郭庭吉.8051單片機(jī)實踐與應(yīng)用.北京: 清華大學(xué)出版社,20023 求是科技.單片機(jī)典型模塊設(shè)計實例導(dǎo)航.北京:人民郵電出版社,20044 王化詳,張淑英.傳感
29、器原理.天津:天津大學(xué)出版社,20025 榮俊昌.新型電風(fēng)扇原理與維修.北京:高等教育出版社,20046 王港元.電工電子實踐指導(dǎo).江西:江西科學(xué)技術(shù)出版社,2005附錄1 程序流程圖主程序流程圖開始初始化蜂鳴報警檢測DS18B20正常?溫度轉(zhuǎn)換命令讀溫度溫度BCD碼處理顯示溫度按鍵掃描及處理與設(shè)定溫度對比及處理NY圖11 主程序流程圖按鍵掃描子程序流程圖入口K1按下?蜂鳴器響一聲設(shè)定的TL值轉(zhuǎn)換成各LED的顯示數(shù)字K1按下?蜂鳴器響一聲顯示TL值設(shè)定的TH值轉(zhuǎn)換成各LED的顯示數(shù)字顯示TH值K1按下?K2按下?蜂鳴器響一聲YNYNYNN蜂鳴器響一聲K3按下?蜂鳴器響一聲設(shè)定TH,TL將設(shè)定T
30、H,TL值寫入1820的暫存器將1820暫存器值寫入EEROM返回YN圖12 按鍵掃描子程序流程圖設(shè)置上下限動作溫度值TH,TL子程序流程圖顯示,閃爍入口K1按下?=121?K3按下?設(shè)置的TL加1設(shè)置的TL=0顯示TLK2按下?設(shè)置的TL減1設(shè)置的TL=0?設(shè)置的TL=119顯示TL蜂鳴一聲K3松開?K1按下?=121?設(shè)置的TH加1設(shè)置的TH=0顯示THK2按下?設(shè)置的TH減1設(shè)置的TH=0?設(shè)置的TL=119顯示THK3按下?蜂鳴一聲返回$YNYNYNNNYNYYNNYN閃爍顯示YNNYYNK3按下?Y圖13 設(shè)置上下限動作溫度值TH,TL子程序流程圖實時溫度值與設(shè)定TH,TL值比較及超
31、、欠溫處理子程序流程圖入口TH>當(dāng)前溫度?TH>當(dāng)前溫度?C1=0,C2=0200ms定時時間到?第五位LED滅,其它四位顯示當(dāng)前溫度第五位LED顯示H,其它四位顯示當(dāng)前溫度C1=0,C2=0200ms定時時間到?第五位LED滅,其它四位顯示當(dāng)前溫度第五位LED顯示H,其它四位顯示當(dāng)前溫度C1=1,C2=1返回YYYYNNN圖14 實時溫度值與設(shè)定TH,TL值比較及超、欠溫處理子程序流程圖溫度顯示子程序流程圖取掃描字入口掃描字P2輸出取顯示數(shù)據(jù)查段碼表從P0口輸出小數(shù)點(diǎn)處理延時指向下一位ACC.3=0?P0,P2復(fù)位返回NY圖15 溫度顯示子程序流程圖DS18B20復(fù)位與檢測子程序
32、600us復(fù)位低脈沖入口拉高總線總線=0?60us到?總線=0?存在標(biāo)志位置1延時總線拉高存在標(biāo)志位置0返回NYNYYN圖16 DS18B20復(fù)位與檢測子程序附錄2 源程序;*;精準(zhǔn)溫度顯示溫控自動風(fēng)扇系統(tǒng) *;*說明: ;* 1、K3 進(jìn)入設(shè)定低溫動作溫度值 TL 狀態(tài):;* 2、K3 進(jìn)入設(shè)定高溫動作溫度值 TH 狀態(tài):;* 3、K3 返回 ;* 4、設(shè)定過程: K1 加鍵 (UP), K2 減鍵 (DOWN),可快速調(diào); 5、實際溫度在TL和TH之間時,開啟弱風(fēng)檔,低于TL時,關(guān)閉風(fēng)扇;;高于TH時,開啟大風(fēng)檔。每次設(shè)置的TH和TL均被保存在DS18B20的ROM;內(nèi),掉不需重新設(shè)置.
33、*;* TIMER_L DATA 23H TIMER_H DATA 24H TIMER_COUN DATA 25H TEMPL DATA 26H TEMPH DATA 27H TEMP_TH DATA 28H TEMP_TL DATA 29H TEMPHC DATA 2AH TEMPLC DATA 2BH TEMP_ZH DATA 2CH BEEP EQU P3.7 DATA_LINE EQU P3.3 C1 EQU P3.4 ;C1控制口,接繼電器1 C2 EQU P3.5 ;C2控制口,接繼電器2 FLAG1 EQU 20H.0 FLAG2 EQU 20H.1;- K1 EQU P1.4
34、K2 EQU P1.5 K3 EQU P1.6;= ORG 0000H JMP MAIN ORG 000BH AJMP INT_T0;-MAIN: MOV SP,#30H MOV TMOD,#01H ;T0,方式1 MOV TIMER_L,#00H ;50ms定時值 MOV TIMER_H,#4CH MOV TIMER_COUN,#00H ;中斷計數(shù) MOV IE,#82H ;EA=1,ET0=1 LCALL READ_E2 MOV 20H,#00H SETB BEEP SETB C1 setb C2 MOV 7FH,#0AH ;熄滅符 CALL RESET ;復(fù)位與檢測DS18B20 JNB
35、 FLAG1,MAIN1 ;FLAG1=0,DS18B20不存在 JMP STARTMAIN1: CALL RESET JB FLAG1,START LCALL BEEP_BL ;DS18B20錯誤,報警 JMP MAIN1START: MOV A,#0CCH ; 跳過ROM匹配 CALL WRITE MOV A,#044H ; 發(fā)出溫度轉(zhuǎn)換命令 CALL WRITE CALL RESET MOV A,#0CCH ; 跳過ROM匹配 CALL WRITE MOV A,#0BEH ; 發(fā)出讀溫度命令 CALL WRITE CALL READ ;讀溫度數(shù)據(jù) CALL CONVTEMP CALL D
36、ISPBCD CALL DISP1 CALL SCANKEY LCALL TEMP_COMP JMP MAIN1;=;DS18B20 復(fù)位與檢測子程序;FLAG1=1 OK, FLAG1=0 ERROR;=RESET: SETB DATA_LINE NOP CLR DATA_LINE MOV R0,#64H ;主機(jī)發(fā)出延時600微秒的復(fù)位低脈沖 MOV R1,#03HRESET1: DJNZ R0,$ MOV R0,#64H DJNZ R1,RESET1 SETB DATA_LINE ;然后拉高數(shù)據(jù)線 NOP MOV R0,#25HRESET2: JNB DATA_LINE,RESET3 ;等
37、待DS18B20回應(yīng) DJNZ R0,RESET2 JMP RESET4 ; 延時RESET3: SETB FLAG1 ; 置標(biāo)志位,表示DS1820存在 JMP RESET5RESET4: CLR FLAG1 ; 清標(biāo)志位,表示DS1820不存在 JMP RESET6RESET5: MOV R0,#064H DJNZ R0,$ ; 時序要求延時一段時間RESET6: SETB DATA_LINE RET;=;=WRITE: MOV R2,#8 ;一共8位數(shù)據(jù) CLR CYWR1: CLR DATA_LINE ;開始寫入DS18B20總線要處于復(fù)位(低)狀態(tài) MOV R3,#09 DJNZ R
38、3,$ ;總線復(fù)位保持18微妙以上 RRC A ;把一個字節(jié)DATA 分成8個BIT環(huán)移給C MOV DATA_LINE,C ;寫入一個BIT MOV R3,#23 DJNZ R3,$ ;等待46微妙 SETB DATA_LINE ;重新釋放總線 NOP DJNZ R2,WR1 ;寫入下一個BIT SETB DATA_LINE RET;=;從DS18B20中讀出溫度低位、高位和動作溫度設(shè)定值TH、TL;存入26H、27H、28H、29H;=READ: MOV R4,#4 ; 將溫度高位和低位從DS18B20中讀出 MOV R1,#26H ; 存入26H、27H、28H、29HRE00: MOV
39、 R2,#8RE01: CLR C SETB DATA_LINE NOP NOP CLR DATA_LINE ;讀前總線保持為低 NOP NOP NOP SETB DATA_LINE ;開始讀總線釋放 MOV R3,#09 ;延時18微妙 DJNZ R3,$ MOV C,DATA_LINE ;從DS18B20總線讀得一個BIT MOV R3,#23 DJNZ R3,$ ;等待46微妙 RRC A ;把讀得的位值環(huán)移給A DJNZ R2,RE01 ;讀下一個BIT MOV R1,A INC R1 DJNZ R4,RE00 RET ;-;200ms對閃動標(biāo)記取反一次;-INT_T0: PUSH A
40、CC PUSH PSW MOV TL0,TIMER_L MOV TH0,TIMER_H INC TIMER_COUN MOV A,TIMER_COUN CJNE A,#04H,INT_END MOV TIMER_COUN,#00H CPL FLAG2INT_END: POP PSW POP ACC RETI;=;重新對 DS18B20 初始化;將設(shè)定的動作溫度設(shè)定值寫入 DS18B20;=RE_18B20: JB FLAG1,RE_18B20A RETRE_18B20A: CALL RESET MOV A,#0CCH ;跳過ROM匹配 LCALL WRITE MOV A,#4EH ;寫暫存寄存
41、器 LCALL WRITE MOV A,TEMP_TH ;TH(動作上限溫度) LCALL WRITE MOV A,TEMP_TL ;TL(動作下限溫度) LCALL WRITE MOV A,#7FH ;12位精確度 LCALL WRITE RET;=;功能鍵掃描子程序;=SCANKEY: MOV P1,#0F0H JB K1,SCAN_K2 CALL BEEP_BLSCAN_K1: CALL ALERT_TL CALL ALERT_PLAY JB K1,SCAN_K1 CALL BEEP_BLSCAN_K11: CALL ALERT_TH CALL ALERT_PLAY JB K1,SCAN
42、_K11 CALL BEEP_BLSCAN_K2: JB K2,SCAN_K3 CALL BEEP_BLSCAN_K3: JB K3,SCAN_END CALL BEEP_BL LCALL RESET_ALERT LCALL RE_18B20 LCALL WRITE_E2SCAN_END: RET;=;設(shè)置動作溫度值TL,TH;=RESET_ALERT: CALL ALERT_TL CALL ALERT_PLAY JNB K3,$ ;K3為位移鍵 SETB TR0RESET_TL: CALL ALERT_PLAY JNB FLAG2,R_TL01 mov 75H,7fh ;送入熄滅符 mov 76H,7fh CALL ALERT_PLAY
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 中國行政史試題及答案
- 浙江省越崎中學(xué)2024-2025學(xué)年物理高二第二學(xué)期期末復(fù)習(xí)檢測試題含解析
- 云南省彝良縣民族中2024-2025學(xué)年數(shù)學(xué)高二下期末監(jiān)測試題含解析
- 云南省安寧市實驗石江學(xué)校2025屆生物高二第二學(xué)期期末復(fù)習(xí)檢測模擬試題含解析
- 人工智能提示詞工程師試題含答案
- 車輛抵押貸款合同審查及范本
- 高層建筑立面測量勞務(wù)分包合作合同
- 高端寫字樓場地租賃合同范本-承租方
- 災(zāi)害預(yù)防廠房租賃安全保證合同
- 勞務(wù)雇傭合同模板(18篇)
- 廣東省佛山市高明區(qū)2021-2022學(xué)年六年級下學(xué)期期末語文試卷
- 近五年廣東中考物理真題及答案2023
- 正負(fù)離子表面活性劑混合體系雙水相性質(zhì)的測定
- 2024年山東省新動能基金管理限公司招聘18人公開引進(jìn)高層次人才和急需緊缺人才筆試參考題庫(共500題)答案詳解版
- 中國哲學(xué)經(jīng)典著作導(dǎo)讀智慧樹知到期末考試答案章節(jié)答案2024年西安交通大學(xué)
- MOOC 獸醫(yī)外科手術(shù)學(xué)-華中農(nóng)業(yè)大學(xué) 中國大學(xué)慕課答案
- 三D打印公開課
- 考古發(fā)現(xiàn)與中國文化智慧樹知到期末考試答案2024年
- 胸痹心痛病中醫(yī)護(hù)理方案完整課件
- 程序的循環(huán)結(jié)構(gòu)課件高中信息技術(shù)必修計算與數(shù)據(jù)
- 急性胃腸炎的護(hù)理管理
評論
0/150
提交評論