0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

預(yù)測障礙物的算法解決方案提高節(jié)點(diǎn)定位的精度

電子設(shè)計 ? 來源:電子測量技術(shù) ? 作者:黃歡;張偉;陳啟 ? 2020-07-20 07:51 ? 次閱讀

引 言

節(jié)點(diǎn)的定位是無線傳感網(wǎng)應(yīng)用中的一個重要問題,位置信息的引入使得WSN的輸出從單一的{數(shù)據(jù)}變?yōu)閧數(shù)據(jù),位置}形式,使得使用者可以更有效的獲取特定位置和區(qū)域而不是特定傳感器結(jié)點(diǎn)的數(shù)據(jù),從而為許多新型應(yīng)用如基于位置的路由、跟蹤、建筑物形變測量等應(yīng)用打開了途徑。

無線傳感網(wǎng)節(jié)點(diǎn)定位算法實(shí)現(xiàn)具備兩類輸入:已知錨點(diǎn)及其位置信息,結(jié)點(diǎn)之間的測量間距。

已知定位信息的節(jié)點(diǎn)被稱為錨點(diǎn)。未知節(jié)點(diǎn)與錨點(diǎn)之間的距離,按照實(shí)現(xiàn)方式不同,節(jié)點(diǎn)定位算法分為分布式和集中式兩類,前者的算法是通過分布式的各個節(jié)點(diǎn)實(shí)現(xiàn)的;后者的算法是通過一個集中式的節(jié)點(diǎn)來實(shí)現(xiàn)的。本文采用集中式算法。

無線傳感網(wǎng)節(jié)點(diǎn)擺放完后就確定了錨點(diǎn)的信息,實(shí)現(xiàn)定位的另外一個輸入是各個節(jié)點(diǎn)距離信息。目前采用的測距方法有:測量無線電信號強(qiáng)度(RSSI),測量無線電信號覆蓋關(guān)系(Radio Connectivity),測量普通聲波與無線電到達(dá)時間差(TDOA),測量超聲波信號與無線電到達(dá)時間差。

本文采用RSSI方法來進(jìn)行節(jié)點(diǎn)之間的測距,實(shí)現(xiàn)簡單,模型成熟,比TDOA等方法容易實(shí)現(xiàn)。

利用三角定位的原理,分析了定位與錨節(jié)點(diǎn)數(shù)量的關(guān)系,錨節(jié)點(diǎn)數(shù)量不足時,利用DV-hop算法計算多跳距離。錨點(diǎn)信息足夠時則采用最小二乘法對數(shù)據(jù)進(jìn)行處理以獲得平均意義上的節(jié)點(diǎn)位置。

無線傳感網(wǎng)中節(jié)點(diǎn)定位與實(shí)際節(jié)點(diǎn)定位信息存在一定誤差,產(chǎn)生誤差的原因有兩個:無線電信號傳播模型的不夠準(zhǔn)確,節(jié)點(diǎn)之間存在障礙物,節(jié)點(diǎn)擺放等環(huán)境因素影響。針對后者,本文提出了一個方法來預(yù)測節(jié)點(diǎn)之間是否存在障礙物,來改善節(jié)點(diǎn)定位精度。

最后用C語言進(jìn)行仿真,驗(yàn)證了考慮障礙物影響后,節(jié)點(diǎn)定位精度相比于沒有采用障礙物分析時提高了30%左右。

1、 定位原理

采用無線信號刪減模型進(jìn)行測距,其數(shù)學(xué)表達(dá)式為(1):

式中:precieve為接收無線信號的強(qiáng)度,psend為無線節(jié)點(diǎn)發(fā)出信號的強(qiáng)度。

在信號強(qiáng)度刪減模型中,其指數(shù)a設(shè)定為2,忽略干擾,可得矩陣方程:

式中:X∈R2,是未知節(jié)點(diǎn)位置,ei∈R2是已知第i個錨點(diǎn)的位置,Zi是接收信號的強(qiáng)度,ai為常數(shù)。把式(2)展開可得:

給定第i個錨點(diǎn)信息,X是一個二次未知數(shù),這對解方程有一定難度,把其線性化,第i個方程減掉第1個方程可得:

給定k個錨點(diǎn),可得k-1個線性方程。

通過上面的k-1個方程組可知,當(dāng)X有3個變量時,如X表示三維坐標(biāo),k=4即k-1=3,可以得到唯一解;k《3時有多解;k》3時無解。當(dāng)X有2個變量,X代表二維坐標(biāo),k=3有唯一解。

在無線傳感網(wǎng)節(jié)點(diǎn)定位中,以二維定位為例,若未知節(jié)點(diǎn)知道3個錨點(diǎn)距離,可唯一定出該節(jié)點(diǎn)位置;若僅知道2個或更少錨點(diǎn)信息,可利用算法一定程度上定出位置范圍;若錨點(diǎn)距離信息多于3個,可用優(yōu)化算法來優(yōu)化定位精度。

本文以二維信息為例說明無線傳感網(wǎng)節(jié)點(diǎn)定位問題。

2、 節(jié)點(diǎn)定位系統(tǒng)架構(gòu)與障礙物分析

無線傳感網(wǎng)節(jié)點(diǎn)定位系統(tǒng)分為分布式和集中式兩種:

分布式算法將計算工作分布到各個節(jié)點(diǎn)中,節(jié)點(diǎn)的位置估計在本地完成。在非多跳方式中,算法使用的距離參數(shù)在節(jié)點(diǎn)一跳范圍內(nèi)取得;在多跳方式中,這個參數(shù)由節(jié)點(diǎn)間協(xié)作、多跳取得。

在集中式中,中心計算機(jī)負(fù)責(zé)計算每個節(jié)點(diǎn)位置,每個節(jié)點(diǎn)把自己的信息都統(tǒng)一發(fā)到某一中心節(jié)點(diǎn),最后由這個中心節(jié)點(diǎn)傳到一計算機(jī)集中處理數(shù)據(jù)并給這些未知節(jié)點(diǎn)定位。見圖1。

集中式方法實(shí)現(xiàn)容易,考慮全局信息后能優(yōu)化節(jié)點(diǎn)定位。本文采用集中式定位算法。

預(yù)測障礙物的算法解決方案提高節(jié)點(diǎn)定位的精度

2.1 集中式定位算法實(shí)現(xiàn)

采用集中式算法后,多跳范圍的節(jié)點(diǎn)與節(jié)點(diǎn)距離采用DV-hop算法,即平均每跳距離×跳數(shù)的方式。其實(shí)現(xiàn)過程如下。

2.1.1 平均每跳距離及錨點(diǎn)到未知節(jié)點(diǎn)跳數(shù)計算

分為2個階段,即2次廣播過程。

第一個階段,每個信標(biāo)節(jié)點(diǎn)采用廣播方式將其位置信息傳遞給其它的信標(biāo)節(jié)點(diǎn)。廣播的信息包格式為:{IDi,xi,yi,Hopsi},其中包含了該節(jié)點(diǎn)的標(biāo)識位置坐標(biāo)IDi以及跳數(shù)Hopsi信息。初始Hopsi為1,接收到此數(shù)據(jù)的每個節(jié)點(diǎn),將此信息記錄到一張表中。然后繼續(xù)向新的鄰居節(jié)點(diǎn)廣播,每廣播一次就將Hopsi加1。當(dāng)節(jié)點(diǎn)接收到一個相同ID的數(shù)據(jù)包時,便要與原來的Hopsi進(jìn)行比較,如果新的跳數(shù)小于原表中的跳數(shù),就用新的跳數(shù)更新表中的跳數(shù)信息,意味著找到了一條更短的到達(dá)該信標(biāo)節(jié)點(diǎn)的路徑。如果新的跳數(shù)大于原表中的跳數(shù),就丟棄該數(shù)據(jù)包,也不再進(jìn)行轉(zhuǎn)發(fā)。

經(jīng)過第一階段的廣播過程后,信標(biāo)節(jié)點(diǎn)也獲得其它所有信標(biāo)節(jié)點(diǎn)的坐標(biāo)及跳數(shù)距離,而且所有傳感器節(jié)點(diǎn)都已經(jīng)得到所有信標(biāo)節(jié)點(diǎn)的坐標(biāo)和跳數(shù)距離。這樣,每個信標(biāo)節(jié)點(diǎn)即可用式(8)計算出信標(biāo)節(jié)點(diǎn)i到其他信標(biāo)節(jié)點(diǎn)j的每跳平均間隔距離:

其中j是除i之外的所有其它信標(biāo)節(jié)點(diǎn)。

第二個階段,每個信標(biāo)節(jié)點(diǎn)將每跳平均距離傳送至中心計算機(jī),數(shù)據(jù)包的格式為:{IDi,Ci},Ci是該信標(biāo)節(jié)點(diǎn)到所有其它信標(biāo)節(jié)點(diǎn)的每跳平均距離。中心計算機(jī)就將所有信標(biāo)節(jié)點(diǎn)平均每跳距離相加取平均:

式中:n為所有信標(biāo)節(jié)點(diǎn)的個數(shù)。由此得到了全網(wǎng)所有信標(biāo)節(jié)點(diǎn)之間的每跳平均距離。各個節(jié)點(diǎn)也得到各個信標(biāo)節(jié)點(diǎn)的跳數(shù)。由此可計算出該節(jié)點(diǎn)到信標(biāo)節(jié)點(diǎn)的距離:Di=hops×cc。在圖2的示例中,節(jié)點(diǎn)0和5之間的距離,等于跳數(shù)5乘以cc。

2.1.2 節(jié)點(diǎn)定位

所有未知節(jié)點(diǎn)到錨點(diǎn)的距離算出后即可定位,分為3種情況:

(1) 未知節(jié)點(diǎn)與3個錨點(diǎn)距離已算出;

直接采用式(6),式(7)三角定位原理算出該節(jié)點(diǎn)位置。

(2) 未知節(jié)點(diǎn)與小于3個錨點(diǎn)距離已算出;

若有2個錨點(diǎn)距離算出,取該兩點(diǎn)線段中心作為該未知節(jié)點(diǎn)位置;若只有一個錨點(diǎn)距離算出,則以該錨點(diǎn)位置作為未知節(jié)點(diǎn)位置;若無錨點(diǎn)距離算出,以隨機(jī)經(jīng)驗(yàn)值分配該節(jié)點(diǎn)位置。

(3) 未知節(jié)點(diǎn)與大于3個錨點(diǎn)距離已算出;

利用最小二乘取這組錨點(diǎn)信息來估算未知節(jié)點(diǎn)位置,把式(5)化為式(10):

2.2 誤差及障礙物分析

2.2.1 障礙物引起的誤差及障礙物預(yù)測方法

無線傳感網(wǎng)節(jié)點(diǎn)估算定位與實(shí)際節(jié)點(diǎn)位置之間存在誤差,產(chǎn)生誤差的原因有2個:(1)Rssi方法進(jìn)行測距時,無線信號刪減模型隨環(huán)境變化有所不同,這種模型不能很好的適應(yīng)實(shí)際情況,在對節(jié)點(diǎn)定位時會產(chǎn)生誤差;(2)實(shí)際環(huán)境中,節(jié)點(diǎn)與節(jié)點(diǎn)之間可能存在障礙物,導(dǎo)致此兩節(jié)點(diǎn)運(yùn)用RSSI測距得出的信號強(qiáng)度大大小于無障礙物時的情況。

本文采用RSSI方法來進(jìn)行節(jié)點(diǎn)之間的測距,節(jié)點(diǎn)間若存在障礙物,則測出的信號強(qiáng)度與實(shí)際節(jié)點(diǎn)之間的距離有很大偏差。

用算法預(yù)測障礙物的存在位置,把障礙物的影響考慮到節(jié)點(diǎn)定位中有助于節(jié)點(diǎn)定位精度。

本文提出一種預(yù)測障礙物的三角預(yù)測法,改進(jìn)由于節(jié)點(diǎn)之間存在障礙物引起的定位誤差(見圖3)。

在a,b,c 3個節(jié)點(diǎn)之間預(yù)測其中間有無障礙物,測得信號強(qiáng)度:

RSSab(a接收到b信號的強(qiáng)度),RSSac(a接收到c信號的強(qiáng)度),RSSbc(b接收到c信號的強(qiáng)度)。

l1=f(RSSab),a到b的距離;l2=f(RSSac),a到c的距離;l3=f(RSSbc),b到c的距離。

這樣可以估算出ab,ac,bc的長度l1,l2,l3。

a,b,c都為一跳鄰居節(jié)點(diǎn),相互靠的比較近,滿足三角形兩邊邊長之和大于第三邊的定理。這里通過計算發(fā)現(xiàn)l1》l2+l3,即兩邊之和小于第三邊。則可預(yù)測a和b之間可能存在障礙物。

定位算法是一個需要迭代比較復(fù)雜的過程,運(yùn)用障礙物分析會使定位算法程序變得很復(fù)雜,一種好的解決方法是取少量可能存在障礙物的鄰居節(jié)點(diǎn)進(jìn)行障礙物分析,大多數(shù)都無需分析,這樣的節(jié)點(diǎn)對有以下特征:信號強(qiáng)度低于某一域值。

障礙物導(dǎo)致無線信號信息不可得,這種情況看作錨點(diǎn)與未知節(jié)點(diǎn)距離太遠(yuǎn)無法通信,本文考慮引入障礙物后無線信號強(qiáng)度減弱,仍可得到無線信號。

2.2.2 障礙物分析算法實(shí)現(xiàn)

本文的定位基本算法如3.1所述,在3.1的算法中,取得了未知節(jié)點(diǎn)到錨點(diǎn)的距離和計算未知之間插入障礙物分析,見圖3。

第一步,在取得i點(diǎn)與錨點(diǎn)j距離后,做循環(huán)搜索是否有m點(diǎn)同時與i和j點(diǎn)有距離信息,若有則進(jìn)入障礙物分析,否則退出。

第二步,根據(jù)i,j,m三點(diǎn)距離信息,利用3.2.1所述的障礙物分析算法判斷i和j之間是否有障礙物。

第三步,如有障礙物,則根據(jù)i節(jié)點(diǎn)信息作如下處理:(1)若i有3個以上錨點(diǎn)距離信息,則直接丟棄該j錨點(diǎn)的距離信息;(2)若i僅有3個及以下(包括該j節(jié)點(diǎn))錨點(diǎn)距離信息,則i和j的距離取一個經(jīng)驗(yàn)值代替由于障礙物所得的距離值。

3 、仿真結(jié)果

采用C語言仿真,按照前面的算法進(jìn)行仿真。論證引入障礙物分析后定位精度的提高,仿真在50 m×50 m的區(qū)域內(nèi)進(jìn)行,錨節(jié)點(diǎn)為4~16個不等,節(jié)點(diǎn)通信距離為10 m,放置忽略厚度的障礙板8塊,每塊長5 m。比較在有障礙物的情況下一般算法和引入障礙物分析算法后定位的精度(見圖4)。

4、 結(jié) 論

本文分析了定位算法理論,提出了定位算法需要解決的幾個關(guān)鍵問題,提出了一個新的預(yù)測障礙物的算法,提高了節(jié)點(diǎn)定位的精度。采用C語言,通過仿真結(jié)果來論證引進(jìn)障礙物分析后定位精度的提高。

責(zé)任編輯:gt


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 超聲波
    +關(guān)注

    關(guān)注

    63

    文章

    2950

    瀏覽量

    137706
  • 仿真
    +關(guān)注

    關(guān)注

    50

    文章

    3972

    瀏覽量

    132961
  • 無線電
    +關(guān)注

    關(guān)注

    58

    文章

    2114

    瀏覽量

    115818
收藏 人收藏

    評論

    相關(guān)推薦

    基于labview機(jī)器視覺的障礙物時別

    通過攝像頭對周圍環(huán)境信息的實(shí)時采集,如果當(dāng)鏡頭前方出現(xiàn)障礙物時候,以一定的方式(聲音或振動之類的)反饋出來。主要考慮的是實(shí)現(xiàn)盲人室內(nèi)導(dǎo)盲作用,不需要太過于考慮實(shí)際使用,只要能實(shí)現(xiàn)判定到障礙物,自動提醒就行啦。怎么判定前方出現(xiàn)障礙物
    發(fā)表于 03-14 07:58

    基于RSSI的無線傳感器網(wǎng)絡(luò)距離修正定位算法

    影響了節(jié)點(diǎn)定位精度。提出了一種基于RSSI 的無線傳感器網(wǎng)絡(luò)距離修正定位算法。該算法通過RSSI 測距,計算近似質(zhì)心的位置,以此為參考點(diǎn)進(jìn)行
    發(fā)表于 11-13 11:10

    將MCL算法應(yīng)用于無線傳感網(wǎng)絡(luò)節(jié)點(diǎn)定位技術(shù)

    。并且更加容易濾除與觀測值不一致的位置.提高定位精度。  3 算法性能*價  在一定的通訊開銷和硬件配置條件下,評價一種節(jié)點(diǎn)定位方法優(yōu)劣的重
    發(fā)表于 11-16 15:23

    無線傳感器網(wǎng)絡(luò)的節(jié)點(diǎn)定位怎么解決?

    信息,隨機(jī)布置的傳感器節(jié)點(diǎn)在網(wǎng)絡(luò)部署完成后必須能夠確定自身所在的位置。一般的定位算法分類為基于距離定位算法和距離無關(guān)
    發(fā)表于 08-30 08:16

    群集智能算法在WSN節(jié)點(diǎn)定位中的應(yīng)用

    提高無線傳感器網(wǎng)絡(luò)(WSN)的節(jié)點(diǎn)定位的估計精度,提出基于自由搜索優(yōu)化的智能估計定位算法。自由搜索是一種新的群集智能
    發(fā)表于 04-13 08:32 ?15次下載

    基于RSSI測距的信標(biāo)節(jié)點(diǎn)自校正定位算法

    節(jié)點(diǎn)定位是無線傳感器網(wǎng)絡(luò)中的重要應(yīng)用之一。為了有效抑制各種因素對無線傳感器節(jié)點(diǎn)定位精度的影響,以三邊定位算法為基礎(chǔ),提出了一種基于誤差校正的
    發(fā)表于 09-02 15:25 ?43次下載

    障礙物檢測實(shí)驗(yàn)

    障礙物檢測實(shí)驗(yàn) 一、實(shí)驗(yàn)?zāi)康摹靶L(fēng)”小車在運(yùn)動過程中要成功避開障礙物必須在一定距離外就探測到障礙物。在小車上探測障礙物
    發(fā)表于 03-23 10:47 ?2694次閱讀
    <b class='flag-5'>障礙物</b>檢測實(shí)驗(yàn)

    障礙物方位檢測實(shí)驗(yàn)

    障礙物方位檢測實(shí)驗(yàn) 一、實(shí)驗(yàn)?zāi)康男≤囋谶\(yùn)動中要成功避開障礙物,除了要檢測是否有障礙物外,還需要判斷障礙物的方位,以便小
    發(fā)表于 03-23 10:48 ?1956次閱讀
    <b class='flag-5'>障礙物</b>方位檢測實(shí)驗(yàn)

    無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)定位算法的改進(jìn)_許紅艷

    無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)定位算法的改進(jìn)_許紅艷
    發(fā)表于 03-15 10:49 ?0次下載

    基于改進(jìn)APIT算法的無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)定位_戴天虹

    基于改進(jìn)APIT算法的無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)定位_戴天虹
    發(fā)表于 03-19 19:25 ?0次下載

    基于改進(jìn)的洪泛廣播和粒子濾波的節(jié)點(diǎn)定位算法

    針對目前移動無線傳感器網(wǎng)絡(luò)定位問題存在的不足,提出了一種基于改進(jìn)的洪泛廣播機(jī)制和粒子濾波的節(jié)點(diǎn)定位算法。對于一個給定的未知節(jié)點(diǎn),首先采用改進(jìn)的洪泛廣播機(jī)制,從離它最近的錨
    發(fā)表于 12-11 15:53 ?0次下載

    無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)定位的協(xié)同進(jìn)化算法

    的迭代次數(shù)內(nèi)快速收斂且實(shí)現(xiàn)深度搜索達(dá)到較高的精度。仿真實(shí)驗(yàn)結(jié)果表明:在應(yīng)用雙系統(tǒng)協(xié)同進(jìn)化算法對測試目標(biāo)函數(shù)進(jìn)行求解時,能非常接近最優(yōu)解;同時將該算法應(yīng)用到基于接收信號強(qiáng)度值( RSSI)測距的
    發(fā)表于 01-08 16:45 ?0次下載

    一種基于運(yùn)動軌跡捕捉的WSN節(jié)點(diǎn)定位算法

    傳統(tǒng)無線傳感器網(wǎng)絡(luò)(wSN)節(jié)點(diǎn)定位算法難以適應(yīng)節(jié)點(diǎn)快速移動的髙拓?fù)渥兓h(huán)境,導(dǎo)致識別誤差較大。針對該問題,提出一種基于運(yùn)動軌跡捕捉與正交覆蓋機(jī)制的wSN節(jié)點(diǎn)定位
    發(fā)表于 05-12 16:39 ?2次下載

    無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)定位算法研究與實(shí)現(xiàn)

    無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)定位算法研究與實(shí)現(xiàn)。
    發(fā)表于 05-24 09:34 ?3次下載

    基于果蠅算法聯(lián)網(wǎng)節(jié)點(diǎn)定位改進(jìn)方法

    基于位置的服務(wù)是聯(lián)網(wǎng)最具發(fā)展?jié)摿Φ膽?yīng)用之一,提供可靠的節(jié)點(diǎn)定位信息已成為衡量聯(lián)網(wǎng)技術(shù)標(biāo)準(zhǔn)的重要指標(biāo)。為有效地對未知節(jié)點(diǎn)進(jìn)行定位,針對果蠅
    發(fā)表于 05-26 16:58 ?6次下載