劉淑影 晁 妍 李佩君 劉天琪
(阜陽(yáng)師范大學(xué)計(jì)算機(jī)與信息工程學(xué)院 安徽阜陽(yáng) 236037)
隨著計(jì)算機(jī)技術(shù)和控制技術(shù)的發(fā)展,在炎熱的夏季,各種各樣的降溫設(shè)備進(jìn)入我們的生活。其中風(fēng)扇以其價(jià)格低、方便攜帶、安裝簡(jiǎn)單和耗電量低的優(yōu)點(diǎn),成為大家首選的祛暑工具。但目前電風(fēng)扇大部分都是手動(dòng)操作,對(duì)于溫度較為穩(wěn)定的時(shí)候,傳統(tǒng)電風(fēng)扇的缺點(diǎn)還不是很明顯[1]。但是,當(dāng)進(jìn)入溫度變化較為迅速的深夜,缺點(diǎn)就更加突出,具體如下:(1)只能采用手動(dòng)操作來(lái)改變檔位,無(wú)法根據(jù)溫度的高低自動(dòng)改變風(fēng)速;(1)目前大多數(shù)風(fēng)扇只有選檔、定時(shí)和搖頭這三種功能;(3)安全問(wèn)題,高檔風(fēng)速與低擋風(fēng)速之間變化較大,在進(jìn)行檔位切換的時(shí)候可能會(huì)產(chǎn)生火花;(4)只能顯示檔位,無(wú)法顯示環(huán)境溫度。(5)無(wú)人體檢測(cè)功能。如果人離開(kāi)時(shí)忘記關(guān)風(fēng)扇,傳統(tǒng)電風(fēng)扇無(wú)法檢測(cè)人的離去而繼續(xù)運(yùn)轉(zhuǎn),導(dǎo)致浪費(fèi)電。因此為了解決以上問(wèn)題,設(shè)計(jì)了一種易操作、擴(kuò)展性強(qiáng)的自動(dòng)溫度控制風(fēng)扇。以單片機(jī)為基礎(chǔ),結(jié)合計(jì)算機(jī)應(yīng)用技術(shù)、控制技術(shù)、傳感器技術(shù)和PWM技術(shù),設(shè)計(jì)風(fēng)扇的控制系統(tǒng),滿足人們對(duì)風(fēng)扇智能、方便和節(jié)能、環(huán)保的要求[2]。
基于單片機(jī)的智能風(fēng)扇系統(tǒng)分為軟件和硬件兩大部分,為了實(shí)現(xiàn)溫度值采集、轉(zhuǎn)速計(jì)算、風(fēng)速自動(dòng)調(diào)節(jié)、紅外檢測(cè)、蜂鳴器報(bào)警等一系列新型功能,硬件部分則需由C51單片機(jī)、電機(jī)驅(qū)動(dòng)、按鍵控制、S300A-P熱釋電紅外傳感器、溫度傳感器、蜂鳴器報(bào)警、風(fēng)速自動(dòng)調(diào)控和電源等模塊組成。其系統(tǒng)總體控制框圖的設(shè)計(jì)如圖1所示。本文采用51單片機(jī)作為系統(tǒng)的主要控制器件、ds18b20進(jìn)行當(dāng)前環(huán)境溫度采集、LCD1286來(lái)顯示溫度、S300A-P采集人體信息,通過(guò)Keil集成開(kāi)發(fā)環(huán)境進(jìn)行編程,完成溫度采集、調(diào)控,以及通過(guò)LED和蜂鳴器來(lái)顯示當(dāng)前溫度和報(bào)警等功能。系統(tǒng)總體思路為:通過(guò)傳感器S300A-P來(lái)檢測(cè)風(fēng)扇前面是否人,如果檢測(cè)不到,則系統(tǒng)關(guān)閉;如果檢測(cè)到,進(jìn)行以下工作。通過(guò)ds18b20傳感器檢測(cè)當(dāng)前環(huán)境的溫度,將檢測(cè)值傳送給51單片機(jī),經(jīng)過(guò)主控器的分析、處理,再通過(guò)脈沖寬度調(diào)制技術(shù)控制電機(jī)轉(zhuǎn)動(dòng)的快慢,進(jìn)而達(dá)到控制電風(fēng)扇速度的目的。在進(jìn)行系統(tǒng)設(shè)計(jì)時(shí),為智能風(fēng)扇的工作設(shè)置合適的溫度上限值和下限值,當(dāng)ds18b20采集到的溫度位于設(shè)定的最大值和最小值之間時(shí),系統(tǒng)則根據(jù)當(dāng)前檢測(cè)的實(shí)時(shí)溫度值自動(dòng)切換到強(qiáng)、中、弱風(fēng)等對(duì)應(yīng)的檔位,并將PWM值和風(fēng)速值顯示在LCD12864顯示屏上;若采集的溫度值高于之前設(shè)置的上限值MAX時(shí),啟動(dòng)蜂鳴器,報(bào)警燈不斷閃爍,電機(jī)轉(zhuǎn)動(dòng)加快,驅(qū)動(dòng)電風(fēng)扇加快轉(zhuǎn)動(dòng)切換到強(qiáng)風(fēng)檔位,同時(shí)顯示對(duì)應(yīng)的PWM值和風(fēng)速值;若溫度值小于設(shè)置的最小值MIN時(shí),電機(jī)轉(zhuǎn)動(dòng)停止,風(fēng)扇進(jìn)入睡眠模式。
圖1 總體框架圖
(一)溫度采集模塊設(shè)計(jì)。DS18B20作為一款數(shù)字溫度傳感器,是以數(shù)字信號(hào)形式進(jìn)行輸出,具有檢測(cè)精度高,抗干擾強(qiáng),成本低,體積小的優(yōu)點(diǎn),因此本系統(tǒng)選取DS18B20來(lái)采集實(shí)時(shí)溫度值。其電路圖的設(shè)計(jì)如圖2所示。由圖2可以看出,DS18B20溫度傳感器的輸入和輸出I/O端口連接單片機(jī)各端口中的P2.4端口,DS18B20采集到的當(dāng)前溫度值可以通過(guò)51單片機(jī)的P2.5端口讀入并通過(guò)LCD顯示屏進(jìn)行顯示,然后通過(guò)主控器計(jì)算與該溫度對(duì)應(yīng)的檔位,進(jìn)行自動(dòng)換擋,調(diào)控風(fēng)速。圖中R3是溫度傳感器I/O的上拉電阻,其作用是當(dāng)從單片機(jī)讀取數(shù)據(jù)結(jié)束時(shí),上拉電阻將I/O重新拉回到高電平狀態(tài)[3]。
圖2 溫度傳感器工作原理
(二)直流電機(jī)驅(qū)動(dòng)模塊。針對(duì)智能電風(fēng)扇的不同檔位風(fēng)速的實(shí)現(xiàn),需要改變風(fēng)扇送風(fēng)的強(qiáng)弱,即必須改變帶動(dòng)風(fēng)扇轉(zhuǎn)動(dòng)的電機(jī)的電壓和電流,如圖3所示。
圖3 電機(jī)驅(qū)動(dòng)
系統(tǒng)中電機(jī)采用的是H橋驅(qū)動(dòng)電路控制直流電機(jī)的轉(zhuǎn)動(dòng)。如圖3所示,當(dāng)三極管Q1和三極管Q4管導(dǎo)通時(shí),電流從電源的正極經(jīng)三極管Q1由上至下、由左至右經(jīng)過(guò)電機(jī)到達(dá)三極管Q4,最終達(dá)到電源的負(fù)極。如圖所示的箭頭指向,表示該方向流動(dòng)的電流將驅(qū)動(dòng)直流電機(jī)使其按照順時(shí)針的方向轉(zhuǎn)動(dòng)。若三極管Q2和三極管Q3導(dǎo)通,電流的流向正好和上圖所示的方向相反從右邊向左邊經(jīng)過(guò)電機(jī),該方向的電流將驅(qū)動(dòng)直流電機(jī)轉(zhuǎn)動(dòng),并且是按逆時(shí)針的方向轉(zhuǎn)動(dòng)。
(三)S300A-P人體檢測(cè)模塊。S300A-P作為一款常用的熱釋電紅外傳感器,具有低成本、低功耗和精準(zhǔn)的靈敏度等特點(diǎn)。S300A-P通過(guò)IR感應(yīng)周?chē)t外線并將其轉(zhuǎn)換為電荷信號(hào),以此來(lái)采集人體數(shù)據(jù)。若能夠檢測(cè)到人體信號(hào)時(shí),則S端輸出高電平,將將檢測(cè)的紅外輻射轉(zhuǎn)換為與之對(duì)應(yīng)的電壓信號(hào)輸出,然后對(duì)輸出的電壓進(jìn)行增強(qiáng),便可驅(qū)動(dòng)風(fēng)扇的轉(zhuǎn)動(dòng)[4];如果檢測(cè)不到人體信號(hào),則S端輸出低電平,系統(tǒng)處于睡眠狀態(tài),電扇停止轉(zhuǎn)動(dòng)。
圖4 熱釋電紅外傳感器模塊
圖5 蜂鳴器報(bào)警原理圖
(四)蜂鳴器報(bào)警模塊。設(shè)計(jì)蜂鳴器報(bào)警的電路圖如圖5所示。其中采用的是1kΩ 的電阻和S8550三極管,S8550是一款PNP型硅三極管,其具有電壓低、電流大和信號(hào)小的特點(diǎn)。S8550三級(jí)管的基極通過(guò)R5與單片機(jī)的輸入和輸出口連接。當(dāng)單片機(jī)的I/O端口輸出的是低電平時(shí),則三級(jí)管Q5導(dǎo)通,蜂鳴器啟動(dòng)工作開(kāi)始鳴叫;當(dāng)單片機(jī)的I/O端口輸出的是高電平時(shí),三級(jí)管截止,蜂鳴器鳴叫結(jié)束[5-6]。
基于單片機(jī)的智能風(fēng)扇系統(tǒng)主要完成電源復(fù)位、按鍵控制、溫度采集、計(jì)算機(jī)風(fēng)速、控制風(fēng)扇轉(zhuǎn)速等功能。與相應(yīng)的硬件部分的功能設(shè)計(jì),其系統(tǒng)工作的主要程序設(shè)計(jì)如圖6所示。該系統(tǒng)供電后,首先通過(guò)對(duì)獨(dú)立按鍵的判斷,風(fēng)扇工作模式是手動(dòng)方式還是自動(dòng)方式。如果是自動(dòng)方式,則啟動(dòng)熱釋電紅外傳感器檢測(cè)風(fēng)扇周?chē)欠裼腥?,若獲取不到信號(hào)風(fēng)扇則自動(dòng)關(guān)閉,有人則進(jìn)行溫度傳感器ds18b20進(jìn)行初始化,采集當(dāng)前溫度值。然后將檢測(cè)到的數(shù)值與系統(tǒng)設(shè)定的溫度最大值max和溫度最小值min進(jìn)行比較,若高于max值,電扇將調(diào)換到強(qiáng)風(fēng)檔;若低于min值,電扇系統(tǒng)關(guān)閉,不再工作;若介于兩者之間,風(fēng)扇自動(dòng)選擇合適的風(fēng)速進(jìn)行工作。
圖6 系統(tǒng)流程圖
通過(guò)以上給出的基于單片機(jī)的智能風(fēng)扇系統(tǒng)的硬件和軟件部分的設(shè)計(jì),最終完成對(duì)智能風(fēng)扇的系統(tǒng)設(shè)計(jì),如下圖7所示。通過(guò)實(shí)驗(yàn)證明,該風(fēng)扇既可以通過(guò)手動(dòng)模式操作,也可以選擇自動(dòng)模式。當(dāng)在自動(dòng)工作模式下,通過(guò)S300A-P模塊可以實(shí)現(xiàn)無(wú)人,風(fēng)扇停止工作,有人,系統(tǒng)可以準(zhǔn)確地根據(jù)當(dāng)前溫度變化,實(shí)現(xiàn)風(fēng)扇啟動(dòng)工作、停止工作和自動(dòng)調(diào)節(jié)風(fēng)速。本系統(tǒng)設(shè)計(jì)三個(gè)檔,分別為弱風(fēng)、中風(fēng)和強(qiáng)風(fēng),其下限值min設(shè)置為25℃,上限值max設(shè)置為33℃。如果用戶(hù)環(huán)境溫度低于25℃,系統(tǒng)自動(dòng)關(guān)閉,防止夜間溫度過(guò)低繼續(xù)吹風(fēng)扇,導(dǎo)致人們感冒。若大于25℃而小于33℃時(shí),系統(tǒng)選擇中風(fēng)檔吹風(fēng);若大于33℃,系統(tǒng)選擇強(qiáng)風(fēng)檔吹強(qiáng)風(fēng)。在實(shí)現(xiàn)普通風(fēng)扇功能的同時(shí),該風(fēng)扇還可以進(jìn)行智能根據(jù)溫控自動(dòng)調(diào)節(jié)速的,以及檢測(cè)是否人已離去忘記關(guān)風(fēng)扇,達(dá)到即方便又省電的目的。
圖7 智能風(fēng)扇模型機(jī)