吳文卿
【摘要】國家統計局網站公布:中國是全世界盲人最多的國家之一,眼部疾病在中國也是一個主要的公共衛生問題。中國約有盲人600-700萬,占世界盲人總數的18%,另有雙眼低視力患者1200萬。我國盲人數量早已超過諸如丹麥、芬蘭、挪威等國家的人口數。
盲人的出行問題是關系到盲人生活質量的重要因素。如今,廣泛普及的智能手機與導航軟件極大的緩解了盲人出門在外的定位與導航問題。但是,現今導航軟件、設備的使用場景都局限在室外,進入室內后無法定位與導航。室內建筑中大量使用的標識以及平面圖為普通人提供了極大的便利,使得人們可以在不熟悉的建筑中快速通往目標位置。對于盲人以及更廣大的低視力人群,進入陌生室內環境、建筑將寸步難行。因此,本課題的目的在于設計一套建筑物內定位與導航的解決方案,填補盲人出行障礙的“最后100米”,是盲人進入建筑物后能準確找到餐廳、洗手間、會議室、商鋪、教室、圖書室等位置。
【關鍵詞】ibeacon 導航 定位 盲人導航
【中圖分類號】G64 【文獻標識碼】A 【文章編號】2095-3089(2017)22-0222-03
一、研究背景
室內導航技術是近年來的熱點領域,主要有WIFI定位、ibeacon定位、RFID定位、超聲波定位、激光定位、移動通訊網定位等。
(一)ibeacon技術
ibeacon是蘋果公司2013年9月發布的使用于移動設備的通訊協議。使用低功耗藍牙BLE技術進行廣播信號,ibeacon向周圍的設備發送自己特有的ID。ID可以包括名字,UUID,信號強度RSSI。
(二)其他技術
各定位技術方向對比見表1。
在上述技術方向中,激光定位沒有避障能力,如果場景中有行人遮住了發射源,直接影響到定位,且激光會對正常視力人群產生一定傷害、存在光污染問題。超聲波定位雖然比激光定位的安全性好,但避障能力仍然很差,當受到其他行人的遮蔽時,導航效果會很差。
RFID定位精度差,范圍小,一般用于門禁系統,不適用建筑物內導航。
移動通信技術2g,3g和4g導航的精度在50-300米范圍內,該精度不適用建筑物內導航。
WIFI定位、ibeacon定位都可以用在建筑物內導航。WIFI定位需要在手持終端上操作,加入該導航WIFI,可能還需要設置權限,這些操作對于盲人來說都是困難的,特別是對第一次進入該建筑物的盲人。
ibeacon不需要實現設置權限,與建筑物內的通訊網絡分離,安全性更好。任何可接受ibeacon信號的手持終端無需任何操作都可以接收ibeacon信號。
從導航設備部署方面考慮,WIFI設備需要電源及網絡布線,能源耗費大,部署更復雜。ibeacon只需要電池供電,一個電池可以支持2年以上的運行時間。
從成本方面考慮,WIFI設備比ibeacon設備貴,施工成本更高,長時間運行的能耗更大。
綜合以上,選用了ibeacon作為室內導航的技術基礎設備。ibeacon技術的優勢如下:
(1)定位方式安全。
(2)精度1-2米,滿足室內定位需求。
(3)電池供電,應用方便。
(4)適合應用于手持終端(包括手機)廣泛普及的環境。
(5)部署方便和運行成本低。
二、方法
基于ibeacon的盲人室內定位與導航的方案設計主要包括信號發射系統、接收系統和中央處理系統的三大系統。
(一)信號發射系統
該系統由三個及以上的ibeacon發射設備組成。
1.選用設備Eddstone beacon,發射功率0dBm,廣播間隔500ms。
2.廣播的信息包含UUID、Major、Minor參數、信號強度RSSI。
3.UUID、Major、Minor這三個參數就決定了iBeacon廣播出的信息。使用UUID標識不同的定位目標,Major參數標識安裝樓層與區塊,Minor標識具體房間號及該房間的用途。放置ibeacon發射設備于建筑物內各房間的入口處,同一樓層的ibeacon保持高度一致,為盡量避免障礙物造成的干擾,ibeacon放置在2米高度以上更為合適。
(二)接收系統
接收系統即手持終端,可以是一部有藍牙4.0及以上的安卓手機:
手持終端的服務程序實現:
1.實時掃描檢測附近ibeacon廣播信號,生成ibeacon列表,如圖2和圖3所示;
2.與中央處理系統使用socket通訊協議連接,作為socket客戶端,將ibeacon列表發送給中央處理系統。
(三)中央處理系統
中央處理系統由一臺PC服務器組成,它負責接收手持終端發送過來的ibeacon信息,及手持終端的導航請求,通過導航算法分析,向手持終端反饋導航信息。具體如下:
(a)中央控制系統中擁有所有ibeacon的列表,根據接收系統發送來的ibeacon列表中的UUID、Major、Minor參數值確定大致樓層、房間。
(b)中央控制系統通過使用各ibeacon的信號強度值(RSSI)計算距離。
(c)中央控制系統根據定位算法來確定盲人所在位置。
(d)根據盲人所在位置和目的地址,采用導航算法進行路徑導航。
(e)使用socket通訊協議,作為socket服務器實時將指令發往socket客戶端(即手持終端)。
1.距離計算公式
其中根據信號強度值(RSSI)計算距離的公式如下。
距離=常數A*(r/t)^常數B+常數C
其中,r為測量到得信號強度RSSI,t為發射設備1米距離的參照型號RSSI,A、B、C為不同設備的常數。
2.定位算法
在導航開始之前,首先要完成各目標地址及盲人所在位置的定位。各目標地址都是固定的位置,比如:餐廳、洗手間、會議室等用ibeacon來定位,部署時在每個目標地址的入口處安裝一個或若干個ibeacon,ibeacon每隔固定時間向外廣播該位置,方便手持終端接收。
盲人所在位置是移動的,定位比較困難,這里采用三點定位算法來定位盲人所在位置。其原理如下(圖3)。
算法原理:平面上有三個ibeacon發射裝置A,B,C,和一個接收系統D,并已測出三個ibeacon到手持終端D的距離分別為R1,R2,R3,則以三個ibeacon發射裝置坐標為圓心,三個ibeacon到手持終端距離為半徑可以畫出三個相交的圓,如圖下圖所示,接收系統D的坐標即為三圓相交點。
3.導航算法
導航算法是整個解決方案的關鍵所在,建筑物通常有多層,每層有走廊、轉角和多個房間等元素組成,樓層之間通過人行樓梯及電梯相連。盲人進入建筑物之后,目的地可能是任意樓層的任意房間,立體空間導航是個很復雜的問題。為了簡化該問題,本解決方案將建筑物內的立體空間導航分解成平面導航和縱面導航兩個部分。
平面導航即同一樓層的導航,縱面導航即人行樓梯間及電梯間的導航。服務器軟件事先為平面導航和縱面導航分別建立坐標系,此時坐標系已經簡化為類平面坐標系,在該坐標系中根據已部署安裝的ibeacon位置繪制每一樓層的平面圖、人行樓梯縱面圖和電梯縱面圖。
上述圖都建立完成后,對于一樓的導航,可以直接通過該樓層的平面圖進行導航。
對于二樓及以上的任意導航請求,都可以通過以下步驟完成導航:
(a)首先通過平面圖導航到一樓的人行樓梯間或電梯間。
(b)通過縱面圖導航到指定樓層。
(c)通過平面圖導航到該樓層的指定位置。
三、結果
(一)ibeacon定位場景實現
目前本設計實現了兩大場景的ibeacon定位:長廊場景(如圖4)、轉角場景(如圖5)。
(二)導航的實現
通過使用縱橫向平面的方法將三維導航簡化為平面導航。
情景一:盲人處在一樓平面內
這種情景實際就是接收系統處在橫平面內。中央控制系統根據ibeacon表和所接收的ibeacon表及參數,確定在所處平面的坐標。對橫平面圖進行圖搜索,找到現位置與目標位置的路徑。有別于傳統意義的圖搜索,這里不僅要考慮節點間相對關系,還要考慮距離。
情景二:盲人處在人行樓梯間或乘坐電梯
這種情景實際就是接收系統處在縱向平面內。縱向平面用于樓層的判斷,電梯間與樓梯樓道內的ibeacon采用特殊UUID標識,當中央控制系統所收到ibeacon列表中ibeacon為縱向平面ibeacon后,只需進行根據ibeacon間距的關系判斷,因為鑒于樓梯間及電梯井的直筒型結構,ibeacon安裝時保持在同一直線上。由此,中央控制系統可以判斷接收系統所處樓層,進行新橫向平面的路徑導航。
情景三:盲人走在一樓平面與電梯、樓道之間
這種情景實際就是接收系統處在縱橫平面之間縱向平面的ibeacon發射裝置使用小于5米的發射距離,因此當檢測到縱向平面ibeacon后將不再考慮橫向平面ibeacon切換至縱向平面導航。
四、結論
課題目前初步實現了基于ibeacon的建筑物內的定位、導航解決方案的設計。但在精度問題上仍有改進的空間。
實現:
(1)無需電源、布線的廉價硬件,設計安裝方便。
(2)可利用智能手機的socket客戶端以及ibeacon檢測與列表實現。
(3)縱橫向平面導航設計,簡化空間導航難度。
(4)初步幫助盲人實現出行的最后“100米”。
參考文獻:
[1]Altbeacon Android Beacon Library http://altbeacon.org/
[2]Java Concept Early Objects(第七版)[美] Cay Horstman著John Wiley & Sons Inc
[3][美]Robert Sedgewick,[美]Kevin Wayne.算法(第四版)[M].北京:人民郵電出版社,2012