芮翼鵬 趙培焱 沈 洲 王衍文
(西京學院 信息工程學院,陜西 西安 710123)
一般來說,自適應調節亮度的臺燈是一種融合現代控制理念的臺燈設計方式,主要是可以根據當前的環境中亮度、人員情況等進行實時的亮度調整和開關控制[1]。對比這兩種在學習生活中比較重要的照明臺燈可以看出來,自適應亮度調整的臺燈相對于手動亮度調節的臺燈在自動化以及智能化的程序均比較高,而且能夠滿足不同人的要求同時節約資源、保護自然環境。
設計方案是現代半導體制造工藝發展起來的新一代電子器件用于傳統控制電路的現代化設計,往往需要用戶根據實際的需要以及控制效果進行核心處理單元器件的選擇,輔助以傳統的傳感檢測電路、信息顯示電路等設計實現,整個系統采用主要分為人體信號采集模塊、環境中亮度和溫度采集單元模塊、顯示信息顯示單元以及信息處理和外圍部件邏輯控制單元等模塊設計實現,各模塊與多功能臺燈智能控制系統的邏輯控制中心單片機之間邏輯關系如圖1 所示。

圖1 多功能臺燈設計框架

圖2 硬件電路原理圖
邏輯控制電路:包括復位電路和晶振電路。復位電路,復位單元是一個以單片機為核心的智能控制系統中運行時候的復位信號,通常該單元電路的設計包括電阻、電容和按鍵器件組成,利用大小阻值為10K 的R14 保證復位單元模塊產生的瞬時電流/電壓不會燒壞電容C2。晶振電路,晶振單元是用于產生單片機、紅外檢測單元的時序信號,該電路由晶振和電容組成。具體的由晶振大小為11.0592MHz的晶振單元內部的震蕩信號用于產生時序信號,通過并接入30pF 的電容設計實現,該電路產生的震蕩時序信號通過單片機中標號X1 和X2 引腳的之間的電氣連接實現時序信號的傳遞。
紅外檢測電路:多功能臺燈智能控制系統中紅外檢測單元模塊主要是對于臺燈的紅外探測單元探測距離內是否有人的實時檢測,該紅外檢測單元硬件支撐電路主要是以HC-SR501 紅外檢測傳感器為核心進行外圍人體信號的檢測。當HC-SR501 器件檢測到智能臺燈范圍內存在人體信號以后,通過器件的2 號引腳將檢測到的人體信號送入單片機中[2]。
溫度采集電路:溫度采集單元的主要是以DS18B20 為核心進行的,該器件具有三個功能各不相同的引腳,具備分為兩類,即:能量供給端口、數據傳輸端口。為了使得DS18B20 能夠正常的采集環境中的溫度值,利用能量供給端口VCC、GND引腳與臺燈智能控制系統的能量供給單元進行連接實現能量供給,溫度敏感器件采集的溫度值通過DQ 功能引腳與核心處理單元單片機的P21 引腳連接實現。
按鍵電路:本次設計的多功能臺燈控制系統中按鍵主要功能是實現臺燈開、關和亮度調大、調小的設置,涉及的按鍵僅有7 個,故而采用按鍵獨立與單片機進行連接的方式實現。具體的將7 個按鍵依次標記為K1~K7,分別與單片機的Ⅰ/O 引腳進行連接實現[3]。
電源電路:外界對于智能臺燈中能量供給主要是采用220V 的民用市電以及干電池或USB 取電方式實現。本次在進行多功能臺燈電源模塊設計的時候利用USB 進行能量供給,并加入了容值大小為470uF、工作電壓為3.5~5V 的電容C1 進行濾波防止接入系統的電源中存在噪聲,起到濾波的作用。
亮度采集電路:亮度采集模塊主要是實現環境中當前的亮度信息,該模塊的電路設計采用對亮度信息敏感的材料構成的元器件和數據類型轉換的單元模塊ADC0832 實現。VCC 和GND 標號的引腳與系統的電能供給單元進行連接進行能量供給。
多功能臺燈主體程序的設計:
首先,單片機、傳感器和顯示器的初始操作,為后續信息采集、信息處理和信息顯示做好了鋪墊。
其次,光強檢測器件和紅外檢測器件對當前環境中的亮度信息和是否有人員進行實時的采集,并由LCD1602 驅動程序驅動其顯示當前環境的亮度信息同時語音識別單元模塊對當前環境中的語音信息進行采集及分類處理。
最后,當檢測到當前環境中光亮的強度信息小于設置的閾值范圍且當前環境中檢測到有人時則由多功能臺燈智能控制系統的邏輯處理中心調用臺燈打開程序,驅動臺燈點亮。當檢測到按鍵指令是控制其打開時,同樣調用臺燈點亮程序驅動臺燈點亮。多功能臺燈智能控制系統的各個單元模塊間的邏輯關系構成的主體驅動程序設計流程如圖3 所示。

圖3 主程序設計流程圖
多功能臺燈智能控制系統上電后,紅外檢測模塊開始進行內部功能單元清除歸0 操作,初始化操作完成后紅外檢測模塊開始檢測范圍內是否有人,當檢測到有人時,紅外檢測單元模塊向單片機發送檢測到有人的信號,由多功能臺燈紅外檢測單元邏輯處理中心調用相應的臺燈開關控制命令,將臺燈打開。多功能臺燈智能控制系統中實現人員有無的紅外檢測單元模塊驅動程序設計思路如圖4 所示。

圖4 紅外檢測程序流程圖
按鍵掃描程序設計:
(1)初始化各功能單元,為后續的功能實現做好鋪墊;
(2)多功能臺燈的邏輯處理中心單片機向多功能臺燈亮度調整的按鍵單元發送檢測指令,用于檢測當前按鍵的狀態值并將獲取的按鍵狀態值送入單片機中;
(3)單片機在內部對當前按鍵與初始值進行對比,如果兩者不同,則需要加入一定的延時操作;
(4)延時操作后,單片機向多功能臺燈亮度調整模塊的按鍵單元中第一次檢測到按下的按鍵再次發送檢測指令用于再次獲取按鍵的狀態值;
(5)若兩次檢測到的多功能臺燈中的按鍵狀態與初始值均不一致,那么則判定該按鍵被使用者按下,繼而確定由此按鍵對應的子程序執行相應的功能。多功能臺燈中亮度手動調節的按鍵單元掃描程序設計流程如圖5 所示。

圖5 按鍵掃描程序流程圖
亮度采集轉換程序設計:
當前環境中的亮度信息進行采集主要是為了獲取自動控制臺燈亮度的亮度變量,依據亮度的不同實現多功能臺燈亮度的自適應調整。當多功能臺燈亮度采集程序上電以后,接入的光敏傳感器由于當前環境的亮度不同造成其自身的阻值也發生了變化,然而阻值變化是連續型的信號需要對其進行轉化。多功能臺燈智能控制系統中亮度采集單元的驅動程序設計流程如圖6 所示。

圖6 亮度采集程序流程圖
5.1.1 對于元器件放置錯誤的檢測尤其需要注意的集成芯片的放置、二極管和帶有極性的電容是否錯誤,主要是對照多功能臺燈控制系統的線路連接原理圖實現的。
5.1.2 對于實物板中線路或器件焊接是否存在短斷路情況的檢測,主要是利用電路板設計中常用的測量工具萬用表實現的。通過將萬用表置于短路檔位,利用表針與兩個檢測的單元連接進行測量。
對于功能子程序調試工作主要也是包括語句符合規則的檢測和程序段符合設計功能的檢測。
5.2.1 對于語句是否合乎符合規則的檢測,主要是利用多功能臺燈控制系統程序編寫工具Keil 4 的編譯連接功能進行的,當編譯鏈接后的程序中沒有錯誤的時候則說明源程序的語句均合乎編寫規則。
5.2.2 對于程序段是否符合設計功能的檢測,主要通過在多功能臺燈實物上的放置調試工作實現。
實現常用臺燈能夠依據環境亮度、環境是否有人亮度的調整及開關控制,并可以采用按鍵實現用戶手動控制臺燈開關的功能。雖說本次設計的多功能臺燈能夠滿足設計的要求,但考慮到當前智能家居設備的風起云涌,多功能臺燈控制系統的開發還可以朝著以下方向發展:如嘗試在智能臺燈中加入溫濕度、煙霧濃度等的檢測單元并可利用物聯網技術對家用電器設備依據實際的環境信息進行空調、窗簾等的控制。