基于DOA联合TDOA时间积累的二维GDOP仿真分析

news2024/11/30 12:30:41

up目录

一、理论基础

二、核心程序

三、测试结果


一、理论基础

        无人机(UAV)因其体积小,灵活性高,成本低等优势得到快速发展并被广泛应用于军事战争,城市管理,民用,地质,抢险救灾等各个领域,与此同时,无人机定位技术也得到了深入研究,其中无线电探测与定位技术备受众多学者关注.基于电磁波参数的无线电探测与定位技术主要包括角度估计,信号到达时间差估计(TDOA),接收信号强度估计(RSS),三种方法均可实现独立定位.信号到达时间差估计要求时钟同步,接收信号强度估计对信道环境比较敏感,而针对角度估计的联合定位算法普遍需要发射阵列和接收阵列角度配对.本文旨在提高无人机定位的估计精确度和降低联合估计过程中的运算复杂度,围绕多输入多输出(MIMO)双基地雷达下波离方向(DOD)和波达方向(DOA)联合估计技术开展研究,提出消除配对过程的联合估计算法,并结合角度和信号到达时间差实现无人机的位置定位.

      首先介绍下TDOA的概念,如图所示,假设我们在空间中有一个声源(记为s(t),其在空间的位置为S)两个麦克风(记为m1和m2,它们在空间的位置分别为M1M2,接收到的信号为x1(t)和x2(t)

那么麦克风m1和m2收到的信号分别为:

其中τ1和τ2分别是声源到达两个麦克风的延迟时间,n1(t)和n2(t)为加性噪声。那么声源信号到达两个麦克风的TDOA为

 

其中c是声速。一般情况下,我们选择一个麦克风的信号作为参考信号,例如我们把M2作为参考信号,那么τ2=0。在麦克风阵列几何形状已知的情况下,声源定位问题变为对时延的估计问题。 

       DOA定位技术原理是利用接收机处的阵列天线和波达方向(DOA)估计技术来确定一个从接收机到信源的波达方向线,即为方向线(LOB),最后利用多个接收机估计的DOA进行三角测量,方向线的交点就是信源的估计位置。

        波达方向(Direction Of Arrival)估计,又称为角谱估计(Angle spectral estimation)、波达角(Angle Of Arrival)估计。一个信源有很多可能的传播路径和到达角。如果几个发射机同时工作,每个信源在接收机处形成潜在的多径分量。因此,接收天线能估计出这些到达角就显得很重要,目的是估计出哪个发射机在工作以及发射机所处的方向,简单的说就是利用己方雷达接收来自目标发射机的来波方向进行估计;其物理原理是利用电磁波的直线传播原理。
        通过测量辐射信号的波达方向(DOA全称Direction Of Arrival)或波达角(AOA)来估测辐射源的位置。理论上这种估计只需要两个接收阵元就可以确定辐射源的位置,但在实际中,由于受到角度分辨率、多径和噪声限制,所需阵元通常要多于两个。

二、核心程序

%-----------------------------------------------------------------------
%  --- 外辐射源基于DOA联合TDOA时间积累下二维平面GDOP分析 ---一发一收体制----
clc;
clear;
close all;
warning off;
addpath(genpath(pwd));

c=3e8;                         % 传播速度

 

% % 市区
xo=-0.25e3;yo=0;                 % 接收站1的位置   %市区 
xa=0.25e3;ya=0;                  % 发射站1的位置   %市区 
% 目标位置
xt=-2000:53:3000;
yt=-2000:53:2000;

da=pi/180;                     % 方位测量误差标准差
dtao=1e-7;                     % 时差测量误差标准差

R=[(da)^2 0;0 (dtao)^2];       % 测量误差协方差矩阵



for l=1:length(xt)
    for j=1:length(yt)
        
        a=(sqrt((xt(l)-xo)*(xt(l)-xo)+(yt(j)-yo)*(yt(j)-yo))+sqrt((xt(l)-xa)*(xt(l)-xa)+(yt(j)-ya)*(yt(j)-ya)))/2;
        tao=2*(a-xo)/c;
        
        afa_diff_x =-(yt(j)-yo)/(xt(l)-xo)^2/(1+(yt(j)-yo)^2/(xt(l)-xo)^2);
        afa_diff_y =1/(xt(l)-xo)/(1+(yt(j)-yo)^2/(xt(l)-xo)^2);
        
        f_diff_x =2*xt(l)/(xo+c*tao)^2;
        f_diff_y =2*yt(j)/(1/4*c^2*tao^2+c*tao*xo);
        f_diff_tao =-2*xt(l)^2/(xo+c*tao)^3*c-yt(j)^2/(1/4*c^2*tao^2+c*tao*xo)^2*(1/2*c^2*tao+c*xo);
        
        H=[afa_diff_x afa_diff_y;-f_diff_x/f_diff_tao -f_diff_y/f_diff_tao];
        
        Px=pinv(H)*R*pinv(H)';
        
        GDOP(l,j)=sqrt(Px(1,1)+Px(2,2));
        
    end
end

 
V=[0.005 0.007 0.01 0.015 0.02 0.025  0.03 0.035 0.04 0.045 0.05 0.055 0.06 0.08 0.10 0.15 0.2 0.3 0.5 1];%市区 %1e-7
figure(1);
[pic1]=contour(xt./1000,yt./1000,GDOP.'/1000,V);
clabel(pic1);xlabel('X(Km) ');ylabel('Y(Km) ');title( 'CONTOUR of valleys of GDOP in T_1R_1 (Km)' );
hold on;
plot(xo/1000,yo/1000,'gP',xa./1000,ya./1000,'rP');
axis([-1.25,1.75,-1.5,1.5]);%市区
% axis([-30,50,-40,40]);%郊区
grid on


三、测试结果

 

up16

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/87501.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

liunx常用命令 适用了centos stream9

最近刚好需要重新再学习一下Linux然后开始学习大数据,就重新再温习一下Linux,然后需要把个人所有的编程环境和数据库变成linux版本,虽然一直以来都是用win系统做数据,但是liunx系统的安全和快速最近试了一下确实令我着迷。 liunx常…

[附源码]Nodejs计算机毕业设计基于web的教学资源管理系统Express(程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程。欢迎交流 项目运行 环境配置: Node.js Vscode Mysql5.7 HBuilderXNavicat11VueExpress。 项目技术: Express框架 Node.js Vue 等等组成,B/S模式 Vscode管理前后端分…

JSP ssh流量充值系统myeclipse开发oracle数据库MVC模式java编程计算机网页设计

一、源码特点 JSP ssh流量充值系统是一套完善的web设计系统(系统采用ssh框架进行设计开发),对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myec…

Spring MVC学习 | 使用域对象共享数据

文章目录一、回顾域对象二、在request域共享数据2.1 使用ServletAPI2.2 使用ModelAndView对象2.3 使用Model对象2.4 使用ModelMap对象2.5 使用Map集合2.6 Model、ModelMap和Map的关系2.7 使用域对象的底层原理三、在session域共享数据四、在application域共享数据学习视频&…

SpringBoot 替换 if 的参数校验

简单使用 Java API规范(JSR303)定义了Bean校验的标准validation-api,但没有提供实现。hibernate validation是对这个规范的实现,并增加了校验注解如Email、Length等。 Spring Validation是对hibernate validation的二次封装,用于支持spring…

Windows 禁用驱动签名方式

Windows 禁用驱动签名方式1. Windows开启测试模式2. 强制禁用2.1 Win7、Win82.2 Win103. 开机选用强制开启禁用签名模式3.1 Win72.3 Win8、Win10及Win113. 参考1. Windows开启测试模式 以管理员模式启动cmd,输入以下命令: 开启系统的测试模式 bcdedit …

来自飞桨社区开发者的礼物,《动手学深度学习》飞桨版上线!

近几年,各行各业已经逐渐开始基于AI技术启动企业智能化转型,AI技术的广泛应用催生了对AI应用人才的需求。如何不断夯实自身的AI技术能力,提升自己的职业竞争力?飞桨社区的开发者给大家带来一份神秘礼物。李沐老师的《动手学深度学…

web前端网页设计期末课程大作业:旅游网页主题网站设计——紫色的旅游开发景点网站静态模板(4页)HTML+CSS+JavaScript

👨‍🎓学生HTML静态网页基础水平制作👩‍🎓,页面排版干净简洁。使用HTMLCSS页面布局设计,web大学生网页设计作业源码,这是一个不错的旅游网页制作,画面精明,排版整洁,内容…

股票l2接口的委托数据有什么作用?

股票l2接口的委托数据有什么作用? 委托队列返回数据:Level 2 行情将真实的每笔成交和成交量以明细数据呈现给用户。 用户可通过查看明细成交数据,判断出委托是属于大单、中单、小单并以此推断出是机构、大户、散户等所为,查明主…

国内外远程办公软件现状

我们说的远程办公通常指狭义上的远程办公,是指通过远程技术,或远程控制软件,对远程电脑进行操作办公,实现非本地办公,如在家办公、异地办公、移动办公等远程办公模式。这种技术的关键在于:穿透内网和远程控制的安全性。…

软件工程期末复习

文章目录一、单选、多选、判断二、简答题1、MVC体系结构2、软件风险的分类3、测试准则(教材P111- 5.2.3)4、结构化分析的方法5、面向对象设计的原则(SOLID)(1)单一职责原则(2)开放/闭…

arduino-ide ESP32 开发

本来想用vscodePlatformIO 一直安装不成功,网不行。先用Arduino(后来用手机开热点,安装成功了,电信的局域网真差) 我的ESP开发版是CP2102驱动芯片,需要先安装驱动 CP210x USB to UART Bridge VCP Driver…

剑指 Offer 62. 圆圈中最后剩下的数字

文章目录题目思考代码和注释总结题目 0,1,,n-1这n个数字排成一个圆圈,从数字0开始,每次从这个圆圈里删除第m个数字(删除后从下一个数字开始计数)。求出这个圆圈里剩下的最后一个数字。 例如,0、1、2、3、4这5个数字组…

技术创新,她不断进取!冲在前端,开发是她!

单从数字比例上来看,前端开发工程师的女性占比相对整个行业来说较高。成为优秀的前端开发工程师,不论男女,你都可以!本期工作坊就想跟你聊聊,想要成为一名优秀的前端开发应该具备怎样的能力?女性的哪些独特…

还在用HttpUtil?SpringBoot 3.0全新HTTP客户端工具来了,用起来够优雅!

我们平时开发项目的时候,经常会需要远程调用下其他服务提供的接口,于是我们会使用一些HTTP工具类比如Hutool提供的HttpUtil。前不久SpringBoot 3.0发布了,出了一个Http Interface的新特性,它允许我们使用声明式服务调用的方式来调…

Grafana 集成 Prometheum

参考文章: linux 上搭建grafana_摸鱼第一人的博客-CSDN博客_linux安装grafana 目录 一、安装 Grafana 二、安装 Prometheus 三、Prometheus 集成 Grafana 一、安装 Grafana 1、从官网下载rpm包 Download Grafana | Grafana Labs 2、将下载好的包上传到linu…

开源博客项目Blog .NET Core源码学习(2:数据库结构分析)

项目采用17张表以支撑博客内容展示及后台管理功能,本文结合数据库表中的存储数据,学习每张表的用途及其中字段的意义(有部分字段暂时还不明白,后续学习代码时再逐步完善)。 序号表名用途1CategoryInfo保存文章栏目的定…

vulntarget靶场系列-a-writeup

网络配置外网WIN7:ip1: 192.168.127.91/255.255.255.0 ,gw:192.168.127.2 (NAT模式)ip2:10.0.20.98-vmnet1(仅主机模式)域主机成员:10.0.20.99-vmnet1(仅主机模式)10.0.10.111-vmnet2(仅主机模式)域控:10.0.10.110-vmnet2(仅主机模式)密码配置…

C++11标准模板(STL)- 算法(std::max_element)

定义于头文件 <algorithm> 算法库提供大量用途的函数&#xff08;例如查找、排序、计数、操作&#xff09;&#xff0c;它们在元素范围上操作。注意范围定义为 [first, last) &#xff0c;其中 last 指代要查询或修改的最后元素的后一个元素。 返回范围内的最大元素 st…

2022 12月15日 每日面试题(MyBatis)

&#x1f3e0;个人主页&#xff1a;不会写代码的满满 &#x1f9d1;个人简介&#xff1a;大家好&#xff0c;我是满满&#xff0c;一个想要与大家共同进步的男人&#x1f609;&#x1f609; 目前状况&#x1f389;&#xff1a;开学即将大三&#xff0c;目标就是半年内找到一份实…