米衛衛
(河北省兒童醫院,河北石家莊,050051)
在科技發達的今天,自控系統已經不僅僅是實現室內基本安防、照明等的工具,而是自動化技術與建筑技術的統一體,充分利用科學與藝術的搭配,盡力達到完美與和諧的統一[1]。因此,智能窗簾作為智能家居的一部分,顯得尤為重要。試想,當躺在床上,發現窗簾沒有關上的時候,當早上醒來發現房間里烏黑一片,還要去理會窗簾的開關實在是一件煩人的事情。此時,帶有一定自我反應、調節、控制功能的窗簾便應運而生[2]。本次設計了一款可以根據室內環境狀況自動調節光線強度的窗簾,使得達到室內人體適應的光線亮度而不至于對人的眼睛產生傷害。
智能窗簾根據室內光線強度的變化,由光敏電阻感應光照強度,進而通過AD采集接收信號,到達ARM處理單元進行控制,從而達到自行調節窗簾的開合程度,“天黑關閉,天亮打開”, 使室內一直處于舒適的光照環境,具有智能管理,不產生誤動作。
本文從系統的整體設計方案、硬件電路以及軟件程序三方面介紹自動光控啟閉窗簾的設計。
光控窗簾控制的總體結構框架如圖1所示。

圖1 總體結構框圖
本系統由光敏電阻傳感器探測外界的光照強度,從傳感器出來的信號經過信號調理電路輸入到A/D轉換,進入到單片機采集,進而單片機控制電機的正轉和反轉,實現窗簾的打開和關閉操作。鍵盤主要是作為輸入設備,控制單片機的各種參量。顯示部分主要是用來顯示窗簾的各種狀態信息。
1.2.1 光敏電阻器
在本次設計中,因為要對光的強度進行采集,所以就用到了光敏電阻。光敏電阻具有很高的靈敏度以及光譜特性,光譜響應范圍廣從紫外一直到紅外,而且體積小、重量輕,最主要性能穩定。光敏電阻CDS系列是種薄膜的電子元器件,阻值隨著光源強度而變化。光敏電阻具有一些物理和環境的特性,最主要的特點是將光的變化轉換為電的變化,在本次設計中,就是將變化的阻值轉化為電壓的變化輸入到單片機中[3]。
1.2.2 系統主控芯片的選擇
由于單片機技術目前較為成熟,且具有精度高、易操控的優點,自身資源豐富,硬件設計簡單,并且在設計系統中盡量用軟件代替硬件,可以節約成本,提高可靠性。本系統采用的Atmega8單片機內置AD功能,符合設計的需求,芯片引腳圖如圖2所示。Atmega8的芯片內部集成了較大容量的存儲器和豐富強大的硬件接口電路,具備AVR高檔單片機MEGE系列的全部性能和特點[4]。

圖2 ATMEGA8主控芯片部分
本設計采用了單片機進行操控,硬件電路采用AVR單片機為核心,擴展相關的接口電路,實現整個電路的基本控制和擴展功能。
在以ATMEGA8單片機為主控芯片的基礎上,將電路系統分為幾個基本模塊電路,主要實現采集、控制、顯示的功能,如圖3所示。

圖3 系統硬件模塊框圖
自動光控啟閉窗簾是控制窗簾隨光強度的變化自動啟閉的裝置,控制啟閉規則為:當光度超過或低于某個閾值的時候,窗簾會自動啟閉,使屋內光度維持在某個范圍內[5]。控制系統要做到:
(1)當屋內光度過低或過高時候,通過光線采集部分電壓的變化,單片機控制的窗簾能夠自動啟閉,以達到控制的目的;(2)按鍵系統可以調節光度閾值和特殊要求下人工控制窗簾的啟閉;(3)顯示系統可以顯示當前狀態,并根據顯示調節啟閉的光度,以達到不同人的需求和達到窗簾啟閉的目的;(4)窗簾的輸出控制能夠達到正轉和反轉的精確控制并能進行數碼顯示反映當前狀態;(5)電路的復位部分可以在每次的電源重新啟動時把電路重新復位至起始狀態[6]。
本系統用到的主要器件為ATMEGA8,光敏電阻,12V直流電機,數碼管/二極管/三極管,穩壓塊,滑動變阻器,按鍵開關等。控制系統以Atmega8CPU為控制系統的核心,外圍電路、器件和CPU的有機連接,構成了窗簾控制系統的硬件電路。
2.2.1 光度采集部分
本部分采用光敏三極管來采集光照強度。但由于市場上此類光敏三極管較貴,所以將此器件換為光敏電阻代替。下面說明中將以光敏電阻為光度采集器件。
當戶外光線照射到光敏電阻表面時,光敏電阻的阻值與光照強度成反比,利用光敏電阻這一性質來達到轉化為電壓變化的目的。在其一端加上5V電壓后,與一電位器(12k)串聯分壓后,就直接將光照強度轉換為電壓了。光敏電阻采集到的光照強度轉換成電壓后,經R8限流電阻后,直接送到ATMEGA8的23腳(內部AD轉換ADC0輸入端)[7]。光照采集電路如圖4所示。

圖4 光度采集電路
2.2.2 電源部分
本控制器工作電壓為直流5V。市電220V不能直接為其供電,所以必須將市電220V轉換為直流5V給控制器供電。
如圖5所示,220V火線經保險管后,經電容C0吸收掉高頻干擾后,再經壓敏電阻R0吸收掉尖脈沖(電源通斷瞬間產生的尖脈沖),然后經變壓器降壓,降到交流12V左右,經整流橋DB1、電解電容E1、電容C4整流濾波后,得到12V左右的直流電壓;直流12V經D4(在焊接過程中,防止電源正負極接反后,燒毀穩壓塊,起保護穩壓塊作用)、E4電解電容(濾中低頻)、C8電容(由于電解電容存在感抗,對高頻信號的濾波效果不好,所以在其后加一個電容濾掉高頻)后,送入穩壓塊7805進行穩壓。又經電解電容E3、電容C7濾波后給ATMEGA8供電[5]。

圖5 電源部分
2.2.3 輸出控制部分
由于考慮到窗簾很輕,拖動其動作所需力不大,所以采用12V直流電機控制窗簾的啟閉。兩路控制OUT1、OUT2直接由ATMEGA8控制[8]。
當OUT1為1、OUT2為0時,Q1導通、Q2截止,電機反轉。
當OUT1為0、OUT2為1時,Q2導通、Q1截止,電機正轉。
當OUT1為0、OUT2為0時,Q2截止、Q1截止,電機不轉。
其中C2、C3的作用為濾波,R3、R4的作用為限流,D1、D2的作用為指示作用(在運行中,觀察其亮與滅來分析電機的工作狀態)。R1、R2的作用為限流(12V直接給電機供電,容易使電機損壞,所以加限流電阻對其限流)。L1、L2、C1的作用為濾波(由于ATMEGA8對電機進行PWM調速控制,產生的波形也容易使電機損壞,所加兩個電感一個電容對波形整形)。電動機控制原理圖如圖6所示。

圖6 輸出控制部分
2.2.4 顯示部分
為了方便設定屋內光照強度的大小,在電路中加入顯示這部分,如圖7所示。此數碼管為共陽/兩位數碼管。在設計中為了節約成本,而又考慮到ATMEGA8的吸入電流較大,所以用ATMEGA8直接驅動數碼管顯示。這里用的顯示方法主要是用軟件來實現的,在后面軟件說明部分將對其說明。

圖7 顯示部分
5V電壓經R5分壓后,對數碼管供電。ABCDEFG為數碼管的碼元。DP1、DP2為位元。
2.2.5 按鍵部分
為了便于操作,在控制器中加入按鍵部分,見圖8。其功能為:SB1控制電機正轉(閉合時,電機緩慢正轉)。SB2控制電機反轉(閉合時,電機緩慢反轉)[9]。SB3設定屋內光照強度加,SB4設定屋內光照強度減(人為設定一個光照強度,控制器自動控制窗簾的啟閉,從而實現屋內光照強度的調節)。R6與D3的作用是電源通電顯示。

圖8 控制系統總電路圖
2 2 6 復位電路
控制器在上電瞬間的電壓波動很大,為了讓ATMEGA8工作穩定,在開機時,對其進行復位,見圖8。其工作原理:在通電瞬間,RESET為低,5V電壓經R7限流后,產生一小電流對E2充電,充電時如果斷掉,E2上的壓降大于ATMEGA8的復位電壓,ATMEGA8停止復位[10]。注:AVR與MCS51系列的復位電路不同。
2.2.7 振蕩電路
振蕩電路見圖8,為ATMEGA8提供工作所需時鐘。XTAL1與XTAL2分別為用作片內振蕩器的反向放大器的輸入和輸出,這個振蕩器可以使用石英晶體,也可以使用陶瓷諧振器。熔絲位CKOPT用來選擇這兩種放大器模式的其中之一。當CKOPT被編程時振蕩器在輸出引腳產生滿幅度的振蕩。這種模式適合于噪聲環境,以及需要通過XTAL2 驅動第二個時鐘緩沖器的情況。而且這種模式的頻率范圍比較寬。當保持CKOPT為未編程狀態時,振蕩器的輸出信號幅度比較小。其優點是大大降低了功耗,但是頻率范圍比較窄,而且不能驅動其他時鐘緩沖器。對于諧振器,CKOPT未編程時的最大頻率為 8 MHz, CKOPT編程時為16MHz。
控制系統總電路圖[11]如圖8所示。
主程序整體構成無限循環模式,整體流程圖如圖9所示。主要完成單片機初始化關閉所有中斷,按鍵掃描、處理,AD采集處理,電機運行,顯示等功能。

圖9 主程序流程圖
啟動主程序,先初始化所有端口關閉中斷,初始化寄存器,初始化顯示內容;然后檢查AD口是否有電壓,執行AD采集;檢查按鍵,執行按鍵相應處理;再判斷顯示值是否設置值,如果不是則啟動電機,執行窗簾開閉,否則不執行任何操作,窗簾靜止,再檢測光強度變化,是否有AD采集變化;一直循環執行判斷,實現窗簾的自動關閉和打開的操作過程[12]。
本文設計了一款基于單片機的智能光控窗簾啟閉系統,其中主要包括了方案設計、硬件及軟件設計。該系統的實現將減輕人力負擔,實現光控自動調節,使電機自動運行,通過單片機的精準操作,使結構簡單、運行可靠、控制方便、控制性能優化等優點,從而使得窗簾的開關和閉合更加的準確、穩定,光電傳感器配合單片機的定時功能很好的實現了自動控制功能[13]。