韓燕,王世豪,蔡曉敏,景妍妍
(南京郵電大學 通達學院電氣工程學院,江蘇揚州,225000)
在全球變暖的大形勢下,節能減排受到國內外廣泛關注,得益于微控制器的迅速發展,以單片機為控制核心的各家用電器受到普遍歡迎。在此背景下,考慮到普通臺燈功能單一,如只能手動控制開燈、關燈、調節燈光的亮度等級;用戶在離開后若忘記關燈會導致電能的浪費;在使用過程中坐姿不規范,使用時間過長導致用眼過度,視力下降等問題,設計了一套多功能臺燈控制系統,該系統以單片機為核心,結合PWM 調光,傳感器技術來豐富臺燈的功能。
本文將從總設計介紹系統的各功能組成模塊;從硬件設計介紹各功能模塊的選型和具體作用——硬件是載體;從軟件設計體現系統的控制思想——軟件是靈魂;最終完成系統調試實現系統功能。
本系統以STC89C52 為控制核心,功能模塊主要包括電源電路、超聲波測距、人體紅外檢測、光敏模塊、模擬臺燈控制模塊、按鍵模塊、液晶顯示、溫度檢測以及報警模塊等部分[1]。
本設計的控制目的是改善傳統臺燈功能單一的問題,除了可手動控制臺燈的亮滅,結合光敏電阻和紅外傳感器,增加了自動控制的功能,在外界環境亮度不足,且有人在附近活動時能夠自動開燈;增加了超聲波測距和報警功能,考慮到用戶坐姿不良,長時間工作學習,會造成身體不適,故用戶距離桌面太近,使用時間過長時,臺燈會發出不同的報警聲,提示用戶及時調整;另外還增加了溫度實時監測與液晶顯示。相比于傳統臺燈,該系統功能更加多樣化、人性化。系統組成框圖如圖1 所示。

圖1 系統組成框圖
主控制器采用的STC89C52 是一種低電壓、低功耗、高性能的單片機,其豐富的片上資源足夠本系統使用。其作為控制核心,需要與其它功能模塊之間完成數據交互,從而實現對臺燈的控制[2]。該款單片機性價比高,供貨渠道穩定,并有穩定度較高的下載器可供使用,因此在系統上并沒有設計下載電路,只設計了最小系統[3]。單片機最小系統如圖2 所示。

圖2 單片機最小系統
電源電路的設計需綜合各功能模塊考慮,系統中STC8 9C52 單片機需要5V 的供電電壓;超聲波模塊、蜂鳴器和顯示屏等模塊的工作電壓都是5V;模擬臺燈的工作電壓可在5~10V 選擇;紅外檢測模塊的工作電壓4.5~20V;溫度傳感器的工作電壓3~5.5V;綜上考慮,選擇5V 的直流電源比較合適。系統采用型號規格為DC-005 的電源插座,電源適配器插上電源后,通過按鍵開關接通電路,加上幾個濾波電容,即得到足夠系統工作的+5V 電源,電路中串聯一個LED 燈和一個限流電阻作為電源工作指示燈。電源電路如圖3 所示。

圖3 電源電路
考慮到按鍵數量不多,系統I/O 口比較充足,故采用獨立按鍵設計以節省軟件設計工作量。按鍵模塊由七個按鍵組成如圖4 所示,復位按鍵S1 見圖2。其他按鍵分別為設置按鍵也可以理解為菜單鍵;確認按鍵;加/減按鍵,主要作用是調節超聲波提示距離和久坐提示的時間,同時也用來在手動模式下調節亮度;手動/自動模式切換按鍵;手動模式下的開關按鍵。

圖4 按鍵模塊
光敏模塊在本設計中的作用是檢測外界環境的亮度,采用光敏電阻結合ADC0832 的設計,光敏模塊電路圖如圖5所示。其功能是將光照強度轉換為數字信號送給單片機,由單片機對光照強度進行判斷[4]。后續單片機會以此作為判斷條件,對臺燈實現控制。

圖5 光敏模塊
本設計增加紅外檢測模塊的目的,一方面是考慮到用戶走后忘記關燈,從而導致電能的浪費,另一方面是在自動模式下,通過該模塊感應是否有人在周圍活動并結合光敏模塊來實現臺燈的自動控制。紅外檢測模塊電路圖如圖6 所示。

圖6 紅外檢測模塊
系統在臺燈功能展示環節,采用USB燈模擬臺燈的工作,USB 燈體積小、功耗小、技術成熟、功能穩定、價格實惠。臺燈控制模塊電路圖如圖7 所示。臺燈亮度的調節,采用PWM 也就是脈寬調制調法來控制,不管是在手動模式還是在自動模式下,都是通過該方法改變其亮度。改變脈沖序列的周期可以調頻,改變占空比可以調壓,通過這種方法使電壓與頻率協調變化進而改變充電電流,達到調節亮度的目的[5]。

圖7 臺燈控制模塊
超聲波傳感器是本系統的關鍵性功能模塊,用來實現坐姿提醒功能。超聲波模塊與單片機相連,其啟動是由單片機提供一個10μs 以上的脈沖觸發信號,隨后其內部會發出方波并檢測回波,一旦檢測到回波則向單片機發送回響信號,通過發射信號與收到回響信號的時間間隔就可以計算出距離[6]。當距離小于設定值時,觸發報警電路工作,發出提示音,在一定程度下達到約束坐姿,保護視力的目的。超聲波模塊原理圖如圖8 所示。

圖8 超聲波測距模塊
報警模塊由兩部分組成,蜂鳴器作為坐姿提醒,當坐姿不合適用戶距離桌面過近時,會發出蜂鳴提示,蜂鳴器電路如圖9 所示;喇叭“叮叮叮”的聲音作為久坐提示,提醒用戶適當休息避免用眼過度,喇叭的驅動需通過語音芯片與單片機相連,喇叭電路如圖10 所示。

圖9 蜂鳴器電路

圖10 喇叭電路
溫度檢測模塊的作用是實時監測室內的環境溫度,并將溫度信息送給單片機處理,以便后續能在顯示電路中實時顯示室內溫度。在本系統中溫度測量芯片采用的是廣泛使用的DS18B20。溫度檢測模塊電路圖如圖11 所示。

圖11 溫度檢測模塊
顯示電路用于實現室內環境溫度顯示、距離顯示、久坐提示的時間倒計時以及亮度等級。考慮到本設計中能夠顯示數字和英文已經基本滿足要求,且為了后期調試方便,選擇了LCD1602A 帶排針的液晶顯示屏,顯示電路如圖12 所示。

圖12 顯示電路
系統上電加載程序,器件和端口完成初始化后,調用按鍵掃描程序,根據按鍵情況完成初始設置進入工作狀態。
調用溫度測量子程序,環境亮度處理子程序,并將溫度信息和亮度信息通過顯示程序顯示在液晶屏上。
根據按鍵情況,判斷手動按鍵是否按下,沒有則系統進入自動模式;按鍵按下則進入手動模式等待手動開關燈操作。
在自動模式下,首先調用人體紅外檢測處理程序判斷是否有人靠近,其次根據環境亮度處理子程序數據判斷亮度是否充足。如果有人靠近且此時環境亮度不足則自動開燈,并根據環境亮度自動調光。
在手動模式和自動模式下有人靠近時,均會調用超聲波測距處理子程序,根據設定值判斷用戶距離,距離過近蜂鳴器就會間斷提醒;其次調用定時子程序,定時時間到系統喇叭會發出語音提示后重置倒計時。實現久坐提示和坐姿提醒以防用眼過度從而保護視力。
多功能臺燈的軟件控制流程如圖13 所示。

圖13 軟件控制流程圖
系統實物如圖14 所示,該圖為上電完成初始設置后的整體工作畫面。手動按鍵沒有按下則默認是自動模式,表示自動模式的指示燈會亮,當周圍環境的亮度低于9 級并檢測到有人靠近時開燈,同時根據環境亮度控制USB 燈的亮度等級,在一定程度上達到節能的效果。程序默認的久坐提示時間為50 分鐘。
系統可以實現以下功能:臺燈的手動控制模式和自動控制模式(可通過按鍵切換);亮度自動調節;坐姿提醒;久坐提示;溫度、亮度、距離、久坐倒計時顯示。
圖14 液晶屏顯示內容做如下解釋:

圖14 系統實物圖
L:7-2,其中7 表示的是光敏電阻檢測到的環境光亮度等級,范圍是0~9,等級越高表示外界環境亮度越高;2 表示的是USB 燈的亮度等級,范圍也是0~9 級,同理等級越高USB 燈的亮度越高;
Dis:024cm,表示超聲波測得的用戶距離;單片機將此距離與設定值做比較;
T:25C,表示溫度傳感器測得的環境溫度,為了數據的準確性10 秒更新一次;00:47:04,表示的是久坐提示的倒計時時間。
本設計在普通臺燈的基礎上,增加了自動控制,智能調光,坐姿提醒,久坐提示,溫度顯示等功能,經濟環保性價比高。經過測試系統硬件電路無異常,軟件運行順利,基本達到了筆者設計的初衷,實驗證明了多功能臺燈系統控制方案的可行性。但如若完全符合生產生活需求,在外形的設計以及照明光源的設計上還需做進一步改進。