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