【WSN节点定位】RSSI_DV-HOP定位(含对比)【含Matlab源码 3819期】

💥💥💥💥💥💥💥💥💞💞💞💞💞💞💞💞💞Matlab领域博客之家💞💞💞💞💞💞💞💞💞💥💥💥💥💥💥💥💥
🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚤🚤🚤🚤🚤🚤🚤🚤🚤🚤🚤🚤🚤🚤🚤🚤🚤🚤🚤🚤🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀
在这里插入图片描述
🔊博主简介:985研究生,Matlab领域科研开发者;
🏫个人主页:Matlab领域
🏆代码获取方式:
CSDN Matlab领域—代码获取方式

🚅座右铭:路漫漫其修远兮,吾将上下而求索。
更多Matlab信号处理仿真内容点击👇
Matlab信号处理(高阶版)
付费专栏Matlab信号处理(进阶版)
付费专栏Matlab信号处理(初级版)

⛳️关注CSDN Matlab领域,更多资源等你来!!

⛄一、RSSI_DV-HOP定位(含对比)简介

一种基于RSSI的DV-HOP加权算法,该算法基于节点接收信标节点位置元组时的信号强度(RSSI)对邻居节点间跳数进行加权处理,将节点间的跳数与距离相关联,仿真试验结果证明该加权算法可大大提高定位精度。

1 DV-HOP定位算法实现
1.1 基本原理

DV-Hop 定位算法的原理与经典的距离矢量路由算法比较相似。在DV-Hop算法中,锚节点向网络广播一个信标,信标中包含有此锚节点的位置信息和一个初始值为1的表示跳数的参数。此信标在网络中被以泛洪的方式传播出去,信标每次被转发时跳数都增加1。接收节点在它收到的关于某一个锚节点的所有信标中保存具有最小跳数值的信标,丢弃具有较大跳数值的同一锚节点的信标。通过这一机制,网络中所有节点都获得了到每一个锚节点的最小跳数值。
经过计算,一个锚节点得到网络的平均每跳距离,并将此估计值广播到网络中,称作校正值。任何节点一旦接收到此校正值,且能够获得到3个以上锚节点的估计距离,就可以估计自己到这个锚节点的距离。
在这里插入图片描述

DV-Hop定位算法是APS算法系列中使用最为广泛的定位方法, 其定位过程不依赖于测距方法, 利用多跳信标节点信息来参与节点定位, 定位覆盖率较大。DV-Hop 算法非常类似于传统网络中的距离向量路由机制, 在该定位机制中, 未知节点首先计算与信标节点的最小跳数, 然后估算平均每跳距离, 利用最小跳数乘以平均每跳距离, 估算得到未知节点与信标节点之间的距离, 再利用三边测量法或极大似然估计法计算未知节点的坐标。

1.2 DV-Hop定位算法阶段
(1)计算未知节点与每个信标节点的最小跳数。
信标节点向邻居节点广播自身位置信息的分组, 其中包括跳数字段, 初始化为0.接收节点记录具有到每个信标节点的最小跳数, 忽略来自同一个信标节点的较大跳数的分组。然后将跳数值加1,并转发给邻居节点。通过这个方法网络中的所有节点能够记录下到每个信标节点的最小跳数。
(2)计算未知节点与信标节点的实际跳段距离。
每个信标节点根据第1阶段中记录的其他信标节点的位置信息和相距跳数, 利用式(1)估算平均每跳的实际距离:
在这里插入图片描述
其中, ( xi, yi )、( xj, yj )是信标节点i、j 的坐标, hj 是信标节点i与j( i≠j)之间的跳段数。
然后, 信标节点将计算的每跳平均距离用带有生存期的字段的分组广播到网络中, 未知节点仅记录接收到的第1个每跳平均距离, 并转发给邻居节点。这个策略可以确保绝大多数未知节点从最近的信标节点接收每跳平均距离。未知节点接收到平均每跳距离后, 根据记录的跳数, 计算到每个信标节点之间的距离。

(3)未知节点计算自身位置。
未知节点利用第2阶段中记录的到各个信标节点的跳段距离, 利用三边测量法或极大似然估计法计算出自身坐标。
如图1所示, 经过第1和第2阶段, 能够计算出信标节点L1 与L2、L3 之间的距离和跳数。信标节点L2 计算得到校正值(即每跳平均距离)为( 40 +75) / ( 2+ 5) = 16. 42.假设未知节点A 从L2 获得校正值, 则它与3 个信标节点之间的距离分别为L1: 3 ×16. 42, L2: 2 ×16. 42, L3: 3×16. 42, 最后可利用三边测量法确定节点A 的位置。
在这里插入图片描述
图1 DV H op算法示意图
DV -Hop算法采用平均每跳距离来估算实际距离, 对节点的硬件要求低, 实现简单。其缺点是利用跳段距离代替直线距离, 存在一定的误差。

2 RSSI
RSSI(Received Signal StrengthIndicator接收信号强度指示)
RSSI在无线网络中表示信号的强度,它随距离的增大而衰减,通常为负值,该值越接近零说明信号强度越高。
RSSI持续过低,说明基站收到的上行信号太弱,可能导致解调失败。 RSSI持续过高,说明收到的上行信号太强,相互之间的干扰太大,也影响信号解调。
RSSI是一种基于测距的定位技术,其测距原理为接收机通过测量射频信号的能量来确定与发送机的距离。
(1)无线信号的发射功率和接收功率之间的关系如下图上式所示,P®是无线信号的接收功率,P(T)是无线信号的发射功率,r是收发单元之间的距离,n是传播因子,传播因子的数值取决于无线信号传播的环境。下式是接收信号功率转换为dBm的表达式,A可以看作信号传输1m时接收信号的功率。
(2)无线信号接收强度指示与信号传播距离之间的关系图,从理论曲线可以看出,无线信号在传播过程的近距离上信号衰减相当厉害,远距离时信号呈缓慢线性衰减。

⛄二、部分源代码

clear,clc,close all;
BorderLength=200;
NodeAmount=200;
BeanconAmountA=[10,20,30,40,50];
for n=1:5
BeaconAmount=BeanconAmountA(n);
UNAmount=NodeAmount-BeaconAmount;
R=100;
% D=zeros(NodeAmount,NodeAmount);%未知节电到信标节点距离初始矩阵;BeaconAmount行NodeAmount列
h=zeros(NodeAmount,NodeAmount);%初始跳数为0;BeaconAmount行NodeAmount列
hm=zeros(NodeAmount,NodeAmount);
X=zeros(2,UNAmount);%节点估计坐标初始矩阵
accu1=0;
accu2=0;
accu3=0;
for m=1:10
%~~~~~~~~~在正方形区域内产生均匀分布的随机拓扑
C=BorderLength.rand(2,NodeAmount);
%带逻辑号的节点坐标
Sxy=[[1:NodeAmount];C];
Beacon=[Sxy(2,1:BeaconAmount);Sxy(3,1:BeaconAmount)];%信标节点坐标
UN=[Sxy(2,(BeaconAmount+1):NodeAmount);Sxy(3,(BeaconAmount+1):NodeAmount)];%未知节点坐标
%画出节点分布图
plot(Sxy(2,1:BeaconAmount),Sxy(3,1:BeaconAmount),'r
’,Sxy(2,(BeaconAmount+1):NodeAmount),Sxy(3,(BeaconAmount+1):NodeAmount),‘k.’);
xlim([0,BorderLength]);
ylim([0,BorderLength]);
title(‘* 红色信标节点 . 黑色未知节点’);

accu1=accu1 + BaseDVHop(Sxy,Beacon,UN,BeaconAmount,NodeAmount,UNAmount,R);
%accu2=accu2 + GDVhop(Sxy,Beacon,UN,BeaconAmount,NodeAmount,UNAmount,R);
accu2=accu2 + MyDVHop(Sxy,Beacon,UN,BeaconAmount,NodeAmount,UNAmount,R);

end
acc(1,n)=(accu1100/m);
acc(2,n)=(accu2
100/m);
%acc(3,n)=(accu3*100/m);
end

acc
%plot(1:n,acc(1,1:n),‘r:+’,1:n,acc(2,1:n),‘k–o’,1:n,acc(3,1:n),‘g-d’);
plot(BeanconAmountA(1:n),acc(1,1:n),‘r:+’,BeanconAmountA(1:n),acc(2,1:n),‘k–o’);

xlabel(‘信标节点比率(%)’);
ylabel(‘相对定位误差(%)’);
title(‘误差结果比较’);
legend(‘DV-HOP’,‘WDV-HOP’);
xlim([0,50]);
ylim([0,100]);

⛄三、运行结果

在这里插入图片描述

⛄四、matlab版本及参考文献

1 matlab版本
2014a

2 参考文献
[1]于泉,徐保国.无线传感器网络中改进的 DV-Hop 算法[J].计算机工程与应用. 2015

3 备注
简介此部分摘自互联网,仅供参考,若侵权,联系删除

🍅 仿真咨询
1 各类智能优化算法改进及应用

生产调度、经济调度、装配线调度、充电优化、车间调度、发车优化、水库调度、三维装箱、物流选址、货位优化、公交排班优化、充电桩布局优化、车间布局优化、集装箱船配载优化、水泵组合优化、解医疗资源分配优化、设施布局优化、可视域基站和无人机选址优化

2 机器学习和深度学习方面
卷积神经网络(CNN)、LSTM、支持向量机(SVM)、最小二乘支持向量机(LSSVM)、极限学习机(ELM)、核极限学习机(KELM)、BP、RBF、宽度学习、DBN、RF、RBF、DELM、XGBOOST、TCN实现风电预测、光伏预测、电池寿命预测、辐射源识别、交通流预测、负荷预测、股价预测、PM2.5浓度预测、电池健康状态预测、水体光学参数反演、NLOS信号识别、地铁停车精准预测、变压器故障诊断

3 图像处理方面
图像识别、图像分割、图像检测、图像隐藏、图像配准、图像拼接、图像融合、图像增强、图像压缩感知

4 路径规划方面
旅行商问题(TSP)、车辆路径问题(VRP、MVRP、CVRP、VRPTW等)、无人机三维路径规划、无人机协同、无人机编队、机器人路径规划、栅格地图路径规划、多式联运运输问题、车辆协同无人机路径规划、天线线性阵列分布优化、车间布局优化

5 无人机应用方面
无人机路径规划、无人机控制、无人机编队、无人机协同、无人机任务分配

6 无线传感器定位及布局方面
传感器部署优化、通信协议优化、路由优化、目标定位优化、Dv-Hop定位优化、Leach协议优化、WSN覆盖优化、组播优化、RSSI定位优化

7 信号处理方面
信号识别、信号加密、信号去噪、信号增强、雷达信号处理、信号水印嵌入提取、肌电信号、脑电信号、信号配时优化

8 电力系统方面
微电网优化、无功优化、配电网重构、储能配置

9 元胞自动机方面
交通流 人群疏散 病毒扩散 晶体生长

10 雷达方面
卡尔曼滤波跟踪、航迹关联、航迹融合

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Matlab领域

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值