资源简介

华南理工大学“无线传感器网络技术”课程作业,DV-Hop定位算法的Matlab实验。

资源截图

代码片段和文件信息

% square_L: 正方形区域的边长,单位:m
% comm_r: 通信半径,单位:m
% node_n: 网络节点的个数
% anchor_n: 信标节点个数
% unknown_n: 未知节点个数
% xy:存储矩阵中每个点的坐标
% adjacency_m: 邻接矩阵
% hop: 跳数矩阵

clear close all;

square_L = 100;
node_n = 100;
anchor_n = 10;
unknown_n = node_n - anchor_n;
comm_r = 25;

% 随机分布节点
xy = square_L.*rand(2node_n);
anchor = [xy(11:anchor_n);xy(21:anchor_n)];
unknown = [xy(1(anchor_n+1):node_n);xy(2(anchor_n+1):node_n)];

% 构造邻接矩阵
adjacency_m = zeros(node_nnode_n);
for i=1:node_n
    for j=1:node_n
        dis(ij) = sqrt((xy(1i)-xy(1j))^2+(xy(2i)-xy(2j))^2);   % 距离矩阵
        if (dis(ij) <= comm_r) && (dis(ij)>0)
            hop(ij) = 1;
        elseif i == j
            hop(ij) = 0;
        else hop(ij) = inf;
        end
    end
end

% 节点分布图
plot(anchor

评论

共有 条评论