阵元间隔为半波长的均匀分布16元线阵
% %阵元间隔为半波长的均匀分布16元线阵,预成指向士arcsin((2i-1)/16)(i=l,2,…,16)的16个均匀加权常规波束,远场有5个互
% 不相关的目标源发射信号,每个源相对于基阵的方位为30和33,且每个信号源到达基阵的信噪比相同,均为10DB,快拍数为1000.进行波
%束域方法和阵元域方法的比较。
clear all
close all
C=340; %%声速
num=16; %% 阵元数
k=1000; %% 快拍数
Bearings=[-5]; %入射信号方位角
d=length(Bearings); %%声源数
D=0.1; %阵元间距
fc=1000; %信号频率
fs=2*fc; %采样频率
snr=10; %信噪比
e_position=[0:num-1]';
s_position=[0:d-1]';
%%波束形成
as=-1/16:1/8:3/16; %波束指向角
as=asin(as);
vs=exp(j*2*pi*fc*e_position*D*sin(as)/C);
w=1/num*vs'; %波束形成矩阵
%%入射信号
aa=90*[-1:0.002:1]; %从-90到90采样1001个点
s=exp(j*pi*[1:d].'*sin(aa/180*pi));
% % s=exp(j*pi*sin(aa/180*pi));
% % s=repmat(s,[d 1]); %声源信号
%%方向向量
Bearings=Bearings*pi/180;
TimeDelay=D*[0:num-1].'*sin(Bearings)/C; %线阵的延迟
A=exp(sqrt(-1)*2*pi*fc*TimeDelay); %方向向量
%%基阵接收信号
X=A*s; %阵列输出信号
X=awgn(X,snr); %加噪声
%%阵元域MUSIC算法
Rxx=(X*X')/k; %协方差矩阵
[EigenVectors,EigenValues]=eig(Rxx);
Lemda=diag(EigenValues); %计算矩阵特征值
[SortedLemda,Index]=sort(Lemda);
Index=flipud(Index); %将特征值降序排列
NoiseSubspace_Z(1:num,1:num-d)=EigenVectors(1:num,Index(d+1:num));%把噪声空间分成两部分,分别为加入信号空间的一部分和噪声
%%在-150到150之间进行搜索
for i=-900:900
az=exp(sqrt(-1)*2*pi*fc*D*[0:num-1]'*sin(i/10*pi/180)/C);
MUSIC_Spec_Z(i+901)=az'*az/(az'*NoiseSubspace_Z*NoiseSubspace_Z'*az);
end
%波束输出
Y=w*X; %方位估计
%%波束域MUSIC算法
B=3; %波束数
Ryy=(Y*Y')/k; %协方差矩阵
[EigenVectors,EigenValues]=eig(Ryy);
Lemda=diag(EigenValues); %计算矩阵特征值
[SortedLemda,Index]=sort(Lemda);
Index=flipud(Index); %将特征值降序排列
NoiseSubspace(1:B,1:B-d)=EigenVectors(1:B,Index(d+1:B));%把噪声空间分成两部分,分别为加入信号空间的一部分和噪声
%%在20到50之间进行搜索
for i=-150:1:50
a=exp(sqrt(-1)*2*pi*fc*D*[0:num-1]'*sin((i/10)*pi/180)/C);
MUSIC_Spec_B(i+151)=a'*w'*w*a/(a'*w'*NoiseSubspace*(w'*NoiseSubspace)'*a);
end
figure(1);
MUSIC_B=abs(MUSIC_Spec_B)/max(abs(MUSIC_Spec_B));
Delta1=[-15:0.1:5];
plot(Delta1,10*log10(MUSIC_B),'r'); %NonNormative Spatial Spectrum
xlabel('角度(度)'),ylabel('空间方位谱(DB)');
hold on
Delta=[-90:0.1:90];
MUSIC_Z=abs(MUSIC_Spec_Z)/max(abs(MUSIC_Spec_Z));
plot(Delta,10*log10(MUSIC_Z));
axis([-15 5 -60 0]);
grid on
%%画波束
% figure(2);
% ss=exp(j*pi*e_position*sin(aa/180*pi)); %% 入射信号
% plot(aa,20*log10(abs(w*ss))),xlabel('角度(度)'),ylabel('波束(DB)');
% axis([-90 90 -40 0]);
阵元间隔为半波长的均匀分布16元线阵相关推荐
- 大尺寸背光检测~Dalsa线阵相机资料
最近大尺寸的背光检测项目,7'~17寸的范围,大大超出了以前做的成熟的3~7寸的范围,相机和镜头之间的选型也必须重新进行,并需要进行一系列的测试. 在3寸~7寸的背光检测项目中,面阵相机是首选,在这个 ...
- 线阵相机的软触发与硬触发详解
如果了解过线阵相机的工作原理后,就会想要知道如何触发线阵相机拍照. 无论何种触发方式,要保证线阵相机拍出的图片不压缩也不拉长,就要保证横向精度与纵向精度相等. 这样每个像素的宽与高对应的世界尺寸是一样 ...
- 2021-2025年中国SWIR-InGaAs光电二极管线阵行业市场供需与战略研究报告
SWIR-InGaAs光电二极管线阵市场的企业竞争态势 该报告涉及的主要国际市场参与者有Goodrich Corporation.Hamamatsu.Xenics.OSI Optoelectronic ...
- 连续线阵波束形成及孔径尺寸影响—麦克风阵列系列(二)
阅读原文还请移步我的知乎专栏: https://www.zhihu.com/column/c_1287066237843951616 继上篇文章,本篇继续学习,包括内容为: 例3.1 连续线阵均匀加权 ...
- DALSA线阵CCD相机开发 之 OpenCV配置
DALSA线阵CCD相机开发 之 OpenCV配置 如果出现以下情况: 在VS MFC中其他程序使用加载OpenCV没有问题. 在dalsa中可以包含头文件,并且代码输入时有提示OpenCV的函数,同 ...
- 德国Basler线阵相机部分参数说明
最近需要用到线阵相机,与Basler相机的销售人员交流了一下,对线阵相机的相关参数的设置有了一定的认识,记录下来,方便别人,方便自己. 一.影响图像清晰度的因素 补光光源.光圈.曝光时间和增益. 1. ...
- PAR 相控阵方法,阵元间隔原理
旁瓣和栅瓣出现条件以及python仿真 Motivation 搞不懂相控阵波束如何变化,为何Massive MIMO的阵元都设定为0.5λ,为何波束有旁瓣?于是查到一个图,搞了2个公式,1个程序初步探 ...
- 百度无人驾驶网约车起步价16元;美团回应共享单车涨价;谷歌公开抨击苹果阻碍跨平台交流|极客头条
「极客头条」-- 技术人员的新闻圈! CSDN 的读者朋友们早上好哇,「极客头条」来啦,快来看今天都有哪些值得我们技术人关注的重要新闻吧. 整理 | 梦依丹 出品 | CSDN(ID:CSDNnews ...
- B站哔哩哔哩21届秋招算法岗笔试 假设货币系统包含面值1元、4元、16元、64元共计4种硬币,以及面值1024元的纸币。现在小明使用1024元的纸币购买了一件价值为N(0<N<=1024)的商品
哔哩哔哩21届秋招算法岗笔试 题目描述: 假设货币系统包含面值1元.4元.16元.64元共计4种硬币,以及面值1024元的纸币.现在小明使用1024元的纸币购买了一件价值为N(0<N<=1 ...
最新文章
- 国航移动门户让我出行无忧
- C++ static静态成员函数详解
- 面试题整理13 合并排序链表去重
- SharePoint PowerShell命令系列 (9) New-SPWeb
- Android EditText密码框的可见性设置
- 【下载!】实时计算正当时!助你轻松get Apache Flink 动向!
- 大数据WEB阶段Spring框架(四)Spring-MVC
- JavaScript教程——JavaScript 的基本语法(标识符)
- Stylish窃取用户数据被 Firefox 和 Chrome剔除
- mysql my includedir_MySQL:读取my.cnf的顺序问题
- Android--获取App应用程序的大小
- 高性能时空计算机应用,中国工程物理研究院计算机应用技术怎么样
- 亿级流量峰值没在怕,“缓存”技术来减压
- 使用TestNG-abbot测试GUI
- Ubuntu 20.04 双系统安装过程(新手)
- 三因子两水平doe_温故而知新 | DOE实验设计学习系列之(三):多因子DOE的魅力 (附视频)...
- 杰理AC632N蓝牙芯片iokey使用解析(通用MCU版)
- Premiere快捷键设置
- html5 画猫全过程svg入门
- 【Unity3D】阴影原理及应用
热门文章
- 2-16 HDO1106
- linux c/c++ 代码使用 doxygen 自动生成文档
- ViewVC 1.1.16 发布,CVS/SVN的Web接口
- Python list 操作
- 视觉与图像系列 几何光学I 近轴光学1 Fermat原理
- UA MATH636 信息论9 Berlekamp-Welch算法
- char和varchar的区别以及尾部空格问题 - sqlserver演示
- 如何编程实现一个基本的微分器
- Python爬虫入门教程石家庄链家租房数据抓取
- [Xcode 实际操作]七、文件与数据-(2)创建文件夹