本發(fā)明涉及無線傳感器網絡室內定位技術,特別涉及基于等邊三角形模型的RSSI加權測距方法。
背景技術:
無線傳感器網絡(Wireless Sensor Network,簡稱WSN)是一種集成了包括傳感器技術、微機電系統(tǒng)技術、無線通信技術以及分布式信息處理技術的新型網絡技術。它是由傳感器節(jié)點之間的協(xié)作,對節(jié)點部署區(qū)域內的環(huán)境或者對象進行實時感知、數據采集和以及數據分析處理等操作,并將處理過后的信息以無線電的形式發(fā)送,以自組多跳的網絡方式傳送到對此感興趣的網絡終端用戶。WSN具有多種無可比擬的優(yōu)點:可靠性高、靈活性強、有自組織能力、能夠隨機分布、不需要有線網絡的支持。無線傳感器網絡具有種類繁多的無線傳感器,它們可以為我們探測到我們周邊環(huán)境中多種多樣有趣的現(xiàn)象,例如電磁、溫度、濕度、噪聲、光強度、壓力、土壤成分、移動物體的大小、速度和方向等,而基于MEMS的微傳感技術以及無線聯(lián)網技術更為無線傳感器網絡賦予了更加廣泛的應用前景和更為強大的生命力,這些潛在的應用領域可以歸納為:軍事、航空、反恐、防爆、救災、環(huán)境、醫(yī)療、保健、家居、工業(yè)、商業(yè)等領域。可以說,它正逐漸成為我們生活中不可分割的一部分。
室內定位可以說是無線傳感器網絡的又一重要的應用領域。隨著智能手機的普及和移動互聯(lián)網的發(fā)展,地圖類與導航類的應用軟件正在進入一個新的時代——室內定位導航時代。近些年來,包括一些科技巨頭,如谷歌、微軟、蘋果、博通等,以及一些世界知名的大學,如耶魯大學、哈佛大學等,它們都在研究室內定位技術??梢赃@么講,室內定位技術的商業(yè)化必然會帶來一波新的創(chuàng)新高潮,各種基于此技術的應用將出現(xiàn)在我們的面前,其影響和規(guī)模絕不會亞于GPS。
WSN與我們周圍的環(huán)境息息相關。WSN由監(jiān)測區(qū)域內許多傳感器節(jié)點組成,感知到的信息需要與傳感器節(jié)點的位置信息結合起來才能為觀察者提供更加準確的數據信息。另外,WSN的跟蹤算法、地理路由協(xié)議等都需要節(jié)點的位置信息。沒有傳感器節(jié)點的位置信息,感知數據不會準確。所以,如果要使節(jié)點能夠正常的工作和測量數據,就不能缺失其位置信息。每一個節(jié)點需要知道其鄰居節(jié)點的身份和位置以支持數據處理和協(xié)同工作。根據節(jié)點位置是否確定,傳感器節(jié)點可大致分為信標節(jié)點(或錨節(jié)點)和未知節(jié)點兩種。當錨節(jié)點的位置信息確定時,未知節(jié)點就可以通過錨節(jié)點按照某種定位算法的計算得出其位置信息。
盡管基于RSSI的測距算法與基于到達時間(ToA)的測距技術、基于到達時間差(TDoA)的測距技術相比有著明顯的優(yōu)點,但這種算法也有缺點。在實際應用中,大多數室內定位都在封閉或者半封閉的空間里,反射、多徑、室內墻壁和障礙物阻擋等多種環(huán)境因素的干擾影響下,RSSI值會出現(xiàn)很大的不穩(wěn)定,而這些RSSI值的偏差會對未知節(jié)點的定位計算帶來很大的影響。長期以來,這都是基于RSSI定位精度不高的主要原因,如何解決這一問題是提高基于RSSI室內定位的精度的關鍵。
技術實現(xiàn)要素:
為了克服現(xiàn)有技術的上述缺點與不足,本發(fā)明的目的在于提供一種基于等邊三角形模型的RSSI加權測距方法,減少確定因素所造成的不確定誤差,提高了定位精度。
本發(fā)明的目的通過以下技術方案實現(xiàn):
基于等邊三角形模型的RSSI加權測距方法,包括以下步驟:
(1)初始化錨節(jié)點的網絡模型;所述錨節(jié)點的部署采用等邊三角形模型;
(2)未知節(jié)點周期性發(fā)送自身信息;
(3)各錨節(jié)點在收到信息后,記錄同一個未知節(jié)點的RSSI測量值,并將記錄到對應的RSSI數組Xn中;
(4)重復步驟(3)多次;
(5)對任一個錨節(jié)點對應的RSSI數組Xn,進行以下操作:對RSSI數組Xn中的RSSI測量值采用高斯分布函數進行篩選,將高斯分布函數值大于設定臨界點的RSSI測量值存放到數組Xsum中;
對數組Xsum中的RSSI測量值進行加權平均,得出的RSSI優(yōu)化值為:
其中,n為數組Xsum中的RSSI測量值的個數;
Xsum(i)為數組Xsum中的第i個RSSI測量值,1≤i≤n;
f(Xsum(i))為Xsum(i)的值在數組Xsum中的出現(xiàn)概率;
(6)各錨節(jié)點將步驟(5)中得到的RSSI優(yōu)化值傳給基站,由基站根據RSSI優(yōu)化值計算得到未知節(jié)點的坐標。
步驟(1)所述等邊三角形模型為修正的等邊三角形模型,具體為:
在網絡模型中缺少錨節(jié)點的邊緣區(qū)域中,在錨節(jié)點相距最長的邊的中點部署一個邊緣修正錨節(jié)點;所述邊緣修正錨節(jié)點的發(fā)射功率低于其他錨節(jié)點。
所述邊緣修正錨節(jié)點的發(fā)射功率為其他錨節(jié)點的75%。
步驟(5)所述臨界點為0.6。
步驟(6)所述由基站根據RSSI優(yōu)化值計算得到未知節(jié)點的坐標,具體為:由基站根據RSSI優(yōu)化值,采用三邊質心定位的方法計算得到未知節(jié)點的坐標。
采用三邊質心定位的方法計算得到未知節(jié)點的坐標,具體為:
采用冒泡法將各錨節(jié)點的RSSI優(yōu)化值進行排序,取最大的三個RSSI優(yōu)化值,獲取三個RSSI優(yōu)化值對應的錨節(jié)點的坐標A(x1,y1),B(x2,y2),C(x3,y3),計算未知節(jié)點到三個錨節(jié)點的距離dA、dB、dC,,以A、B、C為圓心、dA、dB、dC為半徑作圓,求出這3個圓的交點;若交于一點則該點就是未知節(jié)點的坐標;若解得3個圓的交點不重合,那么以這3個交點作出一個三角形,計算它的質心坐標,質心坐標即為未知節(jié)點坐標。
與現(xiàn)有技術相比,本發(fā)明具有以下優(yōu)點和有益效果:
(1)現(xiàn)有技術中,當未知節(jié)點靠近三角形區(qū)域的某條邊界線上時,除了邊界線上的兩錨節(jié)點外,還出現(xiàn)了有兩個影響相近的錨節(jié)點對該定位節(jié)點起作用,從而可能使定位結果不斷變化。本發(fā)明根據高斯分布提出賦予各個RSSI權重并進行均值計算的RSSI加權均值算法,很好地解決了該問題。減少了由于墻壁、各種固定或移動的障礙物(如人)、多徑、繞射等不確定因素所造成的不確定誤差。
(2)本發(fā)明結合高斯分布分析RSSI分布模型,得出合適的RSSI值穩(wěn)定有效區(qū)域,可以有效篩選RSSI大概率結果,減小RSSI隨機誤差。
(3)本發(fā)明優(yōu)先使用RSSI值最大的節(jié)點作為定位節(jié)點,并通過三邊質心定位算法的定位方案,求出未知節(jié)點的坐標,本發(fā)明的方法優(yōu)化計算量與定位精度,減少定位時間,在一定程度上降低網絡能耗,延長了網絡生命周期。
(4)現(xiàn)有技術中,當未知節(jié)點位于邊緣區(qū)域時,節(jié)點將缺少一個必要的錨節(jié)點用于定位,本發(fā)明提出錨節(jié)點的修正等邊三角形布置模型解決了該問題。本發(fā)明在邊緣區(qū)域添加一個必要的錨節(jié)點用于定位減少多個定位節(jié)點的干擾,提高了定位精度。
附圖說明
圖1為本發(fā)明的實施例的基于等邊三角形模型的RSSI加權測距方法的流程圖。
圖2為本發(fā)明的實施例的修正的等邊三角形模型示意圖。
圖3為本發(fā)明的實施例的修正等邊三角形模型定位結果。
圖4為傳統(tǒng)正方形模型定位結果。
圖5為修正等邊三角形模型和傳統(tǒng)正方形模型定位誤差比較。
圖6為采取傳統(tǒng)均值算法定位結果。
圖7為采取傳統(tǒng)均值算法定位結果。
圖8為傳統(tǒng)均值算法和傳統(tǒng)均值算法的誤差比較。
具體實施方式
下面結合實施例,對本發(fā)明作進一步地詳細說明,但本發(fā)明的實施方式不限于此。
實施例
如圖1所示,本實施例的基于等邊三角形模型的RSSI加權測距方法,包括以下步驟:
(1)初始化錨節(jié)點的網絡模型;所述錨節(jié)點的部署采用等邊三角形模型;
等邊三角形模型為修正的等邊三角形模型,如圖2所示:在網絡模型中缺少錨節(jié)點的邊緣區(qū)域中(如△ABC),在錨節(jié)點相距最長的邊的中點部署一個邊緣修正錨節(jié)點(如AC中點D);所述邊緣修正錨節(jié)點的發(fā)射功率為其他錨節(jié)點的75%。
(2)未知節(jié)點周期性發(fā)送自身信息;
(3)各錨節(jié)點在收到信息后,記錄同一個未知節(jié)點的RSSI測量值,并將記錄到對應的RSSI數組Xn中;
(4)重復步驟(3)20次;
(5)對任一個錨節(jié)點對應的RSSI數組Xn,進行以下操作:對RSSI數組Xn中的RSSI測量值采用高斯分布函數進行篩選,將高斯分布函數值大于設定臨界點的RSSI測量值存放到數組Xsum中;
高斯分布:正態(tài)分布(Normal distribution)是一種概率分布,表達式為
正態(tài)分布是具有兩個參數μ和σ2的連續(xù)型隨機變量的分布,第一參數μ是遵從正態(tài)分布的隨機變量的均值,第二個參數σ2是此隨機變量的方差,所以正態(tài)分布記作N(μ,σ2)。遵從正態(tài)分布的隨機變量的概率規(guī)律為取μ鄰近的值的概率大,而取離μ越遠的值的概率越?。沪以叫?,分布越集中在μ附近,σ越大,分布越分散。
利用高斯分布處理數據的原則是:一個錨節(jié)點在同一位置可能接收到同一個未知節(jié)點發(fā)射的n個RSSI,其中必然存在著很多小概率事件。通過高斯模型選取高概率發(fā)生區(qū)域內的RSSI值,然后再取其幾何均值,這種做法減少了一些小概率、大干擾事件對整體測量的影響,增強了定位信息的準確性。
本實施例中的選擇0.68為臨界點,即當高斯分布函數值大于0.68時認為對應的RSSI值為高概率發(fā)生值;小于或等于0.68對應的RSSI值認為是小概率隨機事件。通過高斯模型選取高概率發(fā)生區(qū)域內的RSSI值,然后再取其幾何均值,這種做法減少了一些小概率、大干擾事件對整體測量的影響,增強了定位信息的準確性。
對數組Xsum中的RSSI測量值進行加權平均,得出的RSSI優(yōu)化值為:
其中,n為數組Xsum中的RSSI測量值的個數;
Xsum(i)為數組Xsum中的第i個RSSI測量值,1≤i≤n;
f(Xsum(i))為Xsum(i)的值在數組Xsum中的出現(xiàn)概率;
(6)各錨節(jié)點將步驟(5)中得到的RSSI優(yōu)化值傳給基站,由基站根據RSSI優(yōu)化值,計算得到未知節(jié)點的坐標:
采用冒泡法將各錨節(jié)點的RSSI優(yōu)化值進行排序,取最大的三個RSSI優(yōu)化值,獲取三個RSSI優(yōu)化值對應的錨節(jié)點的坐標A(x1,y1),B(x2,y2),C(x3,y3),計算未知節(jié)點到三個錨節(jié)點的距離dA、dB、dC,,以A、B、C為圓心、dA、dB、dC為半徑作圓,求出這3個圓的交點;若交于一點則該點就是未知節(jié)點的坐標;若解得3個圓的交點不重合,那么以這3個交點作出一個三角形,計算它的質心坐標,質心坐標即為未知節(jié)點坐標。若求出的未知節(jié)點坐標存在有虛數的情況,那么就對其采取求實部的步驟,得出的結果就是未知節(jié)點的坐標;
對本實施例的基于等邊三角形模型的RSSI加權測距方法進行仿真分析,結果如下:
(1)參數初始化
表1 實驗前的參數初始化
(2)傳統(tǒng)正方形模型、修正等邊三角形模型對比
在傳統(tǒng)正方形部署方案中,正方形以邊長為4m部署錨節(jié)點,在三角形修正部署方案中,三角形邊長為4m部署節(jié)點,則兩個方案中均采用8*8平面作為仿真平面。錨節(jié)點布置坐標如下:
表2 仿真?zhèn)鹘y(tǒng)正方形模型、修正等邊三角形模型中錨節(jié)點坐標
置錨節(jié)點完畢后,將對本文提出的修正等邊三角形模型與傳統(tǒng)的正方形模型進行比較,測試點為20個,仿真結果如圖3~4所示。由圖可以看到,盡管排除了有小概率、大誤差的事件,使用傳統(tǒng)的正方形模型定位的定位結果依然能夠出現(xiàn)較大誤差的情況,原因是有多個對影響相似的錨節(jié)點對定位結果產生影響,造成較大的誤差;相比之下,本文使用的等邊三角形模型則通過減少影響相似的錨節(jié)點的數目的部署,從而改善此方面的誤差情況,達到較好的定位效果。
根據仿真的結果分析計算,得到兩種算法的定位誤差得到如圖5所示??梢钥吹剑疚氖褂玫男拚切文P团c傳統(tǒng)正方形模型相比,穩(wěn)定性更好,減少了多個錨節(jié)點對定位結果的影響,這樣就可以保證定位過程中定位結果不會發(fā)生較大的偏差,從而能夠提高定位的精準度。初此之外,使用修正三角形模型的定位結果使平均定位誤差得到了減小,精度有所提高。
(3)傳統(tǒng)均值算法與加強均值算法對比
本次仿真使用8*7的平面,均使用修正等邊三角形模型布置錨節(jié)點,三角形邊長為4m,總共需要10個錨節(jié)點。錨節(jié)點布置坐標如下:
表3 仿真?zhèn)鹘y(tǒng)均值算法與加強均值算法對比的錨節(jié)點布置坐標
布置錨節(jié)點完畢后,將對本文提出的加權均值算法與傳統(tǒng)的均值算法進行比較,測試點為20個,仿真結果如圖6~7所示。由圖可以看出,本文采取的加權均值算法比傳統(tǒng)的均值算法具有更好的精度。此外,在計算量上,加權均值算法比傳統(tǒng)的均值算法在相同精度的條件下,需要采集的RSSI值次數更少,有利于縮短定位時間,降低能耗。
通過測試數據我們也可以觀察兩種算法的定位性能比較。20次的定位效果如表4,分別為傳統(tǒng)均值算法定位結果和加權平均算法定位結果。
表4 仿真兩種定位算法定位結果(單位m)
觀察上表可以發(fā)現(xiàn),傳統(tǒng)均值算法的定位結果與真實坐標的誤差較為明顯,說明該算法容易受到隨機發(fā)生的小概率事件的影響,而加權均值算法在這方面則做得比較好,雖然其仍然存在有一定的誤差,但是從結果可以看出,該算法減少了小概率隨機事件的出現(xiàn)的概率,同時對位置變化的反應也比傳統(tǒng)均值算法要敏感。根據上表的結果計算得出兩種算法的定位誤差如圖8。由圖可以看出,采用本文提出的加權均值定位算法相對于傳統(tǒng)均值算法,平均定位誤差得到了減小,精度有所提高。經過多次試驗證明,在間隔4m左右的錨節(jié)點部署下,該定位算法可以使節(jié)點定位的誤差大都維持在0.1到0.2m附近,有的甚至少于0.lm。同時由上圖還可以看出,加權均值算法定位誤差相比傳統(tǒng)均值算法較為穩(wěn)定,這樣就可以保證定位過程中定位結果不會發(fā)生較大的偏差,從而能夠提高定位的精準度。
上述實施例為本發(fā)明較佳的實施方式,但本發(fā)明的實施方式并不受所述實施例的限制,其他的任何未背離本發(fā)明的精神實質與原理下所作的改變、修飾、替代、組合、簡化,均應為等效的置換方式,都包含在本發(fā)明的保護范圍之內。