作者:艾春麗,張鳳登,劉榮鵬
1 引 言
隨著樓宇智能化程度的提高,人們已經不再滿足于僅僅使用攝像設備對樓宇中的人員或物品進行跟蹤監控。于是基于無線的定位技術在悄然間興起。這種技術不但可以進行目標跟蹤,實施監視目標的行動路線,還可以預測目標的前進軌跡,這些都是傳統的攝像監控系統不能做到的。這種定位系統從底層硬件到上層軟件涉及到非常多的技術,本文只針對無線定位部分的軟硬件進行重點介紹。
無線跟蹤系統的關鍵就是如何定位。目前比較成熟的無線定位技術當屬GPS,然而這種技術無法在樓宇中使用,因此需要尋找一種新的定位方式來達到我們的目標。這里選擇了基于接收信號強度(RSSI)的帶信標定位技術。大多數射頻芯片都可以得到RSSI,但綜合整體性能,我們采用了Chipon推出的一款低功耗2.4 GHz全球免許可費用頻段的射頻芯片CC2500。他體積小,操作簡單,采用3線制SPI。與MCU通信,并能夠在每次接收到信號后自動產生RSSI,方便上層完成定位。
2 CC2500芯片介紹
2.1 整體性能
他的主要特性有:
(1)體積小,外圍電路簡單。CC22500只有20引腳,4×4 mmQLP封裝。相對于其他射頻芯片的封裝,這種封裝在手工焊接上要容易一些。
(2)靈敏度高,功耗低,速率可調。CC2500與常用的幾款2.4 GHz射頻芯片的比較如表1所示。表中未注明速率的數據是在數據傳輸速率250 kb/s下得到的。
(3)CC2500硬件支持包數據處理,數據接收時,有緩沖,信息同步字自動檢測,地址檢測,信息長度分析和CRC校驗等功能,支持前向糾錯,內部集成溫度傳感器。
2.2 WOR功能
為了節約電能,射頻芯片通常采用休眠模式。芯片在休眠時勢必會丟失信息,CC22500的WOR(Wakeup-on-Radio)功能能很好地避免這點。WOR功能保證芯片在深度睡眠時周期性地蘇醒,探聽周圍是否有信號,這個過程不需要CPU的中斷,如果有數據包成功接收,芯片可通過引腳輸出中斷通知MCU讀取。在使用WOR功能時,片上的RC時鐘作為WOR時鐘。溢出的周期時間可由編程確定。
2.3 RSSI和LQI功能
RSSI反映接收信號強度,LQI反映信號的連接質量,兩者都可以通過讀取芯片的寄存器得到。LQI雖然能夠判斷連接質量,但會因調制方式的不同而不同。
RSSI是判斷兩個節點距離的很好的參數。在從RSSI寄存器中讀到數值后我們需要進行一系列轉化,才能得到接收強度值。首先判斷RSSI寄存器中的值RSSI dec是否大于128,如果成立,則:
如果小于128,則:
其中RSSI offset按照數據傳輸速率的不同而改變,其取值可參照文獻。
2.4 CCA功能
CCA(Clear Channel Assessment)能夠指示當前信道是否處于空閑狀態。其作用與CSMA相似。當芯片要轉入發送模式時,會首先檢查信道,只有當信道為空閑時,才進入發送模式,否則停留在原模式或由編程設定進入其他模式。有3種情況可觸發CCA功能:
(1)在RSSI低于門限值時;
(2)當接收到一個數據包時;
(3)以上兩者都具備。
2.5 發射功率表
CC2500的功率表是用來在每次發送時設置發送功率的,其中最多可以存放8字節的功率值,默認情況下,每次在發送時,從最低位功率值開始讀取,每次讀取一個字節。當讀取到最后一個字節的時候,自動回到第一個字節。如果有需要,可編程設置不從第一個字節開始讀取,以實現發射功率可調。
3 跟蹤算法
3.1 定位算法
所謂的跟蹤軌跡其實就是若干次定位結果按時間順序的集合。所以如何定位非常重要。目前常用的定位技術如基于準確測距的定位方法、質心算法等在空曠的環境中能夠比較準確地完成定位,但在建筑物內部則相對效果較差。試驗表明基于上述方法進行定位軌跡將是跳躍的,而非連續的。在建筑物內進行定位,有一個好處就是身處其中的待定位目標在活動空間上有一定約束,比如人在走廊中行走時,只能向前或者向后,左右兩邊都是墻壁,無法行走,這樣實際上他的軌跡是遵循一定規律的。所以可以綜合樓宇內部的位置信息進行定位。
考慮以上應用要求和環境,我們借鑒了文獻中的RADAR系統,采用基于RSSI技術的室內定位系統,但在測試方法上進行了改進,不利用基站定位,而是采用信標定位。
在系統中存在兩種節點:一種是位置完全已知的信標節點;一種是位置待測的目標節點。經測試,我們本次基于CC2500硬件的節點在樓宇中的極限傳輸距離在60 m左右(PCB板射頻部分走線影響最大傳輸距離),所以為準確起見,使用信標之間的間隔在20 m,在兩個位置中間有墻壁或障礙物時,則一定要放置兩個信標,不遵守上述規律。當然,信標數量越多,定位相對就更加準確。目標節點周期性地發出信號,信標接收到目標節點的信號后得到信號強度值RSSI,根據強度值推算目標節點的位置,然后把定位信息發往基站,完成定位工作。
樓宇內定位算法通常有基于信號傳輸的經驗模型和基于信號傳播的理論模型兩種。后一種的準確性受建筑物材料的影響較大,最后還要進行大量的試驗修正,所以我們采用信號傳播的經驗模型。首先放置好信標。并給定其坐標。設兩個信標之間的距離的一半為D(m),如果兩個信標之間有障礙物,則將信標到障礙物之間的距離定義為D。利用目標節點在距離D內移動,得到各點位置的RSSI,建立各個點上的位置和信號強度關系的離散數據表(x,y,RSSI)。同時要注意保證目標節點在每一點的時候都會有信標節點進行定位。可見系統的定位精度:
其中(x1,y1,RSSI1),(x2,y2,RSSI2)為離散數據表中兩個相鄰數據。
定位時,信標查表進行定位,當目標節點信號小于表中最小的門限RSSI時,直接舍棄,會有其他信標對其定位。
3.2 分簇路由算法
信標在得到目標節點的位置之后,需要將位置信息發往基站,由基站進入監控軟件系統。在樓宇中信標的數量非常多,如果不選擇一種良好的路由算法,那么很容易造成信息的丟失和誤碼率升高。我們采用分簇路由算法,這種拓撲有利于分布式算法的應用,適合大規模網絡,簇頭節點擔負數據融合的任務,可使整個網絡的數據傳輸量大大減輕,在使用電池供電的場合,其還可以顯著延長整個網絡的生存周期。
所有信標結點都固定劃分成若干個簇,每一個簇選擇一個簇頭節點,在選擇簇頭節點的時候,要注意選擇處于偏僻位置的信標節點,這種信標定位的工作相對較少,不容易在定位和傳輸中產生沖突。分簇主要以地理位置為準,每個簇的節點數不需要相同,這樣有利于避免數據發往基站時產生沖突。簇頭節點負責為簇內的所有信標節點分配時槽,每個信標節點在自己規定的時間發送定位信息給簇頭節點。簇頭節點接到所有簇內節點的信息后進行綜合,總結成一幀數據發送給基站。在這幀中,所有信標的定位時間差被忽略,當作是同一個時間的定位信息。
如采用2s定位一次,有一個包含5個節點的簇,簇頭節點為每個節點分配的時槽可以為300 ms。以250 kb/s為傳輸速率的CC2500在這個時槽內完全可以完成定位和數據傳輸工作。這樣可以留給簇頭節點約800 ms的時間進行數據融合和數據傳輸。信標節點數據融合的過程見圖1。
數據上傳到基站后,基站通過網口上傳到電腦的監控軟件。監控軟件采用圖形化方式將節點的位置示意出來,如圖2所示。
4 結 語
試驗表明CC2500在系統中能夠很好地完成定位工作,但這種定位方式比較簡單,不夠精確,其準確程度主要依賴于系統組成之前的RSSI數據表準確程度,由于整個測量過程帶有相當大的隨機性和主觀因素,所以通常不能達到理想的程度。如何降低這種主觀因素以及如何減少前期工作量,還需要進一步的探索。
責任編輯:gt
-
芯片
+關注
關注
454文章
50430瀏覽量
421896 -
mcu
+關注
關注
146文章
17002瀏覽量
350332 -
射頻
+關注
關注
104文章
5551瀏覽量
167557
發布評論請先 登錄
相關推薦
評論