《電子技術(shù)應用》
您所在的位置:首頁 > 通信與網(wǎng)絡 > 設計應用 > 基于最小能耗的無線傳感器網(wǎng)絡路由算法
基于最小能耗的無線傳感器網(wǎng)絡路由算法
現(xiàn)代電子技術(shù)
黃明亮,呂建平 蘇州大學
摘要: 摘要:通過分析無線傳感器網(wǎng)絡的電路模型和能量消耗情況,結(jié)合LEACH算法,提出一種基于最小能耗的無線傳感器網(wǎng)絡路由算法。網(wǎng)絡運行時首先將其劃分為若干個子區(qū)域,再進行簇首節(jié)點的選取,這樣取代了傳統(tǒng)LEACH算法對
Abstract:
Key words :

摘要:通過分析無線傳感器網(wǎng)絡的電路模型和能量消耗情況,結(jié)合LEACH算法,提出一種基于最小能耗的無線傳感器網(wǎng)絡路由算法。網(wǎng)絡運行時首先將其劃分為若干個子區(qū)域,再進行簇首節(jié)點的選取,這樣取代了傳統(tǒng)LEACH算法對整片網(wǎng)絡隨機選取簇首節(jié)點的做法,使得簇首節(jié)點分布更加均勻。同時,在選取簇首節(jié)點之前對每個節(jié)點的刺余能量進行判斷,低于闞值的采取休眠處理,這樣保證了簇首節(jié)點選取的有效性。以上兩點措施使區(qū)域內(nèi)節(jié)點負載分配更加合理,有效地提升了整個網(wǎng)絡的生存時間。
關鍵詞:無線傳感器網(wǎng)絡;能耗;簇首節(jié)點;閾值

0 引言
    無線傳感器網(wǎng)絡(Wireless Sensor Networks,WSNs)是由部署在監(jiān)測區(qū)域內(nèi)大量的廉價微型傳感器節(jié)點組成,通過無線通信方式形成的一個多跳的自組織網(wǎng)絡系統(tǒng)。同時,網(wǎng)絡中的節(jié)點擁有感知能力、無線通信能力以及計算能力。由于無線傳感器網(wǎng)絡具有不依賴與任何預設網(wǎng)絡設施等特點,所以在軍事應用、大型設備監(jiān)控和環(huán)境監(jiān)測和預報等領域,傳感器網(wǎng)絡都有著廣泛的應用前景。傳感器網(wǎng)絡中節(jié)點分布數(shù)量眾多,且能量是由容量有限的電池供電,更換不易。傳感器節(jié)點消耗能量的模塊包括傳感器模塊、處理器模塊和無線通信模塊。隨著集成電路工藝的進步,處理器和傳感器模塊的功耗變得很低,絕大部分能量消耗在無線通信模塊上。所以如何設計節(jié)能高效的路由策略是延長網(wǎng)絡生存周期的重要手段。
    近些年來,一些節(jié)能高效的路由算法相繼被提出。文獻通過引入長期睡眠機制,防止網(wǎng)絡中的某些節(jié)點因為過早耗盡能量而死亡,引起網(wǎng)絡無效。文獻設計了一種無線傳感器網(wǎng)絡通信架構(gòu)ADOCA,有效地改善了無限傳感器網(wǎng)絡通信的有效性。文獻提出了一種基于多蟻群無線傳感器網(wǎng)絡路由算法,采用多種蟻群并行搜索,并在種群中采用基于目標函數(shù)值的啟發(fā)式信息素分配策略和根據(jù)目標函數(shù)自動調(diào)整螞蟻搜索路徑。文獻中針對SPR路由算法進行改進,提出了EB-SPR算法。將網(wǎng)絡構(gòu)造成層次結(jié)構(gòu),節(jié)點根據(jù)上一層鄰節(jié)點能量水平優(yōu)先使用能量多的節(jié)點作為下一跳來轉(zhuǎn)發(fā)數(shù)據(jù)包,但是這種算法中節(jié)點需要時刻維護各個鄰節(jié)點能量信息,增加了數(shù)據(jù)傳輸量。文獻提出了最早的分層路由協(xié)議之一,LEACH算法。通過循環(huán)的方式隨機選擇簇首節(jié)點,將整個網(wǎng)絡的能量負載平均分配到每個傳感器節(jié)點中,從而達到降低網(wǎng)絡能耗、提高網(wǎng)絡整體生存時間的目的。本文提出了一種新的基于最小能耗的無線傳感器網(wǎng)絡路由算法,并對網(wǎng)絡中能量過低的節(jié)點采取休眠處理,延長了網(wǎng)絡的生命周期。

1 無線傳感器網(wǎng)絡能量消耗研究和路由分析
1.1 無線傳感器網(wǎng)絡能量消耗研究
    傳感器網(wǎng)絡節(jié)點主要有傳感器模塊,處理器模塊,無線通信模塊和能量供應模塊。隨著技術(shù)的進步,目前傳感器模塊和處理器模塊能耗越來越低。但是,傳感器節(jié)點傳輸信息時要比執(zhí)行計算時更消耗電能,傳輸1 b信息到100 m距離需要的能量大約相當于執(zhí)行3 000條指令消耗的能量。
    本文假設一個簡單的無線通信電路模型,其中發(fā)送和接收電路消耗能量Eelec=50 nJ/b,發(fā)送放大器消耗能量εamp=100 pJ/(b/m2)。所以,使用該模型從節(jié)點A傳輸kb信息至距離為d的節(jié)點B時,節(jié)點A消耗的能量為ETx(k,d)=Eeleck+εampkd2,接收該信息,節(jié)點B消耗的能量為ERx(k)=Eeleck。如圖1所示。

a.jpg


    無線通信模塊存在發(fā)送、接收、空閑和睡眠4種狀態(tài)。無線通信模塊在空閑狀態(tài)一直監(jiān)聽無線信道的使用情況,檢查是否有數(shù)據(jù)發(fā)送給自己,而在睡眠狀態(tài)則關閉通信模塊。從圖2中可看到,無線通信模塊在發(fā)送狀態(tài)的能量消耗最大,在空閑狀態(tài)和接收狀態(tài)的能量消耗接近,略少于發(fā)送狀態(tài)的能量消耗,在睡眠狀態(tài)的能量消耗最少。

b.jpg


1.2 LEACH路由協(xié)議分析
    最早的分簇路由協(xié)議是由Wendi等三人在2000年提出的LEACH算法,全稱為“低功耗自適應集簇分層型協(xié)議”。LEACH算法的每一輪操作分為兩個運行階段:簇建立階段和簇穩(wěn)定運行階段。由于簇建立階段是屬于額外的通信需求,所以穩(wěn)定運行的持續(xù)時間要遠大于建立階段持續(xù)的時間。
    在簇建立階段,傳感器節(jié)點隨機生成一個0,1之間的隨機數(shù),并且與閾值T(n)做比較,如果小于該閾值,則該節(jié)點就會當選為簇首。T(n)按照下面公式計算:
    c.jpg
    式中:P為節(jié)點成為簇首節(jié)點的百分數(shù);r為當前輪數(shù);G為在這一輪中未當選簇首的節(jié)點集合。
    簇首節(jié)點選定后,廣播自己成為簇首的消息,節(jié)點根據(jù)接收到的消息的強度決定加入哪個簇,并告知相應的簇首,完成簇的建立過程。然后,簇首節(jié)點采用TDMA的方式,為簇內(nèi)成員分配傳送數(shù)據(jù)的時隙。以上LEACH算法存在一個很大的缺陷,即協(xié)議沒有說明蔟首節(jié)點的數(shù)目怎么分布才能遍及于整個網(wǎng)絡。因此,很可能出現(xiàn)被選的簇首節(jié)點集中在網(wǎng)絡某一區(qū)域的現(xiàn)象,這樣就會使得一些節(jié)點的周圍沒有任何簇首節(jié)點。同時,由于簇首節(jié)點是隨機選擇的,有可能出現(xiàn)某個節(jié)點剩余能量過低而不能成為簇首節(jié)點,從而導致網(wǎng)絡失效。

2 基于最小能耗的無線傳感器網(wǎng)絡路由算法
2.1 算法拓撲結(jié)構(gòu)
    圖3所示為無線傳感器網(wǎng)絡路由算法的拓撲結(jié)構(gòu)。整個網(wǎng)絡的節(jié)點被分為匯聚節(jié)點、簇首節(jié)點和普通節(jié)點。網(wǎng)絡由若干個子區(qū)域組成,子區(qū)域自主產(chǎn)生簇首節(jié)點,區(qū)域內(nèi)的其他節(jié)點和簇首節(jié)點通信并通過簇首節(jié)點將數(shù)據(jù)傳輸給匯聚節(jié)點。

d.jpg


2.2 算法描述
    為了改進上述LEACH算法存在的缺點,本文采用了以下方法:網(wǎng)絡開始運行時,首先通過類似文獻中的擴散法將整個網(wǎng)絡劃分為若干個子區(qū)域,然后再在各個子區(qū)域內(nèi)隨機選取簇首節(jié)點,這樣可以保證簇首節(jié)點更加均勻地分布在整個網(wǎng)絡中。同時,設定節(jié)點剩余能量閾值Eth,每次選取簇首節(jié)點之前,對剩余能量低于閾值的節(jié)點采取休眠處理。這樣保證了簇首節(jié)點選取的可用性,有效地提高了網(wǎng)絡的生存時間。圖4為簇首節(jié)點形成流程圖。網(wǎng)絡開始運行時,依然將節(jié)點工作時間按周期劃分為簇首節(jié)點建立階段t1和穩(wěn)定運行時間t2。t1階段網(wǎng)絡首先在各個子區(qū)域內(nèi)隨機產(chǎn)生簇首節(jié)點,新簇首節(jié)點產(chǎn)生后廣播告知整個網(wǎng)絡。此時,普通節(jié)點在接收到信息后開始發(fā)送入簇信息,簇首節(jié)點則為其分配通信時隙。圖5為整個算法的流程圖,在建立新的簇首節(jié)點和傳輸網(wǎng)絡后,簇內(nèi)節(jié)點開始將數(shù)據(jù)信息發(fā)送給簇首節(jié)點,并在其內(nèi)部進行數(shù)據(jù)融合后轉(zhuǎn)發(fā)給匯聚節(jié)點,網(wǎng)絡開始穩(wěn)定運行。經(jīng)過t2后,網(wǎng)絡開始重新選取簇首節(jié)點,此時要注意,每個節(jié)點都將判斷自己的剩余能量,對低于閾值的采取休眠處理并廣播告知其他節(jié)點。

e.jpg



3 結(jié)語
    在分析LEACH算法和無線傳感器網(wǎng)絡的能量模型的基礎上,本文提出了一種改進算法。在隨機選取簇首節(jié)點之前,首先把網(wǎng)絡劃分為若干個子區(qū)域,這樣可以將簇首節(jié)點分步得更加均勻,同時設定剩余能量閾值Eth,在每次選取簇首節(jié)點之前對剩余能量低于Eth的節(jié)點進行休眠處理,有效地提升了整個網(wǎng)絡的生命周期。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。