藍牙模塊智能燈控應用方案


第一

當今是信息高速發展的時代,經濟、文化的流行與傳播都離不開信息。信息的傳遞直接影響著人們生活的方方面面,信息的傳遞方式又各有不同,如有線傳輸、無線傳輸等;而無線傳輸還可按協議不同分為:藍牙、WIFI、zigbee、LoRa等,這其中藍牙通信技術憑借著優越的性能及安全性,已然在商業、工業及個人生活等得到了廣泛應用,今天億佰特為大家介紹下藍牙模塊智能燈控應用方案

–  I  –

那么,要使用藍牙,就必不可少的需要用到藍牙設備;在此,讓我們先了解一下E104-BT01這款模塊;并且本文提供一些基于E104-BT01的藍牙數據透傳、IO口控制輸出等功能,所能實現的一些無線產品方案及思路。

藍牙模塊

E104-BT01是成都億佰特設計生產的一款體積極小的無線藍牙模塊;模塊采用美國德州儀器(TI)公司原裝進口CC2541射頻芯片,自帶高性能PCB板載天線,并適用于BLE協議。模塊可使用串口收發藍牙數據,降低了藍牙應用的門檻。模塊引出單片機所有IO口,集成了透傳功能、主從一體,即拿即用,可進行多方位的開發。支持串口指令配置模塊參數和功能,廣泛應用于穿戴設備、家庭自動化、家庭安防、個人保健、智能家電、配飾與遙控器、汽車、照明、工業互聯網等領域。

–  II  –

無論是何種基于E104-BT01的產品方案,其前期都離不開藍牙連接功能。

E104-BT01模塊互連操作:

若開發的產品的藍牙連接雙方,都采用的E104-BT01,則上電后作為主機的E104-BT01會主動去連接,服務UUID為FFF0的E104-BT01從機。

但是若此時處于主機掃描范圍內,存在多個服務UUID為FFF0的E104-BT01從機,則主機去連接的從機可能并不是應該連接的從機。所以這個時候,需要向E104-BT01發送“AT+BONDMAC”指令,綁定需要連接的E104-BT01的MAC地址;這樣,主從機連接會變得更加穩定高效。

手機連接E104-BT01操作:

若開發的產品是使用手機與E104-BT01相連,那么產品開發者所開發的配套手機APP,需要具有一個選擇藍牙設備連接界面。其選擇藍牙設備界面可如下圖所示:

藍牙模塊連接APP

圖中名為“E104-BT01”的藍牙設備,即為本藍牙模塊;然后點擊這個設備進行連接。這些廣播信息,都可通過主控MCU串口發送(或者手機發送空中配置令)“AT+ADVDAT”、“AT+NAME”、“AT+ADVINTV”等指令,對E104-BT01所廣播的數據及名字等進行修改。當然,具體的藍牙設備選擇界面,是根據開發者設計的,此處僅提供一個參考。

注意:

無論何種產品方案,其藍牙連接步驟都大同小異;本文以后的方案,都省略講解此處連接操作。

具體的AT指令使用方法,請參考E104-BT01用戶手冊。

單獨使用E104-BT01的簡單應用方案及思路

藍牙模塊應用

由于E104-BT01自身集成了兩路I/O輸入采集口(IO0與IO1口),及兩路I/O輸出控制口(IO2與IO3口),可以通過相應的AT指令進行操作。利用E104-BT01的I/O控制功能,可以做一些小型且簡單的無線設備。其中,最容易實現的即為無線燈控設備。E104-BT01使用者,可以做一個如下圖的簡單安卓燈控界面;只需在安卓程序中實現:按下界面中的按鍵,手機即在“CONFIG CHANNEL”通信通道發送相應的AT指令(如“AT+IO2=1”指令),即可控制E104-BT01的IO2端口輸出高電平。該電平信號經相應的驅動電路,就可以控制小到3.3V的LED燈,大到220V的節能燈的亮滅。

–  III  –

當然,燈控的應用,做主機控制的不僅可以是手機,也可以是其他的藍牙主機設備(如某種微型藍牙遙控器),其原理都別無二致。因此,若使用者準備開發的產品,功能比較簡單,則作為從機的E104-BT01無需再接多余的MCU,這樣既可縮短開發周期,也節省了開發成本。

從上節可知,僅僅使用E104-BT01做開發,而不使用主控MCU;雖然可以實現一些功能,但功能過于單一,對E104-BT01的性能造成了一定的浪費。要想將E104-BT01物盡其用,則應將E104-BT01作為外設,被相連的主控MCU所控制。利用E104-BT01的透傳功能與MCU結合,可以產生豐富多樣的藍牙無線產品。此節中,我們就其透傳功能,介紹一些功能實際的藍牙產品的實現方案及思路。

第二

–  I  –

舉一個簡單的小例子,就如上一節所談的燈控,若是接入一個具有大量I/O端口的主控MCU,那么可控燈的數目就變得十分可觀了。我們可以利用E104-BT01做從機時的透傳特性,結合主控MCU,做成一款“藍牙燈控處理器”;再用手機作為藍牙主機,來發送自定義的燈控指令,來控制“藍牙燈控處理器”。這樣,一款家庭燈光藍牙遙控系統就大概實現了。

–  II  –

那么舉一個簡單的例子,手機燈控APP可以做成如下操作界面。至于相應的程序實現思路也并不復雜。在該燈控產品開發時,應該對每個燈控端口進行編號,如LED0~LED9。那么較簡單的方案思路:在用戶初次使用時,直接在手機界面上先顯示“LED0”~“LED9”這種默認名字,然后由用戶自己去每一個燈都操作一番。我們只需要再給用戶提供,下圖圖一所示的照明燈分組命名的功能,由用戶自己判斷LED0~LED9對應的照明燈即可。

藍牙模塊應用2

這樣即能形成如下圖二界面,用戶即可在圖二界面中,通過點擊圖標來控制各個房間的燈。

藍牙模塊應用3

點擊各照明燈圖標后,應用程序只需要執行,發送固定格式的對應藍牙數據包動作,比如:點擊圖二中的“客廳燈”,這個燈其實際上是對應的LED6端口,只是被用戶重命名了,這時手機就會在“MAST CHANNEL”通道發送“LED6:1”。當E104-BT01收到此數據包后,會將接收到的數據通過串口,發送給相連的MCU;主控MCU將收到的數據包進行解析后,將會執行LED6端口輸出高電平,此時“客廳燈”被點亮。

上面這種方案,是采用手機作為主機,向作為從機的“E104-BT01+MCU”設備,發送相應的控制數據包。其實,也可以用另一個“E104-BT01+MCU”設備,設置為主機,加上相應的各個按鍵,即做成一個燈光遙控器,也可方便的控制各LED燈;至于程序的實現的思路也與方案一相同。但是這種方案,不能讓用戶自由分組和命名,缺少了一點靈活性,操作也不夠直觀,而且用戶還得購買配套的遙控器,增加了用戶的成本。所以,這種方案實現雖然更加簡單,但并不十分推薦。

–  III  –

其實,利用E104-BT01的透傳特性,不僅僅只是能控制燈光,對于控制門鎖、遙控可運動設備等都具有很好的控制效果。拿控制門鎖開關來說,由于藍牙優秀的加密及跳頻特性,可以很好的做到抗干擾,及對加密設備有效的安全控制。

在這里我們可以淺談一下,利用E104-BT01的透傳特性實現藍牙門鎖的方案及思路。還是拿手機作為主機為例,用戶手機首次與藍牙門鎖連接時,需要在如下圖一的界面中填入設置的開鎖密碼;在此操作中手機程序將填入的密碼,按照一定的格式發送到E104-BT01,數據包經E104-BT01串口輸入到門鎖主控MCU中,并被保存在MCU的FLASH區中。

藍牙模塊應用4

自此,用戶開關鎖頁面默認為下圖界面。用戶每次需要開關鎖時,只需要打開“藍牙門鎖APP”,點擊圖二相應圖標即可開關鎖。而這個開關鎖的過程就牽扯到安全性的問題,那么手機就不能僅僅發送“ON”或“OFF”開關鎖。為了增加安全性,應在手機發送的數據包中添加密碼;比如,密碼若為“123456”,則發送“123456ON”;這樣,只有同時密碼正確的指令數據包,才是有效的。

藍牙模塊應用5

如果想繼續提高加密等級,還可以將密碼“123456”,經一套雙方相同的加密算法進行再次加密,將新算出的密碼結合“ON”或“OFF”后再發送給E104-BT01。藍牙門鎖的MCU,將從E104-BT01接收的數據,進行解密后再執行相關操作。若想修改原密碼,只需點擊圖二左上角“菜單”圖標,進入圖一的輸入密碼界面。在該界面先后輸入舊新密碼,其手機也應該先后發送舊新密碼數據包,如“123456OLD”、“654321NEW”。前者舊密碼藍牙數據包發送過去后,是令門鎖MCU開啟密碼權限,進入密碼修改模式;緊接的新密碼藍牙數據包,就可以更新到門鎖MCU的密碼FLASH存儲區了。若是再將此藍牙門鎖方案,結合上一小結的燈控方案,則可以做到一個手機作為多個藍牙門鎖的鑰匙,使之藍牙門鎖系統更為方便且貼合實際,省去了金屬鑰匙的攜帶煩惱。

–  IV  –

對于這種藍牙門鎖的應用,并不推薦使用“E104-BT01+MCU”來制作藍牙鑰匙的方案。因為,用手機作為鑰匙,不僅操作更加直觀,其修改密碼也十分方便;更主要的原因是藍牙電子鑰匙模塊方案,攜帶并不比實際的金屬鑰匙方便。終上所述,我們更推薦將藍牙鑰匙開發成APP,集成到手機上的方案。


吉林快三走势图网易