謝 滿 魏小銳
在中國,每年有20 萬左右的兒童失蹤,70 萬左右的老人走失。如何更好地保護老人孩子的安全問題已變成社會迫切需要解決的一個難題。本文通過分析研究移動終端平臺下iBeacons 技術(shù)的應(yīng)用和開發(fā),利用iBeacons 發(fā)射信號定位被保護對象的位置,提出基于iBeacons 技術(shù)的防丟失系統(tǒng)的設(shè)計,并在IOS 平臺下對其進行了研究和實驗。
隨著智能手機的普及以及移動互聯(lián)網(wǎng)的發(fā)展,可穿戴智能防丟失設(shè)備需求日益增加,如何結(jié)合移動終端來完成防丟失、定位,必將成為新的發(fā)展方向,特別是針對小孩老人等弱勢群體,必須設(shè)計一個簡易的防丟失系來滿足他們的需求?,F(xiàn)在市面上的安全智能手環(huán)或是安全智能手表普遍存在高功耗,體積大的缺點,一方面高耗能導(dǎo)致續(xù)航能力短暫不能長時間追蹤保護對象,另一方面體積大使得犯罪分子容易發(fā)現(xiàn)具備定位功能的智能設(shè)備,進而從中破壞。因此我們必須從別的技術(shù)手段下手,尋找一種能在遠(yuǎn)離自己的東西就能發(fā)出警報,而且一直保持工作狀態(tài),低功耗,簡單輕巧、方便攜帶的東西。而基于iBeacon 技術(shù)的防丟失系統(tǒng)可以為解決這一問題提供一些有效的解決方案。iBeacon 技術(shù)的硬件基礎(chǔ)是BLE 技術(shù)的實現(xiàn),相較于傳統(tǒng)藍(lán)牙防盜器的優(yōu)勢在于前者搭載最新的藍(lán)牙4.0技術(shù),極低功耗的運行可以使電池使用時間更長久,比如一顆紐扣電池,至少可以待機半年以上,綠色節(jié)能更環(huán)保,而且利用iBeacon 技術(shù)搭建的防盜器的體積可以做到和一元硬幣般大小。簡單來說,其工作原理主要是通過距離變化來判斷物品是否還控制在你的安全范圍。被保護對象只需將iBeacon 防丟器隱藏在身上便可以被實時監(jiān)控,監(jiān)控者則可以在客戶端設(shè)定預(yù)警范圍(防丟、尋找),警音模式(附帶振動)。
iBeacon 技術(shù)的硬件基礎(chǔ)是BLE 技術(shù)的實現(xiàn),2010年7 月7 日,藍(lán)牙技術(shù)聯(lián)盟(Bluetooth SIG)宣布正式采納藍(lán)牙4.0(也就是Blue Low Energy 低功耗藍(lán)牙)核心規(guī)范(Bluetooth Core Specification Version 4.0)。與之前的藍(lán)牙相比,低功耗藍(lán)牙的優(yōu)勢在于超低功耗,更長的連接距離和更快的連接速度。iBeacon 是IOS7 中一個重要的新特性之一,iBeacon 技術(shù)是指通過使用低功耗藍(lán)牙技術(shù),iBeacons 基站自動創(chuàng)建一個信號區(qū)域,當(dāng)IOS 設(shè)備進入該區(qū)域時,對應(yīng)的應(yīng)用程序便會提示用戶是否需要接入這個信號網(wǎng)絡(luò),通過周邊多個iBeacons 收發(fā)器,精確定位幾mm 到50m 的范圍,并在后臺實時對用戶進行定位和數(shù)據(jù)傳輸。與NFC 技術(shù)相比,明顯具備定位精準(zhǔn)、更遠(yuǎn)距離(NFC 的鏈接距離僅為4~20 里面)、更低功耗的優(yōu)勢。iBeacon 的通信包括兩個主要部分:advertising 和connecting。Advertising 是一種單向的發(fā)送機制。當(dāng)設(shè)備被發(fā)現(xiàn)之后,一個連接就會被建立起來,之后就可以被帶有BLE 模塊的移動設(shè)備搜索到iBeacon信號。iBeacon 數(shù)據(jù)信號如圖1 所示。
其中Proximity UUID、major、minor 都是用來標(biāo)識一個唯一的iBeachon 基站。而TX power,用于確定終端和iBeacon 之間的距離。根據(jù)這個值不但可以獲得粗略的信息(比如靠近/遠(yuǎn)離/不在范圍內(nèi)等),也可以獲取精確到米的距離(當(dāng)然也可以轉(zhuǎn)換為以步為單位的距離)。TX power 是距離設(shè)備1 米測得的信號強度值(RSSI-Received Signal Strength Indication,接收到的信號強弱指標(biāo))。假如接收到的信號強度減弱了,那么可能在遠(yuǎn)離。只要知道1 米距離的RSSI,以及當(dāng)前的RSSI,那么便可以計算出當(dāng)前的距離(計算過程中的三個常數(shù)(0.89976,7.7095 和0.111)是通過測量信號強度擬合曲線的基礎(chǔ)上得出):
圖1
圖2 系統(tǒng)總體設(shè)計框架
防丟失系統(tǒng)主要利用智能移動終端(以IOS系統(tǒng)為例)與iBeacon 基站之間的通訊,測算出兩者之前的距離,當(dāng)超過預(yù)設(shè)的范圍,就會監(jiān)護者的客戶端提示預(yù)警信號,為物品、人物、寵物提供防丟失解決方案。
系統(tǒng)的整體架構(gòu)如圖2 所示,帶有BLE 低效率藍(lán)牙4.0 通訊載體的移動設(shè)備通過藍(lán)牙與iBeacon 基站進行通訊,獲取iBeacon 基站的唯一標(biāo)識以及兩者之前的距離,并在客戶端做出響應(yīng)。另外,可以后臺結(jié)合服務(wù)器,做一些推送,軌跡記錄等。
移動終端啟用BLE4.0 模塊
首先調(diào)用類方法BluetoothManager sharedInstance 獲取BLE 全局管理對象,其次通過調(diào)用管理對象的isEnabled 來檢驗當(dāng)前設(shè)備的BLE 模塊的狀態(tài)。如果返回NO,則表示BLE 設(shè)備未開啟,接著調(diào)用[btManager setPowered:YES]和[btManager setEnabled:YES];來開啟BLE 設(shè)置。
查找iBeacon 防盜器
當(dāng)BLE 設(shè)備處于打開狀態(tài)時,移動操作系統(tǒng)會向注冊的應(yīng)用程序發(fā)送name 為“BluetoothDeviceDiscove redNotification”的通知,通過BluetoothDevice *bt=[notification object];獲取所有注冊過的iBeacon 防盜器列表。
移動終端與iBeacon 設(shè)備通訊
客戶端選擇需要連接的iBeacon 裝置,調(diào)用[btManager connectDevice:(BTListDevItem)]連接設(shè)備。在藍(lán)牙設(shè)備連接后,可以通過[btManager getConnectState]獲得連接狀態(tài).當(dāng)連接斷開時,及時獲取信息并發(fā)出警報聲,提醒用戶。
-(void)showAlertView:(NSString *)title message:(NSString *)msg 當(dāng)移動終端處于活動狀態(tài)并且檢測iBeacon 信號源離終端設(shè)備的距離大于預(yù)警值時觸發(fā)。
-(void)showNotification:(NSNotification *)notification;當(dāng)移動終端處于黑屏鎖屏狀態(tài)而且信號源超過預(yù)警范圍時,發(fā)起本地化通知提示用戶iBeacon 信號源的報警信息。
-(void)closeService:當(dāng)移動端認(rèn)為被保護對象已經(jīng)處于安全范圍不需要監(jiān)控時可以關(guān)閉信號源的接收。
-(CGFloat)getDistance:(iBeaconDevice *)device:獲取與iBeacon 信號源的距離。
圖3 軟件流程圖
圖4
圖5
圖6
圖7
移動終端本地打開BLE 模塊并搜索附近注冊過的iBeacon 信號,如果匹配不到則提示用戶;如果匹配成功則測試連接信號強度,算出兩者距離。如果兩者距離超過預(yù)警值或信號丟失,則根據(jù)客戶端的設(shè)置提示報警信號,否則繼續(xù)監(jiān)聽,如圖3 所示。
防丟失系統(tǒng)綜合運用了無線通訊技術(shù)、移動開發(fā)技術(shù)和J2EE 技術(shù)來實現(xiàn)。由于ios 設(shè)備能夠發(fā)射iBeacon信號源并且具有BLE 模塊,故采用2 臺iphone 4s(IOS 7)做為模擬測試,一臺表示被保護的對象,一臺表示監(jiān)控端。主要開發(fā)環(huán)境參數(shù)包括:
1)XCode6+Objective-C+iphone4s +IOS7作為移動端測試環(huán)境接收iBeacon 信號;
2)XCode6+Objective-C+iphone4s +IOS7模擬被監(jiān)控對象(iBeacon 基站發(fā)出beacon 信號)。
測試開始,被保護對象打開防丟器,如圖4 所示。監(jiān)控端設(shè)置預(yù)警范圍為10 米,并設(shè)置手機提示信息及通知信息,如圖5 所示。當(dāng)被保護對象由近至遠(yuǎn)走動時,監(jiān)控端實時監(jiān)控。當(dāng)被保護對象距離監(jiān)控端3m 時,顯示“安全范圍內(nèi)”,如圖6 所示。當(dāng)被保護對象距離監(jiān)控端14m 時,彈出警報信息伴隨著急促的鈴聲出現(xiàn),如圖7 所示。
本文主要論述了防丟失系統(tǒng)的結(jié)構(gòu),并對其進行了研究和實驗,實驗結(jié)果表明,基于iBeacons 技術(shù)的防丟失系統(tǒng)存在一定的合理性,其定位精度和系統(tǒng)響應(yīng)時間等性能效果良好,具有廣闊的應(yīng)用前景。