基於RSSI特徵之方法,已經廣泛應用於室內環境定位系統中。其基本觀念很簡單,若我們先在空間中預先佈建數個已知位置的beacons,則在某一特定位置可接收到一組獨特的beacons之無線信號強度指標(Radio Signal Strength Indicators;RSSI),而所接收到的RSSI值一般稱之為RSSI特徵值。RSSI特徵定位系統通常有一個共同的問題,就是離測量RSSI特徵的時間點越久,定位的精確度也隨之降低。
為了解決這樣的問題,近來有一些研究[1][2]專注於對RSSI特徵的自動校準。然而我們想從不同觀點來研究這個問題,與其試著讓RSSI特徵保持隨時都是最新接收到的狀態,為何不去探討RSSI特徵無法持續穩定的原因?為了探究這個問題,我們在一個12公尺乘50公尺的空間中建構一套RSSI特徵定位系統,並進行一系列詳細的測量,藉以對天線方向、障礙物、beacon分布密度對RSSI特徵不穩定性的影響作探討。
我們有以下四點發現:
- (1)天線方向對RSSI特徵不穩定性的影響是非常顯著的。隨著天線的方向不同,定位誤差也隨著在1到3公尺之間變動,也就是說,接收時所用的tag,在接收訊號時,若是沒有保持相同方向,其誤差可能會有極大的不同;
- (2)背景環境障礙物,包含人體的移動、建築物中的家具、以及使用中的電子裝置所產生的雜訊都可以被忽略;
- (3)然而前景(以天線方向來考慮)環境障礙物所造成的影響卻非常重大。使用者手持tag或走路經過tag旁所造成的平均誤差可達1.22公尺到2.71公尺。此外,當接收用的tag持於使用者手中或是放在椅子上,其平均誤差甚至可以相差141%;
- (4)beacon分布密度的影響隨著量測點的不同而有所不同。當某量測點附近有一定數量的beacon時,平均定位誤差並不會隨著整體密度降低而變差太多。
透過對此定位系統測試平台的微觀檢測,我們發現某些設計上的要素可以避免系統反覆進行RSSI特徵勘測及校準。首先,接收用tag的天線最好使用均勻輻射模式來隔絕天線方向所造成的影響。其次,在探勘RSSI特徵時,使用與之後實地定位時相同的tag佩戴方式,可以使前景障礙物的影響降到最低。Beacon分布密度不會影響RSSI特徵的長期正確性,然而卻會影響定位的精確度。因此我們必須確定,測量點數目應多於beacon的數目,且必須均勻分布於測試空間中,以避免量測結果有所偏差。
在實際測試平台上進行如此詳盡的檢驗,是系統達到預期的運作效能的必要步驟,也是是否能應用於日常生活的重要關鍵。我們在此呈現研究成果,期以激發更多後續相關實地測量的研究,達到拋磚引玉的目的。最後,希望能推動實際測試平台所得RSSI特徵測量記錄的分享,相信這不僅能促進對實驗結果的交互檢驗,並提供無足夠資源以設計實驗平台的研究機構,一個研發其他較高階演算法的大好機會。
定位系統
為從事相關測量研究,我們特別建構了一個RSSI特徵基礎的定位系統。RSSI特徵基礎的概念是在找出tag的位置與其接收到來自beacon的RSSI的對應關係。這些接收到的RSSI可視為RSSI特徵或一組向量。這個系統的使用可分為兩個階段:訓練跟追蹤。在訓練階段中,會在地圖上每個特定位置的測試點接收RSSI特徵,而這些由不同位置收集到的RSSI特徵之集合,稱之為radio map。有了在訓練階段中產生的radio map後,追蹤階段會比對接收模組收到的RSSI向量和radio map中的參考RSSI,並找出最有可能的地點。在定位系統中,使用K個最接近的鄰近點(K-Nearest-Neighbor;KNN)來判斷該點位置,首先由radio map中選擇K個與接收到的RSSI向量最接近的對應位置,再依據與接收到的RSSI向量的差距,給予相對的權重,最後輸出這K個位置的加權平均值。
Beacon每隔一段時間會發送帶有自己編號(ID)的封包。在這個測試平台中,封包每隔200ms發送一次,無線傳輸的功率強度設為-7dBm。如此在測試環境中,任一位置皆大約只能接收到10個beacon送出的封包。由於需要經由這些beacon送出的封包來取得RSSI特徵並推出位置,因此能正確收到這些封包對定位系統的正常運作至為重要。為了避免封包碰撞(collision),每個beacon皆採用DESYNC協定[3]。DESYNC能有效隔開每個鄰近beacon的傳送時間,因此能減少封包碰撞的機會。
在訓練階段中,首先要收集RSSI特徵地圖,我們將定位區域分割成小格子,每個格點之間的距離約為30公分,亦即大約是走一步路的長度。在勘測的階段,研究人員會拿著一台電腦並接上接收模組走在走廊上,在每個格點會等8秒來接收40組RSSI特徵,再求其平均值,以得到一個RSSI特徵向量。
在追蹤階段中,接收模組每220ms會收集beacon送出的封包,並將RSSI向量送回定位系統。定位系統會將收到的向量跟特徵地圖做比對,並找出最有可能的位置。我們使用KNN的方式來找出前K個最有可能的特徵,然後計算這K個的加權平均位置。在我們的實驗中 K值為3。
測試平台
我們以測試平台作為測量研究的平台,在台灣大學的博理館六樓佈建了24個beacon節點,圖一為博理館六樓的平面圖,其中,較小的房間如611到629為教師的辦公室,而剩下的房間為研究助理的實驗室。我們將這些類似Telos的beacon等距地佈建在走廊上,為了方便進行測試平台的除錯,測試平台上的beacon皆透過USB連接到兩台電腦,而這兩台電腦分別位於621和613,每台電腦分別連接12個beacon 節點。這兩台電腦就像閘道器一樣,讓操作者很容易透過USB更新程式或是取得資訊,由於這個測試平台使用外接電源,因此可省卻更換電池的麻煩,並可長時間進行測量。
USB連結
標準USB介面的有效傳輸距離大約是5公尺,為了讓節點之間有效距離可以離的更遠,我們使用USB的延長器(USB Extender)。USB的延長器是使用可以延長有效傳輸距離到45公尺的市售現成產品。它裡面的『local unit』將輸入的訊號調變成可在任何CAT5e規格網路線上傳輸的訊號,另一邊的『remote unit』則將訊號解調變成USB的格式。
為了避免佈建起來會有太多冗長的線,我們採用一種鏈狀(chain)的結構,如圖二(a)所示,也就是將鄰近的beacon 節點串在一起,在整個鏈狀結構的一開始,先用一個4埠的USB集線器透過USB連到兩台電腦中的其中一台,有三個beacon 節點會接在這個集線器上面,接下來會利用USB延長器與下一個USB集線器連接,以這種方式一直連接直到達到USB延長器的限制,也就是電腦和最後一個集線器的距離不能超過45公尺。這也是測試平台為什麼需要用兩台電腦來串接beacon 節點的原因。
電源供應
提供足夠的電力給beacon 節點及USB的裝置是另一個面臨的挑戰,根據測量,一個beacon 節點峰值電流大約是60毫安,USB集線器大約是5毫安,USB延長線大約是20毫安,因此,一條鏈狀結構會消耗超過800毫安,從電腦的USB埠連接過來的電源,無法滿足如此高的電流消耗需求。
於是我們使用可以外接電源的USB集線器,並使用一條可以連接鏈狀結構上每個USB集線器的電源供應器,如圖二(a)所示,此電源供應器最大可以提供3安培的電流。USB埠運作的額定電壓為5伏特,由於這條鏈狀結構很長也消耗了不少電流,在最後一個USB集線器大約會降1伏特,所以使用一般5伏特電源供應器可能會不足夠,因此我們使用了6伏特的電源供應器。在測試平台裡面的每個裝置,包括beacon 節點、USB集線器、USB延長器都測試過可以承受6伏特的電壓。最後一件要做的事就是剪斷USB延長器中『remote unit』和USB集線器之間的供電接腳,如圖二(b)所示,這是為了要確保USB集線器的供電來源完全是由外接電源所提供。
《圖二 測試平台配置:(a)鏈狀連結、(b)移除電源(VCC)接腳》 |
|
資料收集
為了量化出不同因子在不同觀測誤差下所造成的影響,我們進行了一連串的實驗。首先,在L型區域進行實地勘測(site survey),此區域是在圖一的陰影部份,稱為訓練區域。在訓練區域中,每隔30公分取得一組RSSI訊號,整個訓練過程大約需40分鐘。
接著,在追蹤的階段中,tag每隔220ms會將所有的RSSI 讀值包裝成一個封包,然後透過USB 介面傳遞給筆記型電腦,而筆記型電腦會將所記錄的封包詳細分析RSSI值與推導定位誤差。
以下有10組不同的trace數據收集,是tags在不同的環境配置下所取得的traces。這些資料數據將公開於http://nslab.ee.ntu.edu.tw/bllive/ 以供進一步的學術研究。
實驗說明
實驗I
本實驗使用如三(a)圖中所示的三個具有不同天線方向的tag,此三組tag將被置於x2位置(圖一)上的椅子。在實驗I中,這三種不同天線方向的tag都分別會在10分鐘中收集2727個位置估測。這三組traces分別被命名為I.a、I.b與I.c。
實驗II
在x2位置上的一個tag,被置於椅子上或是在無人走動的環境裡被一個操作人員拿在手中紀錄RSSI。這兩組所收集到的traces被取名為II.a與II.b。另外還有兩組不同的traces,其一是當一個tag被置於椅子上且有人靜止不動靠站在椅子旁時,此組trace是為II.c;其二為紀錄有人在椅子旁來回走動狀態下的RSSI數據,即為II.d。以上這些情況裡, tag的狀態是固定不動在相同的位子與方向上。針對實驗II上述的四組trace資料,其每組tag將分別執行5分鐘去收集1363個位置估測。本實驗也在x1位置(圖一)上重覆一次,紀錄tag拿在手上的RSSI數據,此組trace被記為II.e。
實驗III
在實驗III中,有兩個tags被分別放置於x1與x2位置(圖一)的椅子上。在x1位置(圖一)的tag將執行18個小時紀錄RSSI數據,此組RSSI trace記為III.a。另一組trace,被放置於x2位置(圖一)的tag將執行15小時紀錄trace是為III.b。
分析
在本節中,針對天線方向、障礙物與Beacon擺放密度這三項因素,對RSSI資料收集所帶來之影響進行分析。
天線方向對RSSI之影響
為了瞭解天線的方向性對定位準確度的影響,我們針對三個不同方向的tag所做的實驗資料(分別為I.a、I.b及I.c)進行分析。平均定位錯誤分別為0.88、2.05與3.17公尺 ,也就是說,一個方向的平均錯誤可以是另一個方向平均錯誤的三倍到四倍。圖三(b)所顯示的是從不同beacon點讀進來的RSSI,共有三個群組:A、B及C,代表從tag A、tag B及tag C收集到的資料,如圖三(a),每一條水平線代表從一個beacon點接收十分鐘的RSSI值。
我們觀察到,從某些beacon點收集到的RSSI變化不會太大,但是從有些beacon點收集到的RSSI則變化很明顯;舉例來說:在tag A讀到RSSI為-84的beacon,在tag B跟tag C讀到的RSSI分別為-70、-75,這樣的差異對KNN的計算結果影響非常重大。
當收集RSSI的時間增加時,我們觀察到,讓定位準確度下降的最主要原因,是由於訓練期間跟追蹤期間的天線方向不一致。類似的現象也曾於另外一份研究探討傳輸範圍與RSSI關係的研究報告[4]中出現。
《圖三 天線方向的影響:(a) Tag的三個方向、(b)實驗1中,三個不同方向的tag讀進來的RSSI。每一個RSSI是由40個取樣值做平均出來的數值。》 |
|
障礙物對RSSI之影響
射頻訊號的傳輸對於環境周遭的障礙物非常敏感。環境中存在許多其他的障礙物以及雜訊,如建築物結構,人的動作,以及電子設備的使用。建築物結構的影響是隱性的,反映於RSSI特徵上。障礙物影響RSSI強度可分為兩種:實體障礙物、無形障礙物。
- (1) 實體障礙物:Tag天線信號傳遞對附近障礙物的影響是很敏感的。為了研究障礙物對定位準確度的影響,分析在四種不同狀況下所測得的數據。(1)Tag放在椅子上;(2)手拿著Tag;(3)有人站在Tag旁邊;(4)有人環繞著Tag。從圖四(a)上可以看出,Tag放在椅子上比手拿著來的穩定。這很可能是因為手和身體影響了多方向信號傳遞的關係。
- (2) 無實體障礙物:我們分析了一個進行18小時的實驗數據。從圖五可以看到RSSI的信號在12:00AM到7:00AM之間保持的相當平穩,而在9:00AM到12:00AM之間震盪相當厲害。儘管RSSI變化量各不相同,但是定位誤差還是保持相似,即午夜的1.58公尺和下午的1.52公尺。我們從結果觀察到人類行為確實影響RSSI信號強弱,但是對平均定位誤差影響不大。
《圖四 使用者對RSSI的影響:(a)RSSI在4種狀況下分布情形、(b)定位誤差的CDF 》 |
|
《圖五 背景障礙物的影響:長時間之RSSI讀取值 Trace III.a》 |
|
Beacon擺放密度對RSSI之影響
針對beacon佈建密度對定位準確度的影響,在實驗室利用不同的beacon數目來進行tag拿在手上於x1以及x2不同位置之定位實驗。每個beacon間距10公尺,選取的beacon均勻分布在實驗環境中。圖六(a)表示tag拿在手上於x2位置之定位誤差的CDF圖形。當beacon數目減少為原來一半,實驗結果顯示定位準確度降低。
接著進行tag拿在手上於x1以及x2不同位置在1/3 beacon數目之定位實驗,我們預期準確度會降低得更明顯。圖六(a)及(b)顯示,其中一組使用1/3 beacon數目的準確度結果卻與使用所有beacon數目的結果近似。另外兩組使用1/3 beacon數目則在超過4公尺有80%的準確度。造成準確度高的原因是因為測量的兩個點位置靠近周圍的beacon。準確度差的原因是因為測量點距離beacon比較遠。定位點的位置對於準確度的影響是非常敏感的,如果定位點的位置非常靠近beacon,準確度就會提升。因此,beacon佈建的密度越高將會提高量測點靠近beacon的機會,進而提供更強健並且誤差變異性較低的定位系統。
《圖六 Beacon密度的影響:(a) tag拿在手上於x2位置在1/2 beacon密度下之定位誤差的CDF圖形。(b) tag拿在手上於x2位置在1/3beacon密度下之定位誤差的CDF圖形。(c) tag拿在手上於x1位置在1/3 beacon密度下之定位誤差的CDF圖形。》 |
|
結語與未來發展方向
本文提供了詳細的RSSI特徵定位系統研究,研究發現,若能使用均勻性輻射傳播的天線,且在實地勘測中,擺放接收訊號tag的方式,與之後在追蹤時的擺放方式相似,則可以有效增加RSSI特徵地圖的強健度,並且可以得到更一致和可預期的定位錯誤。然而,我們的研究還不算十分完整,仍可更深入研究實體障礙物和beacon密度的影響,以找出它們與定位精準度的細部關連。
研究社群或許更為關切的是,定位系統中位置推導方法所帶來的影響,我們知道目前存在其它比KNN更為複雜的技術,因此決定將這個實驗所收集到的資料公開,別的團隊便可以利用這些資料去比較KNN和其它技術的優缺點。相信分享從實際測試平台獲得的資料,可讓大家最終都從中獲益,並在未來發展更好的效能評估方式及對定位系統有更深入的瞭解。
---作者蕭俊杰為國立台灣大學電機工程研究所博士班學生,現任龍華科技大學助理教授;劉承榮為台大電機工程研究所博士班學生;陳冠名為台大網路多媒體研究所碩士班學生;林宗翰、吳意曦為台大電機工程研究所碩士班校友;黃寶儀為美國南加大資訊工程博士,現任台大電機工程系副教授---
參考資料:
- [1] A. Haeberlen, E. Flannery, A. M. Ladd, A. Rudys, D. S. Wallach, and L. E. Kavraki, “Practical robust localization over large-scale 802.11 wireless networks,” In Proceedings of ACM MOBICOM 2004.
- [2] H. Lim, L. C. Kung, J. C. Hou, and H. Luo, “Zero configuration, robust indoor localization: theory and experimentation,” In Proceedings of IEEE INFOCOM 2006.
- [3] J. Degesys, I. Rose, A. Patel, and R. Nagpal, “DESYNC: self-organizing desynchronization and TDMA on wireless sensor networks,” In Proceedings of IPSN 2007
- [4] Dimitrios Lymberopoulos, Quentin Lindsey, and Andreas Savvides, “An Empirical Characterization of Radio Signal Strength Variability in 3-D IEEE 802.15.4 Networks Using Monopole Antennas,” In Proceedings of EWSN 2006.