ZigBee網絡實現GPS功能
ZigBee網絡實現GPS功能
成都無線龍通訊的C51RF-CC2431無線定位開發系統具有ZigBee網絡實現GPS功能,同時提供各種ZigBee(CC2430/CC2431)開發工具。
定位引擎提供ZigBee網絡無線裝置高定位精確度,且耗電低,還能減少額外通訊負擔,并能利用現有ZigBee基礎設施計算無線裝置在網絡里的位置,再由中央資料點搜集信息以供追蹤使用,或由使用者啟動此功能引導其在建筑物內移動。
想像到一個商場的賣場,想購買一樣稱心的商品,該從那里著手?其實很簡單,如果商場上布置了定位系統,只要拿出行動電話或PDA搜尋商品區,行動裝置就會顯示賣場地圖,并且告訴消費者往那個方向走,當消費者穿過賣場時,還會顯示可能感到興趣的商品。
德州儀器(TI)ZigBee無線射頻元件CC2431所含的定位引擎(Location Engine)就像是室內全球衛星定位系統(GPS),利用ZigBee網絡的無線射頻基礎設施計算物品或人員的位置。相較于GPS系統,把定位引擎和微控制器(MCU)全部整合至單晶片射頻收發器,不僅耗電量遠少于GPS硬體,成本更不到其十分之一,且無論在室內或室外,只要有ZigBee網絡的地方就能使用。常見應用包括從屋內不同房間移動時,遙控開燈或關燈;裝運碼頭的貨柜追蹤,以及從倉庫追蹤特定貨物。定位引擎還能簡化無線網絡設定,能在新設備加入網路時找出其所在位置。
多數無線傳感器網絡都需一套方法判斷網絡節點的位置,所以使用者必須在安裝時決定應該互相交換的資料,以及應與中央資料搜集點互傳資料的節點。市場上許多解決方案透過軟體計算網絡節點位置,這類系統的節點讀取位置計算所需的參數,然后把信息送到中央資料搜集點,算出位置后再傳回給節點,這個過程的運算量很龐大,須用到個人電腦或高效能微控制器。
這種計算位置的方式僅對小型網絡和少數節點有用,因為執行計算所需的網絡流量會隨著節點數目的指數增加。高流量負載和頻寬不足讓這套方法只能用于電池供電的網絡,可利用分布式定位計算解決這個問題,可先讓網絡節點找出多個已知位置且距離最近的參考節點,然后根據參考節點傳來的信息計算本身的位置,因此,網絡流量將只出現在定位(移動)節點(Blind Node)連接范圍內的節點。另外,由于網絡流量只會隨定位(移動)節點的數目等比例增加,所以同一個網絡可有很多個定位(移動)節點。本文介紹的結果是以ZigBee網絡測量值為基礎,但也適用于較簡單的IEEE 802.15.4網路。
剖析定位引擎技術
定位引擎會根據無線網絡里,相鄰無線裝置傳來的接收信號強度指標(RSSI)計算自己的位置。隨著環境不同,兩臺無線裝置之間的RSSI信號會有很大差異,舉例來說,若有人在兩臺無線裝置的中間走過,接收信號就可能減少30dBm,為彌補這么大的差異,定位引擎增加多臺無線裝置傳來的RSSI值進行計算,以便得到精確的位置,這種做法的邏輯是利用多個節點求取平均值,即可將RSSI的變異量消除。
在無線射頻網絡里,已知位置的定位引擎無線裝置稱為參考節點(Reference Nodes),須要計算其位置的節點稱為定位(移動)節點。參考節點與定位(移動)節點之間須要傳送的信息就是參考節點的X和Y座標以及RSSI值。定位引擎會根據參考節點傳來的訊息測量RSSI值,配合所收到的X和Y座標計算其位置。
有些定位引擎應用須安裝多個參考節點,做為基礎設施架構的一部分。 ZigBee技術提供家庭、辦公室和工業應用無線遙控能力,可廣泛用于家庭和工業自動化應用,且會有更多ZigBee裝置安裝到建筑物的基礎設施,使ZigBee技術更普及化。
典型的辦公室環境可能會利用ZigBee應用裝置控制每間辦公室和會客室的空調設備及含有溫度感測器的交流電源管線,每個房間還可能有ZigBee控制的電燈開關及設施,這些不同的設備很容易就能當做定位引擎的參考節點使用,一般而言,ZigBee無線裝置只需很少程式,就能擔任ZigBee協定堆疊之上的參考節點。定位引擎能搜集3至16個參考節點的資料(實際參與計算的最多8個參考節點信息),再利用這些資料計算位置,其若收到超過8個節點的資料,會根據這些參考節點的位置排序,然后使用前面8個節點的RSSI值。
擴大定位引擎連線距離
定位引擎的連線范圍為64米×64米(實際有效距離為63.75),多數應用卻須要涵蓋更大的范圍。有兩種方法能擴大這個距離,其一為增加參考節點的輸出功率,同時降低定位引擎的計算解析度,第二種為將多個參考節點放在較大的區域;執行定位計算時,先找出信號最強的參考節點,然后計算其與該節點的相對位置。
第二種方法的效果較好,因不須降低精確度,就能讓定位引擎涵蓋很大的區域。網絡的定位(移動)節點會送出一個廣播訊息,然后搜集所有相鄰參考節點傳回的資料,并找出信號最強的參考節點及其X和Y座標。接著,定位引擎會計算其他節點相對于該參考節點的座標,處理完這些資料后,只要再加上最近參考節點的位移值,即可得到其在這個龐大網絡里的實際位置。
天花板和地板無論在室內或室外環境都會吸收信號,因此選擇參考節點位置時必須將這些因素列入考慮,才能提供最遠的連線距離。最理想的情形是讓所有節點的高度相同,并且遠離地面、天花板和墻壁,但這在實際網絡布建卻很難做到。此時,不妨將參考節點固定在天花板或略低于天花板的位置,并將天線倒置以便射頻信號向外和向下傳送,至于定位(移動)節點,無論是手提式或固定在某些設備,其高度都應位于一般人站立時的頭部和腰部之間。這種設定方式將天花板和地板吸收的信號減到最少,同時將人員和其他物體在環境中不斷移動所造成的干擾降低最低。
為了計算室內效能,此處以一個包含八個參考節點的辦公室網絡為例。這些參考節點分布在各角落和其他有空間的地方,如辦公室家具和其他設施的表面,高度則介于腰部和肩膀之間,把這8個節點編號為A~H,在ZigBee(CC2431)定位系統中最高分辨率為0.25米。
位置估計值是由6個預先選擇的節點負責搜集,每個定位(移動)節點還會將每次定位計算所得到的20個讀數平均,其結果如表1所示。
搜集完4個參考節點的資料后,再把另外4個參考節點加入系統,然后同樣計算這4個定位(移動)節點的位置估計值,計算新加入的參考節點會對位置估計值產生多大影響,使用8個參考節點的測量結果如表2所示。所有數據都以米為單位,其中編號2~4所有的數據皆在網格范圍內。
從表1和表2可看出,只要節點位置在網絡周邊范圍內,定位精確度就可大幅提高,除此之外,定位精確度也會隨著參考節點的數目增多而提高。如把另外4個參考節點加入這項實驗后,不但4個定位(移動)節點的定位更精確,標準差也比較小,亦即數據更一致。
精確度受RSSI值所處環境影響
定位引擎是利用周圍參考節點傳來的RSSI測量值計算定位(移動)節點的位置,但RSSI卻會隨著許多因素改變,如天線設計、周圍環境和其他鄰近的射頻信號源。定位引擎會把幾個節點傳來的位置資料平均,因此增加節點數目可減少對個別節點的依賴程度,進而提高整體精確度。
參考節點的位置也會影響定位精確度,這主要是因為參考節點的位置很接近地板或天花板等表面時,其射頻信號會被這些表面吸收。此時不妨改用等向天線,才能將信號延著所有方向均勻傳送出去。
文章版權歸西部工控xbgk所有,未經許可不得轉載。