手機藍牙控制的調(diào)光調(diào)色的LED燈的設(shè)計
文章來源:恒光電器
發(fā)布時間:2014-11-19
瀏覽次數(shù):次
1.引言
隨著,,2012年10月30日飛利浦在AppleStore出售最新的高科技Hue系列LED燈,,并且只會交由蘋果出售,。Hue系列將是完全可有自定義的,并且通過一個燈泡內(nèi)紅藍綠三原色的LED可以混合出1600萬種顏色的燈光,。整個過程完全由iPhone上的App來進行控制,。從而引發(fā)了智能燈控發(fā)展的新思考,國內(nèi)相關(guān)人士也紛紛進行研究,�,?紤]到Hue是采用WiFi無線控制,商業(yè)照明燈具,,而國內(nèi)WiFi并未普及,,本研究采用更普遍的藍牙技術(shù),采用手機藍牙與單片機通信產(chǎn)生可調(diào)占空比PWM波信號控制LED驅(qū)動電路實現(xiàn)LED的調(diào)光和DIY調(diào)色,。
2.脈沖寬制(PWM)調(diào)光技術(shù)
PWM調(diào)光是一種利用簡單的數(shù)字脈沖,,反復(fù)開關(guān)LED驅(qū)動器的調(diào)光技術(shù)。應(yīng)用者的系統(tǒng)只需要提供寬,、窄不同的數(shù)字式脈沖,,即可簡單地實現(xiàn)改變輸出電流,從而調(diào)節(jié)LED的亮度,。PWM調(diào)光的優(yōu)點在于調(diào)光范圍大,,只要帶寬足夠,任何模擬值都可以使用PWM進行編碼,,PWM調(diào)光可以在精確控制LED的亮度的同時,,LED射燈,也保證LED發(fā)光的色度,。
2.1 脈沖寬制(PWM)調(diào)光原理
利用人眼睛視覺惰性,,商業(yè)照明燈具,,按固定頻率操作占空比實現(xiàn)LED亮度調(diào)節(jié),,只要調(diào)光比即PWM波頻率大于200Hz人眼就不會感覺到LED的閃爍。具體調(diào)光實現(xiàn),,通過控制LED的亮滅時間,,從而控制LED亮度,從電力學(xué)來看就是控制一定周期內(nèi)電流的有效值,。這種方法在改變電流有效值大小的同時不改變電壓和電流的大小,,這樣就保證了LED的發(fā)光色度,這是模擬調(diào)光和可控硅調(diào)光無法實現(xiàn)的,。
2.2 占空比
占空比是指高電平在一個周期之內(nèi)所占的時間比率,。方波的占空比為50%,占空比為0.5,說明正電平所占時間為0.5個周期。
Ts為脈沖周期
Tw為脈沖寬度
占空比τ=Tw/Ts×100.
占空比的解釋可以歸納為如下幾種:
1)在一串理想的脈沖序列中(如方波),,正脈沖的持續(xù)時間與脈沖總周期的比值,。
2)在一段連續(xù)工作時間內(nèi)脈沖占用的時間與總時間的比值,。
3)在周期型的現(xiàn)象中,現(xiàn)象發(fā)生的時間與總時間的比,。
也就是電路釋放能量的有效時間與總釋放時間的比,。
2.3 調(diào)光比
調(diào)光比則是按下面的方法計算:
Foper=工作頻率
Fpwm=調(diào)光頻率
調(diào)光比率=Foper/Fpwm
其實也就是調(diào)光的最低有效占空比,比如Foper=100khz;Fpwm=200Hz,則調(diào)光比為:
100k/200=500.
3.藍牙模塊組成
3.1 藍牙技術(shù)基礎(chǔ)
藍牙的創(chuàng)始人是瑞典愛立信公司,,藍牙技術(shù)是一種無線數(shù)據(jù)與語音通信的開放性全球規(guī)范,,它以低成本的近距離無線連接為基礎(chǔ),為固定與移動設(shè)備通信環(huán)境建立一個特別連接,。手機之間通過藍牙實現(xiàn)數(shù)據(jù)共享已成為常理,,將手機變身為遙控器為人們的生活帶來無限方便。
藍牙技術(shù)由三部分組成,,超市照明,,包括藍牙無線電技術(shù)、藍牙協(xié)議棧和藍牙互操作性,。
3.1.1 藍牙無線電技術(shù)
藍牙無線電工作在全球通用的2 . 4 G H zISM(即工業(yè),、科學(xué)、醫(yī)學(xué))頻段,,支持全雙工傳輸,,恒光,使用IEEE802.15協(xié)議,。藍牙設(shè)備即連即用,,抗干擾能力強、使用方便[2]
3.1.2 藍牙協(xié)議棧
藍牙協(xié)議棧包含一個軟件棧和一個硬件棧,。藍牙硬件協(xié)議棧由藍牙硬件提供,,藍牙軟件協(xié)議棧由軟件實現(xiàn)。藍牙軟件協(xié)議棧提供Java藍牙API給程序開放人員使用,。
3.1.3 藍牙互操作性
藍牙互操作性包括三方面內(nèi)容:①通用訪問Profile定義了設(shè)備管理功能性;②服務(wù)發(fā)現(xiàn)應(yīng)用Profiles定義了服務(wù)發(fā)現(xiàn)方面的內(nèi)容;③串口Profiles定義了互操作設(shè)備和模擬串口電纜的能力3.2 HC-O6藍牙模塊
BC04外置8M Flash,帶EDR模塊HC-06為民用級,,兼容HC-04工業(yè)級。其中,,HC-06模塊的TX管腳跟STC15F204EA單片機的P3.0管腳相接,,RX管腳跟P3.1接。HC-06模塊接收手機端發(fā)來的數(shù)據(jù),,然后在通過串口TR,TX管腳與單片機通信,。
藍牙2.0帶EDR,2Mbps-3Mbps調(diào)制度,內(nèi)置2.4GHz天線,,外置8Mbit FLASH,低電壓3.3V工作(3.1V~4.2V)配對時30~40MA波動,,配對完畢通信8MA,可選PIO控制標(biāo)準(zhǔn)HCI端口(UART or USB),數(shù)字2.4GHz無線收發(fā)射,,CSR BC04藍牙芯片技術(shù),,自適應(yīng)跳頻技術(shù),,藍牙Class 2功率級別,工作溫度為-25至+75,協(xié)波干擾為2.4MHz,發(fā)射功率3dBm,有效控制距離為10m.
4.手機APP設(shè)計
4.1 藍牙連接相關(guān)程序設(shè)計
首先,,初始化本地藍牙設(shè)備,,建立LocalDevice類,包括取得本地設(shè)備實例,、藍牙名稱,、設(shè)置發(fā)現(xiàn)模式、獲得發(fā)現(xiàn)代理,。創(chuàng)建public int BTS_Init()類函數(shù),,實現(xiàn)藍牙初始化判斷,尋找默認藍牙設(shè)備,,打開藍牙,。
啟動藍牙設(shè)備搜索,質(zhì)量,,創(chuàng)建public voidBTS_StartScan()類函數(shù),,開始尋找從機藍牙設(shè)備,注冊搜尋函數(shù),,創(chuàng)建public int BTS_ConnectToDevice(String DeviceAddress)類函數(shù),,設(shè)計,實現(xiàn)連接到一個指定的藍牙設(shè)備,。
創(chuàng)建public int BTS_SendDates(Stringbuffer)類函數(shù)實現(xiàn)字符串發(fā)送到已連接好的藍牙設(shè)備上,,創(chuàng)建public int BTS_Finish()類函數(shù)結(jié)束藍牙通信,最后創(chuàng)建接收ACTION_FOUND廣播的BroadcastReceiver privatefinal BroadcastReceiver mReceiver=newBroadcastReceiver(),。
4.2 控制信號相關(guān)程序設(shè)計
首先創(chuàng)建一個用于控制信號的類publicclass PwmcontrolActivity extends Activity{},里面包含創(chuàng)建界面的類函數(shù)public voidonCreate(BundlesavedIn stan ceState){},發(fā)送控制信號類函數(shù)public void onStop TrackingTouch(SeekBar seekBar){}.
創(chuàng)建類class InitThread extends Thread{},實現(xiàn)資源加載線程,,里面創(chuàng)建用于四路信號之間轉(zhuǎn)換的public InitThread(PwmcontrolActivity act){}類函數(shù),實現(xiàn)與藍牙程序接口的public void run()線程體,,用于軟件退出的類函數(shù)public booleanonKeyDown(int keyCo de,KeyEvent event),。
5.單片機控制信號設(shè)計
5.1 硬件電路設(shè)計
系統(tǒng)框圖如圖1所示,本硬件電路采用STC15F204EA單片機為主控器,,CH-06藍牙模塊的TXD與單片機11管腳P3.0連接,,LED天花燈,,RXD與P3.1相連,,電工照明,實現(xiàn)藍牙串口通信連接,,3c認證,,從P1.0,P1.1,P1.2,P1.3四個口輸出四路可調(diào)占空比的PWM信號,采用一個L298芯片將單片機控制信號和LED電源驅(qū)動隔離,,避免了單片機帶負載能力弱的缺點,,以實現(xiàn)驅(qū)動大功率LED.
圖1 系統(tǒng)框圖
5.2 程序設(shè)計
主函數(shù)流程圖如圖2所示,,定義完相關(guān)變量和相關(guān)函數(shù)聲明后,設(shè)計串口通信函數(shù),,設(shè)置定時器1中斷,,中斷函數(shù)為占空比控制函數(shù),然后設(shè)計數(shù)據(jù)接收函數(shù),,當(dāng)串口服務(wù)函數(shù)接收到數(shù)據(jù)時,,將數(shù)據(jù)發(fā)送到數(shù)據(jù)接收函數(shù),然后將接受到的字符數(shù)據(jù)通過字符轉(zhuǎn)型函數(shù)進行字符的轉(zhuǎn)型,,然后通過標(biāo)志iCommdType判斷控制哪一路信號,,當(dāng)無標(biāo)志信號來時,一直循環(huán)檢查,,檢查到相應(yīng)的標(biāo)志信號,,然后執(zhí)行占空比調(diào)節(jié)函數(shù)藍牙模塊與單片機之間的通信使用模擬串口實現(xiàn)的,串口為標(biāo)準(zhǔn)配置:波特率9600,編寫一個串口初始化函數(shù)void UART_INIT(),,初始化相關(guān)標(biāo)志,,和寄存器,然后編寫中斷接收函數(shù)void tm0()interrupt 1 using 1,接收串口發(fā)來的數(shù)據(jù),。設(shè)定定時器1中斷并編寫中斷服務(wù)函數(shù)void tm1()interrupt 3 using1,實現(xiàn)P W M的占空比控制,。編寫數(shù)據(jù)接收函數(shù)char GetUartData(),將中斷接收函數(shù)里接收到的數(shù)據(jù)發(fā)送這里,,等待接收數(shù)據(jù)函數(shù)void WaitForChars(unsigned chariCount,char *Dest)通過調(diào)用數(shù)據(jù)接收函數(shù)char GetUartData(),,將手機發(fā)送來的數(shù)據(jù)裝載到定義好的變量數(shù)組,然后通過字符轉(zhuǎn)型函數(shù)unsigned int GetCmdType(char*Commd),,將字符型數(shù)據(jù)轉(zhuǎn)成數(shù)字,,通過標(biāo)志判斷,要控制哪一路PWM波,,然后將相應(yīng)的數(shù)據(jù)傳到控制占空比的中斷服務(wù)函數(shù),,星級酒店照明燈具,LED照明工程,,改變其占空比的輸出,。
圖2 主函數(shù)流程圖
6.結(jié)果展示
6.1 手機端界面
如圖3所示,其中W調(diào)節(jié)白光,,從0到100R,、B、G共有100萬種組合,,每一種組合對應(yīng)一種顏色,,室外照明,ROSH認證,通過改變RBG的組合,,從而調(diào)節(jié)LED的顏色,。
圖3
6.2 PWM波輸出效果
如圖4所示,店鋪照明,,這是其中一路PWM波的控制信號,,通過手機端控制其占空比,用示波器測出其波形,。
圖4
6.3 實際調(diào)光調(diào)色效果
選擇幾種組合調(diào)色效果如圖5所示,。
圖5
關(guān)鍵詞:
[ 資訊搜索 ] [ ] [ ] [ ] [ ]