賈興茹,楊一叢,李寰宇,張書豪,吉雨岢,王 琦
(山西大學自動化與軟件學院,山西 太原 030000)
隨著人們的居住條件和環保意識的日益提高,對燈光和照明的要求也逐步提升。在日常生活中,普通的家用照明系統給生活帶來不便,如:在燈光照度過強浪費電量而燈光照度較弱影響視力時,人們無法按照自己的需求調整燈光的光照強度;開燈關燈需要主動走到開關前,浪費了不必要的時間和精力;燈光無法恰當地根據當前使用者的情境和需求而豐富、準確地營造氛圍,娛樂性不強。
家用智能照明系統為上述問題提供了解決方案。該系統利用自動化技術,通過自動檢測和自動控制集成,實現燈光光照強度自動控制;同時,結合LD3320語音識別系統控制燈光亮滅,并設定情景模式以滿足家庭娛樂的需求。
家用智能照明系統[1]包括語音系統[2]、感光裝置、主控制器、自動光照系統、照明控制裝置、照明裝置、電源模塊。系統通過語音指令選定不同的光照模式:自動調光模式和情景模式。自動調光模式下,照明強度隨著外界環境光照強度的不同而變化。系統自動調節照明裝置[3]的照度,達到用戶當前所需的亮度。情景模式下,系統點亮對應特定模式的照明裝置。
智能照明系統的控制原理如圖1所示。

圖1 智能照明系統結構框圖
整個電路的硬件部分[4]主要包括主控制模塊、感光裝置、語音控制模塊、輔助控制模塊和照明裝置。
STC11L08XE是主控制模塊[5]。感光裝置為光敏電阻和模擬數字轉換器(andlog to digital converter,ADC)(TLC549),用于采集光照信號,并將其轉換為數字信號傳輸給主控制模塊。語音模塊為LD3320,負責采集聲音信息。主控制模塊對采集到的信息進行處理。STC89C52作為輔助控制模塊,通過串行通信的方式接收信息,并通過調節占空比的方式實現對照明裝置的亮度控制。
光敏電阻、STC11L08XE、STC89C52和照明裝置組成自動調光系統;LD3320與STC11L08XE組成語音部分。各部分系統由STC11L08XE統一調控。
在運行脈沖寬度調制(pulse width modulation,PWM)程序時,芯片會處于不停循環的狀態,如跳出循環則需要外部中斷。而語音系統所需的外部中斷情況復雜。所以硬件設計采用雙機通信的形式來完成相應的程序:由STC11L08XE負責提供數據;由STC89C52芯片執行PWM程序。這樣既能使程序運行更加順暢,又能減輕主控制模塊的運行負擔。
主控制模塊STC11L08XE的工作電壓為5.5~3.7 V,擁有8 KB的Flash,1 280 B的SRAM,含有異步串行接口,因此能滿足主控制模塊對資源的需要。主控制模塊主要用于接收并處理來自感光模塊和語音模塊的信號,再將其傳遞至輔助控制模塊以控制照明裝置照明。
STC11L08XE單片機系統結構如圖2所示。

圖2 STC11L08XE單片機系統結構圖
LD3320 芯片是一款“語音識別”專用芯片。該芯片集成了語音識別處理器和一些外部電路,包括ADC、數字模擬轉換器(digital to analog converter DAC)、麥克風接口、聲音輸出接口等。識別的關鍵詞語列表是可以任意動態編輯的[6]。工作電壓為3.3 V,支持并行和串行接口,每次識別最多可以設置 50 項候選識別句。每個識別句可以是單字、詞組或短句,長度為不超過10個漢字或79 B的拼音串。另一方面,識別句內容可以動態編輯修改,因此可由一個系統支持多種場景[7]。
輔助控制模塊STC89C52工作電壓為5.5~3.8 V[8],是一種低電壓、高性能CMOS8位單片機。片內含8 KB可反復擦寫的只讀程序存儲器(erasable programmable read-only memory EPROM)。器件采用ATMEL公司的高密度、非易失性存儲技術生產。片內置通用8位中央處理器(central processing unit,CPU)和FLASH存儲單元
光敏電阻采用Φ3系列的GL3526,具有體積小、響應時間快,輸出電壓穩定等特點,滿足對室內光照的檢測及數字信號裝換的需求。主控制模塊提前預設好室內光照強度值。光敏電阻根據實際光照強度改變阻值影響感光模塊電壓。TLC549將電壓轉換成數字信號傳輸至主控制模塊。主控制模塊對數字信號進行相應換算,將換算值與設定值對比后,向輔助控制模塊傳送控制指令。
軟件部分由主程序和子程序組成。主程序分為主機主程序和從機主程序(即PWM程序)。子程序又分為情景模式子程序、自動調光子程序和A/D轉換子程序。主機主程序位于STC11L08XE芯片中,是整個系統的樞紐,負責收集LD3320和ADC的數字信號,經過計算處理之后將所得結果傳給STC89C52。PWM程序將STC11L08XE的所傳結果轉換為相應的PWM波,并通過PWM波控制每個燈泡的亮滅與光照強度。LD3320子程序負責收集語音信號。A/D轉換子程序負責收集光照強度信號[9]。
智能家用照明系統程序流程如圖3所示。

圖3 智能家用照明系統程序流程圖
PWM子程序燒錄于STC89C52中:通過軟件延時的方法調節占空比[10];通過中斷的方式結束當前狀態,轉換為對應狀態進行調節。PWM波的各項參數均由上位機提供。PWM程序流程圖如圖4所示。

圖4 PWM程序流程圖
情景模式子程序預先設定各情景模式下的對應參數,通過與從機STC89C52串行通信,利用從機調整不同照明裝置的亮滅,并通過調節對應照明裝置PWM波的占空比來調整亮度,從而達到對應情景模式下的亮度。
自動調光子程序每隔一段時間通過感光模塊收集光照強度信息,與預設的理想光照進行比較并通過改變PWM波的占空比來調整光照系統光照強度,從而改變室內的光照強度,以保證室內的光照強度處于預設光照強度范圍內。此過程均由系統實現,不需要人力反復調整。
A/D轉換子程序將光敏電阻發出的模擬電壓量轉換為數字量,發給主芯片提供外界光照信號。
為改善生活品質,增加生活氛圍感,系統設定了幾種情景模式,分別為讀書模式、餐飲模式、觀影模式、休息模式、娛樂模式。通過不斷試驗設計了每種情景模式對應的不同燈組參數。每個燈組的正端接DC 5 V,通過調節負端低電平的占空比來調節光照強度。
情景模式參數設置如下。
①讀書模式:點亮燈組1、燈組2、燈組3,各燈組亮度分別設置為額定亮度的100%。
②餐飲模式:點亮燈組1、燈組2、燈組3、燈組4,各燈組亮度分別設置為額定亮度的50%。
③觀影模式:點亮燈組2、燈組3、燈組4,各燈組亮度分別設置為額定亮度的10%。
④休息模式:點亮燈組1,燈組亮度設置為額定亮度的10%。
⑤娛樂模式:點亮燈組1、燈組4,各燈組亮度分別設置為額定亮度的50%。
PWM仿真結果如圖5所示。

圖5 PWM仿真結果
本文設計的智能家用情景照明系統共使用了STC11L08XE、LD3320和STC89C52三塊單片機。其中:STC11L08XE為上位機,負責計算處理和統籌整個系統,系統的各項指令均由STC11L08XE發出;LD3320作為下位機,負責語音信號與數字信號的轉換即人機交互;STC89C52同為下位機,負責將上位機的指令裝換為PWM波控制燈泡光照強度及亮滅,以實現各種情景模式。
本文設計的智能家用情景照明系統通過用戶簡單的語音指令實現舒適的光照環境和所需的氛圍,同時由自動控制系統實現更加準確的亮度調節,使用戶的室內光照條件更舒適。