專利名稱:一種基于非測距的網(wǎng)絡(luò)錨節(jié)點(diǎn)篩選裝置及其方法
技術(shù)領(lǐng)域:
本發(fā)明屬于無線傳感器網(wǎng)絡(luò)非測距定位技術(shù)領(lǐng)域,具體涉及一種基于非測距的網(wǎng)絡(luò)錨節(jié)點(diǎn)篩選裝置及其方法。
背景技術(shù):
無線傳感器網(wǎng)絡(luò)(WSN, Wireless Sensor Networks)是由分布在監(jiān)控區(qū)域內(nèi)的低功耗、小型的傳感器節(jié)點(diǎn)組成的自組織網(wǎng)絡(luò)。由于其低功耗、低價(jià)格、容錯(cuò)性能強(qiáng)等優(yōu)點(diǎn),無線傳感網(wǎng)一直是無線通信領(lǐng)域研究的熱點(diǎn)之一,并應(yīng)用于環(huán)境監(jiān)測、災(zāi)難現(xiàn)場、軍事戰(zhàn)場以及生物多樣性研究等領(lǐng)域。節(jié)點(diǎn)的位置信息在WSN中有非常重要的作用,因此改善定位精度對提高網(wǎng)絡(luò)的有效性和實(shí)用性具有重要意義。定位算法種類繁多,依據(jù)定位過程中是否需要節(jié)點(diǎn)之間的距離或角度信息,可以 將其分為測距算法和非測距算法兩類。對測距算法來說,一般需要知道節(jié)點(diǎn)與其鄰居節(jié)點(diǎn)的測量距離或角度,據(jù)此求出未知節(jié)點(diǎn)的位置。測距算法包括基于到達(dá)時(shí)間(TOA,Time ofArrival)、到達(dá)時(shí)間差(TDOA, Time Difference of Arrival)、到達(dá)角度(A0A, Angle ofArrival)和接收信號強(qiáng)度指不(RSSI,Received Signal Strength Indicator)的算法。非測距算法無需了解距離或者角度信息,只需了解整個(gè)網(wǎng)絡(luò)的連通特性信息,因此在WSN領(lǐng)域得到了很大的關(guān)注。經(jīng)典的非測距算法有APIT (Approximate Point-In Triangulationtest)、DV_Hop (Distance Vector-Hop) >MDS (Multi-dimensional Scaling)和 Centroid等。
發(fā)明內(nèi)容
發(fā)明目的針對非測距算法定位精度較差的問題,本發(fā)明提出一種基于非測距的網(wǎng)絡(luò)錨節(jié)點(diǎn)篩選裝置及其方法,該裝置及其方法不僅能提高定位精度,而且隨著網(wǎng)絡(luò)不均勻度的增大,定位提高效果越明顯。技術(shù)方案為實(shí)現(xiàn)上述目的,本發(fā)明的一種基于非測距的網(wǎng)絡(luò)錨節(jié)點(diǎn)篩選裝置,包括隨機(jī)分布的普通節(jié)點(diǎn),普通節(jié)點(diǎn)包括錨節(jié)點(diǎn)和未知節(jié)點(diǎn),所述錨節(jié)點(diǎn)和未知節(jié)點(diǎn)均包括嵌入式節(jié)點(diǎn)模塊和為嵌入式節(jié)點(diǎn)模塊提供驅(qū)動(dòng)力的電源,所述嵌入式節(jié)點(diǎn)模塊包括編程芯片、Flash存儲芯片、通信芯片及天線,所述編程芯片對網(wǎng)絡(luò)中傳入的各個(gè)錨節(jié)點(diǎn)到該節(jié)點(diǎn)的跳數(shù)以及位置數(shù)據(jù)進(jìn)行分析、篩選和計(jì)算,并通過命令控制通信芯片廣播各個(gè)錨節(jié)點(diǎn)到該節(jié)點(diǎn)的跳數(shù)以及位置數(shù)據(jù);所述通信芯片及天線在編程芯片的控制下,對無線傳輸?shù)奶鴶?shù)和位置數(shù)據(jù)接收和發(fā)送,并可以控制傳輸有效距離;所述Flash存儲芯片保存網(wǎng)絡(luò)中所有的錨節(jié)點(diǎn)的位置和跳數(shù)信息;所述錨節(jié)點(diǎn)內(nèi)還配備有GPS模塊,GPS模塊對錨節(jié)點(diǎn)進(jìn)行定位,精確獲得錨節(jié)點(diǎn)位置信息,位置信息將存儲在錨節(jié)點(diǎn)的Flash存儲芯片內(nèi),并在泛紅廣播的時(shí)候進(jìn)行向外傳輸;通信節(jié)點(diǎn)用來在未知節(jié)點(diǎn)未知計(jì)算完畢之后,將網(wǎng)絡(luò)的所有節(jié)點(diǎn)坐標(biāo)發(fā)送到計(jì)算機(jī)終端,通信節(jié)點(diǎn)由傳輸距離較遠(yuǎn)、功率較大的無線通信模塊構(gòu)成。本發(fā)明的基于非測距的網(wǎng)絡(luò)錨節(jié)點(diǎn)篩選裝置包括基于MSP430編程芯片、NRF2401通信芯片和GPS的錨節(jié)點(diǎn)模塊(未知節(jié)點(diǎn)沒有GPS),并根據(jù)終端數(shù)據(jù)庫的信息將這些節(jié)點(diǎn)分布在區(qū)域內(nèi);定位過程中,利用AFDV-Hop篩選算法首先根據(jù)未知節(jié)點(diǎn)保存的信息擬合出正態(tài)分布曲線,再通過合格錨節(jié)點(diǎn)計(jì)算出未知節(jié)點(diǎn)坐標(biāo),并將該估算坐標(biāo)保存在節(jié)點(diǎn)內(nèi);在計(jì)算機(jī)評價(jià)端,利用軟件得到通信節(jié)點(diǎn)傳輸過來的所有節(jié)點(diǎn)的估算坐標(biāo),并對算法的效果進(jìn)行評估。具體如下(一)定位現(xiàn)場的節(jié)點(diǎn)模塊a.編程控制芯片部分。該模塊包括MSP430編程芯片、Flash存儲芯片及其外圍電路。通過MSP430芯片可對接收的數(shù)據(jù)進(jìn)行分析并決定拋棄還是轉(zhuǎn)發(fā),可以對最終參與計(jì)算的錨節(jié)點(diǎn)做最小二乘運(yùn)算。Flash存儲芯片保存了網(wǎng)絡(luò)中所有的錨節(jié)點(diǎn)的位置和跳數(shù)信息。外圍電路有去耦、保護(hù)等功能。b.無線通信部分。該部分包括NRF2401芯片和天線。通過向NRF2401寫入控制命令,可以實(shí)現(xiàn)模塊對無線數(shù)據(jù)接收和發(fā)送,并可以控制傳輸有效距離。 C.供電模塊。電源負(fù)責(zé)為設(shè)備提供各種需要的電能,通常為PDA或者手機(jī)采用的鋰電池。d.調(diào)試模塊。當(dāng)終端需要檢測或者修理時(shí),可利用該模塊進(jìn)行檢測。(二)一種基于上述的裝置的錨節(jié)點(diǎn)篩選方法,包括以下步驟步驟1,根據(jù)未知節(jié)點(diǎn)接收到的所有錨節(jié)點(diǎn)到它的跳數(shù)和位置信息擬合出平均跳距分布函數(shù)曲線,再篩選出合格錨節(jié)點(diǎn),據(jù)此得出未知節(jié)點(diǎn)坐標(biāo),定義該方法為AFDV-Hop算法,具體步驟如下I)在區(qū)域內(nèi)隨機(jī)散布n個(gè)未知節(jié)點(diǎn)和m個(gè)錨節(jié)點(diǎn),其中,20彡m彡50,50 ^ 100,各未知節(jié)點(diǎn)和錨節(jié)點(diǎn)的嵌入式節(jié)點(diǎn)模塊的傳輸功率相同;2 )錨節(jié)點(diǎn)以控制泛洪方式在網(wǎng)絡(luò)中廣播信息,信息內(nèi)容包括錨節(jié)點(diǎn)標(biāo)識、坐標(biāo)初始值為0的跳數(shù)。鄰居節(jié)點(diǎn)接收到信息之后,將跳數(shù)加1,再進(jìn)行廣播。泛洪過程中,普通節(jié)點(diǎn)可能會(huì)接收到來自同一個(gè)錨節(jié)點(diǎn)的不同的跳數(shù)信息,此時(shí)選取跳數(shù)最少的信息。在泛洪結(jié)束之后,普通節(jié)點(diǎn)都保存了所有錨節(jié)點(diǎn)的坐標(biāo)及其到它們的最少跳數(shù)。3)將未知節(jié)點(diǎn)u的坐標(biāo)暫時(shí)定義為它的鄰居錨節(jié)點(diǎn)的質(zhì)心(xu。,yu。),注意,這個(gè)(xuc, yu。)并不是未知節(jié)點(diǎn)u的估算坐標(biāo),只是為了篩選合格的錨節(jié)點(diǎn)使用??梢赃@么做的理由是該質(zhì)心(xu。,yu。)和未知節(jié)點(diǎn)的實(shí)際位置(xu,yu)到某個(gè)特定錨節(jié)點(diǎn)的路徑基本是相同的。根據(jù)下面公式,計(jì)算出所有錨節(jié)點(diǎn)i和未知節(jié)點(diǎn)u的估算平均跳距。ADPH- = h - xK)2 +(.V... .',Z
MHopni式中,Hopiu表示錨節(jié)點(diǎn)i到未知節(jié)點(diǎn)u的跳數(shù)。4)在網(wǎng)絡(luò)中,觀察ADPHiu的分布情況。計(jì)算ADPHiu的概率分布函數(shù)如下
P(AJ)PHn,) = R Ml1 砘ADrU_Nnm[AI)PH., = k]
it =O式中,R表示普通節(jié)點(diǎn)的有效傳輸距離,k的取值范圍是(0,R),Num[ADPHiu=k]表示平均跳距為k的個(gè)數(shù),整個(gè)分母表示所有跳距的總數(shù),分子Num[ADPHiu]表示平均跳距為ADPHiu的個(gè)數(shù),P (ADPHiu)表示各個(gè)跳距的概率分布函數(shù)。根據(jù)上式可得所有錨節(jié)點(diǎn)和未知節(jié)點(diǎn)u的平均跳距的概率分布函數(shù)。根據(jù)該分布函數(shù)圖對參與計(jì)算的錨節(jié)點(diǎn)進(jìn)行篩選,該分布函數(shù)呈正態(tài)分布
權(quán)利要求
1.一種基于非測距的網(wǎng)絡(luò)錨節(jié)點(diǎn)篩選裝置,其特征在于包括隨機(jī)分布的普通節(jié)點(diǎn),普通節(jié)點(diǎn)包括錨節(jié)點(diǎn)和未知節(jié)點(diǎn),所述錨節(jié)點(diǎn)和未知節(jié)點(diǎn)均包括嵌入式節(jié)點(diǎn)模塊和為嵌入式節(jié)點(diǎn)模塊提供驅(qū)動(dòng)力的電源,所述嵌入式節(jié)點(diǎn)模塊包括編程芯片、Flash存儲芯片、通信芯片及天線,所述編程芯片對網(wǎng)絡(luò)中傳入的各個(gè)錨節(jié)點(diǎn)到該節(jié)點(diǎn)的跳數(shù)以及位置數(shù)據(jù)進(jìn)行分析、篩選和計(jì)算,并通過命令控制通信芯片廣播各個(gè)錨節(jié)點(diǎn)到該節(jié)點(diǎn)的跳數(shù)以及位置數(shù)據(jù);所述通信芯片及天線在編程芯片的控制下,對無線傳輸?shù)奶鴶?shù)和位置數(shù)據(jù)接收和發(fā)送,并可以控制傳輸有效距離;所述Flash存儲芯片保存網(wǎng)絡(luò)中所有的錨節(jié)點(diǎn)的位置和跳數(shù)信息;所述錨節(jié)點(diǎn)內(nèi)還配備有GPS模塊,GPS模塊對錨節(jié)點(diǎn)進(jìn)行定位,精確獲得錨節(jié)點(diǎn)位置信息,位置信息將存儲在錨節(jié)點(diǎn)的Flash存儲芯片內(nèi),并在泛紅廣播的時(shí)候進(jìn)行向外傳輸;通信節(jié)點(diǎn)用來在未知節(jié)點(diǎn)未知計(jì)算完畢之后,將網(wǎng)絡(luò)的所有節(jié)點(diǎn)坐標(biāo)發(fā)送到計(jì)算機(jī)終端,通信節(jié)點(diǎn)由無線通信模塊構(gòu)成。
2.根據(jù)權(quán)利要求I所述的基于非測距的網(wǎng)絡(luò)錨節(jié)點(diǎn)篩選裝置,其特征在于所述編程芯片為MSP430編程芯片,所述通信芯片為NRF2401通信芯片;所述電源為鋰電池。
3.一種基于權(quán)利要求I或2所述的裝置的錨節(jié)點(diǎn)篩選方法,其特征在于包括以下步驟 步驟1,根據(jù)未知節(jié)點(diǎn)接收到的所有錨節(jié)點(diǎn)到它的跳數(shù)和位置信息擬合出平均跳距分布函數(shù)曲線,再篩選出合格錨節(jié)點(diǎn),據(jù)此得出未知節(jié)點(diǎn)坐標(biāo),定義該方法為AFDV-Hop算法,具體步驟如下 I)在區(qū)域內(nèi)隨機(jī)散布n個(gè)未知節(jié)點(diǎn)和m個(gè)錨節(jié)點(diǎn),其中,20彡50,50彡n彡100,各未知節(jié)點(diǎn)和錨節(jié)點(diǎn)的嵌入式節(jié)點(diǎn)模塊的傳輸功率相同; 2)錨節(jié)點(diǎn)以控制泛洪方式在網(wǎng)絡(luò)中廣播信息,信息內(nèi)容包括錨節(jié)點(diǎn)標(biāo)識、坐標(biāo)以及初始值為0的跳數(shù),在泛洪結(jié)束之后,普通節(jié)點(diǎn)保存了所有錨節(jié)點(diǎn)的坐標(biāo)及每個(gè)錨節(jié)點(diǎn)到該普通節(jié)點(diǎn)的最少跳數(shù); 3)將未知節(jié)點(diǎn)u的坐標(biāo)暫時(shí)定義為它的鄰居錨節(jié)點(diǎn)的質(zhì)心(xu。,yu。),根據(jù)下面公式,計(jì)算出所有錨節(jié)點(diǎn)i和未知節(jié)點(diǎn)u的估算平均跳距 ADPM1,. =‘ )2+U-rJ2 Hopi:, 式中,Hopiu表示錨節(jié)點(diǎn)i到未知節(jié)點(diǎn)u的跳數(shù); 4)在網(wǎng)絡(luò)中,觀察ADPHiu的分布情況,計(jì)算ADPHiu的概率,計(jì)算函數(shù)如下 P(Al)PHiii) = K N酬[AIWHJ_ VNwn\ADPH. = k]允=0 式中,R表示普通節(jié)點(diǎn)的有效傳輸距離,k的取值范圍是(0,R),Num[ADPHiu=k] 表示平均跳距為k的個(gè)數(shù),整個(gè)分母表示所有跳距的總數(shù),分子Num[ADPHiu] 表示平均跳距為ADPHiu的個(gè)數(shù),P (ADPHiu)表示各個(gè)跳距的概率分布函數(shù); 根據(jù)上式可得所有錨節(jié)點(diǎn)和未知節(jié)點(diǎn)u的平均跳距的概率分布函數(shù),根據(jù)該概率分布函數(shù)圖對參與計(jì)算的錨節(jié)點(diǎn)進(jìn)行篩選,該分布函數(shù)呈正態(tài)分布,(ADPHln-fi)2 P(AJ)JiH,= V27I Cr其中0和U是根據(jù)擬合出正態(tài)分布曲線函數(shù)的常數(shù)值,ADPHiu取值是(O,R),根據(jù)正態(tài)分布函數(shù)的特征可知,P(ADPHiu)大部分有效數(shù)據(jù)都集中在(ADPHiu) G [ii - 0,ii + 0 ]區(qū)域內(nèi),因此在計(jì)算未知節(jié)點(diǎn)的位置時(shí)只需要平均跳距在+ o內(nèi)的錨節(jié)點(diǎn)即可;而在Ii-O li + O之外的數(shù)據(jù)會(huì)對定位計(jì)算造成較大誤差,尤其是在分布不均勻的網(wǎng)絡(luò)中; 5)對于合格錨節(jié)點(diǎn),利用下式可計(jì)算出錨節(jié)點(diǎn)到未知節(jié)點(diǎn)距離diu,diu = ADPHiuXHopiu 式中,Hopiu表示錨節(jié)點(diǎn)i到未知節(jié)點(diǎn)u的跳數(shù); 6)錨節(jié)點(diǎn)i到未知節(jié)點(diǎn)u的距離diu又可以寫成 (Xu-Xi)2+ (yu-Yi)2 = diu2, i=l, 2... N 再利用最小二乘法,對未知節(jié)點(diǎn)的坐標(biāo)進(jìn)行運(yùn)算X= X" =CAtAF1AtB y __ , 2 j 2 2, 2 2, 2 _ r X1-Xtl I di ~dN ~xi +xn ->'i +>v 式中 A = -2x X2—少2—凡;B= d22-^Z-X12+xN2-V22+yN2-, — x y -i — j,,」 L<-12 — dN2—^v-I2 +'- — Vv-I2 + ^ _ 步驟2,采用經(jīng)典的非測距算法計(jì)算出未知節(jié)點(diǎn)坐標(biāo); 步驟3,所有未知節(jié)點(diǎn)的坐標(biāo)經(jīng)過通信節(jié)點(diǎn)傳輸?shù)接?jì)算機(jī)終端,計(jì)算機(jī)對步驟I得出的未知節(jié)點(diǎn)坐標(biāo)與經(jīng)典的非測距算法得到的未知節(jié)點(diǎn)坐標(biāo)進(jìn)行量化比較 如果步驟I和步驟2兩種方法的定位結(jié)果相差較小,則傳感器網(wǎng)絡(luò)的節(jié)點(diǎn)分布均勻性比較好; 如果步驟I和步驟2兩種方法的定位結(jié)果相差較大,則傳感器網(wǎng)絡(luò)中的節(jié)點(diǎn)分布均勻性較差; 步驟4,根據(jù)步驟3中的比較結(jié)果調(diào)整步驟2中的篩選參數(shù),調(diào)整合格節(jié)點(diǎn)的篩選比例,即篩選有效錨節(jié)點(diǎn)區(qū)域?yàn)閥-o-A,u + 0 +A,其中A取值范圍為(-0. 5o,o ),初始時(shí)候A值為O ; 若均勻度較差,則減少參與計(jì)算的合格錨節(jié)點(diǎn)占總錨節(jié)點(diǎn)的比例,即減小△的取值,從而減少誤差; 若均勻度較好,則增大參與計(jì)算的合格錨節(jié)點(diǎn)占總節(jié)點(diǎn)比例,即增大△的取值,從而使計(jì)算樣本空間增大,減少誤差。
4.根據(jù)權(quán)利要求3所述的錨節(jié)點(diǎn)篩選方法,其特征在于所述步驟3中,計(jì)算機(jī)進(jìn)行量化比較的過程如下 (1)首先初始化一個(gè)整數(shù)N,表示對兩種方法結(jié)算誤差計(jì)算比較的次數(shù); (2)從計(jì)算機(jī)生成網(wǎng)絡(luò)節(jié)點(diǎn)分布不均勻度為n的節(jié)點(diǎn)坐標(biāo)組,并在網(wǎng)絡(luò)區(qū)域分布節(jié)占. (3)分別用步驟2中的經(jīng)典的非測距算法和步驟I中的AFDV-Hop算法計(jì)算出未知節(jié)點(diǎn)的坐標(biāo)El和E2,對El和E2的誤差進(jìn)行比較,并將比較結(jié)果存入數(shù)據(jù)庫; (4)將整數(shù)N減1,如果N不為O,則增大n的值,并重復(fù)步驟(2)和(3);如果N為O,轉(zhuǎn)到步驟(5); (5)根據(jù)不同的不均勻度n繪制出兩種算法誤差隨n的變化情況,得出結(jié)論。
全文摘要
本發(fā)明公開了一種基于非測距的網(wǎng)絡(luò)錨節(jié)點(diǎn)篩選定位裝置及其方法,利用未知節(jié)點(diǎn)內(nèi)部存儲的到錨節(jié)點(diǎn)的平均跳距分布函數(shù)信息,篩選合格錨節(jié)點(diǎn)進(jìn)行定位,并利用計(jì)算機(jī)終端對算法進(jìn)行評價(jià),屬于無線傳感器網(wǎng)絡(luò)領(lǐng)域。本發(fā)明主要包括對可通信節(jié)點(diǎn)模塊的硬件設(shè)計(jì);利用篩選算法選擇合格的錨節(jié)點(diǎn),再利用最小二乘原理,計(jì)算出未知節(jié)點(diǎn)的位置;在計(jì)算機(jī)終端搭建算法評價(jià)系統(tǒng),對本發(fā)明中的算法與其他非測距算法進(jìn)行量化比較,并能從比較結(jié)果對該網(wǎng)絡(luò)特性做出較準(zhǔn)確的判斷,依據(jù)網(wǎng)絡(luò)特性調(diào)整定位算法,從而實(shí)現(xiàn)系統(tǒng)性能的優(yōu)化。本發(fā)明的裝置和方法能提高未知節(jié)點(diǎn)的定位精度,且隨著網(wǎng)絡(luò)節(jié)點(diǎn)分布不均勻度的增大,改善效果越明顯。
文檔編號H04W84/18GK102752850SQ201210156608
公開日2012年10月24日 申請日期2012年5月18日 優(yōu)先權(quán)日2012年5月18日
發(fā)明者葉芝慧, 孫春杰 申請人:南京大學(xué)