天天看點

【LEACH協定】基于matlab無線傳感器網絡LEACH與DEEC協定【含Matlab源碼 2187期】

一、 簡介

1 引言

WSN 由能感覺外部環境的傳感器節點以自組網的形式構成,是一種分布式無線傳感器網絡。随着科技的進步和現代生活的需求,由于 WSN 的遠端控制、資訊即時傳播以及低功耗等衆多優點,WSN 在軍事醫療、生活娛樂和工業生産等各個社會領域發揮着越來越大的作用。但是 WSN 優點衆多的同時也有其弊端。正是因為傳感器節點的無線性,使能量不能源源不斷地直接供給傳感器節點,隻能用有限的電池供應節點的全部能耗,這使能量成為 WSN 亟待解決的問題。為了解決能量均衡高效這個問題,Heinzelman 等提出了最早的分簇路由協定。此協定運用資料融合技術和能量高效利用的路由算法,是經典的分簇路由協定代表。此後,很多研究學者對此基礎上進行了諸多改進,都從不同方面進行了優化。Mittal 等提出了用替補簇首( Sub-CH )代替死亡簇首的方法。Gnanambigai等介紹了LEACH的後繼協定。其中,LEACH-C 協定利用每個節點發送位置資訊和剩餘能量生成能耗更低、性能更優越的分簇;LEACH-F使用固定的簇和循環選舉出的簇首,避免了反複成

簇帶來的能量消耗;MUTIHOP-LEACH 協定考慮間距因素,在簇中節點與彙聚節(sink)、簇與基站之間使用多跳方法的傳輸方案;LEACH-L 允許間隔基站較遠的簇首使用多跳方式與基站進行通信。

2 LEACH 協定概述

2.1 LEACH 協定的簡介

LEACH 協定是一種經典分簇路由協定,它的特點是低功率消耗、聚類自适應和節點平等。由于網絡内各個節點被選機率一樣,是以将整個網絡的能量消耗均衡地配置設定到每個節點,進而達到網絡的能量消耗負載均衡,延長網絡生命時間。LEACH協定主要由T n( ) 構成。首先,每輪次每個節點都随機産生的一個數   0 1     ;然後,将  與T n( ) 進行比較,如果   T n( ) ,則此節點成為簇首;反之,則落選。在 WSN 中一次新路由的建立加上資料的傳輸算一輪。由T n( ) 算法可以看出,被選為簇首是由這 2 方面因素進行權衡得出的:整個網絡場景中所需要的簇首節點總數和節點當選過簇首的次數。門檻值T n( ) 為

【LEACH協定】基于matlab無線傳感器網絡LEACH與DEEC協定【含Matlab源碼 2187期】

其中, p 表示在此網絡規模中需要的簇首節點比例,r 是進行的輪次,G 表示在此輪循環之前沒有被選為簇首的節點。

2.2 網絡模型

為了研究改進的路由算法對網絡的影響,對網絡模型作了如下假設。

  1. 實驗區域的形狀為規則圖形,傳感器節點在監測區域中随機不均勻分散。
  2. 所有傳感器節點的能量相同、處理能力和通信能力相等,被選機率一樣。
  3. 傳感器節點可以知悉自身剩餘能量并可以對備援資料進行融合。
  4. 傳感器節點随機被分散後不會移動,網絡部署後不再進行人為幹涉。
  5. 無線發射功率可以自我調控,可自主選擇發射功率。

2.3 能耗模型

本文實驗中,m bit 資料的傳輸過程與每一步的能量消耗如圖 1 所示[13]。

【LEACH協定】基于matlab無線傳感器網絡LEACH與DEEC協定【含Matlab源碼 2187期】

當 m bit 的資料進行傳輸時,節點的能量消耗主要由這 2 個部分構成:發送 m bit 資料的能量耗損以及功率放大電路的能量耗損;同時,針對不同的發射距離 d,選擇不同的發送功率為

【LEACH協定】基于matlab無線傳感器網絡LEACH與DEEC協定【含Matlab源碼 2187期】
【LEACH協定】基于matlab無線傳感器網絡LEACH與DEEC協定【含Matlab源碼 2187期】

二、部分源代碼

clc;
 clear all;
 close all;
 %1.初始參數設定子產品
 %.傳感器節點區域界限(機關 M)
 xm=100;
 ym=100;
 %(1)彙聚節坐标給定
 sink.x=0.5xm;
 sink.y=0.5ym;
 %區域内傳器節數
 n=100
 %簇頭優化比例(當選簇頭的機率)
 p=0.05;
 P=0.05;
 %能量模型(機關 焦)
 %初始化能量模型
 Eo=0.5;
 %Eelec=Etx=Erx
 ETX=500.000000001;
 ERX=500.000000001;
 %Transmit Amplifier types
 Efs=100.000000000001;
 Emp=0.00130.000000000001;
 %Data Aggregation Energy
 EDA=5*0.000000001;      

%高能量節點超出一節點能量的百分比

a=1;

%最大循環次數

rmax=5000

%算出參數 do

do=sqrt(Efs/Emp);
 Et=0;      

%2.無線傳感器網絡模型産生子產品

%建構無線傳感器網絡,在區域内均勻投放100個節點,并畫出圖形

for i=1:1:n
 S1(i).xd=rand(1,1)xm;
 S2(i).xd=S1(i).xd;
 S3(i).xd=S1(i).xd;
 S4(i).xd=S3(i).xd;
 XR4(i)=S4(i).xd;
 XR3(i)=S3(i).xd;
 XR2(i)=S2(i).xd;
 XR1(i)=S1(i).xd;
 S1(i).yd=rand(1,1)ym;
 S2(i).yd=S1(i).yd;
 S3(i).yd=S1(i).yd;
 S4(i).yd=S3(i).yd;
 YR4(i)=S4(i).yd;
 S4(i).G=0;
 YR3(i)=S3(i).yd;
 S3(i).G=0;
 YR2(i)=S2(i).yd;
 YR1(i)=S1(i).yd;
 S1(i).G=0;
 S2(i).G=0;
 S1(i).E=Eo(1+randa);
 S2(i).E=S1(i).E;
 S3(i).E=S1(i).E;
 S4(i).E=S3(i).E;
 E3(i)= S3(i).E;
 E4(i)= S4(i).E;
 Et=Et+E3(i);      
%initially there are no cluster heads only nodes 
S1(i).type='N'; 
S2(i).type='N'; 
S3(i).type='N'; 
S4(i).type='N';      

end

三、運作結果

【LEACH協定】基于matlab無線傳感器網絡LEACH與DEEC協定【含Matlab源碼 2187期】

四、matlab版本及參考文獻

1 matlab版本

2014a

繼續閱讀