無線傳感器網絡路由協議研究
在能量篩選算法中,我們指定了一個能量門限(pthresh_)判斷節點能量在網絡中的地位:

其中Etotal是網絡總能量;N代表網絡中存活節點的總數;Ei是本節點的能量。
pthresh_的表達式能夠將本節點的能量在網絡中的地位清晰地表示出來。當能量門限取1時,意味著本節點能量遠遠低于網絡中節點的平均能量。此時我們就可以設置節電關閉其無線收發機進入休眠狀態,等到下個循環再重新開啟,重復能量判斷過程;當門限值取Etotal/N* Ei時,就依照門限大小決定節點休眠的概率:我們假設根據改進方法中能量判決門限所篩選出的節點就是最近周期內剛剛擔任過CH的節點。進而令其在接下來的循環中進入休眠,直至新的簇首節點競爭周期到來。因為剛在最近周期擔任過CH的節點,在能耗上的確大于其他節點,其所剩的能量在網絡中必然處于較低的水平。所以在仿真中我們檢測節點的hasbeench_變量狀態,使每個節點在發送信息之前都先判斷一下該變量狀態(hasbcench_標志著本節點在上一個循環是否為CH節點),如果hasbeench_為1,表示上個循環中此節點擔任過CH,則令其在本輪循環中進入休眠;否則,就產生隨機數P與pthresh_做比較,一旦P小于門限pthresh_,則關閉節點,令其休眠;否則繼續執行發送函數中的其他指令,向sink節點發送信息。同時,對成簇階段的非簇內節點,在接下來的循環中使其進入休眠狀態直至新的成簇階段到來時才重新開啟節點。
3 仿真設計
改進型LEACH的每輪循環分為節點能量篩選階段、簇形成階段和穩定工作階段三個部分:
(1)每輪循環開始時,首先進行節點能量篩選,將低能節點、非簇內節點以及在上輪循環中擔當簇頭的節點令其進入睡眠狀態,直到新的成簇階段到來時才重新開啟節點;
(2)簇形成階段由decideClusterHead、advertiseClusterHead、findBestCluster、informClusterHead、createSchedule幾個函數組成,在經過該階段后,簇頭節點和相應的簇內節點得以選出和形成,同時簇頭節點將根據本地信息給簇內節點分配TDMA時隙,并廣播給簇內所有節點;
(3)在穩定工作階段,簇內各個節點根據分配的TDMA時隙將感知的數據發送給簇頭,簇頭將數據聚合后發給基站。經過一輪數據采集和收集工作后,為了均衡節點能量,將進行新一輪的節點能量篩選和簇頭選擇。通常,穩定工作階段時間都比前兩階段長。
4 仿真結果
4.1 網絡生存周期
由圖2分析可知,LEACH協議的第一節點死亡時間為410 s,整個網絡失效時間為527 s;LEACH-C協議的第一節點死亡時間為380 s,整個網絡失效時間為571 s;改進型協議的第一節點死亡時間為280 s,整個網絡失效時間為603 s。改進型協議第一節點死亡時間最早,其主要原因是每輪簇形成之前,每個節點都需要計算自身能量在整個網絡中的狀態,即進行能量篩選,故能耗要稍大些。但是改進型協議考慮了節點剩余能量在整個網絡中的水平,不允許低于整個網絡平均能量的節點擔任簇頭,并將一些低能的數據冗余節點令其進入休眠狀態,這樣節省了節點能耗,使網絡生存周期較LEACH協議延長了14.4%,較LEACH-C協議延長了5.9%。因此,改進型協議的網絡生存能力要優于LEACH協議。
評論