Matlab波束形成程序
更新时间:2024-06-02 15:48:01 阅读量: 综合文库 文档下载
波束形成与智能天线
1.均匀线阵方向图
%8阵元均匀线阵方向图,来波方向为0度 clc;
clear all; close all;
imag=sqrt(-1);
element_num=8;%阵元数为8
d_lamda=1/2;%阵元间距d与波长lamda的关系 theta=linspace(-pi/2,pi/2,200); theta0=0;%来波方向
w=exp(imag*2*pi*d_lamda*sin(theta0)*[0:element_num-1]'); for j=1:length(theta)
a=exp(imag*2*pi*d_lamda*sin(theta(j))*[0:element_num-1]'); p(j)=w'*a; end figure;
plot(theta,abs(p)),grid on xlabel('theta/radian') ylabel('amplitude')
title('8阵元均匀线阵方向图')
当来波方向为45度时,仿真图如下:
8阵元均匀线阵方向图如下,来波方向为0度,20log(dB)
随着阵元数的增加,波束宽度变窄,分辨力提高:仿真图如下:
2. 波束宽度与波达方向及阵元数的关系
clc
clear all close all
ima=sqrt(-1);
element_num1=16; %阵元数 element_num2=128; element_num3=1024;
lamda=0.03; %波长为0.03米
d=1/2*lamda; %阵元间距与波长的关系 theta=0:0.5:90;
for j=1:length(theta);
fai(j)=theta(j)*pi/180-asin(sin(theta(j)*pi/180)-lamda/(element_num1*d)); psi(j)=theta(j)*pi/180-asin(sin(theta(j)*pi/180)-lamda/(element_num2*d)); beta(j)=theta(j)*pi/180-asin(sin(theta(j)*pi/180)-lamda/(element_num3*d)); end figure;
plot(theta,fai,'r',theta,psi,'b',theta,beta,'g'),grid on xlabel('theta');
ylabel('Width in radians')
title('波束宽度与波达方向及阵元数的关系') 仿真图如下:
3. 当阵元间距 d??/2 时,会出现栅瓣,导致空间模糊。仿真图如下:
4. 类似于时域滤波,天线方向图是最优权的傅立叶变换 仿真程序和仿真图如下: clc
clear all close all
ima=sqrt(-1);
element_num=32; %阵元数 source_num=1; %信源数
d_lamda=1/2; %阵元间距与波长的关系 theta=linspace(-pi/2,pi/2,200); theta0=0; %来波方向
w=exp(ima*2*pi*d_lamda*sin(theta0)*[0:element_num-1]'); for j=1:length(theta);
a=exp(ima*2*pi*d_lamda*sin(theta(j))*[0:element_num-1]'); p(j)=w'*a; end figure;
subplot(1,2,1)
plot(theta,abs(p)),grid on xlabel('theta/radian') ylabel('amplitude')
title('按定义的方向图') pfft=fftshift(fft(w,128)); subplot(1,2,2)
plot(linspace(-pi/2,pi/2,128),abs(pfft)),grid on xlabel('theta/radian') ylabel('FFT_amplitude') title('最优权的傅里叶变换')
5. %最大信噪比准则方向图和功率谱 clc;
clear all; close all; ima=sqrt(-1);
element_num=8; %阵元数为8 d_lamda=1/2; %间距为半波长 theta=-90:0.5:90; %范围 theta0=0; %来波方向 theta1=20; %干扰方向
L=512; %采样单元数 for i=1:L
amp0=10*randn(1); amp1=200*randn(1); ampn=1;
s(:,i)=amp0*exp(ima*2*pi*1/2*sin(theta0*pi/180)*[0:element_num-1]'); j(:,i)=amp1*exp(ima*2*pi*1/2*sin(theta1*pi/180)*[0:element_num-1]'); n(:,i)=ampn*(randn(element_num,1)+ima*randn(element_num,1)); end
Rs=1/L*s*s'; %信号自相关矩阵
Rnj=1/L*(j*j'+n*n'); %干扰+噪声的自相关矩阵
[V,D]=eig(Rs,Rnj); %(Rs,Rnj)的广义特征值和特征向量 [D,I]=sort(diag(D)); %排序
Wopt=V(:,I(8)); %最优权矢量 for j=1:length(theta)
a=exp(ima*2*pi*d_lamda*sin(theta(j)*pi/180)*[0:element_num-1]'); f(j)=Wopt'*a;
p(j)=a'*Rs*a+a'*Rnj*a; end
F=20*log10(abs(f)/max(max(abs(f)))); P=20*log10(abs(p)/max(max(abs(p)))); subplot(121)
plot(theta,F);grid on;hold on
plot(theta0,-50:0,'.');plot(theta1,-50:0,'.') xlabel('theta/0');ylabel('F in dB'); title('max-SNR 方向图'); axis([-90 90 -50 0]); hold on
subplot(122)
plot(theta,P,'r');grid on
xlabel('theta/0');ylabel('功率 in dB'); title('max-SNR功率谱') 仿真图如下:
6. %ASC旁瓣相消----MSE准则 clc;close all;clear all ima=sqrt(-1);
M=32; %辅助天线的数目 d_lamda=.5;
theta0=-30; %来波方向 theta1=60; %干扰方向 L=512; %采样单元数
s=zeros(1,512); %预划分一个区域 for ii=1:L;
amp0=1*randn(1); %信号的幅度随机产生,保证信号之间是不相关的 amp1=200*randn(1); ampn=1;
jam(:,ii)=amp1*exp(ima*2*pi*0.5*sin(theta1*pi/180)*[0:M-1]')+ampn*(randn(M,1)+ima*randn(M,1)); %干扰+噪声
s(ii)=amp0*exp(ima*2*pi*0.5*sin(theta0*pi/180))+amp1*exp(ima*2*pi*0.5*sin(theta1*pi/180))+ampn*(randn(1,1)+ima*randn(1,1));%接收信号(信号+干扰+噪声) s0(ii)=amp0*exp(ima*2*pi*0.5*sin(theta0*pi/180)); end
Rx=1/L*jam*jam'; %噪声自相关矩阵,相当于X(t) r_xd=1/L*jam*s'; Wopt=pinv(Rx)*r_xd; delta=s0-(s-Wopt'*jam);
delta1=abs(mean(delta.^2)-(mean(delta)).^2) %方差 theta=linspace(-pi/2,pi/2,200); for jj=1:length(theta)
a=exp(ima*2*pi*.5*sin(theta(jj))*[0:M-1]'); f(jj)=Wopt'*a; end
F=20*log10(abs(f)/(max(max(abs(f))))); figure(1)
plot(theta*180/pi,F),grid on,hold on plot(theta0,-50:0,'.') plot(theta1,-50:0,'.') xlabel('theta/o'); ylabel('F/dB');
title('MSE准则下的方向图')
axis([-90 90 -50 0]);%可为x轴和y轴设置一个极限范围
仿真图如下:
7. %线性约束最小方差(LCMV)准则 clc;
clear all ; close all; ima=sqrt(-1);
element_num=8; %阵元数
d_lamda=1/2; %阵元间距与波长的关系 theta=-90:0.5:90-0.3; %搜索范围
theta0=0; %三个信号源的来波方向 theta1=30; theta2=60;
L=512; %采样单元数 for i=1:L;
amp0=10*randn(1); amp1=100*randn(1); amp2=10*randn(1); ampn=10;
x(:,i)=amp0*exp(ima*2*pi*1/2*sin(theta0*pi/180)*[0:element_num-1]')+... amp1*exp(ima*2*pi*1/2*sin(theta1*pi/180)*[0:element_num-1]')+... amp2*exp(ima*2*pi*1/2*sin(theta2*pi/180)*[0:element_num-1]')+... ampn*(randn(element_num,1)+ima*randn(element_num,1)); end
Rx=1/L*x* x';
steer1=exp(ima*2*pi*1/2*sin(theta0*pi/180)*[0:element_num-1]') steer2=exp(ima*2*pi*1/2*sin(theta1*pi/180)*[0:element_num-1]') steer3=exp(ima*2*pi*1/2*sin(theta2*pi/180)*[0:element_num-1]') C=[steer1 steer2 steer3];
F=[1 0 1]'; %把三个方向都作为来波方向 w=inv(Rx)*C*(inv(C'*inv(Rx)*C))*F; for j=1:length(theta);
a=exp(ima*2*pi*d_lamda*sin(theta(j)*pi/180)*[0:element_num-1]'); f(j)=w'*a;
p(j)=1/(a'*inv(Rx)*a); end
f=10*log10(abs(f)/(max(max(abs(f))))); figure(1) subplot(121)
plot(theta,f),grid on,hold on plot(theta0,-20:0,'.') plot(theta1,-20:0,'.') plot(theta2,-20:0,'.') xlabel('theta/o'); ylabel('F/dB');
title('Capon beamforming方向图')
axis([-90 90 -20 0]);%可为x轴和y轴设置一个极限范围 P=10*log10(abs(p)/(max(max(abs(p))))); subplot(122)
plot(theta,P),grid on,hold on plot(theta0,-20:0,'.') plot(theta1,-20:0,'.') plot(theta2,-20:0,'.') xlabel('theta/o'); ylabel('功率/dB');
title('Capon beamforming功率谱') 仿真图如下:
8. êpon beamforming Clc;
clear all ; close all; ima=sqrt(-1);
element_num=8; %阵元数
d_lamda=1/2; %阵元间距与波长的关系 theta=-90:0.5:90; %范围
theta0=0; %来波方向 theta1=20; %干扰方向 theta2=60; %干扰方向 L=1000; %采样单元数 for i=1:L;
amp0=10*randn(1);%信号的幅度随机产生,保证信号之间是不相关的 amp1=200*randn(1); amp2=200*randn(1); ampn=3;
x(:,i)=amp0*exp(ima*2*pi*1/2*sin(theta0*pi/180)*[0:element_num-1]')+... amp1*exp(ima*2*pi*1/2*sin(theta1*pi/180)*[0:element_num-1]')+... amp2*exp(ima*2*pi*1/2*sin(theta2*pi/180)*[0:element_num-1]')+... ampn*(randn(element_num,1)+ima*randn(element_num,1)); end
Rx=1/L*x* x'; R=inv(Rx);
steer=exp(ima*2*pi*1/2*sin(theta0*pi/180)*[0:element_num-1]'); w=R*steer/(steer'*R*steer);êpon最优权矢量 for j=1:length(theta);
a=exp(ima*2*pi*d_lamda*sin(theta(j)*pi/180)*[0:element_num-1]'); f(j)=w'*a;
p(j)=1/(a'*R*a); end
F=20*log10(abs(f)/(max(max(abs(f)))));
P=20*log10(abs(p)/(max(max(abs(p)))));%此处是功率的对数形式 Figure;
subplot(121)
plot(theta,F),grid on,hold on plot(theta0,-50:0,'.') plot(theta1,-50:0,'.') plot(theta2,-50:0,'.') xlabel('theta/o'); ylabel('F/dB');
title('Capon beamforming方向图') axis([-90 90 -50 0]); subplot(122)
plot(theta,P),grid on xlabel('theta/o'); ylabel('功率/dB');
title('Capon beamforming功率谱') 仿真图如下:
9. %不同方法估计协方差矩阵的Capon波束形成 clc;
clear all; close all; ima=sqrt(-1);
element_num=8; %阵元数为8 d_lamda=1/2; %间距为半波长
theta=-90:0.5:90; %范围 theta0=0; %来波方向 theta1=50; %干扰方向 L=512;%采样单元数 for i=1:L
amp0=10*randn(1); amp1=50*randn(1); ampn=0.5;
s(:,i)=amp0*exp(ima*2*pi*1/2*sin(theta0*pi/180)*[0:element_num-1]'); j(:,i)=amp1*exp(ima*2*pi*1/2*sin(theta1*pi/180)*[0:element_num-1]'); n(:,i)=ampn*exp(ima*2*pi*randn(1)*[0:element_num-1]'); end
Rx=1/L*(s+j+n)*(s+j+n)';%接收信号自相关矩阵 Rnj=1/L*(j+n)*(j+n)';%干拢+噪声的自相关矩阵
e=exp(ima*2*pi*d_lamda*sin(theta0*pi/180)*[0:element_num-1]');%来波方向信号 Wopt_Rx=inv(Rx)*e/(e'*inv(Rx)*e);%采用接收信号的权矢量
Wopt_Rnj=inv(Rnj)*e/(e'*inv(Rnj)*e);%采用干拢+噪声信号的权矢量 for j=1:length(theta)
a=exp(ima*2*pi*d_lamda*sin(theta(j)*pi/180)*[0:element_num-1]'); f1(j)=Wopt_Rx'*a; f2(j)=Wopt_Rnj'*a; end
F1=20*log10(abs(f1)/max(max(abs(f1)))); F2=20*log10(abs(f2)/max(max(abs(f2)))); figure;
plot(theta,F1,theta,F2,'r'),grid on;hold on plot(theta0,-50:0,'.');plot(theta1,-50:0,'.') xlabel('theta/0');ylabel('F(1,2)/dB');
title('不同方法估计协方差矩阵的Capon波束形成'); axis([-90 90 -50 0]); 仿真图如下:
10.%多点约束的Capon波束形成和方向图 clc;
clear all ; close all; ima=sqrt(-1);
element_num=8; %阵元数
d_lamda=1/2; %阵元间距与波长的关系 theta=-90:0.3:90; %搜索范围 theta0=0; %来波方向 theta1=20; %干扰方向 theta2=50; %干扰方向
L=512; %采样单元数
Rx=zeros(element_num,element_num);%产生协方差矩阵 for i=1:L;
amp0=10*randn(1); amp1=10*randn(1); amp2=50*randn(1);
namp=0.5*randn(1);%噪声的幅度随机产生,保证噪声与信号之间是不相关的 J(:,i)=amp1*exp(ima*2*pi*1/2*sin(theta1*pi/180)*[0:element_num-1]')+... amp2*exp(ima*2*pi*1/2*sin(theta2*pi/180)*[0:element_num-1]')+... namp*exp(ima*2*pi*randn(1)*[0:element_num-1]');
x(:,i)=amp0*exp(ima*2*pi*1/2*sin(theta0*pi/180)*[0:element_num-1]')+... J(:,i);%表示接收信号 end
Rx=Rx+1/L*x*x'; R=inv(Rx);
w=amp0*exp(ima*2*pi*1/2*sin(theta0*pi/180)*[0:element_num-1]')+... amp2*exp(ima*2*pi*1/2*sin(theta2*pi/180)*[0:element_num-1]')+... amp1*exp(ima*2*pi*1/2*sin(theta1*pi/180)*[0:element_num-1]'); for j=1:length(theta);
a=exp(ima*2*pi*d_lamda*sin(theta(j)*pi/180)*[0:element_num-1]'); f(j)=w'*a;
p(j)=1/(a'*R*a); end
F=10*log10(abs(f)/max(max(f)));%取对数的方向图
P=10*log10(abs(p)/max(max(p)));%取对数的功率谱估计 figure;
subplot(121)
plot(theta,F),grid on,hold on
plot(theta0,-50:0,'.');plot(theta1,-50:0,'.');plot(theta2,-50:0,'.'); xlabel('theta/o'); ylabel('F/dB');
title('capon beamforming方向图')
subplot(122)
plot(theta,P),grid on,hold on
plot(theta0,-50:0,'.');plot(theta1,-50:0,'.');plot(theta2,-50:0,'.'); xlabel('theta/o'); ylabel('P/dB');
title('capon beamforming功率谱') 仿真图如下:
大作业
%自适应波束形成方向图 clc;
clear all; close all; ima=sqrt(-1);
element_num=8; %阵元数 c=3e8; f=500e6; lamda=c/f;
d=1/2*lamda; %阵元间距与波长的关系 theta=-90:0.5:90; %范围 theta0=0; %来波方向 theta1=45; %干扰方向 theta2=60; %干扰方向 L=512; %采样单元数 for i=1:L;
amp0=10*randn(1);%信号的幅度随机产生,保证信号之间是不相关的 amp1=100*randn(1); amp2=100*randn(1); ampn=10;
x(:,i)=amp0*exp(ima*2*pi*1/2*sin(theta0*pi/180)*[0:element_num-1]')+... amp1*exp(ima*2*pi*1/2*sin(theta1*pi/180)*[0:element_num-1]')+... amp2*exp(ima*2*pi*1/2*sin(theta2*pi/180)*[0:element_num-1]')+...
ampn*(randn(element_num,1)+ima*randn(element_num,1));%产生阵列信号 end
Rx=1/L*x* x';
steer1=exp(ima*2*pi*1/2*sin(theta0*pi/180)*[0:element_num-1]') steer2=exp(ima*2*pi*1/2*sin(theta1*pi/180)*[0:element_num-1]') steer3=exp(ima*2*pi*1/2*sin(theta2*pi/180)*[0:element_num-1]') C=[steer1 steer2 steer3];
F=[1 0 0]';%把0度方向作为来波方向 w=inv(Rx)*C*(inv(C'*inv(Rx)*C))*F; for j=1:length(theta);
a=exp(ima*2*pi*1/2*sin(theta(j)*pi/180)*[0:element_num-1]'); f(j)=w'*a;
p(j)=1/(a'*inv(Rx)*a); end
F=20*log10(abs(f)/(max(max(abs(f)))));
P=20*log10(abs(p)/(max(max(abs(p)))));%此处是功率的对数形式 figure
subplot(121)
plot(theta,P),grid on,hold on
xlabel('theta/o'); ylabel('F/dB');
title('阵列信号方向图') axis([-90 90 -50 0]); subplot(122)
plot(theta,F),grid on,hold on; plot(theta0,-50:0,'.') plot(theta1,-50:0,'.') plot(theta2,-50:0,'.') xlabel('theta/o');
ylabel('功率/dB');axis([-90 90 -50 0]); title('自适应波束形成方向图') 仿真图如下:
:
当采样数L=2048时仿真图如下:
当采样数L=2048时仿真图如下:
当L=512,幅度为
amp0=10*randn(1); amp1=200*randn(1); amp2=200*randn(1);
ampn=10;时仿真图如下:
当L=512,幅度为
amp0=100*randn(1); amp1=200*randn(1); amp2=200*randn(1);
ampn=10;时仿真图如下:
当L=512,幅度为
amp0=100*randn(1); amp1=10*randn(1); amp2=10*randn(1);
ampn=10;时仿真图如下:
当L=2048,幅度为 amp0=10*randn(1); amp1=50*randn(1); amp2=50*randn(1);
ampn=10;时仿真图如下:
当L=2048,幅度 amp0=10*randn(1); amp1=500*randn(1); amp2=500*randn(1);
ampn=10;时仿真图如下:
正在阅读:
Matlab波束形成程序06-02
架线计算方法01-29
陈涉世家书下注释08-29
初中化学《固体药品的取用》试讲稿_答辩02-23
模拟电路习题解答06-04
CO2气体保护焊培训教103-08
2018中考物理二模试卷(附答案)10-19
环境影响评价报告 - 图文04-12
浙江省短历时暴雨01-15
二年级上册句子排序练习题11-25
- 《江苏省环境水质(地表水)自动监测预警系统运行管理办法(试行)》
- 安乐死合法化辩论赛立论稿(浙大新生赛)
- 公共科目模拟试卷公务员考试资料
- 我国固定资产投资FAI对GDP的影响
- 大学生创新创业训练计划项目申请书大创项目申报表
- 完美版—单片机控制步进电机
- 2013资阳中考化学试题
- 18.两位数减一位数退位(397道)
- 工程量计算规则
- 二年级操行评语(下)
- 第3章 流程控制语句
- 浅基桥墩加固技术
- 课题研究的主要方法
- 5100软件说明书 - 图文
- 车间技术员年终总结
- 关于印发《中铁建工集团开展项目管理实验室活动方案》的通知
- 经典诵读结题报告
- 地下水动力学习题答案
- 2018年全国各地高考数学模拟试题平面解析几何试题汇编(含答案解
- 街道办事处主任2018年度述职述廉报告
- 波束
- 形成
- 程序
- Matlab
- 传热学-第五版-中建工-课后答案详解
- 着眼军事斗争准备 培育民兵战斗精神
- 食用天然色素的提取方法及发展趋势
- 2011年中考数学备考专训试卷(1)
- 插板底座注塑模具设计
- 人教版_七年级数学_第四章_图形认识初步
- 昆明理工大学年产900吨对硝基苯乙酮毕业设计说明书
- 数学建模习题集
- 公共危机管理理论
- APQP FMEA-培训试卷
- 公民课题课题研究中期总结报告(最新)
- 重庆市2018年普通高等学校招生全国统一考试4月调研测试卷英语
- 武汉市地产集团应急调度指挥中心建设方案
- 2015-2020年中国唑蚜威行业监测及投资决策研究报告 - 图文
- 新型网络环境下高职学生英语自主学习情况探析-最新资料
- 2019-2020学年度中考历史提分训练中国的社会主义探索时期含
- 2019-2020学年度中考数学总复习全程考点训练19四边形和平行
- 浅谈\\"Chant\\"在小学英语课堂教学中的促进作用-文档
- 专四09年真题答案
- 广西高校就业指导网络教育现状调查分析-2019年文档