Matlab波束形成程序(3)

2019-04-15 21:07

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方向图')


Matlab波束形成程序(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:26#、27#、28#楼:基础分部验收报告 - -静园居#楼 - 2016-11-20-

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: