張少華 魏志遠(yuǎn)
摘 要:為了實(shí)現(xiàn)用戶居室場(chǎng)景特殊情景燈光和依據(jù)個(gè)人的顏色喜好進(jìn)行遠(yuǎn)程調(diào)節(jié)的目的,采用在傳統(tǒng)LED燈泡基礎(chǔ)上,加入藍(lán)牙無(wú)線傳輸控制模塊,并通過(guò)市面上配有藍(lán)牙4.0的手機(jī)、平板電腦等移動(dòng)終端向燈泡傳輸控制命令的方法,通過(guò)PWM實(shí)現(xiàn)對(duì)LED燈泡通斷、亮度和顏色調(diào)節(jié)的控制。做了調(diào)色、波形和控制距離的實(shí)驗(yàn)。實(shí)際使用證明:該系統(tǒng)工作良好,響應(yīng)及時(shí),達(dá)到了設(shè)計(jì)要求。
關(guān)鍵詞:遠(yuǎn)程調(diào)節(jié);LED燈泡;藍(lán)牙4.0;PWM
中圖分類號(hào):TP316 文獻(xiàn)標(biāo)識(shí)碼:B 文章編號(hào):2095-1302(2015)04-00-04
0 引 言
近年來(lái),物聯(lián)網(wǎng)成為全球關(guān)注的熱點(diǎn)領(lǐng)域,被認(rèn)為是繼互聯(lián)網(wǎng)之后最重大的科技創(chuàng)新。物聯(lián)網(wǎng)的發(fā)展也為智能家居引入了新的概念及發(fā)展空間,智能家居可以被看作是物聯(lián)網(wǎng)的一種重要應(yīng)用。智能家居涉及土建裝修、通信網(wǎng)絡(luò)、信息系統(tǒng)集成、傳感器件、家電、醫(yī)療、自動(dòng)控制等多個(gè)領(lǐng)域[1]。
由于對(duì)物聯(lián)網(wǎng)智能家居的家居應(yīng)用需求日益增強(qiáng),智能家居有著非常誘人的前景與巨大的市場(chǎng),其中已經(jīng)有不少產(chǎn)品占有了很大的市場(chǎng)。比如飛利浦推出的智能燈泡Hue Lights,通過(guò)手機(jī)或者平板電腦可以控制燈泡的通斷和改變發(fā)光顏色。但Hue Lights需要一個(gè)中繼設(shè)備,無(wú)法直接通過(guò)移動(dòng)設(shè)備進(jìn)行控制,且價(jià)格比較昂貴。目前藍(lán)牙的硬件成本已經(jīng)降到了一個(gè)合理的水平,而且應(yīng)用廣泛,幾乎是目前市面上手機(jī)和平板電腦的標(biāo)配。讓藍(lán)牙技術(shù)作為其中的控制手段為一個(gè)不錯(cuò)的選擇。
低功耗藍(lán)牙(Bluetooth Low Energy,BLE)是藍(lán)牙技術(shù)的最新版本(也稱藍(lán)牙4.0),是一種低數(shù)據(jù)量、突發(fā)性通信需求定制的低功耗、短距離通信技術(shù),主要針對(duì)低成本、低復(fù)雜度的無(wú)線體域網(wǎng)和無(wú)線個(gè)域網(wǎng)設(shè)計(jì)[2]。傳統(tǒng)藍(lán)牙最多允許一個(gè)主設(shè)備連接7個(gè)從設(shè)備,而低功耗藍(lán)牙沒(méi)有該限制,理論上支持無(wú)限個(gè)從設(shè)備進(jìn)行連接,而且傳輸距離也能到達(dá)50~60 m[3]。
本文提出一種基于低功耗藍(lán)牙4.0技術(shù)的智能燈泡系統(tǒng)設(shè)計(jì),主要在傳統(tǒng)LED燈泡基礎(chǔ)上加上藍(lán)牙控制模塊,并把手機(jī)或者平板電腦等移動(dòng)設(shè)備作為系統(tǒng)的中心出發(fā)點(diǎn),通過(guò)無(wú)線短距離傳輸技術(shù)控制燈泡的通斷狀態(tài)、亮度和發(fā)光顏色。同時(shí)燈泡具有定時(shí)、漸變顏色等功能。
1 系統(tǒng)總體架構(gòu)
本系統(tǒng)主要由兩部分組成:智能燈泡硬件設(shè)備和移動(dòng)終端(主要是其配套的APP應(yīng)用軟件)。其中移動(dòng)終端作為控制端,控制燈泡相關(guān)的功能性操作,燈泡作為被控端,主要接收從控制端發(fā)送的命令,對(duì)命令進(jìn)行解析作并及時(shí)做出相應(yīng)的動(dòng)作。在控制端和被控端之間作為橋梁角色的藍(lán)牙通信技術(shù),主要完成設(shè)備之間的互聯(lián)、通信等操作。系統(tǒng)總體結(jié)構(gòu)框如圖1所示。
(1)移動(dòng)終端
選取當(dāng)前市面上主流的支持藍(lán)牙4.0的移動(dòng)設(shè)備充當(dāng)人與設(shè)備之間的媒介。通過(guò)安裝在移動(dòng)終端設(shè)備上的APP控制智能燈泡相關(guān)功能。其中APP的主要功能是給用戶一個(gè)簡(jiǎn)單易懂的界面和簡(jiǎn)化操作,并調(diào)用相關(guān)API函數(shù)完成藍(lán)牙配對(duì)、鏈接、控制指令的組裝、發(fā)送以及相關(guān)信息的寫(xiě)入與讀取等功能。
(2)智能燈泡
主要通過(guò)藍(lán)牙模塊進(jìn)行數(shù)據(jù)的傳輸、命令解析、調(diào)節(jié)燈泡的亮度和顏色。藍(lán)牙模塊主要采用CSR1010低功耗藍(lán)牙芯片。該芯片具有32個(gè)引腳,可以同時(shí)提供4路PWM脈沖波,并支持E2PROM和FLASH進(jìn)行程序的下載。
在智能燈泡端通過(guò)PWM脈沖波調(diào)節(jié)燈珠的電壓,從而達(dá)到調(diào)色的功能。在LED燈珠方面,采用紅、綠、藍(lán)、白四色共七顆燈珠。其中紅綠藍(lán)燈珠各一顆用于混色,白色三顆用于提供照明。
LED 作為照明設(shè)備與傳統(tǒng)的白熾燈和熒光燈比較,在同等的流明度下,其用電量?jī)H為白熾燈的10%,熒光燈管的50%[4]。由于燈泡是220 V直接供電,同時(shí)需要兩個(gè)電壓轉(zhuǎn)換模塊,一個(gè)220 V轉(zhuǎn)18 V,為燈珠供電。一個(gè)為18 V轉(zhuǎn)3.3 V,為藍(lán)牙芯片供電。
2 智能燈泡系統(tǒng)總體設(shè)計(jì)
2.1 智能燈泡設(shè)備
主要分為兩個(gè)部分:智能燈泡硬件以及智能燈泡固件程序。其中硬件包括電壓轉(zhuǎn)換模塊、藍(lán)牙控制模塊和LED發(fā)光模塊。
2.1.1硬件設(shè)計(jì)
(1)電壓轉(zhuǎn)換模塊
由于LED燈珠需要的電壓為18 V,而藍(lán)牙模塊需要的電壓為3.3 V,所以需要將220 V的輸入電壓進(jìn)行兩次轉(zhuǎn)換:220V轉(zhuǎn)18 V和18 V轉(zhuǎn)3.3 V。其中220 V AC轉(zhuǎn)18 V DC模塊實(shí)現(xiàn)交流的220 V轉(zhuǎn)成直流18 V供電,為整個(gè)系統(tǒng)供電。
在18 V轉(zhuǎn)3.3 V模塊中的電壓轉(zhuǎn)換芯片采用Holtek公司生產(chǎn)的HT7533-1,LDO將18 V DC轉(zhuǎn)成3.3 V,主要為藍(lán)牙模塊供電。
(2)藍(lán)牙控制模塊
藍(lán)牙控制模塊電路主要有系統(tǒng)指示燈、復(fù)位電路、SPI程序下載接口、PWM電路等幾部分組成。模塊電路如圖2所示。
系統(tǒng)采用16 MHz晶振作為時(shí)鐘源。在存儲(chǔ)設(shè)備方面主要采用E2PROM,在就需要在固件代碼中定義一個(gè)NVM_TYPE_EEPROM的宏。固件程序通過(guò)SPI串行外設(shè)接口的方式進(jìn)行下載與調(diào)試。在藍(lán)牙芯片引出4個(gè)引腳,設(shè)置為PWM模式,分別用于控制紅、綠、蘭、白光四路脈沖,用于調(diào)節(jié)燈泡的發(fā)光顏色。
(3)LED發(fā)光模塊
LED發(fā)光模塊采用六個(gè)燈珠布局方式:白色燈珠三個(gè),紅、綠、藍(lán)燈珠各一個(gè)。其中三個(gè)白色燈珠為串聯(lián)的方式。燈珠整體布局如圖3所示。2.1.2智能燈泡固件設(shè)計(jì)
CSR 1010芯片支持藍(lán)牙4.0協(xié)議棧,該協(xié)議棧主要包括ATT、GATT、SMP、L2CAP、GAP等規(guī)范。
通用訪問(wèn)規(guī)范(Generic Access Profile,GAP)規(guī)定了4種角色:廣播者(Broadcaster)、觀察者(Observice)、外設(shè)(Peripheral)和中央(Central)角色。所以在智能插座系統(tǒng)中,燈泡作為外設(shè)設(shè)備,控制器支持從設(shè)備(Slave)角色,移動(dòng)終端作為中央角色,是所有外設(shè)連接的發(fā)起者,控制器支持主設(shè)備(Master)角色。
GATT規(guī)范位于協(xié)議的最頂層,由一個(gè)或者多個(gè)服務(wù)構(gòu)成規(guī)范用來(lái)實(shí)現(xiàn)某個(gè)應(yīng)用。在系統(tǒng)中,燈泡作為一個(gè)Server向移動(dòng)終端(Client)暴露一個(gè)調(diào)色服務(wù),用于控制燈泡的亮度、色彩和通斷。調(diào)色服務(wù)中包含兩個(gè)特征值,特征值1用于控制燈泡的通斷,長(zhǎng)度為1個(gè)字節(jié)。規(guī)定命令值0x00為關(guān),0x01為通。特征值2用于控制燈泡的色彩和亮度,長(zhǎng)度為4個(gè)字節(jié),前三個(gè)字節(jié)用于控制燈泡的顏色,最后一個(gè)字節(jié)用于控制燈泡的亮度。前三字節(jié)只當(dāng)最后字節(jié)為0有效。
硬件上電后,主要進(jìn)行系統(tǒng)的初始化工作,包括GATT、SMP、GAP、硬件等模塊的初始化。初始化完成后,再讀取系統(tǒng)時(shí)間和規(guī)則,然后燈泡開(kāi)始廣播。
在實(shí)際應(yīng)用中,用戶不會(huì)一直長(zhǎng)時(shí)間需要控制燈泡,所以出于節(jié)約能耗的考慮,將廣播狀態(tài)中將廣播設(shè)置為三種模式:快播,中播,慢播。其中快播持續(xù)時(shí)間為1 min,廣播時(shí)間間隔為60 ms,中播持續(xù)時(shí)間為5 min,廣播時(shí)間間隔為1280ms,其余時(shí)間為慢播時(shí)間,廣播間隔為5 s。該設(shè)計(jì)可以有效降低能耗,并能有效保證設(shè)備能及時(shí)被發(fā)現(xiàn)和連接。
調(diào)色的實(shí)現(xiàn)方式為自定義一個(gè)函數(shù)用于控制占空比:
2.2 APP軟件設(shè)計(jì)
移動(dòng)終端設(shè)備端作為主設(shè)備,主要有掃描設(shè)備、發(fā)現(xiàn)設(shè)備、發(fā)起連接、發(fā)送控制指令、斷開(kāi)連接等操作。開(kāi)啟軟件后,進(jìn)行相關(guān)數(shù)據(jù)初始化,然后系統(tǒng)進(jìn)入輪訓(xùn)掃描設(shè)備階段。連接設(shè)備后,按照上文規(guī)定的格式發(fā)送指令,控制相關(guān)操作。APP軟件主要基于Android平臺(tái)[8]。軟件流程圖如圖4所示。
理論上一個(gè)主設(shè)備可以同時(shí)連接無(wú)數(shù)個(gè)從設(shè)備,但一個(gè)從設(shè)備同時(shí)只能被一個(gè)主設(shè)備控制。采用控制完立即釋放連接的方式,這樣可以釋放資源給別的用戶使用。同時(shí),利用4.0協(xié)議最短可以在3 ms內(nèi)完成連接并傳輸數(shù)據(jù)的特性,實(shí)現(xiàn)一個(gè)時(shí)間段內(nèi)多個(gè)移動(dòng)終端同時(shí)控制一個(gè)燈泡的功能。
涉及到需要對(duì)多個(gè)燈泡信息進(jìn)行管理,設(shè)計(jì)了基于Sqlite數(shù)據(jù)庫(kù)[9,10]的設(shè)備管理模塊,用于存儲(chǔ)和管理燈泡的相關(guān)信息。
3 實(shí)驗(yàn)結(jié)果及分析
基于系統(tǒng)的設(shè)計(jì)要求是移動(dòng)終端設(shè)備能正確控制燈泡的開(kāi)關(guān)、調(diào)節(jié)亮度和色彩、定時(shí)等功能,同時(shí)滿足室內(nèi)有障礙物的情況下10~20 m的通信需求。為檢測(cè)系統(tǒng)是否達(dá)到設(shè)計(jì)要求,所以對(duì)系統(tǒng)進(jìn)行功能和性能測(cè)試。
3.1 燈泡組裝
由于燈泡模具外殼的因素,暫時(shí)先組裝成實(shí)驗(yàn)原型機(jī)。連接排線,檢查各部件,各模塊。一個(gè)完整的原型機(jī)如圖5所示。
3.2 測(cè)試
(1)調(diào)色測(cè)試
由于原型機(jī)有線路、元器件暴露在外,直接使用220 V供電可能會(huì)發(fā)生觸電危險(xiǎn)。所以在測(cè)試中,去除220 V轉(zhuǎn)18 V電源模塊,改用電源箱輸出18 V DC供電。
利用Android手機(jī)的藍(lán)牙功能,通過(guò)其上APP與燈泡建立連接,并分別向調(diào)色服務(wù)特征值寫(xiě)入十六進(jìn)制代碼0xFF000000,0x00FF0000,0x0000FF00。目的是使燈泡發(fā)出紅光,綠光和藍(lán)光。為了顯示效果,采用大燈罩。實(shí)驗(yàn)結(jié)果如圖6所示。
(2)距離測(cè)試
在通信距離測(cè)試中,分別選擇比較空曠的走廊和有障礙物的實(shí)驗(yàn)室。測(cè)試結(jié)果顯示在室外到達(dá)了35 m左右通信距離,實(shí)驗(yàn)室有障礙物的環(huán)境下達(dá)到15 m左右的通信距離。
3.3 出現(xiàn)問(wèn)題及解決方案
(1)燈泡不能實(shí)現(xiàn)0~255的全范圍調(diào)色。
在實(shí)驗(yàn)中發(fā)現(xiàn),在調(diào)色的過(guò)程中,有一個(gè)調(diào)色的上限和下限。當(dāng)?shù)陀谙孪藁蛘吒哂谏舷迺r(shí),顏色只會(huì)保持在下限或者上限所對(duì)應(yīng)的顏色。經(jīng)研究發(fā)現(xiàn)LED燈珠有一個(gè)電流的最大值和最小值,當(dāng)控制電壓小于某個(gè)值時(shí),無(wú)電流。同樣,當(dāng)控制電壓高于某個(gè)值時(shí),電流保持最大值不變。所以如果要顯示0~255全范圍變色,必須要選擇一個(gè)合適的范圍。圖7為實(shí)測(cè)電流與電壓的關(guān)系。
(2)通信距離短
在距離測(cè)試中發(fā)現(xiàn),藍(lán)牙的通信距離過(guò)短。在空曠地區(qū)只有30米,室內(nèi)10米。經(jīng)過(guò)排查后發(fā)現(xiàn),在天線下方的PCB板有覆銅,干擾了信號(hào)。將覆銅去掉后,通信距離幾乎提升了一倍。室外達(dá)到了60 米,室內(nèi)達(dá)到25米左右。
4 結(jié) 語(yǔ)
本文介紹一種基于藍(lán)牙4.0為控制核心,通過(guò)手機(jī)、平板電腦等移動(dòng)終端作為載體來(lái)控制智能燈泡的技術(shù)方案。整個(gè)系統(tǒng)主要由移動(dòng)終端控制端和智能燈泡被控制端組成。其中智能插座端主要由電源模塊、藍(lán)牙控制模塊、配套固件和LED發(fā)光模塊等組成。系統(tǒng)經(jīng)過(guò)試驗(yàn)測(cè)試,可以滿足實(shí)際需求。
參考文獻(xiàn)
[1]童曉渝.物聯(lián)網(wǎng)智能家居發(fā)展分析[J]. 移動(dòng)通信,2010(9):16-20.
[2] Robin Heydon. Bluetooth Low Energy The Developer,s Handbook[M].Pearson Education,2013.
[3]陳燦峰.低功耗藍(lán)牙技術(shù)原理與應(yīng)用[M]. 北京:北京航空航天大學(xué)出版社,2013.
[4]徐光憲,陸偉,高峰.基于M2M技術(shù)的智能燈泡系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J]. 計(jì)算機(jī)應(yīng)用與軟件,2014(5):323-333.
[5]可榮碩,馬曉軍,張思博.基于RGB色彩空間的顏色識(shí)別系統(tǒng)設(shè)計(jì)[J]. 微計(jì)算機(jī)信息,2010(5):36-47.
[6]江世明.脈寬調(diào)制控制技術(shù)中PWM波形程序設(shè)計(jì)方法[J]. 邵陽(yáng)學(xué)院學(xué)報(bào),2006(4):45-47.
[7]李薇,劉方.情景照明系統(tǒng)的LED混色技術(shù)研究(下)[J]. 中國(guó)照明電器,2009(11):10-13.
[8]李黎國(guó),張輝,程號(hào). 基于Android健康服務(wù)終端藍(lán)牙傳輸軟件的設(shè)計(jì)[J]. 電子科技,2012,25(5):115-118.
[9]劉陽(yáng).基于Sqlite數(shù)據(jù)庫(kù)的智能糧情監(jiān)測(cè)Android客戶端設(shè)計(jì)[D]. 安徽:安徽大學(xué),2014.
[10]張媛媛.嵌入式數(shù)據(jù)庫(kù)管理系統(tǒng)的研究與實(shí)現(xiàn)[D].上海:華東師范大學(xué),2007.