【定位问题】基于matlab chan+taylor算法移动基站无源定位【含Matlab源码 2089期】
⛄一、chan+taylor算法移动基站无源定位简介
1 引言
随着无人机的普及,低空空域的安全问题受到人们的极大关注.针对该问题,本研究对“非合作型”无人机采用一种基于时差法的无源定位算法对其进行实时定位.基于时差法的无源定位方法是根据求解无人机信号到达主站和各辅站的距离差,并联合各基站坐标所构成的双曲线方程组来实现.该方法定位精度高,且不对外发射信号,可在机场等区域安全使用.
目前,Chan算法和Taylor算法是2种经典的时差定位算法.其中,Chan算法在时差值精确的情况下,可以实现较高精度的定位,但如果时差值精度不够,其定位精度会大幅降低.Taylor算法则是在已有的定位坐标基础上,进行迭代递归,使定位出的坐标接近于目标的真实坐标.虽然Taylor算法定位精度较高,但需要提供初始估计坐标,否则就无法实现准确定位.基于2种算法的特点,本研究提出Chan-Taylor联合算法,其思路是,将Chan算法解算出的目标坐标作为初始估计坐标值赋给Taylor算法进行迭代运算,即使获取的时差值存在一定误差,使初始估计坐标的精度不高,但可以通过迭代来提高定位坐标的精度.通过算法对比和仿真分析表明,Chan-Taylor联合算法较Chan算法具有更高的定位精度和稳定性,较Taylor算法更具有实用性.
2 算法描述
2.1 Chan算法
基于Chan算法的无源定位是通过求解目标源信号到达辅站与主站之间的时差并联立各基站坐标所得的双曲线方程组来实现的.该算法是一种非迭代算法,不需要初始值,在时差精确、视距传输的情况下,其定位效果良好,但在工程上,很难获得满足要求的时差初值.因此,Chan算法可作为其他算法的前置条件.
本研究以4站三维定位系统为例建立3组方程,该方程组为超定方程组.通常情况下,由于该方程组导出的矩阵不存在逆矩阵,方程组无法正常求解.所以,本研究利用伪逆法联合最小二乘法对方程组进行解算,即Chan算法.4站定位系统的定位原理如图1所示.
图1 4站定位系统示意图
图1中,主站坐标联立3个辅站坐标,通过分别计算出的时差可构建3条双曲线,其交点就是无人机的位置.
假设无人机位置为P=[px,py,pz],各基站坐标为Pi=[pix,piy,piz],i∈[0,3],则无人机到基站i的距离ri2可表示为,
本研究若不特别指明,均默认i∈[1,3].对式(1)整理可得,
式中,Ri表示基站i到坐标原点的距离;R0为主站到坐标原点的距离;ri0为无人机到辅站与主站间的距离差.
4站三维定位系统存在一个由3组式(2)的关系式结合而成的方程组,如式(3)所示.当A≠0时,线性方程组(3)有解.
式中,A是方程组的系数矩阵,b是方程组的输出向量.
利用伪逆法可求得无人机坐标为,
2.2 Chan-Taylor联合算法
因为Chan算法是非递归算法,对时差精度要求高,因此,本研究对该算法的定位结果进行二次处理.Taylor算法是利用局部最小二乘解进行迭代[5]的递归算法,其定位精度高,但需要初始估计坐标,否则无法进行定位.
基于低空无人机时差定位的实际需求,本研究结合Chan算法和Taylor算法提出了一种改进的算法,即Chan-Taylor联合算法.Chan-Taylor联合算法是将Chan算法的解算结果作为初始估计坐标送入Taylor算法,以达到对无人机坐标进行误差计算和定位修正的作用.算法在迭代时,将误差与设定的阈值进行比较,若误差值大于阈值,则继续迭代;若误差值小于设定阈值,则终止迭代并输出结果.
2.3 Chan-Taylor联合算法流程及计算原理
Chan-Taylor联合算法流程如图2所示,具体为:首先,算法获得无人机信号到主站与各辅站之间的时差;然后,将时差用于Chan算法部分进行初始估计坐标值的计算,并利用该坐标值在Taylor算法部分做误差向量的计算,用以定位修正;同时,对误差进行阈值比较.如不满足条件,则继续迭代,如满足条件,则结束迭代,并输出最终结果.
图2 Chan-Taylor算法流程
式中,α为目标差值向量,b为时差的差值向量,e为时差估计误差向量,H为时差估计的梯度矩阵.它们可分别表示为,
由式ri0=ri-r0=cτi0与站址坐标,可得,
将式(10)与式(11)联立,化简可得,
⛄二、部分源代码
clear all
clc
close all
tic
X = 150;
Y = 150; %空间范围大小
N = 200; %仿真点数
c = 3e8;
num = 0;
distribute = []; %用来统计不同误差范围内的点数
num0 = 0;
num1 = 0;
num2 = 0;
num3 = 0;
num4 = 0;
num5 = 0;
% *直角三角形布局
MS(1) =25;
MS(2) = 25;
% 算法开始:
BS = [0, X, 0,X
0, 0, Y,Y]; % 参考站坐标
BSN=4;
Noise =rand(1); %测距误差1.5厘米
figure(1)
plot(BS(1,1),BS(2,1),‘rs’,‘LineWidth’,2,…
‘MarkerEdgeColor’,‘k’,…
‘MarkerFaceColor’,‘r’,…
‘MarkerSize’,10);hold on
plot(BS(1,2),BS(2,2),‘rs’,‘LineWidth’,2,…
‘MarkerEdgeColor’,‘k’,…
‘MarkerFaceColor’,‘r’,…
‘MarkerSize’,10);hold on
plot(BS(1,3),BS(2,3),‘rs’,‘LineWidth’,2,…
‘MarkerEdgeColor’,‘k’,…
‘MarkerFaceColor’,‘r’,…
‘MarkerSize’,10);hold on
plot(BS(1,4),BS(2,4),‘rs’,‘LineWidth’,2,…
‘MarkerEdgeColor’,‘k’,…
‘MarkerFaceColor’,‘r’,…
‘MarkerSize’,10);hold on
grid on
axis ([-500 500 -500 500]);
for j=1:N
mse = 0;
BS(1,4)=BS(1,4)-0.01*j;
BS(2,4)=BS(2,4)-0.01*j;
plot( BS(1, 4) , BS(2, 4) ,‘rs’,‘LineWidth’,2,…
‘MarkerEdgeColor’,‘g’,…
‘MarkerFaceColor’,‘r’,…
‘MarkerSize’,10);hold on
% 噪声功率:(TDOA协方差矩阵)
Q = eye(BSN-1);
% 第一次LS:
K1 = 0;
for i = 1: BSN
R0(i) = sqrt((BS(1,i)-MS(1))2+(BS(2,i)-MS(2))2); %求出D1,D2,D3,D4.
end
for i = 1:BSN-1
R(i) = R0(i+1)-R0(1)-Noise; %求出加了噪声的D2-D1,D3-D1,D4-D1;
K(i) = BS(1,i+1)2+BS(2,i+1)2; %K(i)=X(i)2+Y(i)2.相当于是移动台到原点的距离平方。
end
% Ga
for i = 1: BSN-1,
Ga(i,1) = -BS(1, i+1); %由于X1=Y1=0,所以作差后都加负号
Ga(i,2) = -BS(2, i+1);
Ga(i,3) = -R(i);
end
% h %h是一个列向量
% h(1)=0.5*(R212-X22-Y22+X12+y1^2); h(2)=0.5*(R312-X32-Y32+X12+y1^2);…
for i = 1: BSN-1
h(i) = 0.5*(R(i)^2 - K(i) + K1);
end
% 由(14b)给出B的估计值:
Za0 = inv(Ga’*inv(Q)*Ga)*Ga’*inv(Q)*h’;
% 利用这个粗略估计值计算B:B=diag{R2,R3,R4}
B = eye(BSN-1);
for i = 1: BSN-1
B(i,i) = sqrt((BS(1,i+1) - Za0(1))^2 + (BS(2,i+1) - Za0(2))^2);
end
⛄三、运行结果
⛄四、matlab版本及参考文献
1 matlab版本
2014a
2 参考文献
[1] 罗正华,雷林,周方均,李霞.基于Chan-Taylor联合算法的低空无人机时差定位研究[J].成都大学学报(自然科学版). 2019,38(04)
3 备注
简介此部分摘自互联网,仅供参考,若侵权,联系删除
【定位问题】基于matlab chan+taylor算法移动基站无源定位【含Matlab源码 2089期】相关推荐
- 【定位问题】基于matlab TDOA+taylor算法移动基站无源定位【含Matlab源码 2098期】
⛄一.chan+taylor算法移动基站无源定位简介 1 引言 随着无人机的普及,低空空域的安全问题受到人们的极大关注.针对该问题,本研究对"非合作型"无人机采用一种基于时差法的无 ...
- 【Matlab图像检索】综合特征图像检索【含GUI源码 395期】
一.代码运行视频(哔哩哔哩) [Matlab图像检索]综合特征图像检索[含GUI源码 395期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 蔡利梅.MAT ...
- 【Matlab肌电信号】肌电信号处理【含GUI源码 966期】
一.代码运行视频(哔哩哔哩) [Matlab肌电信号]肌电信号处理[含GUI源码 966期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 包子阳,余继周,杨 ...
- 【Matlab语音处理】声音信号频谱分析仪【含GUI源码 325期】
一.代码运行视频(哔哩哔哩) [Matlab语音处理]声音信号频谱分析仪[含GUI源码 325期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1]韩纪庆,张磊, ...
- 【Matlab条形码识别】二维条形码识别【含GUI源码 607期】
一.代码运行视频(哔哩哔哩) [Matlab条形码识别]二维条形码识别[含GUI源码 607期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 蔡利梅.MAT ...
- 【AFSA TSP】基于matlab人工鱼群算法求解旅行商问题【含Matlab源码 422期】
一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[TSP]基于matlab人工鱼群算法求解旅行商问题[含Matlab源码 422期] 点击上面蓝色字体,直接付费下载,即可. 获取代码方式2 ...
- 【Matlab图像加密】正交拉丁方置乱算法图像加解密【含GUI源码 182期】
一.代码运行视频(哔哩哔哩) [Matlab图像加密]正交拉丁方置乱算法图像加解密[含GUI源码 182期] 二.matlab版本及参考文献 一.代码运行视频(哔哩哔哩) [Matlab图像处理]自动 ...
- 【Matlab验证码识别】遗传算法和最大熵优化+大津法(OTSU)+自定义阈值数字验证码识别【含GUI源码 1694期】
一.代码运行视频(哔哩哔哩) [Matlab验证码识别]遗传算法和最大熵优化+大津法(OTSU)+自定义阈值数字验证码识别[含GUI源码 1694期] 二.matlab版本及参考文献 1 matlab ...
- 【Matlab人脸识别】BP神经网络人脸识别(含识别率)【含GUI源码 891期】
一.代码运行视频(哔哩哔哩) [Matlab人脸识别]BP神经网络人脸识别(含识别率)[含GUI源码 891期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] ...
最新文章
- 人眼中亮斑的检测、定位和去除(3)
- 全球及中国智能食品秤行业发展预测及市场规模预测报告2021年版
- 计算机2级模拟1答案,全国计算机2级MSOffice模拟考试1答案.doc
- java普通类获取session_springboot普通类中如何获取session?
- html 页面重复度高,哪些情况容易造成重复页面
- 网页上线后音频不能自动播放
- JDK源码(13)-Throwable
- php抓取网页css,php 抓取的页面如何处理可以只保留DOM结构,去掉CSS和JS?
- python中使用什么获取两个集合的补集_python中求两个List的交集、并集和差集
- 鸿蒙os运行内存,体验亮点满满!鸿蒙OS系统6月份开启适配,不只有华为手机
- 统计信号处理基础——估计与检测理论 Kay
- MCCSframework 教程(四)表单
- 前端UI框架ligerui表格汇总功能无法计算全部数据的合计的解决方法
- background属性总结
- uni-app 实现搜索关键词高亮效果
- java+mysql基于SSM的班级管理系统#毕业设计
- android外接手机模拟器,HBuilderX 连接网易mumu手机模拟器进行App开发
- leetcode刷题目录总结
- 国有企业数字化转型的特殊性
- Mercurial中的hg 命令及注释大全