亓相濤,馬凱凱,王衛(wèi)國
(1.武漢商學(xué)院,湖北 武漢 430056;2.山東魯軟數(shù)字科技有限公司,山東 濟(jì)南 250000)
隨著科技的發(fā)展,生活和工作中的燈光照明方式在不斷地更新,各種照明燈具功能更加貼近使用者的需求[1-4]。無線傳輸技術(shù)的進(jìn)步使得燈光控制進(jìn)入了聯(lián)網(wǎng)聯(lián)控時代,傳統(tǒng)的單線連接單開關(guān)控制已經(jīng)慢慢退出了應(yīng)用舞臺。以城市路燈照明系統(tǒng)為例,過去的路燈多為白熾燈,耗能高,且采用單燈單控或單線路串聯(lián)集中控制,而最新的各省市智慧城市路面照明系統(tǒng)的設(shè)計基本都實現(xiàn)了無線聯(lián)網(wǎng)控制[5-6]。單個照明立柱平臺預(yù)先埋入了多個無線控制終端,可以實現(xiàn)路燈照明強(qiáng)度的調(diào)節(jié),并可以檢測照明線路的通斷和反饋,實現(xiàn)對各燈具終端狀態(tài)的實時監(jiān)控。預(yù)留的終端控制線路還可以連接其它立柱平臺供電設(shè)備,如節(jié)日禮燈、交通導(dǎo)引屏幕及路面監(jiān)控攝像頭設(shè)備等[7-8]。在城市路燈系統(tǒng)的無線控制過程中遠(yuǎn)距離的數(shù)據(jù)傳輸可以通過LoRA、4G 或5G 通信實現(xiàn)。人們工作和生活中的室內(nèi)照明燈具終端設(shè)備與控制端距離一般在20 m 以內(nèi),可以通過藍(lán)牙、ZigBee 或WiFi 通信技術(shù)實現(xiàn)聯(lián)網(wǎng)控制。對比藍(lán)牙、ZigBee 與WiFi 技術(shù),從功耗來看,藍(lán)牙與ZigBee 耗能低,WiFi 模塊的能耗相對較高;從模塊的實時性來看,WiFi 的優(yōu)勢要高于藍(lán)牙與ZigBee 技術(shù);從室內(nèi)場所的設(shè)備通信模塊普及率來看,WiFi 信號在家庭和工作場所覆蓋率要高很多[9-10]。因此,本文以WiFi 傳輸技術(shù)為基礎(chǔ),完成一款智能燈光控制系統(tǒng)的硬件設(shè)計。
智能燈光控制系統(tǒng)硬件設(shè)計劃分為主控模塊、外圍控制模塊、電源模塊及下載模塊,如圖1 所示。
圖1 智能燈光控制系統(tǒng)硬件結(jié)構(gòu)
主控模塊主要完成ESP8266 控制器的輸入輸出引腳連接、主控芯片上電復(fù)位及主動按鍵復(fù)位。外圍控制模塊主要實現(xiàn)燈光設(shè)備的連接控制、繼電器設(shè)備的控制、傳感器信號采集控制及模數(shù)轉(zhuǎn)換模塊控制。其中:燈光控制細(xì)化了4 個終端,分別為單控制燈及紅綠藍(lán)三種彩色燈;繼電器控制為強(qiáng)電控制預(yù)留了接口;傳感器信號采集控制可以根據(jù)采集的溫度和濕度數(shù)據(jù),為自動控制燈光狀態(tài)提供決策信號源;模數(shù)轉(zhuǎn)換部分可以接入光敏設(shè)備或旋鈕電壓控制器以自動或主動調(diào)節(jié)燈光狀態(tài)及強(qiáng)度。
整體硬件系統(tǒng)采用5 V 電源接入供電,使用AMS117 轉(zhuǎn)換5 V 到3.3 V,為ESP8266 及其他模塊供電。下載模塊選用了CH340C 實現(xiàn)上位機(jī)USB 線路燒寫數(shù)據(jù)到終端。
智能燈光控制系統(tǒng)選擇ESP8266 為硬件控制中心,ESP8266 器件具有WiFi 通信的功能,內(nèi)部封裝了WiFi 的協(xié)議棧,可以實現(xiàn)無線傳輸?shù)耐競鞴δ埽ㄟ^串口的AT 指令控制模塊發(fā)送數(shù)據(jù)及接收外界傳回的數(shù)據(jù)并保存??刂破髦С钟布盘柊l(fā)布AP 模式、單STA 終端接入模式及AP 與STA 實時切換模式。AP 模式下控制器的天線可以將信號以輻射方式發(fā)送,通過產(chǎn)生WiFi 熱點提供數(shù)據(jù)接入服務(wù),允許其他設(shè)備通過用戶名和密碼驗證接入或無驗證接入;STA模式下終端設(shè)備作為接入方搜索到其他AP 信號源并申請接入,支持TCP 與UDP 協(xié)議的數(shù)據(jù)傳輸。ESP8266 芯片多數(shù)IO 引腳資源及串口資源在WiFi 數(shù)據(jù)發(fā)送接收功能上發(fā)揮了作用,外展出的引腳有22 根。其中8 號和9 號引腳用于供電,并采用3.3 V 供電;3 號引腳為芯片使能端高電平有效,當(dāng)多個ESP8266 協(xié)同工作時該引腳起使能控制作用,本設(shè)計添加10 kΩ 的電阻接3.3 V 電源上拉保持高電平狀態(tài);1 號引腳為復(fù)位信號端,平時為高電平狀態(tài),當(dāng)檢測到該引腳有低電平信號且持續(xù)2 個機(jī)器周期以上時則芯片復(fù)位重啟。復(fù)位電路分為上電復(fù)位與按鍵主動復(fù)位,其電路連接如圖2 所示。
圖2 智能燈光控制系統(tǒng)硬件結(jié)構(gòu)
ESP8266 主控器芯片2 號引腳為模擬信號輸入引腳,芯片采集輸入的信號電壓值,通過修改esp_init_data_default.bin二進(jìn)制文件的第107 字節(jié)數(shù)據(jù),可以在芯片內(nèi)部設(shè)定參考電壓,數(shù)值在0 ~3.3 V 之間。ESP8266 的第6、7、10 號引腳分別為GPIO12、GPIO13、GPIO15,連接紅綠藍(lán)三色LED燈,高電平點亮使能。ESP8266 的第5 號引腳為GPIO14,連接報警揚(yáng)聲器模塊,高電平報警使能。ESP8266 的第4 號引腳為GPIO16,連接繼電器控制模塊,繼電器模塊的常閉或常開端連接36 V 以上的燈光照明模塊,高電平供電使能。ESP8266 的第14 號引腳為GPIO5,連接數(shù)字化溫濕度傳感器模塊,串行數(shù)據(jù)輸入輸出。ESP8266 的第12、13 號引腳為GPIO0 與GPIO4,連接兩個按鍵SW1 與SW2,按鍵按下輸入低電平,松開輸入高電平。其中SW1 同時具有數(shù)據(jù)下載指示的功能,當(dāng)系統(tǒng)復(fù)位時,檢測到GPIO0 引腳有電平信號,系統(tǒng)進(jìn)入應(yīng)用程序下載進(jìn)程。引腳連接如圖3 所示。
圖3 ESP8266 電路連接
ESP8266 控制器的GPIO16 引腳除了具備基本的輸入輸出功能外,還具有低功耗睡眠模式喚醒功能。當(dāng)該引腳由低電位跳轉(zhuǎn)為高電位時系統(tǒng)由低功耗睡眠模式退出進(jìn)入工作模式??刂菩酒腉PIO4 與GPIO5 分別對應(yīng)SDA 與SCL,可以通過軟件實現(xiàn)I2C 的功能。芯片的GPIO12、GPIO13、GPIO14、GPIO15 分別對應(yīng)SPI 功能的MISO、MOSI、SCLK、CS。EPS8266 的所有輸入輸出引腳都可以加載實現(xiàn)PWM 的功能??刂菩酒妮斎胼敵鲆_在控制板載外圍電路上,同時系統(tǒng)設(shè)計增加了復(fù)用的接口,將可使用的引腳以雙列直插的排針為底座引出,當(dāng)使用板載電路時用跳線帽連接使用端,可以使用跳線引出進(jìn)行其他控制。
智能燈光控制系統(tǒng)的硬件采用了紅綠藍(lán)三色的LED 模塊,LED 為共陽性5 V 供電,負(fù)極端連接1kΩ 的電阻并與NPN 三極管的共發(fā)射極運算放大電路連接。在三極管的集電極端引出測試引腳,調(diào)試階段可以檢測發(fā)光二極管的功能可用性。燈光控制電路如圖4 所示。
圖4 燈光控制電路
強(qiáng)電燈具的通斷需要通過繼電器進(jìn)行控制,繼電器模塊控制板驅(qū)動采用雙NPN 三極管共發(fā)射極放大電路級聯(lián)的方式完成,在繼電器接入端增加了穩(wěn)壓二極管,增強(qiáng)了電路的安全性。繼電器控制電路如圖5 所示。
圖5 繼電器控制電路
智能照明系統(tǒng)設(shè)計了蜂鳴音頻提醒功能,在GPIO16 引腳上接入NPN 三極管的驅(qū)動,連接自鳴的音頻模塊,可以實現(xiàn)報警預(yù)警、定時提醒、按鍵音提醒等功能。音頻控制電路如圖6 所示。
圖6 音頻控制電路
智能燈光控制系統(tǒng)的燈光強(qiáng)度可以根據(jù)使用環(huán)境實現(xiàn)自動調(diào)節(jié),ESP8266 通過GPIO5 引腳連接溫濕度傳感器,通過2 號引腳接入ADC 信號,檢測環(huán)境的光照強(qiáng)度。本系統(tǒng)選用的是DHT11溫濕度傳感器,該傳感器支持?jǐn)?shù)字型輸入輸出,采用單總線模式。GPIO5 號引腳接入4.7 kΩ 的上拉電阻至3.3 V 電源,當(dāng)信號線輸入18 ~30 ms 低電平信號時DHT11起始響應(yīng)并發(fā)出應(yīng)答信號,應(yīng)答標(biāo)志為引腳拉高后的83 μs 的低電平信號。隨后ESP8266 進(jìn)入輸入模式,接收來自DHT11的一組溫濕度數(shù)據(jù)。溫濕度傳感器電路連接如圖7 所示。
圖7 溫濕度傳感器控制電路
燈光照明系統(tǒng)若應(yīng)用在無人控制場景,則需要感應(yīng)檢測環(huán)境的光照強(qiáng)度以自動控制燈光照明。系統(tǒng)中ESP8266 的ADC 引腳連接了光敏電阻,其與3 個電阻并串聯(lián)。當(dāng)光照強(qiáng)度極弱時ADC 引腳端輸入趨向0.628 V;當(dāng)光照達(dá)到極大值,光敏電阻阻值趨向于0,ADC 引腳端輸入趨向0。電路如圖8 所示。
圖8 光照強(qiáng)度檢測電路
電路中ADC_A、ADC_B 為跳線連接引腳,如有其它模擬信號輸入可連接至ADC_A 引腳上,具體數(shù)值根據(jù)實際電路再做運算。
智能燈光控制系統(tǒng)使用Mini_USB 接口供電,一般供電電壓為5 V,同時該USB 接口還可以完成ESP8266 芯片的程序下載。ESP8266 芯片供電電壓為3.3 V,因此系統(tǒng)硬件設(shè)計使用AMS1117-3.3 完成5 V 至3.3 V 的電壓轉(zhuǎn)換。系統(tǒng)設(shè)計了USB 轉(zhuǎn)串口電路,方便直接使用USB 線接入上位機(jī)電腦下載程序,轉(zhuǎn)換芯片型號為CH340C,該芯片具有自己的內(nèi)部晶振,在時間精度允許的情況下可以使用自帶的時鐘電路。供電及下載電路如圖9 所示。
圖9 供電及下載電路
ESP8266 芯片的內(nèi)部FLASH 有多種型號,常見的為8 MB,其中存儲空間劃分了多個扇區(qū),每個扇區(qū)4 KB 大小。WiFi 主控芯片程序的下載文件有多個,分別為:eagle.flash.bin、eagle.irom0text.bin、blank.bin和esp_init_data_default.bin。前兩個為主程序編譯生產(chǎn)的代碼,blank.bin 為初始化系統(tǒng)參數(shù)數(shù)據(jù),esp_init_data_default.bin為初始化射頻參數(shù)數(shù)據(jù)。在8 MB 的FLASH 存儲空間的芯片數(shù)據(jù)下載過程中,將eagle.flash.bin寫入0X00000起始的空間中,eagle.irom0text.bin 寫入0X10000 起始的空間中,blank.bin 寫入0x7FB000和0x7FE000起始的兩段空間中,esp_init_data_default.bin寫入0x7FC000 起始的空間中。系統(tǒng)的下載軟件工具可選擇ESP8266_FLASH_DOWNLOAD_TOOLS。使用下載工具選擇好下載二進(jìn)制文件并進(jìn)行串口連接就緒后,點擊下載。此時硬件終端操作需要將ESP8266 的GPIO0 引腳接入低電位;然后按下復(fù)位按鍵,進(jìn)入多程序文件下載過程。下載結(jié)束后將ESP8266 的GPIO0 引腳電位拉高,系統(tǒng)復(fù)位進(jìn)入程序自運行。
智能燈光控制系統(tǒng)設(shè)計是以核心處理芯片ESP8266 為控制中心完成的;對比了藍(lán)牙、ZigBee、LoRA 技術(shù),系統(tǒng)的無線數(shù)據(jù)傳輸選擇了WiFi 的信號傳輸方式。本設(shè)計主要針對燈光控制系統(tǒng)硬件的主控模塊、外圍控制模塊、電源模塊及下載模塊四部分展開設(shè)計,詳細(xì)描述了中控處理器ESP8266 各引腳的線路連接、紅綠藍(lán)三色LED 燈控制連接、傳感器模塊與繼電器模塊的控制連接、電源供電芯片的選擇連接及系統(tǒng)程序下載的操作。系統(tǒng)硬件的設(shè)計經(jīng)后續(xù)PCB繪制、打板焊接測試后,證明其功能和性能與預(yù)期相符,能較好地實現(xiàn)主動無線控制燈光照明及檢測環(huán)境數(shù)據(jù)自動控制燈光照明。