• 大小: 2KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-01-08
  • 语言: Matlab
  • 标签: wsn  RSSI  MATLAB  

资源简介

鉴于学习WSN定位的同行越来越多,先将自己编写,并得到验证的RSSI算法的MATLAB代码分享给大家,希望有所帮助。

资源截图

代码片段和文件信息

function RSSI()
% 未知节点利用邻居锚节点进行定位,没有邻居锚节点的未知节点无法定位
% 根据接收信号强度转化为距离。规则传播模型下得到的距离跟实际距离没有误差
% 不规则通信模型下,规则传播模型下得到的距离跟实际距离存在误差
%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    load ‘../Deploy Nodes/coordinates.mat‘;%此部分需要自己编写
    load ‘../Topology Of WSN/neighbor.mat‘;    
    directory=cd;
    cd ‘../Topology Of WSN/Transmission Model/‘;    
    cd(model);
    unknown_node_index=all_nodes.anchors_n+1:all_nodes.nodes_n;
    for i=unknown_node_index
        neighboring_anchor_index=intersect(find(neighbor_matrix(i:)==1)find(all_nodes.anc_flag==1));%只利用邻居锚节点进行定位
        neighboring_anchor_n=length(neighboring_anchor_index);
        if neighboring_anchor_n>=3
            try
                dist=rss2dist(neighbor_rss(neighboring_anchor_indexi)1);

评论

共有 条评论