基于微芯科技BM70/1藍牙模塊iBeacon技術在定位系統的應用
作者/蔚湘紳 (貝能電子(福建)有限公司,遼寧 沈陽 110031)
本文引用地址:http://www.104case.com/article/201901/397260.htm摘要:隨著互聯網和電子技術的發展,定位、導航類的應用日漸出現在人們身邊,并給生活帶來更多的便捷。傳統定位技術多用于室外定位,基本實現方式都是依靠GPS,用于行車導航等應用。而室內定位這一新興領域正開始慢慢走入人們的視野。不過,GPS并不適用于室內定位,而近年來剛開始流行的BLE Beacon技術,則有更多的優勢。本文描述了一種基于BLE技術的室內定位系統,并簡單介紹幾種合適的應用。
1 基于iBeacon技術的定位系統原理簡介
基于Beacon的定位技術,基本定位原理如圖1。簡而言之,基于iBeacon的定位系統是通過基站原理來定位的,系統中每一個iBeacon基站通過藍牙廣播自己的身份信息,當待定位設備進入覆蓋區域后,通過檢測周圍iBeacon基站的信號強度,即可知道自己與每個基站間的距離。多個基站信息組合起來,就可以推算出自己的位置。
基于BLE的iBeacon,與經典藍牙顯著的區別是:①極低的功耗,對比經典藍牙,BLE可降低90%以上的功耗。基站可以使用電池供電。②無需配對,通過廣播的方式進行數據傳輸。③對于iOS系統,同樣支持后臺喚醒,保證客戶良好的使用體驗。
一個Beacon廣播包通常包含如表1的信息。
表1的部分英文含義如下。
Proximity UUID:廠商識別號,區別不同廠商生產的Beacon標簽。
Major:群組分類,區別不同場景間的Beacon標簽。
Minor:區別同一場景下不同位置的Beacon標簽。
Tx Power:用于測量設備與Beacon標簽之間的距離。
顯而易見,Tx Power是這場戲的主角。Tx Power越大,表示設備與標簽間的距離越近,反之則距離越遠。當設備檢測到多個Beacon標簽的Tx Power后,即可估算出自己的大概位置。
通常情況下,距離估算只定義了三個粗略的距離等級,即:
?非常近:10 cm內。
?近:1 m內。
?遠:1 m外。
總之,基于iBeacon標簽的室內定位技術是無法完成精確定位的,但是對于室內向導、引流等功能來說,精度是足夠用的。
2 平臺及方案
BM70/1系列藍牙模組是美國微芯(Microchip)科技專門為藍牙IoT應用推出的低功耗藍牙(BLE)模組。模組使用自家基于8051內核的藍牙芯片IS1870。具有低成本、低功耗、小尺寸及易于開發等特點,是非常適合基于Beacon的室內定位系統的一款藍牙模組。
該系列模組支持BLE4.2標準。供電范圍1.9 V~3.6 V。集成溫度傳感器、供電電壓檢測。同時提供有/無屏蔽罩及陶瓷天線的型號。最小尺寸僅為11.5 mm x 9 mm。僅需簡單的幾個外圍器件即可工作。同時,該系列模組為透傳模組,可以預配置設備名、密碼等基本信息,只需簡單的串口指令即可完成藍牙的數據收發,可以最大程度地簡化客戶前期的研發工作。
在基于Beacon的定位系統中,可以使用具有最小尺寸的BM71藍牙模組,以盡可能使Beacon節點具有更小的尺寸以便于安裝布置。對于iBeacon應用,微芯科技提供了一套方便的UI配置界面幫助客戶快速配置廣播信息。
BM70/1內部存儲空間分為2部分,分別為FLASH和EEPROM區。其中,Flash區用于存儲產品級藍牙固件,該固件以HEX形式提供,用戶不需要2次修改即可直接使用。EEPROM區用于存儲配置信息,客戶可以提前配置好藍牙模組的Device Name、Pin Code及UUID等各種信息并燒錄到模組中。
同時,對于有特殊需求的用戶,微芯科技還提供了一套完整的SDK及各類應用例程,可以對模組進行深度二次開發。
對于上述三部分,官方提供的軟件分為別:IS1870_BM70_FlashUpdateTool;IS187x_102_BLEDK3_UI;IS187x MBIoT SDK。
3 Beacon標簽的實現
以使用固件和UI配置的方式實現為例,用戶可以通過如下幾個簡單步驟完成一個Beacon標簽的配置。
①將TEST PIN置高進入調試模式。
②使用FlashUpdateTool將官方提供的固件寫入BM70/1的FLASH中。
③使用BLEDK3_UI,按需要配置好藍牙模組的基本信息后,寫入BM70/1的EEPROM中。
④將TEST PIN置低進入運行模式并重新上電,此時,一個Beacon標簽就配置好了。
4 定位算法的實現
已知三點位置為:A(X1,Y1),B(X2,Y2),C(X3,Y3),已知D點(X0,Y0)到三點的距離為d1,d2,d3,如圖2。
此時,D點位置可以通過下列方程中的任意兩個進行求解:
(X0-X1)2+(Y0-Y1)2=d12
(X0-X2)2+(Y0-Y2)2=d22
(X0-X3)2+(Y0-Y3)2=d32
5 結論
基于Beacon的定位系統非常適合室內定位應用。標簽可以使用電池供電,布置非常方便,應用很多,例如智慧商場推送及引導,停車場反向定位,微信搖一搖找周邊用戶等,愿各位讀者發揮想象,找到最適合自己的應用。
參考文獻
[1]Microchip.BM70/1 datasheet.
[2]Microchip.BM70_EvaluationBoardUserGuide.
本文來源于科技期刊《電子產品世界》2019年第2期第19頁,歡迎您寫論文時引用,并注明出處
評論