32阵元 MVDR和DREC DOA估计波束方向图对比

2023-12-29 10:12

本文主要是介绍32阵元 MVDR和DREC DOA估计波束方向图对比,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

32阵元 MVDR和DREC DOA估计波束方向图对比

一、原理

MVDR原理:https://zhuanlan.zhihu.com/p/457528114

DREC原理(无失真响应特征干扰相消器):http://radarst.ijournal.cn/html/2019/3/201903018.html

主要参数:
阵元:32个阵元,可以设置。
期望信号:1个,角度、信噪比可以设置。
干扰信号:2个,角度、信噪比可以设置。

二、效果

波束方向图效果:
在这里插入图片描述

三、代码

部分代码:

clc;
clear all;
close all;
%% 
v=2;    %波长为2
d =v/2; %阵元间距
N=32;   %阵元个数
theta_3db = 2/N*180/pi; %-3db波束宽度
for ix=1:1:NA(ix,1)=(ix-1)*d;%阵元间距向量
end%% 接收信号模型
fs=10;  %信号频率
fj1=1;  %干扰1频率
fj2=2;  %干扰2频率SNR= -10; %信噪比
JNR1=20;  %干噪比1
JNR2=20;  %干噪比2theta_s=10*pi/180;  %信号入射方向
theta_j1=20*pi/180; %干扰1,间距大于主瓣宽度
theta_j2=25*pi/180; %干扰2,间距大于主瓣宽度A0=sqrt(10^(SNR/10)); %信号幅度
A1=sqrt(10^(JNR1/10));%干扰1幅度
A2=sqrt(10^(JNR2/10));%干扰2幅度
for k=1:1:Nas(k,1)=exp(j*2*pi*sin(theta_s)*A(k,1)/v);  %信号方向导向矢量aj1(k,1)=exp(j*2*pi*sin(theta_j1)*A(k,1)/v);%干扰1方向导向矢量aj2(k,1)=exp(j*2*pi*sin(theta_j2)*A(k,1)/v);%干扰2方向导向矢量
end
M =1000;%快拍数
t=0:1/(4*fs):(M-1)/(4*fs);%快拍时间T=length(t);%快拍时间长度
S0=A0*exp(sqrt(-1)*(2*pi*fs*t+pi*rand(1,T)));    %构造信号   
J1=A1*exp(sqrt(-1)*(2*pi*fj1*t+pi*rand(1,T)));   %构造干扰信号1 
J2=A2*exp(sqrt(-1)*(2*pi*fj2*t+pi*rand(1,T)));   %构造干扰信号2 S=as*S0;  %信号乘以信号方向导向矢量
I1=aj1*J1;%干扰1乘以干扰1方向导向矢量
I2=aj2*J2;%干扰2乘以干扰2方向导向矢量Noise=zeros(N,T);%构造归一化高斯噪声
for k=1:1:NNoise(k,:)=(randn(1,T)+sqrt(-1)*randn(1,T))/sqrt(2);
endX=S+I1+I2+Noise; % 叠加两个干扰信号和噪声,得到新的信号X
R=X*X'/T;        % 干扰和噪声的协方差矩阵%% 图形绘制
figure(1);
Fa=20*log10(abs(F_s)./max_st); %归一化方向图 db
plot(theta_scan/pi*180, Fa,'b');hold on
Fa=20*log10(abs(Fsum)./maxs);%归一化方向图 db
plot(theta_scan/pi*180, Fa,'r'); grid on;Fa1=20*log10(abs(Fsum1)./maxs1);%归一化方向图 db
plot(theta_scan/pi*180, Fa1,'g');
xlabel('theta/°');
ylabel('幅度/dB');
title('波束方向图');
legend('原始波束扫描方向图','MVDR波束方向图','DREC波束方向图')

四、信噪比SNR和信干噪比SINR的关系

信噪比的表达式为:

S N R = 10 lg ⁡ P S P N S N R=10 \lg \frac{P_S}{P_N} SNR=10lgPNPS,其中:

SNR:信噪比,单位是dB。
PS:信号的有效功率。
PN:噪声的有效功率。

信干噪比SINR(Signal to Interference plus Noise Ratio)指的是系统中信号与干扰和噪声之和的比。

信干噪比表达式为:

S I N R = 10 lg ⁡ P S P I + P N S I N R=10 \lg \frac{P_S}{P_I+P_N} SINR=10lgPI+PNPS,其中:

SINR:信干噪比,单位是dB。
PS:信号的有效功率。
PN:噪声的有效功率。
PI:干扰信号的有效功率。

由上述理论可知,SNR增加,即相对于Ps增加,当PI和PN不变时,SINR会逐渐增大,如下图所示是SNR和SINR的关系:
在这里插入图片描述

五、干噪比INR和信干噪比SINR的关系

由第四节所述,当干噪比INR增加时,相当于PI增加,因此当PN和PS不变时,SINR会逐渐降低。如下图所示:
在这里插入图片描述
代码下载链接:https://mbd.pub/o/bread/ZZicm5Zy

这篇关于32阵元 MVDR和DREC DOA估计波束方向图对比的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/549191

相关文章

免费也能高质量!2024年免费录屏软件深度对比评测

我公司因为客户覆盖面广的原因经常会开远程会议,有时候说的内容比较广需要引用多份的数据,我记录起来有一定难度,所以一般都用录屏工具来记录会议内容。这次我们来一起探索有什么免费录屏工具可以提高我们的工作效率吧。 1.福晰录屏大师 链接直达:https://www.foxitsoftware.cn/REC/  录屏软件录屏功能就是本职,这款录屏工具在录屏模式上提供了多种选项,可以选择屏幕录制、窗口

嵌入式方向的毕业生,找工作很迷茫

一个应届硕士生的问题: 虽然我明白想成为技术大牛需要日积月累的磨练,但我总感觉自己学习方法或者哪些方面有问题,时间一天天过去,自己也每天不停学习,但总感觉自己没有想象中那样进步,总感觉找不到一个很清晰的学习规划……眼看 9 月份就要参加秋招了,我想毕业了去大城市磨练几年,涨涨见识,拓开眼界多学点东西。但是感觉自己的实力还是很不够,内心慌得不行,总怕浪费了这人生唯一的校招机会,当然我也明白,毕业

理解分类器(linear)为什么可以做语义方向的指导?(解纠缠)

Attribute Manipulation(属性编辑)、disentanglement(解纠缠)常用的两种做法:线性探针和PCA_disentanglement和alignment-CSDN博客 在解纠缠的过程中,有一种非常简单的方法来引导G向某个方向进行生成,然后我们通过向不同的方向进行行走,那么就会得到这个属性上的图像。那么你利用多个方向进行生成,便得到了各种方向的图像,每个方向对应了很多

类的load方法和initialize方法对比

1. load方法在main()之前被调用,而initialize方法在main()之后调用 load方法实际是在load_images过程中被调用的。load_images会将当前应用依赖的所有镜像(动态库)加载到内存,在在加载中首先是对镜像进行扫描,将所有包含 load 方法的类加入列表 loadable_classes ,然后从这个列表中逐一调用其所包含的 load 方法。 +[XXCl

JavaScript正则表达式六大利器:`test`、`exec`、`match`、`matchAll`、`search`与`replace`详解及对比

在JavaScript中,正则表达式(Regular Expression)是一种用于文本搜索、替换、匹配和验证的强大工具。本文将深入解析与正则表达式相关的几个主要执行方法:test、exec、match、matchAll、search和replace,并对它们进行对比,帮助开发者更好地理解这些方法的使用场景和差异。 正则表达式基础 在深入解析方法之前,先简要回顾一下正则表达式的基础知识。正则

【HarmonyOS】-TaskPool和Worker的对比实践

ArkTS提供了TaskPool与Worker两种多线程并发方案,下面我们将从其工作原理、使用效果对比两种方案的差异,进而选择适用于ArkTS图片编辑场景的并发方案。 TaskPool与Worker工作原理 TaskPool与Worker两种多线程并发能力均是基于 Actor并发模型实现的。Worker主、子线程通过收发消息进行通信;TaskPool基于Worker做了更多场景化的功能封装,例

一些数学经验总结——关于将原一元二次函数增加一些限制条件后最优结果的对比(主要针对公平关切相关的建模)

1.没有分段的情况 原函数为一元二次凹函数(开口向下),如下: 因为要使得其存在正解,必须满足,那么。 上述函数的最优结果为:,。 对应的mathematica代码如下: Clear["Global`*"]f0[x_, a_, b_, c_, d_] := (a*x - b)*(d - c*x);(*(b c+a d)/(2 a c)*)Maximize[{f0[x, a, b,

claude和chatgpt对比:哪一个更适合你?

前言 我们都知道,Claude和ChatGPT都是当前人工智能领域中备受关注的对话生成模型,作为国外AI模型两大巨头,好像他们的实力都不相上下呀! 这时就会有很多同学疑惑,那我如果想选择AI,到底是选择Claude,还是ChatGPT呢?哪个更好呢?他们之间有什么不同独特的地方呢?他们又分别适合在哪些场景使用呢? 技术背景 Claude是由Anthropic公司开发的高性能模型,而Chat

数据集 3DPW-开源户外三维人体建模-姿态估计-人体关键点-人体mesh建模 >> DataBall

3DPW 3DPW-开源户外三维人体建模数据集-姿态估计-人体关键点-人体mesh建模 开源户外三维人体数据集 @inproceedings{vonMarcard2018, title = {Recovering Accurate 3D Human Pose in The Wild Using IMUs and a Moving Camera}, author = {von Marc

『功能项目』更换URP场景【32】

上一章已经将项目从普通管线升级到了URP管线 现在我们打开上一篇31项目优化 - 默认管线转URP的项目, 进入战斗场景 将Land的子级全部隐藏 将新的URP场景预制体拖拽至Land子级 对场景预制体完全解压缩 将Terrain拖拽至Land的直接子级 将Terrain设置为Land 与 静态Static 清除烘培 重新烘培 修改脚本:LoadRe