WSN中錨節(jié)點(diǎn)部署方式對(duì)DV-Hop定位精度的研究
掃描二維碼
隨時(shí)隨地手機(jī)看文章
引 言
節(jié)點(diǎn) 位 置 的 信 息 是 無(wú) 線 傳 感 網(wǎng) 絡(luò)(Wireless Sensor Network,WSN)能夠?qū)崿F(xiàn)其應(yīng)用的關(guān)鍵,如何實(shí)現(xiàn)節(jié)點(diǎn)的準(zhǔn) 確定位一直是 WSN 應(yīng)用中被關(guān)注的問(wèn)題。WSN 中的節(jié)點(diǎn)主要 由錨節(jié)點(diǎn)和未知節(jié)點(diǎn)組成,其中錨節(jié)點(diǎn)指少量帶有 GPS 定位 裝置的節(jié)點(diǎn),能實(shí)現(xiàn)精確定位,但未知節(jié)點(diǎn)則需要通過(guò)錨節(jié)點(diǎn) 來(lái)進(jìn)行自身定位 [1,2]。由于錨節(jié)點(diǎn)需加裝 GPS 設(shè)備,能量消耗 高,因此無(wú)法廣泛使用。
目前 WSN 中的節(jié)點(diǎn)定位分為基于測(cè)距(Range-Based)和 無(wú)需測(cè)距(Range-Free)兩種算法 [3]?;跍y(cè)距的算法常用的 有 RSSI,TOA,TDOA,AOA[4],這種算法需要測(cè)算出相鄰 節(jié)點(diǎn)間的距離,再計(jì)算周圍未知節(jié)點(diǎn)的坐標(biāo),從而實(shí)現(xiàn)定位的 目的;無(wú)需測(cè)距的算法主要有 DV-Hop 算法 [5]、質(zhì)心算法 [6]、 APIT 算法 [7],采用這些算法不需要測(cè)出節(jié)點(diǎn)之間的實(shí)際距離, 而是通過(guò)估算來(lái)獲得未知節(jié)點(diǎn)的位置,但估算導(dǎo)致定位存在 偏差,需要進(jìn)一步求精后才能獲取準(zhǔn)確位置。
文獻(xiàn) [8] 提出把錨節(jié)點(diǎn)通過(guò)人工部署為小區(qū)域的內(nèi)切圓方 式,以提高節(jié)點(diǎn)定位的精度。文獻(xiàn) [9] 分析了 WSN 部署與能 耗的關(guān)系,通過(guò)對(duì) DV-Hop 算法進(jìn)行研究發(fā)現(xiàn),錨節(jié)點(diǎn)位置 的不規(guī)則放置會(huì)對(duì)定位誤差產(chǎn)生較大影響,在一定的 WSN 范 圍內(nèi)使用 DV-Hop 定位,可以通過(guò)錨節(jié)點(diǎn)規(guī)則性的部署來(lái)提高 定位的有效性,從而降低傳感器定位誤差。
1 DV-Hop算法及誤差分析
1.1 DV-Hop定位算法
DV-Hop 算法的步驟如下:
(1)錨節(jié)點(diǎn)向周邊的未知節(jié)點(diǎn)廣播信息,信息包中含有初始化為零的最小跳數(shù)項(xiàng)。未知節(jié)點(diǎn)收到信息包后,對(duì)最小跳數(shù)項(xiàng)加 1 再把整個(gè)信息包轉(zhuǎn)發(fā)給下一個(gè)節(jié)點(diǎn)。
式中,(xi,yi) 為未知節(jié)點(diǎn)的坐標(biāo) ;(x1,y1), ,(xj,yj)為該未知節(jié)點(diǎn)所記錄錨節(jié)點(diǎn)的坐標(biāo)。
(4) 令公式(3)前面的(j- 1)個(gè)方程依次減去最后一個(gè)方程得到一個(gè)線性表達(dá)式 AX=b。
(5) 用最小二乘法解表達(dá)式可得 X=(ATA)-1ATb。
1.2 DV-Hop算法誤差
在無(wú)線傳感網(wǎng)絡(luò)中,對(duì)于所有未知節(jié)點(diǎn)均使用跳數(shù)與校正值的乘積來(lái)表示距離,計(jì)算出的估計(jì)距離與真實(shí)距離存在很大偏差。有些文獻(xiàn)提出引用各種迭代算法求出最接近真實(shí)值的未知節(jié)點(diǎn)的坐標(biāo),使得定位誤差最小[10]。但迭代法的引入會(huì)增加定位的計(jì)算量,并增加WSN 的能耗。
存在較大誤差的原因是錨節(jié)點(diǎn)位置的不規(guī)則放置,導(dǎo)致未知節(jié)點(diǎn)離錨很近或很遠(yuǎn),從而加大了估算誤差。
為了計(jì)算 DV-Hop 算法的誤差,在仿真中采用了文獻(xiàn) [11]的誤差計(jì)算公式:
其中,(x',y')和(x,y)分別表示未知節(jié)點(diǎn)的估算坐標(biāo)和實(shí)際坐標(biāo),k 為仿真次數(shù),R 為節(jié)點(diǎn)通信半徑,N 為節(jié)點(diǎn)個(gè)數(shù)。
2 仿真環(huán)境與過(guò)程
2.1 仿真環(huán)境
仿真是在裝有 Matlab2010 的Windows 7 平臺(tái)上進(jìn)行的。仿真環(huán)境參數(shù)選擇見(jiàn)表 1 所列,正方形、均勻、交叉形式錨節(jié)點(diǎn)各坐標(biāo)的選擇見(jiàn)表 2 所列。
考慮到實(shí)際中 WSN 的傳感器節(jié)點(diǎn)可能隨機(jī)分布,而錨節(jié) 點(diǎn)可以按需要的方式進(jìn)行人工部署。為了使仿真具有比較性, 每次計(jì)算誤差時(shí)假設(shè)未知節(jié)點(diǎn)的位置固定,而錨節(jié)點(diǎn)則以隨機(jī)、 正方形、均勻、交叉等方式部署。以 100 個(gè)節(jié)點(diǎn)為例:
(1)隨機(jī)部署方式 :各錨節(jié)點(diǎn)隨機(jī)部署在仿真區(qū)域之內(nèi), 如圖 1 所示。
(2)正方形部署方式 :各錨節(jié)點(diǎn)按表 2 中正方形部署坐標(biāo) 分布,構(gòu)成一個(gè)正方形,如圖 2 所示。
(3) 均勻部署方式:各錨節(jié)點(diǎn)按表 2中均勻部署坐標(biāo)分布,均勻分布在仿真區(qū)域之內(nèi),如圖 3 所示。
(4) 交叉部署方式:各錨節(jié)點(diǎn)按表 2中交叉部署坐標(biāo)分布,如圖 4 所示。
2.2 仿真過(guò)程
(1)設(shè)定好通信半徑及總節(jié)點(diǎn)數(shù),且隨機(jī)產(chǎn)生12 個(gè)錨節(jié) 點(diǎn)及剩余的未知節(jié)點(diǎn)坐標(biāo)值。
(2)使用 DV-Hop 算法對(duì)每個(gè)未知節(jié)點(diǎn)進(jìn)行定位,并計(jì) 算未知節(jié)點(diǎn)的平均定位誤差。
(3)分別使用表 2 所列的正方形部署、均勻部署、交叉 部署坐標(biāo)代替第(1)步隨機(jī)產(chǎn)生的 12 個(gè)錨節(jié)點(diǎn),重復(fù)進(jìn)行第(2) 步的運(yùn)算。
(4)以上(1)~(3)過(guò)程重復(fù) 50 次,計(jì)算出各未知節(jié)點(diǎn) 的平均定位誤差。
(5)分別改變通信半徑及總節(jié)點(diǎn)數(shù),重新計(jì)算第(4)步,得出仿真結(jié)果。
3 仿真結(jié)果分析
3.1 節(jié)點(diǎn)通信半徑對(duì)定位精度的影響
1 通信半徑越大,定位誤差越小。
2 在較小的通信半徑下,以正方形或均勻方式部署,其定位誤差較小,比以隨機(jī)部署方式的定位精度更高。
3 當(dāng)通信半徑大于整個(gè)WSN區(qū)域長(zhǎng)度的 30% 時(shí),不同的部署方式將對(duì)DV-Hop算法定位誤差產(chǎn)生較小影響。
3.2 節(jié)點(diǎn)數(shù)量對(duì)定位精度的影響
由圖 5 可知,當(dāng)通信半徑足夠大時(shí),不同的部署方式對(duì) 平均誤差影響較小。當(dāng)通信半徑 R=25 和 R=30 時(shí),不同的節(jié) 點(diǎn)數(shù)采用隨機(jī)、正方形、均勻、交叉等部署方式,其平均定位 誤差變化曲線分別如圖6和圖7所示。從圖6和圖7中可以得知:
(1)以正方形、均勻和交叉等方式部署,其定位誤差要 比隨機(jī)部署方式更小,而且定位誤差與節(jié)點(diǎn)數(shù)量關(guān)系不大。
(2)采用隨機(jī)部署方式時(shí)節(jié)點(diǎn)數(shù)量越多定位誤差越精確。
4 結(jié) 語(yǔ)
通過(guò)對(duì)隨機(jī)、正方形、均勻、交叉等不同部署方式對(duì) DV-Hop 定位所產(chǎn)生的誤差結(jié)果進(jìn)行比較、分析可知,采用正 方形、均勻等部署方式能減少定位誤差,有助于改善 DV-Hop 定位算法的性能。同時(shí),如果通信半徑大于覆蓋范圍的 30% 時(shí), DV-Hop 定位算法的定位誤差更小。文中的研究結(jié)果對(duì)實(shí)際應(yīng) 用具有一定的指導(dǎo)作用。