一種環(huán)境監(jiān)測(cè)無線傳感網(wǎng)的節(jié)點(diǎn)定位方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及環(huán)境監(jiān)測(cè)技術(shù)領(lǐng)域,特別是一種環(huán)境監(jiān)測(cè)無線傳感網(wǎng)的節(jié)點(diǎn)定位方 法。
【背景技術(shù)】
[0002] 近年來,隨著污染日益嚴(yán)重,我國的生態(tài)環(huán)境越來越差。如何有效地監(jiān)測(cè)環(huán)境和治 理污染已經(jīng)成為中國政府和社會(huì)各界關(guān)注的頭等重要的問題。對(duì)比傳統(tǒng)方法中布置少量環(huán) 境監(jiān)測(cè)站和人工采樣相結(jié)合的策略,利用物聯(lián)網(wǎng)技術(shù)構(gòu)造大規(guī)模分布式的環(huán)境監(jiān)測(cè)網(wǎng)具有 實(shí)時(shí)性高、成本低、維護(hù)簡(jiǎn)單、智能化程度高等優(yōu)點(diǎn),為環(huán)境監(jiān)測(cè)提供了一種切實(shí)可行的解 決方案。在環(huán)境監(jiān)測(cè)無線傳感網(wǎng)應(yīng)用中,節(jié)點(diǎn)的位置信息對(duì)于網(wǎng)絡(luò)的監(jiān)測(cè)活動(dòng)顯得尤為重 要。如果沒有準(zhǔn)確的監(jiān)測(cè)節(jié)點(diǎn)的位置信息,節(jié)點(diǎn)采集的環(huán)境參數(shù)信息便沒有實(shí)際意義。因 此,傳感器節(jié)點(diǎn)的定位技術(shù)成為無線傳感網(wǎng)應(yīng)用的關(guān)鍵技術(shù)之一,也是本發(fā)明亟待解決的 問題。
[0003] 目前的關(guān)于節(jié)點(diǎn)的定位方法有很多。在戶外環(huán)境中使用最廣泛的便是GPS定位。 但是對(duì)于基于嵌入式的微傳感器系統(tǒng)設(shè)計(jì)的監(jiān)測(cè)節(jié)點(diǎn)而言,GPS的體積大、價(jià)格高、能耗大, 難以在大規(guī)模分布式的傳感網(wǎng)中為每一個(gè)節(jié)點(diǎn)配備。常見的無線傳感網(wǎng)的定位算法可以分 為基于測(cè)距的定位算法和與距離無關(guān)的定位算法。其中,基于測(cè)距的定位算法主要包括基 于RSSI測(cè)距的定位算法、基于TOA的定位算法和基于TDOA的定位算法等等,由于此類算法 在定位過程中需要測(cè)量節(jié)點(diǎn)之間的距離或角度,因此對(duì)節(jié)點(diǎn)的硬件要求比較高并且受環(huán)境 的影響較大。無需測(cè)距的定位算法的典型代表有質(zhì)心定位算法和DV-HOP定位算法。此類 算法在定位過程中不需要測(cè)量節(jié)點(diǎn)之間的距離或角度,而是采用節(jié)點(diǎn)之間的估算距離來實(shí) 現(xiàn)節(jié)點(diǎn)的定位,因此硬件的實(shí)現(xiàn)成本低,但定位的精度較差。
【發(fā)明內(nèi)容】
[0004] 本發(fā)明所要解決的技術(shù)問題是克服現(xiàn)有技術(shù)的不足而提供一種環(huán)境監(jiān)測(cè)無線傳 感網(wǎng)的節(jié)點(diǎn)定位方法,本發(fā)明綜合考慮了環(huán)境監(jiān)測(cè)中節(jié)點(diǎn)分布的各種情況,對(duì)監(jiān)測(cè)區(qū)域進(jìn) 行了詳細(xì)的劃分,可以應(yīng)對(duì)實(shí)際中的各種節(jié)點(diǎn)分布情況,實(shí)用性強(qiáng)。
[0005] 本發(fā)明為解決上述技術(shù)問題采用以下技術(shù)方案:
[0006] 根據(jù)本發(fā)明提出的一種環(huán)境監(jiān)測(cè)無線傳感網(wǎng)的節(jié)點(diǎn)定位方法,包括以下步驟:
[0007] 步驟1、將待監(jiān)測(cè)區(qū)域劃分為若干個(gè)正方形的網(wǎng)格,在每個(gè)網(wǎng)格的4個(gè)頂點(diǎn)上分別 部署帶有GPS裝置的信標(biāo)節(jié)點(diǎn),相鄰的兩個(gè)信標(biāo)節(jié)點(diǎn)之間的距離為信標(biāo)節(jié)點(diǎn)的無線通信半 徑;
[0008] 步驟2、在監(jiān)測(cè)區(qū)域內(nèi)隨機(jī)部署未知節(jié)點(diǎn);
[0009] 步驟3、根據(jù)未知節(jié)點(diǎn)的連通率以及通信范圍內(nèi)檢測(cè)到信標(biāo)節(jié)點(diǎn)的個(gè)數(shù),將待測(cè)區(qū) 域作如下劃分:
[0010] 301、將每個(gè)網(wǎng)格中的區(qū)域劃分為區(qū)域I、區(qū)域II和區(qū)域III ;所述區(qū)域I中的未知 節(jié)點(diǎn)需滿足能檢測(cè)到4個(gè)信標(biāo)節(jié)點(diǎn),區(qū)域II中的未知節(jié)點(diǎn)需滿足能檢測(cè)到3個(gè)信標(biāo)節(jié)點(diǎn), 區(qū)域III中的未知節(jié)點(diǎn)需滿足能檢測(cè)到2個(gè)信標(biāo)節(jié)點(diǎn);
[0011] 302、將待測(cè)區(qū)域中的網(wǎng)格劃分為密集分布網(wǎng)格和稀疏分布網(wǎng)格:
[0012] 所述密集分布網(wǎng)格中至少存在一個(gè)分布在區(qū)域I或區(qū)域II中的未知節(jié)點(diǎn),區(qū)域 III中若有未知節(jié)點(diǎn),該區(qū)域III中的未知節(jié)點(diǎn)至少需滿足能檢測(cè)到1個(gè)分布在區(qū)域I或區(qū) 域II中的鄰居節(jié)點(diǎn);
[0013] 所述稀疏分布網(wǎng)格中需滿足存在孤島節(jié)點(diǎn),孤島節(jié)點(diǎn)是分布在區(qū)域III中的未知 節(jié)點(diǎn),且檢測(cè)不到分布在區(qū)域I或區(qū)域II中的鄰居節(jié)點(diǎn);
[0014] 步驟4、對(duì)處在密集分布網(wǎng)格中區(qū)域I和區(qū)域II中的未知節(jié)點(diǎn),采用自適應(yīng)PSO定 位算法計(jì)算出未知節(jié)點(diǎn)的坐標(biāo);
[0015] 步驟5、對(duì)于處在密集分布網(wǎng)格中區(qū)域III中的未知節(jié)點(diǎn),選擇步驟4中已定位的 節(jié)點(diǎn)作為新的參考信標(biāo)節(jié)點(diǎn),采用自適應(yīng)PSO定位算法計(jì)算出未知節(jié)點(diǎn)的坐標(biāo);
[0016] 步驟6、對(duì)于處在稀疏分布網(wǎng)格中的孤島節(jié)點(diǎn),引入帶有GPS的可移動(dòng)節(jié)點(diǎn)并移動(dòng) 至稀疏分布網(wǎng)格的中心位置,將可移動(dòng)節(jié)點(diǎn)作為新的信標(biāo)節(jié)點(diǎn),采用自適應(yīng)PSO定位算法 計(jì)算出孤島節(jié)點(diǎn)的坐標(biāo)。
[0017] 作為本發(fā)明所述的一種環(huán)境監(jiān)測(cè)無線傳感網(wǎng)的節(jié)點(diǎn)定位方法進(jìn)一步優(yōu)化方案,所 述步驟6中可移動(dòng)節(jié)點(diǎn)移動(dòng)至稀疏分布網(wǎng)格的中心位置是采用遺傳算法計(jì)算出可移動(dòng)節(jié) 點(diǎn)在監(jiān)測(cè)區(qū)域中移動(dòng)的最佳路徑。
[0018] 作為本發(fā)明所述的一種環(huán)境監(jiān)測(cè)無線傳感網(wǎng)的節(jié)點(diǎn)定位方法進(jìn)一步優(yōu)化方案,所 述自適應(yīng)PSO定位算法包括如下步驟:
[0019] Step 1 :設(shè)置粒子群的種群大小為num,初始化各粒子的速度和位置;將各粒子當(dāng) 前的歷史最優(yōu)位置Ptest設(shè)為初始位置;
[0020] Step 2 :計(jì)算每個(gè)粒子的適應(yīng)度,選擇適應(yīng)度最小的粒子位置為全局極值gbest;
[0021] Step 3 :更新粒子的速度和位置;
[0022] Step 4 :計(jì)算位置更新后每個(gè)粒子的適應(yīng)度,將每一個(gè)粒子的更新過的適應(yīng)度與 其歷史最優(yōu)位置Ptest所對(duì)應(yīng)的適應(yīng)度進(jìn)行比較,如果新的適應(yīng)度的值小于其歷史最優(yōu)位置 Ptest所對(duì)應(yīng)的適應(yīng)度,則將歷史最優(yōu)位置P test更新為新的適應(yīng)度所對(duì)應(yīng)的該粒子所在的位 置;
[0023] Step 5 :將每一個(gè)粒子的更新過的適應(yīng)度與全體粒子所經(jīng)歷過的最好位置gbest所 對(duì)應(yīng)的適應(yīng)度進(jìn)行比較,如果新的適應(yīng)度的值小于最好位置g test所對(duì)應(yīng)的適應(yīng)度,則將全 局極值gtest更新為新的適應(yīng)度所對(duì)應(yīng)的該粒子所在的位置;
[0024] Step 6 :當(dāng)計(jì)算得到的適應(yīng)度沒有達(dá)到預(yù)設(shè)的適應(yīng)度值且循環(huán)迭代的次數(shù)未達(dá)到 了預(yù)設(shè)的最大次數(shù)時(shí),跳轉(zhuǎn)至Step3。
[0025] 作為本發(fā)明所述的一種環(huán)境監(jiān)測(cè)無線傳感網(wǎng)的節(jié)點(diǎn)定位方法進(jìn)一步優(yōu)化方案,所 述Step 2中每個(gè)粒子的適應(yīng)度是采用下列公式計(jì)算得到:
[0027] 其中,f (xn, yn)為每個(gè)粒子的適應(yīng)度,k為通信范圍內(nèi)的信標(biāo)節(jié)點(diǎn)個(gè)數(shù),(xn,yn)為 未知節(jié)點(diǎn)的坐標(biāo),(x nil,ynil)是未知節(jié)點(diǎn)的第i個(gè)信標(biāo)節(jié)點(diǎn)的坐標(biāo),dnil是未知節(jié)點(diǎn)與其第 i個(gè)信標(biāo)節(jié)點(diǎn)通過RSSI測(cè)距算法測(cè)得的距離。
[0028] 作為本發(fā)明所述的一種環(huán)境監(jiān)測(cè)無線傳感網(wǎng)的節(jié)點(diǎn)定位方法進(jìn)一步優(yōu)化方案,所 述Step 3中更新粒子的速度和位置是采用如下方法:
[0029] 每個(gè)粒子根據(jù)所經(jīng)歷的歷史最優(yōu)位置Ptest和群體所發(fā)現(xiàn)的全局極值g test這兩個(gè) 極值按照以下公式來更新自己的速度和位置:
[0030] Vi j (t+1) = Wvi j (t) +C^1 (Pi-Xi j (t)) +c2r2 (Pgj-Xi j (t))
[0031] Xi j (t+1) = Xi j (t)+Vi j (t+1)
[0032] 其中,Xl](t)為第i個(gè)粒子當(dāng)前時(shí)刻在第j維空間的位置,Vl](t)為第i個(gè)粒子當(dāng) 前時(shí)刻在第j維空間的速度, Xl] (t+Ι)是該粒子下一時(shí)刻的位置,Vl] (t+Ι)是該粒子下一時(shí) 刻的速度,表示第i個(gè)粒子截至到第j維空間循環(huán)搜索到的最優(yōu)位置,P u表示第i個(gè)粒 子截至到第j維空間循環(huán)搜索到的全局極值,CJP C 2為學(xué)習(xí)因子,r JP r 2為0到1之間均 勻分布的隨機(jī)數(shù),t為時(shí)間,w是慣性權(quán)重系數(shù);
[0034] 其中,Wmax是w的最大值,Wmin是w的最小值,f是微粒當(dāng)前的目標(biāo)函數(shù)值,f avg是當(dāng) 前所有微粒的平均目標(biāo)值,f_是當(dāng)前所有微粒的最小目標(biāo)值。
[0035] 本發(fā)明采用以上技術(shù)方案與現(xiàn)有技術(shù)相比,具有以下技術(shù)效果:
[0036] (1)本發(fā)明通過無線傳感器網(wǎng)絡(luò)實(shí)現(xiàn)各節(jié)點(diǎn)之間的通信,無需布線,結(jié)構(gòu)簡(jiǎn)單,安 裝維護(hù)簡(jiǎn)便;
[0037] (2)本發(fā)明綜合考慮了環(huán)境監(jiān)測(cè)中節(jié)點(diǎn)分布的各種情況,對(duì)監(jiān)測(cè)區(qū)域進(jìn)行了詳細(xì) 的劃分,可以應(yīng)對(duì)實(shí)際中的各種