基于單片機(jī)的智能窗戶控制系統(tǒng)的設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
引 言
隨著科技的進(jìn)步,智能化家具不斷發(fā)展?,F(xiàn)代社會(huì)人們工作繁忙、早出晚歸,常常忘記關(guān)窗。當(dāng)遇到惡劣天氣或小偷潛入時(shí),可能會(huì)造成不必要的財(cái)產(chǎn)損失。所以傳統(tǒng)的手動(dòng)開(kāi)關(guān)窗已無(wú)法滿足人們對(duì)于更高生活品質(zhì)的要求。因此需要開(kāi)發(fā)一種能夠收集外界情況,且能在雨天、刮風(fēng)天自動(dòng)關(guān)窗,同時(shí)實(shí)現(xiàn)防盜功能的智能窗戶 [1]。
STC89C52 單片機(jī)以其結(jié)構(gòu)簡(jiǎn)單、價(jià)格低廉在控制領(lǐng)域得到廣泛應(yīng)用。文獻(xiàn) [2] 以 STC89C52 為控制器, 利用A/D 轉(zhuǎn)換技術(shù),pH 傳感器和溫度補(bǔ)償模塊設(shè)計(jì)了一種能夠準(zhǔn)確測(cè)量溶液 pH 值的 pH 值測(cè)量?jī)x。文獻(xiàn) [3] 以 STC89C52 為控制器,采用達(dá)林頓陣列、繼電器隊(duì)列和LED 燈組設(shè)計(jì)了一套智能交通燈控制系統(tǒng),可受上位機(jī)控制。文獻(xiàn) [4] 以STC89C52 為控制器,采用溫度傳感器和無(wú)線遙控模塊設(shè)計(jì)了一種智能風(fēng)扇控制系統(tǒng),在溫度高時(shí)可自動(dòng)換擋。文獻(xiàn) [5] 以STC89C52 為控制器,采用藍(lán)牙串口模塊、紅外熱釋模塊和電機(jī)驅(qū)動(dòng)模塊設(shè)計(jì)了一種智能全自動(dòng)洗衣機(jī)控制系統(tǒng),該系統(tǒng)可無(wú)線設(shè)定洗衣模式和洗衣時(shí)間,出現(xiàn)突發(fā)情況可及時(shí)報(bào)警。文獻(xiàn) [6] 以STC89C52 為控制器,采用紅外避障模塊、超聲波測(cè)距模塊和電機(jī)驅(qū)動(dòng)模塊設(shè)計(jì)了一套自動(dòng)泊車智能小車控制系統(tǒng),該系統(tǒng)可自動(dòng)規(guī)避障礙物并將車停入車庫(kù)。文獻(xiàn) [7] 以STC89C52 為控制器,利用多種傳感器設(shè)計(jì)了一套家庭智能安防系統(tǒng),在火災(zāi)和煤氣泄漏時(shí)系統(tǒng)可自動(dòng)報(bào)警,可實(shí)現(xiàn)防盜功能。
本文以 STC89C52 單片機(jī)為控制器來(lái)設(shè)計(jì)智能窗戶控制系統(tǒng),由光電傳感器、溫濕度傳感器、紅外傳感器等模塊檢測(cè)天氣情況,經(jīng)處理后傳入單片機(jī),單片機(jī)對(duì)信號(hào)進(jìn)行運(yùn)算處理,再將輸出信號(hào)送入電機(jī)驅(qū)動(dòng)模塊、顯示模塊或蜂鳴器模塊。同時(shí),用戶還可通過(guò)紅外遙控器手動(dòng)控制窗戶開(kāi)關(guān),使生活更加方便、舒適 [8]。
1 總體設(shè)計(jì)方案
本系統(tǒng)基于STC89C52 單片機(jī)系統(tǒng)設(shè)計(jì),由光電傳感器模塊、溫濕度傳感器模塊、碰撞傳感器模塊、紅外傳感器模塊、紅外遙控模塊、蜂鳴器報(bào)警模塊、顯示模塊、電機(jī)驅(qū)動(dòng)模塊等組成。其原理框圖如圖 1 所示。
溫濕度傳感器模塊檢測(cè)窗戶周邊的溫濕度,通過(guò)A/D 采樣傳輸?shù)絾纹瑱C(jī)、顯示器,經(jīng)單片機(jī)處理后,當(dāng)溫度高于30℃時(shí)控制電機(jī)正向轉(zhuǎn)動(dòng)以打開(kāi)窗戶,低于10℃時(shí)控制電機(jī)反向轉(zhuǎn)動(dòng)以關(guān)閉窗戶。光電傳感器模塊檢測(cè)窗戶行進(jìn)路線中是否存在障礙物,經(jīng)單片機(jī)處理后,若有障礙物則控制電機(jī)停止運(yùn)行,反之則控制電機(jī)持續(xù)運(yùn)行。雨滴傳感器模塊檢測(cè)是否下雨, 經(jīng)單片機(jī)處理后,下雨時(shí)控制電機(jī)反轉(zhuǎn)關(guān)閉窗戶,反之控制電機(jī)正轉(zhuǎn)打開(kāi)窗戶。風(fēng)速傳感器模塊檢測(cè)窗外風(fēng)速,并通過(guò) A/D 采樣傳輸?shù)絾纹瑱C(jī)中,經(jīng)單片機(jī)處理后,當(dāng)風(fēng)速高于13.9m/s 時(shí)控制電機(jī)反轉(zhuǎn)關(guān)閉窗戶,低于13.9m/s時(shí)控制電機(jī)正轉(zhuǎn)打開(kāi)窗戶。人體紅外檢測(cè)模塊檢測(cè)窗外是否有人,經(jīng)單片機(jī)處理后, 若有人則控制電機(jī)反轉(zhuǎn)關(guān)閉窗戶,同時(shí)蜂鳴器發(fā)出警報(bào),反之則控制電機(jī)保持原有狀態(tài)。紅外接收模塊采集紅外遙控信號(hào), 并將其輸出到單片機(jī)上,控制電機(jī)正轉(zhuǎn)打開(kāi)窗戶或反轉(zhuǎn)關(guān)閉窗戶。碰撞傳感器模塊檢測(cè)窗戶是否完全關(guān)閉或打開(kāi),經(jīng)單片機(jī)處理后,若窗戶完全關(guān)閉或打開(kāi)則控制電機(jī)停止轉(zhuǎn)動(dòng),反之則控制電機(jī)保持原有狀態(tài)。
2 硬件設(shè)計(jì)
2.1 單片機(jī)最小系統(tǒng)設(shè)計(jì)
本系統(tǒng)采用的 STC89C52 芯片為 STC 公司設(shè)計(jì)生產(chǎn)的 一種低功耗、高性能的 CMOS 8 位微控制器,并具有 8 kB 系統(tǒng)可編程 FLASH 存儲(chǔ)器,擁有 8 位 CPU 和系統(tǒng)可編程 FLASH,使得系統(tǒng)更加靈活、有效 [9]。
2.2 溫濕度傳感器
溫濕度傳感器模塊采用DHT22 數(shù)字溫濕度傳感器,該傳感器用于檢測(cè)室外溫濕度,并將信號(hào)傳送到單片機(jī),同時(shí)在顯示屏上顯示。該傳感器具有可靠的數(shù)字模塊采集技術(shù), 能夠?qū)崟r(shí)采集溫濕度信息并反饋至單片機(jī),其傳輸?shù)?40位數(shù)字信號(hào)前 16位為濕度數(shù)據(jù),隨后 16位為溫度數(shù)據(jù),最后8位為校驗(yàn)和,可測(cè)溫度量程為- 40~80℃,濕度量程為0 ~100%RH。
2.3 人體紅外檢測(cè)模塊
紅外檢測(cè)模塊采用HC-SR501 人體紅外感應(yīng)模塊,該模塊功能強(qiáng)大,可用于防盜,既可采用全自動(dòng)感應(yīng),當(dāng)有人進(jìn)入感應(yīng)范圍時(shí)輸出高電平,又可采用光敏控制,在白天強(qiáng)光時(shí)不感應(yīng),當(dāng)感應(yīng)到室外有人時(shí)將高電平信號(hào)傳送到單片機(jī),單片機(jī)控制蜂鳴器發(fā)出警報(bào),房屋主人即可知道有人在窗外。考慮到夏天溫度較高,設(shè)有一個(gè)溫度補(bǔ)償 RT,當(dāng)溫度升高至30 ~32℃時(shí),即可作出一定程度的溫度補(bǔ)償,提高其精確度。
2.4 光電傳感器模塊
光電傳感器基于對(duì)射式光電傳感原理,由投光器和受光器組成。該傳感器用于檢測(cè)是否有異物阻擋在窗戶的行進(jìn)軌道上,若有則輸出低電平,單片機(jī)控制電機(jī)停止轉(zhuǎn)動(dòng),避免損傷人或物品;而正常情況下則輸出高電平,不影響電機(jī)轉(zhuǎn)動(dòng)。
2.5 碰撞傳感器模塊
碰撞開(kāi)關(guān)用于檢測(cè)窗戶是否已經(jīng)完全關(guān)閉或開(kāi)啟。當(dāng)窗戶關(guān)閉不完全即碰撞開(kāi)關(guān)未閉合時(shí),該模塊 3 腳 OUT 口輸出高電平,指示燈熄滅;而當(dāng)碰撞開(kāi)關(guān)閉合即窗戶完全關(guān)閉時(shí)則輸出低電平,指示燈點(diǎn)亮。利用該模塊可以很好地保護(hù)電機(jī), 避免電機(jī)空轉(zhuǎn)。
2.6 風(fēng)速傳感器模塊
風(fēng)速傳感器采用三杯式風(fēng)速計(jì),在風(fēng)力的作用下帶動(dòng)三個(gè)杯體旋轉(zhuǎn),只需將電壓采樣端直接與單片機(jī) A/D 口相接, 另一端接地即可。其不同的輸出電壓對(duì)應(yīng)不同的風(fēng)速,轉(zhuǎn)速越大,電壓越高。
2.7 電機(jī)驅(qū)動(dòng)模塊
本設(shè)計(jì)采用電機(jī)驅(qū)動(dòng)芯片L298N 來(lái)驅(qū)動(dòng) 24 V 直流電機(jī),電機(jī)驅(qū)動(dòng)模塊電路圖如圖 2 所示。該驅(qū)動(dòng)板可驅(qū)動(dòng) 2 路直流 電機(jī),ENA,ENB 為使能端,在高電平時(shí)有效,通過(guò)設(shè)置 INT1,INT2 確定電機(jī)轉(zhuǎn)動(dòng)方向,再對(duì)其使能端輸出 PWM 脈 沖即可實(shí)現(xiàn)調(diào)速。通過(guò)改變 INT3,INT4,ENB 的電平來(lái)確 定電機(jī)的轉(zhuǎn)動(dòng)方向和狀態(tài),其中 VCC 為 5 V。
2.8 雨滴傳感器模塊
雨滴傳感器使用寬電壓 LM393 比較器,可輸出數(shù)字信號(hào)和模擬信號(hào)。當(dāng)有雨時(shí) D0 輸出低電平,指示燈亮 ;無(wú)雨時(shí)D0 輸出高電平,指示燈滅。而模擬量則可用于檢測(cè)滴落在傳感器表面的雨量大小。將上述信號(hào)傳送至單片機(jī),經(jīng)數(shù)據(jù)處理后控制電機(jī)正反轉(zhuǎn),繼而實(shí)現(xiàn)窗戶的開(kāi)啟或關(guān)閉。
2.9 紅外遙控模塊
紅外遙控模塊分為紅外接收器和遙控器,其接收器接收頭為 1838 紅外接收頭,具有抗光功能,電磁干擾能力強(qiáng),且內(nèi)置紅外線專用IC。該紅外接收模塊為 3 線制,VCC 為外接5 V電壓,GND 為外接地,D0 為數(shù)字輸出端口,單片機(jī)通過(guò)讀取該輸出端口的二進(jìn)制數(shù)值來(lái)控制電機(jī)轉(zhuǎn)動(dòng)或停止。遙控器采用NEC編碼格式,遙控距離可達(dá)8 m,采用2.5 V干電池供電。遙控器中各按鍵都有固定編碼,按下后幾十毫秒內(nèi)紅外接收器會(huì)接收到一串二進(jìn)制編碼,將其送入單片機(jī)后由單片機(jī)判斷并執(zhí)行相應(yīng)操作。
2.10 顯示器模塊
顯示器采用LCD1602 液晶屏顯示溫濕度。該液晶屏可以顯示 32 個(gè)字符,完全滿足溫濕度顯示要求。
3 系統(tǒng)軟件設(shè)計(jì)
本系統(tǒng)以 Keil 作為單片機(jī)編程軟件,C 語(yǔ)言作為編程語(yǔ)言。其系統(tǒng)流程如圖3 所示。通過(guò)各傳感器對(duì)周圍環(huán)境的檢測(cè), 將信息送入單片機(jī)內(nèi),由單片機(jī)判斷并執(zhí)行相應(yīng)操作。單片機(jī)主程序main 調(diào)用各子程序,其余所有傳感器的信息判斷、電機(jī)模塊驅(qū)動(dòng)、LCD1602 溫濕度顯示、蜂鳴器報(bào)警等均寫入子模塊中,方便移植和閱讀 [10,11]。
4 結(jié) 語(yǔ)
本系統(tǒng)采用STC89C52 單片機(jī)及各類傳感器,LCD1602,蜂鳴器等器件,將光、風(fēng)、溫、電等技術(shù)結(jié)合為一體,具有較高的可靠性、安全性和極強(qiáng)的實(shí)用性。整體的設(shè)計(jì)創(chuàng)新點(diǎn)在于添加了防異物功能,也能較好地避免夾傷用戶。本系統(tǒng)通過(guò)一些方便實(shí)用的傳感器實(shí)現(xiàn)了對(duì)外部環(huán)境的監(jiān)測(cè),將外界信息顯示在顯示屏上,并由單片機(jī)控制電機(jī)驅(qū)動(dòng)模塊、人體紅外檢測(cè)模塊等,最終實(shí)現(xiàn)了智能開(kāi)關(guān)窗戶的目的,具有較高的實(shí)用價(jià)值和廣闊的應(yīng)用前景。