隨著數據業務和多媒體業務的快速增加,人們對定位與導航的需求日益增大,尤其在復雜的室內環境,如機場大廳、展廳、倉庫、超市、圖書館、地下停車場等環境中,常常需要確定移動終端或其持有者、設施與物品在室內的位置。但是受定位時間、定位精度以及室內復雜環境等條件的限制,比較完善的定位技術目前還無法很好地利用。ZigBee是一種新興的短距離、低速率無線網絡技術,它最顯著的特點是低功耗和低成本。利用ZigBee技術實現定位具有低成本、低功耗的優點,且信號傳輸不受視距的影響。 1 相關核心技術概述 1.1 ZigBee技術概述 ZigBee技術是一種新興的近距離、低功耗、低成本、低數據率、低復雜度的雙向無線通信技術,它是基于IEEE 802.15.4標準開發的無線協議。網絡層以上協議由ZigBee聯盟制定,IEEE 802.15.4負責物理層和鏈路層標準。完整的ZigBee協議套件由應用層、應用架構層、網絡層以及數據鏈路層和物理層等組成,協議棧結構如圖1所示。 圖1 ZigBee協議棧結構 ZigBee可使用的頻段有3個,分別是2.4 GHz的ISM頻段、歐洲的868 MHz 頻段以及美國的915 MHz 頻段,不同頻段可使用的信道分別是16、1、10個。中國采用2.4 GHz頻段,它是免申請和免使用費的頻段;采用直接序列擴頻技術DSSS(Direct Sequence Spread Spectrum),傳輸距離介于10"75 m(增加RF發射功率,可達500 m);傳輸速率為20"250 kb/s,適合傳感器數據采集和控制數據的傳輸。ZigBee技術具有強大的組網能力,可以形成星型、樹型和MESH網狀網。 1.2 RSSI定位技術 RSSI(Received Signal Strength Indicator,接收信號強度指示)是指節點接收到的無線信號強度大小。在基于接收信號強度指示RSSI 的定位中,已知發射節點的發射信號強度,接收節點根據接收到信號的強度計算出信號的傳播損耗,利用理論和經驗模型將傳輸損耗轉化為距離,再利用已有的算法計算出節點的位置。該技術硬件要求較低、算法相對簡單,在實驗室環境中表現出良好特性;但由于環境因素變化的原因,在實際應用中往往還需要改進。接收信號強度是發射功率和發射器與接收器間距離的函數。 接收信號強度RSSI理論值可由式 (1)表示: RSSI=-(10n·lgd+A)(1) 其中,n代表信號傳播常量,也叫傳播指數;d代表距發射器間的距離;A代表距離1 m時的接收信號強度。 信號的衰減與距離成對數衰減的關系。節點到信號源的距離越近, 由RSSI值的偏差產生的絕對距離誤差越小;而當距離大于某一值時,由RSSI波動造成的絕對距離誤差將會很大。一個未知節點可能收到n個參考節點的信號, 所以應當采用RSSI值大的前幾個參考節點進行定位計算,這樣可以避免定位誤差擴大。 2 ZigBee技術實現定位的優勢 (1) 功耗低 由于ZigBee的傳輸速率低,發射功率僅為1 mW,而且采用了休眠模式,因此ZigBee設備非常省電。ZigBee設備僅靠2節5號電池就可以維持長達6個月到2年左右的使用時間,其功耗遠遠低于其他無線設備。 (2) 成本低 與 GPS相比,定位引擎在單芯片 ZigBee RF收發器中與 MCU集成在一起,成本不及 GPS硬件的1/10,功耗也只是 GPS硬件的一小部分,并且ZigBee協議是免專利費的。 (3) 時延短 通信時延和從休眠狀態激活的時延都非常短,典型的搜索設備時延為30 ms,休眠激活的時延是15 ms,活動設備信道接入的時延為15 ms。因此ZigBee技術適用于對實時定位要求較高的應用。 (4) 網絡容量大 一個星型結構的ZigBee網絡最多可以容納254個從設備和1個主設備,組網方式靈活。隨著ZigBee技術的成熟,未來ZigBee設備不斷增多,可以利用具有ZigBee RF的設備或基礎設施,容易組建ZigBee網絡,降低了ZigBee節點設計和組網成本,且利用更多的ZigBee設備可以達到更高的定位精度。 3 室內定位系統設計 3.1 系統結構 定位系統由盲節點(即待定位節點)和參考節點組成,為了便于用戶獲得位置信息,還需要一個與用戶進行交互的控制終端和一個ZigBee網關。系統結構如圖2所示。 圖2 系統結構圖 參考節點是一個位于已知位置的靜態節點,這個節點知道自己的位置并可以將其位置通過發送數據包通知其他節點。盲節點從參考節點處接收數據包信號,獲得參考節點位置坐標及相應的RSSI值并將其送入定位引擎,然后可以讀出由定位引擎計算得到的自身位置。由參考節點發送給盲節點的數據包至少包含參考節點的坐標參數水平位置X和豎直位置Y,而RSSI值可由接收節點計算獲得。 一般來說參考節點越多越好,要得到一個可靠的定位坐標至少需要3個參考節點。如果參考節點太少,節點間影響會很大,得到的位置信息就不精確,誤差大。對于CC2431,要得到好的定位精度,需要8個參考節點;如果得不到8個節點,則應該使用盡可能多的節點。CC2431的無線定位引擎可以處理最高達64 m的X、Y值。 為了收集計算得到的數據和與無線節點網絡交互,特定的控制系統是必需的。一個典型的控制單元是一臺計算機,然而一個PC沒有一個嵌入的無線接收器,因此接收器需要從外部接入,還需要一個ZigBee網關。ZigBee網關的作用就是將無線網絡連接到控制終端,所有位置計算都由盲節點來實現,所以控制終端不需要具備任何位置計算功能。它的唯一目的是讓用戶和無線網絡進行交互,比如獲得盲節點的位置信息。 3.2 CC2431芯片簡介 CC2431是TI公司推出的帶硬件定位引擎的片上系統(SoC)解決方案,能滿足低功耗ZigBee/IEEE 802.15.4無線傳感器網絡的應用需要。CC2431的定位引擎基于RSSI技術,根據接收信號強度與已知參考節點位置準確計算出有關節點位置,然后將位置信息發送給接收端。 CC2431由2.4 GHz直接序列擴頻(DSSS)射頻收發器核心和增強型工業標準的8位8051微控制器組成,是帶有128 KB閃存的8051內核ZigBee無線單片機,并帶有定位跟蹤引擎。CC2431的設計結合了8 KB的RAM及強大的外圍模塊,并且有3種不同的版本,它們是根據不同的閃存空間32 KB、64 KB和128 KB來優化復雜度與成本的組合。CC2431的尺寸只有7 mm×7 mm的48腳封裝,采用具有內嵌閃存的0.18 μm CMOS標準技術。針對協議棧、網絡和應用軟件執行時對MCU處理能力的要求,CC2431包含一個增強型工業標準的8位8051微控制器內核,運行的時鐘頻率為32 MHz。CC2431還包含一個DMA控制器,它能夠被用于減輕8051微控制器內核對數據搬移的操作,因此提高了芯片整體的性能。 系統基本硬件連接電路如圖3所示。連接50 Ω單極天線的部分由電感和電容構成,其中的電感L1、L2還為芯片內部的低噪聲放大器和功放提供直流偏置。也可采用一個無需阻抗匹配電路的折疊式偶極子PCB天線。圖3中,XTAL1為一個等效串聯電阻(ESR)圖3中,CC231還提供了良好的接地保護功能,除了48引腳外,其芯片底層提供了AGND接地引腳,可以有效地抑制噪聲,減少電磁干擾,保證電路系統穩定工作。 圖3 系統基本硬件連接電路 3.3 定位引擎操作流程 圖4 定位引擎操作流程 CC2431的硬件定位引擎與軟件定位方法相比的優勢是: 速度快、精度高,不占用處理器時間。該定位引擎的主要特點如下:定位估計算法需3~8個參考節點;定位估計以0.5 m為單位;計算節點位置耗時少于40 μs;定位范圍為64 m;定位偏差低于3 m;定位引擎采用分布式計算方法,該方法使用已知參考節點的RSSI信息定位。在節點上分布式定位計算可避免集中計算方法帶來的大量網絡傳輸與通信延遲問題。定位引擎操作流程如圖4所示。 在定位引擎運行之前,必須使能定位引擎寄存器LO2CENG的第4位LOCENG.EN。當要停止定位引擎運行時,應往LOCENG.EN 寫入0關斷引擎的時鐘信號,以降低CC2431的功耗。對定位引擎的操作,主要就是對與定位引擎有關的寄存器的操作。 定位引擎運行時需要輸入3~8個參考坐標。參考坐標是以m為單位的,它表示各個參考節點的位置,其數值位于0~63.75,最高精度為0.25 m,以最低2位為小數部分,剩余6位為整數部分。參考坐標存放于RF 寄存器REFCOORD中。在寫入REFCOORD之前,寄存器LO2CENG的第1位LOCENG.REFLD 必須寫入1,用于指示一組參考坐標將要被寫入。一旦坐標寫入過程開始(LO2CENG.REFLD=1),8對坐標必須一次性寫入。當定位引擎使用少于8個參考坐標時,要將未用的參考坐標寫入0.0。 4 定位區域的擴展 定位引擎可以處理最高達64 m的X、Y值,更準確地說是63.75 m,但是這個區域對實際應用來說顯得太小,因此擴展區域非常必要。可以通過軟件預處理算法來實現。每個節點用2個字節代表X、Y。因為精度為0.25 m, 因此最大范圍為16 384 m(214=16 384)。圖5是用預處理算法進行區域擴展的示意圖。 圖5 擴展定位區域示意圖 該圖所示的區域中,在X、Y方向上每隔30 m放置一個參考節點,虛環中間的白色節點為盲節點,其他節點為參考節點。第1步,確定具有最高RSSI值的一個節點并計算一個補償值,使之“移動”到64 m×64 m范圍的中心。由于已知來自此節點的RSSI值,所以到此節點的距離很容易得到;第2步,確定除“最強”節點之外的其他使用節點,所有節點用第1步中的補償值進行修正;第3步,所有獲得值送入定位引擎,讀出由其計算得到的位置;最后一步,將補償值添加到計算得到的位置中,完成這些計算之后,盲節點在網格中的位置就確定了。 結語 CC2431作為一款集成有定位引擎的ZigBee射頻收發器,結合其他ZigBee節點構成的無線網絡,可以實現3~5 m的定位精度。ZigBee作為一種高性價比、低成本、低功耗、低復雜度的無線通信技術,以其來實現室內無線定位具有良好的應用前景。隨著人們生活水準的提高,人們對定位服務有著越來越高的需求,雖然目前已經有多種定位技術,但是在室內定位方面存在一定缺陷和不足。如果將這些定位技術和ZigBee定位技術結合起來,將會實現更加完美和精準的定位服務。 |