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估计波束方向图对比
32阵元 MVDR和DREC DOA估计波束方向图对比 一、原理 MVDR原理:https://zhuanlan.zhihu.com/p/457528114 DREC原理(无失真响应特征干扰相消器):http://radarst.ijournal.cn/html/2019/3/201903018.html 主要参数: 阵…...

OpenCV-11颜色通道的分离与合并
本次我们使用两个比较重要的API split(mat)将图像的通道进行分割。 merge((ch1,ch2,ch3))将多个通道进行融合。 示例代码如下: import cv2 import numpy as npimg np.zeros((480, 640, 3),…...

从0到1入门C++编程——01 C++基础知识
文章目录 一、工具安装二、新建项目三、设置字体、注释、行号四、C基础知识1.数据类型2.输入输出3.运算符4.选择、循环结构5.跳转语句6.数组7.函数8.指针9.结构体 一、工具安装 学习C使用到的工具是Visual Studio,Visual Studio 2010旗舰版下载链接:点此…...

C#编程-编写和执行C#程序2
C#编程-编写和执行C#程序 问题陈述 Dvid所在的团队正在为网球比赛开发自动排名软件。他负责创建一个程序来接受网球选手的以下详细信息并将其显示在屏幕上: 1.姓名 2.排名 您需要帮助David创建该程序。 要创建所需的程序,David需要执行以下步骤: 1.打开“记事本”。 2.在“…...
Day02-ES6
一.proxy代理 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title> </head>…...
2023年12月记录内容管理
文章目录 前言1.[vue构建项目](https://mp.csdn.net/mp_blog/creation/editor/134829688)2. [Nodejs后端express框架](https://mp.csdn.net/mp_blog/creation/editor/134841711)3. [前端知识点](https://mp.csdn.net/mp_blog/creation/editor/132810879)4.[前端知识点-vue篇&am…...

【测试基础】构造测试数据之 MySQL 篇
构造测试数据之 MySQL 篇 作为一名测试工程师,我们经常会构造测试数据进行一些功能验证。为了暴露更多的问题,在测试数据的构造上,我们应该尽可能的构造不同类型字段的数据,且一张表的字段最好不低于 10 10 10 个。 对于 MySQL …...

基于单片机的语音识别自动避障小车(论文+源码)
1.系统设计 此次基于单片机的语音识别自动避障小车,以STC89C52单片机作为系统的主控制器,利用超声波模块来实现小车与障碍物距离的测量并通过LCD液晶显示,当距离低于阈值时会通过WT588语音模块进行报警提示,并且小车会后退来躲避…...

2023年“中银杯”四川省职业院校技能大赛“云计算应用”赛项样题卷①
2023年“中银杯”四川省职业院校技能大赛“云计算应用”赛项(高职组) 样题(第1套) 目录 2023年“中银杯”四川省职业院校技能大赛“云计算应用”赛项(高职组) 样题(第1套) 模块一…...

【信息安全原理】——入侵检测与网络欺骗(学习笔记)
📖 前言:在网络安全防护领域,防火墙是保护网络安全的一种最常用的设备。网络管理员希望通过在网络边界合理使用防火墙,屏蔽源于外网的各类网络攻击。但是,防火墙由于自身的种种限制,并不能阻止所有攻击行为…...

JVM GC 算法原理概述
对于JVM的垃圾收集(GC),这是一个作为Java开发者必须了解的内容,那么,我们需要去了解哪些内容呢,其实,GC主要是解决下面的三个问题: 哪些内存需要回收? 什么时候回收&…...
【数值分析】LU分解解Ax=b,matlab自己编程实现
LU分解(直接三角分解,Doolittle分解) A x b , A L U Axb \,\,,\,\, ALU Axb,ALU { L y b U x y \begin{cases} Lyb \\ Uxy \end{cases} {LybUxy 矩阵 L {L} L 的对角元素为 1 {1} 1 ,矩阵 U {U} U 的第一行和 A {A} A …...

华为HCIE-Datacom课程介绍
厦门微思网络HCIE-Datacom课程介绍 一、认证简介 HCIE-Datacom(Huawei Certified ICT Expert-Datacom)认证是华为认证体系中的顶级认证,HCIE-Datacom认证定位具备坚实的企业网络跨场景融合解决方案理论知识,能够使用华为数通产品…...
QT(C++)-QTableWight添加行和删除空行
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 1、前言2、QTableWidget的添加行3、删除行 1、前言 最近要用QT开发项目,对QT不是很熟,就根据网上的查到的知识和自己的摸索,将一…...

软件测试/测试开发丨Python 面向对象编程思想
面向对象是什么 Python 是一门面向对象的语言面向对象编程(OOP):Object Oriented Programming 所谓的面向对象,就是在编程的时候尽可能的去模拟真实的现实世界,按照现实世界中的逻辑去处理问题,分析问题中…...
一次降低进程IO延迟的性能优化实践——基于block层bfq调度器
如果有个进程正频繁的读写文件,此时你vim查看一个新文件,将会出现明显卡顿。即便你vim查看的文件只有几十M,也可能会出现卡顿。相对的,线上经常遇到IO敏感进程偶发IO超时问题。这些进程一次读写的文件数据量很少,正常几…...

C语言易错知识点十(指针(the final))
❀❀❀ 文章由不准备秃的大伟原创 ❀❀❀ ♪♪♪ 若有转载,请联系博主哦~ ♪♪♪ ❤❤❤ 致力学好编程的宝藏博主,代码兴国!❤❤❤ 许久不见,甚是想念,真的是时间时间,你慢些吧,不能再让头发变秃…...
React 18 新增的钩子函数
React 18 引入了一些新的钩子函数,用于处理一些常见的场景和问题。以下是 React 18 中引入的一些新钩子函数以及它们的代码示例和使用场景: useTransition: 代码示例:import { useTransition } from react;function MyComponent()…...

安装与部署Hadoop
一、前置安装准备1、机器2、java3、创建hadoop用户 二、安装Hadoop三、环境配置1、workers2、hadoop-env.sh3、core-site.xml4、hdfs-site.xml5、linux中Hadoop环境变量 四、启动hadoop五、验证 一、前置安装准备 1、机器 主机名ip服务node1192.168.233.100NameNode、DataNod…...

MySQL 8.0 InnoDB Tablespaces之General Tablespaces(通用表空间/一般表空间)
文章目录 MySQL 8.0 InnoDB Tablespaces之General Tablespaces(通用表空间/一般表空间)General tablespaces(通用表空间/一般表空间)通用表空间的功能通用表空间的限制 创建通用表空间(一般表空间)创建语法…...

SpringBoot-17-MyBatis动态SQL标签之常用标签
文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…...
React 第五十五节 Router 中 useAsyncError的使用详解
前言 useAsyncError 是 React Router v6.4 引入的一个钩子,用于处理异步操作(如数据加载)中的错误。下面我将详细解释其用途并提供代码示例。 一、useAsyncError 用途 处理异步错误:捕获在 loader 或 action 中发生的异步错误替…...
synchronized 学习
学习源: https://www.bilibili.com/video/BV1aJ411V763?spm_id_from333.788.videopod.episodes&vd_source32e1c41a9370911ab06d12fbc36c4ebc 1.应用场景 不超卖,也要考虑性能问题(场景) 2.常见面试问题: sync出…...

Mybatis逆向工程,动态创建实体类、条件扩展类、Mapper接口、Mapper.xml映射文件
今天呢,博主的学习进度也是步入了Java Mybatis 框架,目前正在逐步杨帆旗航。 那么接下来就给大家出一期有关 Mybatis 逆向工程的教学,希望能对大家有所帮助,也特别欢迎大家指点不足之处,小生很乐意接受正确的建议&…...

【机器视觉】单目测距——运动结构恢复
ps:图是随便找的,为了凑个封面 前言 在前面对光流法进行进一步改进,希望将2D光流推广至3D场景流时,发现2D转3D过程中存在尺度歧义问题,需要补全摄像头拍摄图像中缺失的深度信息,否则解空间不收敛…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院挂号小程序
一、开发准备 环境搭建: 安装DevEco Studio 3.0或更高版本配置HarmonyOS SDK申请开发者账号 项目创建: File > New > Create Project > Application (选择"Empty Ability") 二、核心功能实现 1. 医院科室展示 /…...

对WWDC 2025 Keynote 内容的预测
借助我们以往对苹果公司发展路径的深入研究经验,以及大语言模型的分析能力,我们系统梳理了多年来苹果 WWDC 主题演讲的规律。在 WWDC 2025 即将揭幕之际,我们让 ChatGPT 对今年的 Keynote 内容进行了一个初步预测,聊作存档。等到明…...
【论文笔记】若干矿井粉尘检测算法概述
总的来说,传统机器学习、传统机器学习与深度学习的结合、LSTM等算法所需要的数据集来源于矿井传感器测量的粉尘浓度,通过建立回归模型来预测未来矿井的粉尘浓度。传统机器学习算法性能易受数据中极端值的影响。YOLO等计算机视觉算法所需要的数据集来源于…...

系统掌握PyTorch:图解张量、Autograd、DataLoader、nn.Module与实战模型
本文较长,建议点赞收藏,以免遗失。更多AI大模型应用开发学习视频及资料,尽在聚客AI学院。 本文通过代码驱动的方式,系统讲解PyTorch核心概念和实战技巧,涵盖张量操作、自动微分、数据加载、模型构建和训练全流程&#…...

Linux 下 DMA 内存映射浅析
序 系统 I/O 设备驱动程序通常调用其特定子系统的接口为 DMA 分配内存,但最终会调到 DMA 子系统的dma_alloc_coherent()/dma_alloc_attrs() 等接口。 关于 dma_alloc_coherent 接口详细的代码讲解、调用流程,可以参考这篇文章,我觉得写的非常…...