LEACH路由协议中簇头的选举和分簇 j江南大学

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

无线传感网技术实验报告(四)班级:微电子1101学号:0301110115姓名:杨海平一,实验目的:通过仿真实验掌握LEACH路由协议中簇头的选举和分簇。二,实验内容:在100*100M2的正方形区域里,随机分署有100个传感节点,簇头占所有节点的比例为P=1/10,汇聚节点sink的位置坐标为(50,50)。(1),绘制网络分布图;(2),选举簇头,并在分布图中标注;(3),组簇,并画出簇成员与簇头的连线,以及簇头与sink的连线。三,实验方法:(1),在边长为100m的正方形中,产生传感器节点数为100的随机分布图,且sink节点的位置坐标为(50,50);(2),簇头选举选举原则:一个传感器节点随机选择0和1之间的一个值,如果选定的随机数小于阈值T(n),那么这个节点成为簇头节点;11[mod()]()0PnGPrTnP其他=P:簇头所占节点的比例;r:当前的轮数;G:是在1/P轮的循环中未当选过簇头的节点的集合。(3),组簇组簇原则:传感器节点加入距离最近的簇头。(4),完成二轮以上(选做)。四,实验分析过程:(1),实验内容一:当通信半径R=50M,信标节点个数n=6,12,18,24,30时,按照实验一的方法随机产生X,Y坐标为0~100的n个信标节点的坐标,再随机产生一个未知节点的X,Y坐标,然后判断n个信标节点是否能与未知节点通信,把能与未知节点通信的信标节点X,Y坐标相加,除以能与未知节点通信的节点数,即为用质心定位算法估计的未知节点个数,误差即为未知节点与估计未知节点坐标的距离。每组信标节点个数仿真800次,累加每次仿真的误差,取平均值即得到估计误差。(2),实验内容二:思想方法与实验内容一相同,当信标节点个数n=20,通信半径R=5,10,15,20,25,30,35,40,45,50m时,每组通信半径仿真800次,累加每次仿真的误差,取平均值即得到估计误差。五,程序(1),实验内容一程序如下:clearall;closeall;nbeacon=[612182430];%信标节点个数n=6,12,18,24,30nbeaconi=5;error=zeros(1,nbeaconi);%误差数组errornunknow=1;%知节点个数为1r=50;%通信半径r为50optimes=800;forni=1:1:5;%每组信标节点得到一个平均误差errorsum=0;validtimes=0;%800次仿真中至少有一个信标与未知节点通信的次数foroptimei=1:1:optimesx=100*rand(1,nbeacon(ni));%随机产生X坐标为0~100的信标节点的坐标y=100*rand(1,nbeacon(ni));%随机产生Y坐标为0~100的信标节点的坐标xunknow=100*rand(1,nunknow);%随机产生未知节点的坐标yunknow=100*rand(1,nunknow);%随机产生未知节点的坐标error1=0;%800次仿真中的一小次仿真计算出的误差xsum=0;ysum=0;xunknowcal=0;%800次仿真中的一小次仿真计算的未知节点的坐标yunknowcal=0;%800次仿真中的一小次仿真计算的未知节点的坐标connectedtime=0;%信标与未知节点通信的次数fori=1:1:nbeacon(ni)d=sqrt((x(i)-xunknow)^2+(y(i)-yunknow)^2);ifdr%判断连通与否xsum=xsum+x(i);ysum=ysum+y(i);connectedtime=connectedtime+1;endendifconnectedtime~=0xunknowcal=xsum/connectedtime;yunknowcal=ysum/connectedtime;validtimes=validtimes+1;error1=sqrt((xunknowcal-xunknow)^2+(yunknowcal-yunknow)^2);errorsum=errorsum+error1;%累加误差endenderror(ni)=errorsum/validtimes;%计算平均误差end(2),实验内容二程序如下:clearall;closeall;r=5:5:50;%通讯半径数组error=zeros(1,10);%误差统计forri=1:1:10;%大循环,总共10个通讯半径errorsum=0;validtimes=0;error1=0;foroptime=1:1:800x=100*rand(1,20);%随机产生X坐标为0~100的信标节点的坐标y=100*rand(1,20);%随机产生Y坐标为0~100的信标节点的坐标xunknow=100*rand(1,1);%随机产生未知节点的坐标yunknow=100*rand(1,1);%随机产生未知节点的坐标xsum=0;ysum=0;xunknowcal=0;%800次仿真中的一小次仿真计算的未知节点的坐标yunknowcal=0;%800次仿真中的一小次仿真计算的未知节点的坐标connectedtime=0;fori=1:1:20d=sqrt((x(i)-xunknow)^2+(y(i)-yunknow)^2);ifdr(ri)xsum=xsum+x(i);ysum=ysum+y(i);connectedtime=connectedtime+1;endendifconnectedtime~=0xunknowcal=xsum/connectedtime;yunknowcal=ysum/connectedtime;validtimes=validtimes+1;error1=sqrt((xunknowcal-xunknow)^2+(yunknowcal-yunknow)^2);errorsum=errorsum+error1;%累加误差endenderror(ri)=errorsum/validtimes;%计算平均误差end六,实验结果和分析:(1),实验内容一:表1不同信标节点个数时的误差(通信半径50m)信标节点个数612182430误差(米)21.430219.017217.811317.187216.6767分析:在通信半径一定的情况下,信标节点数越多,定位就越准确。(1),实验内容二:表2不同通信半径时的误差(信标节点个数为20)通信半径(米)5101520253035404550误差(米)3.2816.0258.0159.26410.13111.34812.29514.05715.39417.628分析:在信标节点个数一定的情况下,通信半径越大,定位就越不准确。

1 / 4
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功