【WSN定位】基于改进chan算法和talor算法实现多基站目标定位附matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

🍎个人主页:Matlab科研工作室

🍊个人信条:格物致知。

更多Matlab仿真内容点击👇

智能优化算法  神经网络预测 雷达通信  无线传感器

信号处理 图像处理 路径规划 元胞自动机 无人机

⛄ 内容介绍

Chan 算法是 TDOA 定位方法的一个很赞的 trick。但是很多方法一旦从学术的角度去看,就罩上了奇异的光环。TDOA,the time differnces of arrival,到达时间差。Chan 算法1是非递归双曲线方程组解法,具有解析表达式解。其主要的特点为在测量误差服从理想高斯分布时,它的定位精度高、计算量小。该算法的推导的前提是基于测量误差为零均值高斯随机变量,对于实际环境中误差较大的测量值,比如在有非视距误差的环境下,该算法的性能会有显著下降。

⛄ 部分代码

%%%%%%%%在Chan算法中引入松弛变量:

%%%%%%%%通过加入松弛变量和采用搜索的算法,消除NLOS传播对定位影响,不需要先验信息,

%%%%%%%%但是由于其估计结果依赖于Chan算法估计的初值,当NLOS较大时,精度会显著下降。

close all

clear;

clc;

X0=1000;      %%%%均匀随机产生移动台的位置

Y0=2000;

ErrVar=30;

NLOS=0.3;

c=300000000;

Zpp=[0;0];

RMSEp=0;

SampleNo=1;       %%%%独立运行的第几次

SampleTotal=1000;   %%%%独立运行的次数

NumRight=0;

RRx_1=0;

RRy_1=0;

X(1)=0;      Y(1)=0;   %%%服务基站的坐标

X(2)=0;      Y(2)=4000;   %%%各个基站的坐标  共采用四个基站

X(3)=3464;   Y(3)=2000;

X(4)=-3464;  Y(4)=2000;

figure(1)%画出基站位置

plot(X0,Y0,'gp','LineWidth',2,...

    'MarkerEdgeColor','k',...

    'MarkerFaceColor','g',...

    'MarkerSize',20);hold on

plot(X(1,1),Y(1),'rs','LineWidth',2,...

    'MarkerEdgeColor','k',...

    'MarkerFaceColor','r',...

    'MarkerSize',20);hold on

plot(X(1,2),Y(2),'rs','LineWidth',2,...

    'MarkerEdgeColor','k',...

    'MarkerFaceColor','r',...

    'MarkerSize',20);

plot(X(1,3),Y(3),'rs','LineWidth',2,...

    'MarkerEdgeColor','k',...

    'MarkerFaceColor','r',...

    'MarkerSize',20);

plot(X(1,4),Y(4),'rs','LineWidth',2,...

    'MarkerEdgeColor','k',...

    'MarkerFaceColor','r',...

    'MarkerSize',20);

grid on

m=1;

while m<=4

    R(m)=sqrt((X(m)-X0)^2+(Y(m)-Y0)^2);

    m=m+1;

end;

while SampleNo<=SampleTotal              %%%%%%抽样次数最大循环

 count=count+1;

 plot(Zp(1,1),Zp(2,1),'go','LineWidth',2,...

    'MarkerEdgeColor','k',...

    'MarkerFaceColor','g',...

    'MarkerSize',10);

end;                  %%%%%%%%%%%%%%%收敛结束

RMSE=sqrt((Zp(1)-X0)^2+(Zp(2)-Y0)^2);

Zpp=Zpp+Zp;

RMSEp=RMSEp+RMSE;

RRx_1_c=(Zp(1)-X0)^2;

RRy_1_c=(Zp(2)-Y0)^2;

RRx_1=RRx_1+RRx_1_c;

RRy_1=RRy_1+RRy_1_c;

SampleNo=SampleNo+1;

end;                    %%%%%%%%%%%%%%%%%%%独立运行SampleTotal次结束

legend('目标真实位置','基站1','基站2','基站3','基站4','引入松弛变量CHAN算法')

Zpp=Zpp/SampleTotal

RMSEp=RMSEp/SampleTotal

RRx_1=RRx_1/SampleTotal

RRy_1=RRy_1/SampleTotal

⛄ 运行结果

⛄ 参考文献

[1]沙勇. "基于Matlab的WSN定位算法仿真设计." 齐齐哈尔大学学报:自然科学版 33.6(2017):3.

[2]张凤梅邹丽. "基于一种改进的无源目标定位算法在WSN中的研究." 计算机应用研究 033.004(2016):1212-1215.

❤️ 关注我领取海量matlab电子书和数学建模资料

❤️部分理论引用网络文献,若有侵权联系博主删除

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

matlab科研助手

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

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

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

打赏作者

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

抵扣说明:

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

余额充值