前言
iBeacon是蘋(píng)果公司推出的一項(xiàng)低耗能藍(lán)牙技術(shù),由藍(lán)牙設(shè)備發(fā)射包含指定信息的信號(hào),再由移動(dòng)設(shè)備接收信號(hào),從而實(shí)現(xiàn)近場(chǎng)通信。微信小程序2017年開(kāi)始支持iBeacon,搖一搖附近就是基于iBeacon實(shí)現(xiàn)的,此外iBeacon還可以實(shí)現(xiàn)距離測(cè)量,本文將介紹如何基于微信小程序?qū)崿F(xiàn)iBeacon測(cè)距。
iBeacon測(cè)距原理
藍(lán)牙信標(biāo)發(fā)射的信號(hào)強(qiáng)度(rssi)與收發(fā)設(shè)備之間的距離,某種程度上呈正相關(guān),因此通過(guò)合理的運(yùn)算轉(zhuǎn)化,可以通過(guò)rssi的值反推出與接收設(shè)備間的距離。
藍(lán)牙信標(biāo)的rssi值是一個(gè)參考值,沒(méi)有固定標(biāo)準(zhǔn)。想要計(jì)算出藍(lán)牙信標(biāo)的距離,還必須知道這個(gè)信標(biāo)設(shè)備的txPower值。txPower是指當(dāng)距離藍(lán)牙信標(biāo)1m時(shí)的rssi值,不同的藍(lán)牙設(shè)備或相同設(shè)備不同的工況甚至不同的場(chǎng)地環(huán)境,都會(huì)影響txPower值,因此這個(gè)值雖然可以測(cè)量,但一定程度上是個(gè)經(jīng)驗(yàn)值,無(wú)法測(cè)準(zhǔn)。
rssi測(cè)距公式
知道rssi和txPower后就可以計(jì)算距離了,有兩種計(jì)算公式:
一、
這個(gè)公式里的三個(gè)變量A、B、C都是經(jīng)驗(yàn)值,需要根據(jù)手機(jī)系統(tǒng)或硬件型號(hào)精確調(diào)校,通常會(huì)將所有設(shè)備的校準(zhǔn)結(jié)果保存成一個(gè)設(shè)備信息表,移動(dòng)終端先檢測(cè)本機(jī)型號(hào),然后匹配設(shè)備信息調(diào)取相應(yīng)的計(jì)算配置,再進(jìn)行計(jì)算。很明顯這個(gè)公式是比較依賴硬件調(diào)校的,沒(méi)有數(shù)據(jù)儲(chǔ)備的前提下這個(gè)公式會(huì)很難用。
轉(zhuǎn)換成js代碼:
const calculateAccuracy = function (txPower, rssi) { return (0.89976) * Math.pow(rssi / txPower, 7.7095) + 0.111 }
本文名稱:微信小程序iBeacon測(cè)距及穩(wěn)定程序的實(shí)現(xiàn)解析-創(chuàng)新互聯(lián)
網(wǎng)站地址:http://vcdvsql.cn/article14/jsege.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)、響應(yīng)式網(wǎng)站、營(yíng)銷(xiāo)型網(wǎng)站建設(shè)、移動(dòng)網(wǎng)站建設(shè)、面包屑導(dǎo)航、動(dòng)態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容