新聞中心

        EEPW首頁 > 設計應用 > 基于微芯科技BM70/1藍牙模塊iBeacon技術在定位系統的應用

        基于微芯科技BM70/1藍牙模塊iBeacon技術在定位系統的應用

        作者:蔚湘紳 時間:2019-01-29 來源:電子產品世界 收藏

        作者/蔚湘紳 (貝能電子(福建)有限公司,遼寧 沈陽 110031)

        本文引用地址:http://www.104case.com/article/201901/397260.htm

               摘要:隨著互聯網和電子技術的發展,、導航類的應用日漸出現在人們身邊,并給生活帶來更多的便捷。傳統技術多用于室外,基本實現方式都是依靠GPS,用于行車導航等應用。而定位這一新興領域正開始慢慢走入人們的視野。不過,GPS并不適用于定位,而近年來剛開始流行的BLE 技術,則有更多的優勢。本文描述了一種基于BLE技術的定位系統,并簡單介紹幾種合適的應用。

              關鍵詞;;定位;室內

          1 基于i技術的定位系統原理簡介

          基于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標簽的室內定位技術是無法完成精確定位的,但是對于室內向導、引流等功能來說,精度是足夠用的。

        1.jpg

          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頁,歡迎您寫論文時引用,并注明出處



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 蓬莱市| 河源市| 修水县| 长兴县| 江都市| 崇信县| 怀宁县| 库尔勒市| 高州市| 阜康市| 阜新市| 湘潭市| 湛江市| 仙桃市| 辰溪县| 罗山县| 余江县| 盖州市| 高邑县| 陵水| 神木县| 蓬溪县| 固始县| 哈尔滨市| 新密市| 昆山市| 彩票| 栾川县| 太仆寺旗| 林芝县| 营口市| 册亨县| 庄河市| 耒阳市| 大渡口区| 宝鸡市| 策勒县| 舟曲县| 泌阳县| 常宁市| 光山县|