智能家居系統(tǒng)中自動窗簾控制系統(tǒng)的設計實現(xiàn)
隨著高新技術及電子器件的發(fā)展,光控、溫控及遙控窗簾應運而生,給人們的生活帶來了很多方便。同時,也為人們的生活環(huán)境以及智能家居的實現(xiàn)提供了依據(jù),為此,研究與設計智能窗簾控制系統(tǒng)具有深遠的現(xiàn)實意義。
1 系統(tǒng)總體設計與工作原理
本系統(tǒng)由單片機、紅外接收、光敏測光、電機驅(qū)動、數(shù)碼管顯示以及鳴響提示模塊組成。主要應用模塊的選擇包括電動機驅(qū)動模塊的、PWM調(diào)速方式、PWM調(diào)脈寬方式、PWM軟件實現(xiàn)方式的選擇。其中,電機驅(qū)動模塊的選擇采用由達林頓管組成的H型PWM電路;PWM調(diào)速工作方式采用單極性工作制;PWM調(diào)脈寬方式選擇采用定頻調(diào)寬方式;PWM軟件實現(xiàn)方式采用軟件延時方式。智能窗簾設計所需的關鍵芯片及器件有:單片機AT89S52、直流電動機、三相穩(wěn)壓器78L05、儲存芯片CAT24WC02以及光耦4N25。系統(tǒng)總體框圖如圖1所示。
該窗簾控制系統(tǒng)采用AT89S52單片機的最小系統(tǒng)設計,可以實現(xiàn)使用紅外遙控器進行遠程手動開、手動關和手動停控制,數(shù)碼管顯示窗簾的開、關,可以通過自行設定相應的數(shù)字表示;也可以按事先輸入的開啟時間和關閉時間進行時間控制,數(shù)碼管顯示當時的小時和分鐘時間,但只能順序顯示,顯示一遍后,略等片刻,再顯示下一遍時間;還可以根據(jù)室外環(huán)境亮度實現(xiàn)光控,即窗簾的自動控制,由驅(qū)動數(shù)碼管顯示出當時的狀態(tài)。紅外窗簾遙控控制器通電默認當時時間是8點鐘。在3種工作方式下,數(shù)碼管均按時分法顯示時間、工作方式和工作狀態(tài)。每一組數(shù)據(jù)由5個數(shù)字組成,前4個數(shù)字順序顯示時十位、時個位、分十位、分個位,第5個數(shù)字包含工作方式和工作狀態(tài):顯示“一”(1橫)表示手動方式;“二”(2橫)表示半手動方式;“三”(3橫)表示光控方式;不顯示橫則表示時控方式。左上角的“豎”點亮表示電機工作時發(fā)出鳴響提示,不點亮表示電機工作無提示;右上角的“豎”點亮表示整點報時開啟,不點亮表示無整點報時。左下角“豎”點亮表示窗簾正在打開,右下角“豎”點亮表示窗簾正在關閉。
2 硬件電路設計
該窗簾控制系統(tǒng)電路分為8個部分:電源、顯示、光控電路測光、電機控制執(zhí)行、紅外接收、鳴響提示、數(shù)據(jù)存儲、單片機主控器件。其中,電源部分通過外接插座輸入交流12 V或者直流13 V~14 V電壓供電,經(jīng)過三端集成穩(wěn)壓器穩(wěn)壓后輸出5 V電壓,為鳴響電路、紅外接收電路、顯示電路提供電源。使用2節(jié)5號普通電池提供直流電源。
2.1 光采集電路設計
測光電路如圖2所示,由GM1、C3、V3組成。GM1采用光敏二極管[1],C3和GM1組成RC充放電回路。當P3.4處于高電平時,P3.4的高電壓通過GM1的正向電阻向C3充電;當P3.4被單片機拉低為低電平時,C3通過光敏元件放電。光敏二極管工作在反向電壓狀態(tài)下,此時環(huán)境亮度決定了光敏二極管的光阻值,光阻值大,C3放電速度慢,反之放電速度快。適當控制P3.4的拉低脈沖寬度,使得C3放電工作在線性比較好的工作段上。P3.5用來檢測C3在P3.4拉成低電平期間的放電電壓狀態(tài),當C3電壓降到小于1/2VCC后,P3.5測得數(shù)據(jù)“0”,反之測得數(shù)據(jù)“1”。為了減小P3.5對C3充放電的影響,C3充放電電壓通過三極管V3組成的射極輸出器連接到P3.5上,射極輸出器的高輸入阻抗減小了P3.5對RC充放電電路的影響。
2.2 紅外接收電路及數(shù)據(jù)存儲部分設計
紅外接收電路使用型號為HS3008的集成型紅外接收器,靜態(tài)時輸出端輸出高電平,當接收到紅外信號后,按紅外信號的數(shù)據(jù)波形輸出負脈沖數(shù)據(jù)信號,紅外信號輸出到單片機的P3.2口,該口對應的第二功能是外部中斷0(INT0),利用該功能,一旦紅外信號到來,P3.2被拉成低電平,使單片機中止當前的工作并轉(zhuǎn)到接收及處理紅外信號。開啟中斷功能的目的是:既減輕了單片機的工作負擔,又保證接收到的紅外信號的完整性,同時在手動工作狀態(tài)下,單片機進入睡眠后,利用外部中斷功能完成對單片機的喚醒。單片機的P3.3和P3.7口作為I2C存儲器的總線,本電路中使用AT24C02完成對設置狀態(tài)和設置數(shù)據(jù)的儲存。紅外接收電路和數(shù)據(jù)存儲電路[2]如圖3所示。
2.3 窗簾框架構造設計
窗簾框架構造設計包括窗簾微動開關連接電路設計和窗簾架的制作與設計。本設計中的微動開關通過電容、電阻組成的復位電路與單片機的復位引腳相連,微動開關安裝在窗簾滑桿上,當窗簾移動到預定位置時,觸動微動開關,使單片機復位,此時電機停轉(zhuǎn),窗簾停到指定位置。窗簾架的制作方法如下:先加工兩只滑輪作為主動輪和從動輪,輪子類似皮帶輪,底徑約為25 mm,槽寬和槽深約為4 mm;1根曬衣繩,直徑約為4 mm;在主動輪的槽底用膠水粘一圈薄膠皮以增加摩擦力;將主動輪固定在電動機軸上,而將電動機固定在窗簾盒的一端,將從動輪固定在窗簾盒的另一端,固定時最好調(diào)節(jié)裝置,用以繃緊拉繩。窗簾桿選用19 mm的不銹鋼管,采用2根桿其目的在于左右窗簾能重合。拉繩的接頭處與左右窗簾的第一環(huán)連接,并固定一鐵片用來觸動微動開關[3]。窗簾架的構成及窗簾的布置如圖4所示。
3 系統(tǒng)軟件設計
本系統(tǒng)中單片機微處理器的主要任務是完成對HS3008接收到的紅外信號的控制與處理,從而完成對相應控制單元的控制。主程序首先完成初始化,然后啟動HS3008等待接收控制指令,進行相應的輸出操作[4]。系統(tǒng)流程圖如圖5所示。
單片機對接收到的紅外信號控制指令通過P3.2口來完成,其對應第二功能時為外部中斷0(INT0),通過接收到不同的紅外信號脈沖實現(xiàn)相應的操作。程序中重要的子程序有:串口初始化、串口接收中斷以及紅外信號處理子程序等。當串口設置完畢、程序初始化后,程序?qū)3.2口進行實時檢測,一旦檢測到有低脈沖到來,則進行解碼后,提取相應的子程序以實現(xiàn)對電機的控制。當接收到手動控制信號時,則直接對電機進行控制,實現(xiàn)窗簾的拉開、關閉或停止;當接收到半自動控制信號時,操作者只需按下拉開或關閉按鈕來程序執(zhí)行,從而實現(xiàn)窗簾拉開或關閉。對于電機如何停止的問題,本設計在窗簾滑桿上安裝了微動開關,一旦窗簾拉動到指定位置就會觸碰微動開關,從而送給單片機一個低脈沖,單片機在接收到低脈沖后,則認為窗簾已完全拉開或關閉,調(diào)用程序?qū)崿F(xiàn)電機的停止轉(zhuǎn)動;當接收到光控信號時,單片機調(diào)用相應的程序,驅(qū)動光敏二極管檢測環(huán)境亮度,根據(jù)檢測結果,實現(xiàn)窗簾的拉開或關閉。電機的停止也如同半自動控制,如此實現(xiàn)窗簾的自動控制。
電機的工作狀態(tài)還可通過數(shù)碼管顯示出來,程序的編寫很簡單,通過不同的數(shù)字表示相應工作狀態(tài)。與此同時,還可以通過鳴響提示電路提示電機正在工作,以避免多次按下按鈕使單片機進行誤操作,造成死機。
基于單片機的智能遙控窗簾的設計,在實時性要求較低的測控與采集系統(tǒng)的應用中具有很好的發(fā)展前景和應用價值。在國內(nèi)外,自動調(diào)光窗簾成為人們家居生活的首選布置。本文介紹的自動調(diào)光窗簾利用紅外遙控實現(xiàn)了其控制功能,在設計過程中遇到了一些典型的問題,但采取了相應的措施:
(1)電機驅(qū)動問題。電機的驅(qū)動電壓為5 V,但是經(jīng)過三極管的降壓后,電機驅(qū)動能力明顯下降,為了增大電機驅(qū)動能力,在控制部分與電機執(zhí)行部分加了4N25光耦隔離,將兩部分隔離開來,外接12 V電壓,以增大電機的驅(qū)動能力。(2)電機停機問題。單獨靠程序來實現(xiàn)電機的停機,對時間控制的要求非常高,且不易實現(xiàn)。如果通過繼電器來實現(xiàn)停機也可以,但由于繼電器響應時間慢、機械結構易損壞、壽命較短、可靠性不高,故采用了微動開關,通過送單片機低脈沖來實現(xiàn)電機停機,實時性也很好[5]。
評論