蘋(píng)果推出
Ibeacon
室內(nèi)定位技術(shù)是為了彌補(bǔ)GPS無(wú)法覆蓋
室內(nèi)定位
這種場(chǎng)景。蘋(píng)果意味著創(chuàng)新,在其推動(dòng)下,藍(lán)牙Ibeacon得到了極大的應(yīng)用。而騰訊則是利用藍(lán)牙Ibeacon在場(chǎng)景體驗(yàn)方面進(jìn)行了創(chuàng)新,實(shí)現(xiàn)了微信搖一搖周邊的功能,這在O2O領(lǐng)域有巨大的潛力。
對(duì)蘋(píng)果和騰訊來(lái)說(shuō),Ibeacon都是應(yīng)用創(chuàng)新,而不是技術(shù)創(chuàng)新。
本文分析Ibeacon室內(nèi)定位和微信搖一搖的原理。
一、無(wú)線測(cè)距原理
無(wú)線信號(hào)都有一個(gè)信號(hào)強(qiáng)度(RSSI),藍(lán)牙BLE自然也有。根據(jù)藍(lán)牙BLE自身的發(fā)射功率(假設(shè)能夠獲取這個(gè)功率值)和無(wú)線信號(hào)接收端的RSSI,可以計(jì)算出兩者的距離。
D =10^((abs(RSSI)-A)/(10*n)
D是計(jì)算距離,RSSI是信號(hào)強(qiáng)度,A為發(fā)射端和接收端相隔1米時(shí)的信號(hào)強(qiáng)度,n是環(huán)境衰減因子。對(duì)于不同的藍(lán)牙設(shè)備該值是不一樣的,同樣的設(shè)備在不同的發(fā)射功率的情況下其信號(hào)強(qiáng)度也是不一樣的,而且對(duì)于同是1米的情況下,環(huán)境對(duì)于信號(hào)強(qiáng)度也是有影響的。n是環(huán)境衰減因子,自然跟環(huán)境有關(guān)。n一般取經(jīng)驗(yàn)值。
實(shí)際的算法編程是:
二、定位原理
其實(shí)這個(gè)原理很簡(jiǎn)單,小學(xué)的知識(shí):兩邊長(zhǎng)可以確定第三個(gè)點(diǎn)。
A和B是兩個(gè)已知經(jīng)緯度的坐標(biāo)點(diǎn),待測(cè)點(diǎn)計(jì)算出跟A和B的距離,自然就可以確定自身的坐標(biāo)點(diǎn)。具體的算法就自行研究去吧。
三、蘋(píng)果Ibeacon室內(nèi)定位
其實(shí)就是在A和B點(diǎn)各放置一個(gè)ibeacon,然后手機(jī)進(jìn)入ibeacon的廣播范圍即可以通過(guò)算法計(jì)算出自己的坐標(biāo)。
這里需要一個(gè)前提,就是ibeacon室內(nèi)定位是一個(gè)應(yīng)用APP,應(yīng)用是已經(jīng)知道A和B的經(jīng)緯度坐標(biāo)的,該應(yīng)用其實(shí)是一個(gè)地圖應(yīng)用來(lái)的,裝有APP的手機(jī)進(jìn)入A和B的信號(hào)覆蓋范圍自然就可以在地圖上標(biāo)記自己的位置。
室內(nèi)定位在停車(chē)場(chǎng)和商場(chǎng)里面有極好的應(yīng)用前景。
四、藍(lán)牙ibeacon原理
蘋(píng)果推出的ibeacon是基于藍(lán)牙BLE的,其實(shí)ibeacon未來(lái)不見(jiàn)得就一定以藍(lán)牙為載體,理論上,無(wú)線設(shè)備都可以,但是一定要手機(jī)集成支持的,否則就失去意義了?,F(xiàn)在手機(jī)除了藍(lán)牙就是wifi了,wifi功耗太大,不符合ibeacon長(zhǎng)時(shí)間工作的要求。所以目前就只有藍(lán)牙ibeacon應(yīng)用了。
藍(lán)牙通信有廣播和連接兩種通信模式。Ibeacon只利用廣播這種方式,當(dāng)然,如果要更新ibeacon的廣播內(nèi)容是需要建立連接并通信的。
藍(lán)牙BLE廣播的有效載荷payload是最長(zhǎng)31字節(jié),蘋(píng)果約定一種前綴來(lái)標(biāo)識(shí)ibeacon,并固定使用30字節(jié)。格式如下:
1)ibeacon prefix 9字節(jié): 02 01 06 1A FF 4C 00 02 15
2)proximity UUID 16字節(jié): 區(qū)分不同設(shè)備廠商生產(chǎn)的ibeacon
3)Major 2字節(jié):區(qū)分不同商店的ibeacon
4)Minor 2字節(jié):區(qū)分同一家商店的不同位置的ibeacon
5)TX power 1字節(jié):發(fā)射功率,用于計(jì)算距離。
五、微信搖一搖周邊
這個(gè)場(chǎng)景是指當(dāng)你走到商家門(mén)前時(shí),你開(kāi)啟藍(lán)牙,并用微信搖一搖周邊,那么你可以搖到優(yōu)惠券和廣告等信息。這在O2O領(lǐng)域是應(yīng)用最廣泛的。
Ibeacon英文是信標(biāo)的意義,在室內(nèi)定位里面意義非常明確。但是在微信搖一搖周邊里面其實(shí)信標(biāo)的意義比較牽強(qiáng),騰訊完全可以自定義一個(gè)微信搖一搖周邊的prefix,然后不用ibeacon的約定。不過(guò),騰訊這樣改也沒(méi)啥意思,蘋(píng)果的推動(dòng)導(dǎo)致市面上那么多ibeacon,騰訊就沿用好了。話說(shuō)回來(lái),對(duì)于商家來(lái)說(shuō),ibeacon還是有定位意義的,因?yàn)槲⑿艙u一搖周邊的后臺(tái)接口能夠統(tǒng)計(jì)處某個(gè)具體位置的ibeacon被多少用戶(hù)搖到了,例如前門(mén)放一個(gè),后門(mén)放一個(gè),多少人走過(guò)搖一搖是知道的。
搖一搖周邊就不用計(jì)算距離啦,它的工作過(guò)程是這樣的:
1)商家的微信后臺(tái)申請(qǐng)ibeacon設(shè)備的UUID、Major和Minor。
2)商家購(gòu)買(mǎi)ibeacon設(shè)備,并請(qǐng)求設(shè)備上將1)中的UUID、Major和Minor配置到設(shè)備中,或者通過(guò)特定的應(yīng)用更新到設(shè)備中。
3)商家配置搖一搖周邊的結(jié)果頁(yè)面,如優(yōu)惠券信息,也可以是關(guān)注頁(yè)面。其實(shí)就是H5,也可以利用搖一搖周邊的JSAPI。
4)商家將設(shè)備和結(jié)果頁(yè)面綁定。
5)商家將設(shè)備放到某個(gè)位置。
6)用戶(hù)走進(jìn),搖一搖周邊,微信應(yīng)用會(huì)獲取UUID、Major和Minor,并通過(guò)后臺(tái)獲取到對(duì)應(yīng)的結(jié)果頁(yè)面的鏈接,顯示給用戶(hù)。
7)用戶(hù)點(diǎn)擊鏈接,內(nèi)置瀏覽器打開(kāi),就可以看到優(yōu)惠券等信息了。