LEACH路由协议MATLAB仿真代码

本文介绍了无线传感网络(WSN)的基本概念,包括相关英文缩写,如WSN、BS、MS、CH和CM。重点讨论了LEACH协议,这是一种用于节能的簇头轮换路由算法,并提供了其在MATLAB环境下的仿真代码,适用于静态网关场景。
摘要由CSDN通过智能技术生成

相关英文缩写 :

无线传感网络 wireless sensor network(WSN)
基站 base station (BS)
移动网关 mobile sink (MS)
簇群 Cluster
簇头 Cluster Head(CH)
簇员 Cluster Member(CM)

无线传感网络:

无线传感网, 一般是由许多传感器节点(sensor node)自组织形成的网络,用来把感知到的信息通过单跳或者多跳的方式发送到基站(BS),由于传感器节点的电池能量是有限的,所以对数据转发的有效性要求很高,即用最少的能量消耗换来最大的数据转发量,因此需要有了许多路由算法。

路由协议(算法)按照 sink 的类型可以分为两类:

1、静态网关(static sink): 比较早期的路由协议,如LEACH, Flooding等协议
2、动态网关 MS(mobile sink) : 该类算法被证明是比第一类算法更加有效的, 最新的路由协议基本都是第二类。

LEACH协议MATLAB代码 :

% my leach code based on fuzzy logical method
clear;
%% 参数的初始化
    xm=100; 
    ym=100; % 传感区域范围
    n=100; %节点总数
    p=0.1; %簇头概率
    % 能量模型初始化数据
    E0=1;%初始能量
    Elec=50e-9;%发送、接收能量,每bit  
    Efs=10e-12;%耗散能量,每bit
    Emp=0.0013e-13;%融合能耗,每bit
    do = sqrt( Efs/Emp );
    cc=0.8;%融合率
    rmax=1000;%轮数设置
    MaxDis_CH_Node = sqrt( (xm-0)^2 + (ym-0)^2 ); %簇头广播范围

    CM=25;%控制信息大小
    DM=4000;%数据信息大小
     figure(1);% 显示图片 

    for i=1:1:n
        S(i).xd=rand(1,1)*xm;
        S(i).yd=rand(1,1)*ym;
        S(i).G=0;%每一个周期结束后,重新设置为0
        S(i).E=E0;%节点的初始能量
        S(i).type='N';%节点的类型为普通
        plot(S(i).xd,S(i).yd,'o');
       hold on;%保持所畫的圖像
    end

%% 计算网关节点与其他节点的距离, 找出节点与网关的最小距离
    MinDist_Node_Sink = zeros(1,n);
    Sink(1).xd = 0; Sink(1).yd = 0;
    Sink(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值