穆鵬飛 張萍 馬如海


摘 要: 針對家居環境采光及避光問題,自動窗簾控制將取代手動控制,更加人性化。本智能窗簾控制系統以AT89C52為控制核心,集溫度控制、光照強度控制、LCD顯示、紅外遙控為一體,實現了通過光照強度、溫度檢測、紅外遙控控制窗簾的開閉,很好地解決了普通窗簾的控制問題,方便了人們的生活,滿足了人們提高生活品質的需求。
關鍵詞: AT89C52 智能窗簾控制 紅外遙控
21世紀是信息化的世紀,各種電信和互聯網新技術推動了人類文明的巨大進步。正是因為通信技術、網絡技術、控制技術等的迅猛發展與提高,影響到了人們生活的各個方面,改變了生活習慣,提高了人們的生活質量,家居智能化也應運而生。作為智能家居的一個重要組成部分,智能窗簾控制系統在家居、大型會議等領域具有廣泛的應用前景[1]。本設計主要針對目前生活中使用的普通窗簾所無法解決的現實問題,在普通窗簾上安裝傳動系統,并以傳感器控制系統為核心,構成條件感應、信息分析、電路控制、機械傳動的一體化,以實現窗簾開啟和關閉的智能化,讓窗簾具備識別室外光線、溫度的變化并隨之自動關閉和較遠距離遙控的功能,讓人們的生活更便捷、更有效。
1.系統總體設計
本智能窗簾控制系統以STC89C52單片機為控制核心,由電源模塊、光敏感應模塊、溫度檢測模塊、紅外遙控模塊等組成,與此同時可外擴一些其他的控制功能。系統可以實現對外界光線強度的實時監測,從而來控制窗簾的自動開啟和關閉,并可對室內的溫度進行檢測和顯示,可由用戶設定溫度閾值,當實際的溫度超過或低于設定溫度后,通過窗簾的開閉,使室內的光線和溫度達到一個較理想的條件。為了體現人性化,本設計通過紅外線的發送和接收,可根據用戶的意愿實現對窗簾開閉的遠距離遙控。本系統的原理框圖如圖1所示。
2.系統硬件電路設計
系統硬件電路包括有單片機及相關電路、光敏傳感器電路、A/D轉換電路、溫度檢測電路、步進電機電路、紅外控制電路等。單片機外圍電路提供各模塊所需5V電源;信號檢測后的是模擬信號,進入A/D轉換后輸出數字信號給單片機;單片機的P2口控制步進電機的運行,從而控制窗簾的升降。
2.1單片機及相關電路設計
STC89C52是STC公司生產的一種低功耗、高性能CMOS8位微控制器,具有8K在系統可編程Flash存儲器。STC89C52使用經典的MCS-51內核,但做了很多改進使得芯片具有傳統51單片機不具備的功能。在單芯片上,擁有靈巧的8位CPU和在系統可編程Flash,使得STC89C52為眾多嵌入式控制應用系統提供高靈活、超有效的解決方案。
2.1.1晶振電路
單片機必須在時鐘的驅動下才能進行工作。MCS-51系列單片機內部都有一個時鐘振蕩電路,只需外接晶振源,就能產生一定頻率的時鐘信號送到單片機內部的各個單元,決定單片機的工作速度,如圖2所示。本設計外接12MHZ晶振源,電路中兩個電容采用30pF。這兩個電容的作用一是幫助振蕩器起振,二是對振蕩器的頻率起到微調作用。
2.1.2復位電路
復位是單片機的初始化操作,只需要給單片機的復位引腳RST加上大于兩個機器周期的高電平就可以使單片機復位[2]。復位時,單片機初始化為0000H,從0000H單元開始執行程序。除了進入系統的正常初始化外,當程序運行錯誤或操作錯誤使系統處于鎖死狀態時,也需要復位鍵使RST引腳為高電平,重新啟動。復位電路圖如圖3所示。
2.1.3顯示電路
在單片機系統中,應用液晶顯示器作為輸出器具有體積小、重量輕、功耗低、顯示質量高等優點[3],本系統采用LCD1602作為顯示模塊。
2.1.4電源電路
單片機工作需要使用5V電壓,因此需要給單片機設計電源電路。本系統采用了獨立電源設計。整流橋將交流電整流成直流電,經過整流、濾波、穩壓電路,選用三端穩壓管7805輸出+5V電壓為單片機AT89C52提供工作電源。
2.2光敏傳感器電路
智能窗簾要根據光照的情況而自動開關窗簾,因而需要使用到光電傳感器。本設計采用光敏電阻。光敏電阻又稱光導管,它幾乎都是用半導體材料制成的光電器件[4]。光敏電阻在外界光線強度的變化下,阻值產生變化,使得輸出電壓產生變化。變化的電壓信號傳送到A/D轉換芯片,將模擬量轉化為數字量,進而輸入單片機處理器。經過處理器的運算與處理,控制電機的正反轉,達到窗簾開閉的目的。
2.3A/D轉化電路
A/D轉化電路的作用是進行模數轉化,把接收到的模擬信號轉換為數字信號輸出。本設計采用PCF8591芯片。PCF8591是一個單片集成、單獨供電、低功耗、8位CMOS數據獲取器件[5]。具有4個模擬輸入、1個模擬輸出和1個串行IC總線接口。PCF8591的3個地址引腳A0、A1和A2可用于硬件地址編程,允許在同個IC總線上接入8個PCF8591器件,而無需額外的硬件。
2.4溫度檢測電路
采用溫度傳感器DS18B20采集室內的溫度值,通過DQ引腳將檢測到的溫度信息輸出并傳送給單片機[6],并由LCD顯示器顯示當前的溫度。其中,溫度的閾值可由用戶通過紅外線遙控設定。當室內溫度超過或低于設定值時,伴隨有電機的正反轉。
2.5步進電機電路
步進電機是一種把電脈沖信號轉換成機械角位移的控制電機,常作為數字控制系統中的執行元件。由于其輸入信號是脈沖電壓,輸出角位移是斷續的,即每輸入一個電脈沖信號,轉子就前進一步,因此叫做步進電機[7]。為了實現步進電機的簡易運動控制,一般以單片機作為控制系統的微處理器,通過步進電機專用驅動芯片實現電機的速度和位置定位控制。
2.6紅外遙控電路
利用HT6221芯片組成的遙控器發射紅外信號,接收頭接收后先解碼,并用LCD顯示每個按鍵對應的用戶碼值。利用遙控器上的按鍵,軟件中設置供用戶隨時控制電機正反轉的程序,實現可在任意時刻控制窗簾的開閉;另外,在進入溫度設定模式下,紅外遙控可以設置初始的溫度值。
3.系統軟件設計
系統編程采用C語言的模塊化設計思想,降低了軟件設計復雜性。在程序中定義頭文字和子程序,用主程序調用子程序的方法實現系統的信息采集、處理和電機的轉動。主程序的流程是:早晨陽光較強,光敏電阻呈現低電阻,相當于接入單片機為低電平,通過程序控制步進電機正轉,打開窗簾;晚上光線較弱,相當于接入單片機為高電平,通過程序控制步進電機反轉,關閉窗簾;單片機輸出停止時,電動機停轉。子程序包括:光敏傳感程序、溫度檢測程序、紅外遙控程序、LCD顯示程序、步進電機控制程序等。
4.結語
該設計通過控制電路與軟件程序的協調組成了智能窗簾控制系統,實現了光照強度、溫度和紅外遙控對窗簾的自動調控。軟件模塊化編程提高了系統的開發效率,便于后期開發。實驗測試表明,該智能窗簾控制系統性能穩定,成本低,易于擴展。采用紅外遙控,使得系統應用更智能、方便。因此,本控制系統在生活、辦公等領域具有廣泛的應用前景,特別是在智能家居及大型場所方面應用前景更廣泛。
參考文獻:
[1]安森,張彥航,崔文華.基于凌陽61單片機的智能窗簾控制系統設計[J].微處理機,2012.2.
[2]王欣飛,謝龍漢,謝鋒然.51單片機原理與程序設計.清華大學出版社,2014.
[3]陳朝大,李杏彩.單片機原理與應用.化學工業出版社,2013.
[4]王雅芳.傳感器原理與使用技術.機械工業出版社,2014.
[5]王靜霞.單片機應用技術(第2版).電子工業出版社,2014.
[6]何應俊,曾祥云.51單片機C語言編程.機械工業出版社,2014.
[7]謝衛.控制電機.中國電力出版社,2013.