淺談低功耗藍(lán)牙信標(biāo)標(biāo)準(zhǔn):iBeacon、Eddystone和AltBeacon
引言
本文引用地址:http://m.butianyuan.cn/article/201703/344714.htm藍(lán)牙信標(biāo)技術(shù)的發(fā)展蒸蒸日上,該技術(shù)能為消費(fèi)者、商家和工業(yè)環(huán)境實(shí)現(xiàn)“接近感知應(yīng)用”例如:
· 終端消費(fèi)者可以基于他們所處的位置獲得即時(shí)優(yōu)惠券和定制產(chǎn)品;
· 商家可以從針對消費(fèi)者購買習(xí)慣的可視度提升及消費(fèi)者忠誠度提升中獲益;
· 工業(yè)企業(yè)可以從改善的資產(chǎn)監(jiān)控能力及資產(chǎn)利用率中增加收益。
可能性無窮無盡,信標(biāo)技術(shù)已準(zhǔn)備好來改變我們的世界。但在真正使用這一技術(shù)前,我們應(yīng)該了解,它們是如何標(biāo)準(zhǔn)化的?它們的廣播包又是如何工作的?
1藍(lán)牙信標(biāo)
藍(lán)牙信標(biāo)實(shí)際上并不是一個(gè)藍(lán)牙技術(shù)聯(lián)盟(Bluetooth SIG)的標(biāo)準(zhǔn)。相反,它們可以被稱為“偽標(biāo)準(zhǔn)”(Pseudo-Standard),或者由大型供應(yīng)商或企業(yè)集團(tuán)牽頭的信標(biāo)應(yīng)用的正式格式。
當(dāng)今市場上有三個(gè)“偽標(biāo)準(zhǔn)”發(fā)展強(qiáng)勁,即:Apple的 iBeacon,Google的 Eddystone,Radius Network的 AltBeacon。這三個(gè)偽標(biāo)準(zhǔn)都使用低功耗藍(lán)牙(BLE)廣播方法,藍(lán)牙信標(biāo)利用其支持的通用屬性(GATT)配置文件在第37、38、39通道發(fā)送廣播包藍(lán)牙掃描器接收廣播包,對它們進(jìn)行解碼,然后采取行動,以避免在2.4 GHz工業(yè)、科學(xué)和醫(yī)療(ISM)免執(zhí)照頻段上與Wi-Fi數(shù)據(jù)流產(chǎn)生沖突。
進(jìn)一步來說,每種標(biāo)準(zhǔn)都使用BLE廣播的結(jié)構(gòu)來嵌入它們自己的格式和數(shù)據(jù)。每當(dāng)信標(biāo)設(shè)備進(jìn)行廣播時(shí),相同的包通常會在所有三個(gè)廣播通道上被發(fā)送,從而使BLE接收器/掃描器更有可能接收到它。一旦接收到,掃描器會判定包的內(nèi)容是否可被解碼且是否相關(guān),然后將采取相應(yīng)的行動。
在廣播數(shù)據(jù)包內(nèi),數(shù)據(jù)有效負(fù)載被構(gòu)造為一個(gè)或多個(gè)[長度, 類型, 數(shù)據(jù)]三字段形式。
· 長度字段定義了后面的類型字段和數(shù)據(jù)字段的總長度;
· 類型字段用以指定數(shù)據(jù)是一個(gè)名稱、一個(gè)服務(wù)通用唯一標(biāo)識符(UUID)、一個(gè)統(tǒng)一資源標(biāo)識符(URI),還是許多其他已定義數(shù)據(jù)類型中的一個(gè);
· 信標(biāo)可以對包的數(shù)據(jù)進(jìn)行進(jìn)一步的結(jié)構(gòu)化設(shè)置,在數(shù)據(jù)字段內(nèi)定義一個(gè)子結(jié)構(gòu),以判定不同的偽標(biāo)準(zhǔn)。
表1 BLE廣播包格式
英文解釋:
BLE advertising packet BLE廣播包 preamble序言 access address 訪問地址
Protocol data unit(PDU)(protected by CRC) 協(xié)議數(shù)據(jù)單元(PDU)(受CRC保護(hù))
PDU Header PDU插頭 Data payload(0 to 37)數(shù)據(jù)有效載荷(0-37)
廣播包和數(shù)據(jù)包都使用相同的格式(如表1)。信標(biāo)遵循標(biāo)準(zhǔn)的廣播包格式,但包括了針對一種或多種偽標(biāo)準(zhǔn)的嵌入式數(shù)據(jù)有效負(fù)載。
2 Apple的iBeacon
Apple憑借其iBeacon成為了一家早期的信標(biāo)采用者。iBeacon這個(gè)術(shù)語是Apple的商標(biāo),想要銷售iBeacon產(chǎn)品或使用iBeacon標(biāo)識的供應(yīng)商必須從Apple獲得一個(gè)免費(fèi)許可。
圖1 Apple的iBeacon
iBeacon規(guī)定了一個(gè)30字節(jié)的包,它必須在一個(gè)100ms的時(shí)隙上廣播出去(盡管iBeacon的原始設(shè)備制造商們似乎并不總是嚴(yán)格遵守100ms的要求)。使用Core Location框架的iOS 應(yīng)用程序,可以要求iOS持續(xù)監(jiān)測穿過信標(biāo)區(qū)域的事件,例如,進(jìn)入或者離開一個(gè)由UUID、Major和Minor字段定義的iBeacon的接近區(qū)域。無論一個(gè)應(yīng)用程序是否運(yùn)行,iOS監(jiān)測都會發(fā)生,它甚至可以觸發(fā)一個(gè)已關(guān)閉的應(yīng)用程序開始運(yùn)行。監(jiān)測僅在用戶為相應(yīng)的應(yīng)用程序開啟位置服務(wù)(Location Service)時(shí)才工作。
3 Google的Eddystone
Eddystone是Google開發(fā)的一種開源的、跨平臺的信標(biāo)格式。它同時(shí)支持Android和iOS設(shè)備。不同于其他信標(biāo)標(biāo)準(zhǔn),它定義了幾種不同的框架類型,這些框架類型可以獨(dú)立使用或者結(jié)合起來使用:
· Eddystone-UID:它廣播一個(gè)獨(dú)一無二的信標(biāo)ID;
· Eddystone-URL:它廣播統(tǒng)一資源定位符(URL);
· Eddystone-TLM:它可以被用來廣播信標(biāo)本身的遙測(健康和狀態(tài))數(shù)據(jù);
· Eddystone-EID:它使用短暫的(短壽命的)標(biāo)識符以支持要求更高安全性的信標(biāo)應(yīng)用。這種框架格式的規(guī)格尚未發(fā)布。
圖2 Google的Eddystone
Eddystone-URL框架使移動平臺能夠提供基于位置接近感知的網(wǎng)頁內(nèi)容,且無需安裝應(yīng)用程序,從而實(shí)現(xiàn)Google一直在推介的“Physical Web”,或者“走過去并使用任何東西的能力(walk up and use anything)”的創(chuàng)新。對于iOS系統(tǒng),Eddystone已經(jīng)得到了Chrome瀏覽器的支持;從version 49版本開始,用于Android系統(tǒng)的Chrome瀏覽器(Chrome for Android)也將提供對Eddystone的支持。有了Chrome Today小程序,用戶就可以訪問與其所處周邊環(huán)境相關(guān)的網(wǎng)頁內(nèi)容,并且在遇到信標(biāo)時(shí)能夠收到通知。
4 AltBeacon
Radius Network定義了AltBeacon規(guī)格,以嘗試創(chuàng)建一種與操作系統(tǒng)無關(guān)的、開源的標(biāo)準(zhǔn),從而不傾向于任何特定的供應(yīng)商。該規(guī)格可以免費(fèi)使用,而不用支付版稅或授權(quán)費(fèi)。像其他信標(biāo)一樣,它使用不可連接的、無定向的廣播包。
圖3 AltBeacon
Silicon Labs供稿
評論