()波束形成-matlab程序_第1页
()波束形成-matlab程序_第2页
()波束形成-matlab程序_第3页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、(完整版)波束形成-matlab程序1.均匀线阵方向图%8阵元均匀线阵方向图,来波方向为0度clc;clear all;close all;imag=sqrt(-1);element_num=8;%阵元数为8d_lamda=1/2;%阵元间距d与波长lamda的关系theta=linspace(-pi/2,pi/2,200);theta0=45/180*pi;%来波方向 (我觉得应该是天线阵的指向)%theta0=0;%来波方向w=exp(imag*2*pi*d_lamda*sin(theta0)*0:element_num-1');for j=1:length(theta) %(我认

2、为是入射角度,即来波方向,计算阵列流形矩阵a) a=exp(imag*2*pi*d_lamda*sin(theta(j)*0:element_num-1'); p(j)=w'*a; %(matlab中的'默认为共轭转置,如果要计算转置为w.'*a)endfigure;plot(theta,abs(p),grid onxlabel('theta/radian')ylabel('amplitude')title('8阵元均匀线阵方向图')见张小飞的书阵列信号处理的理论和应用节阵列的方向图当来波方向为45度时,仿真图如下

3、:8阵元均匀线阵方向图如下,来波方向为0度,20log(db)随着阵元数的增加,波束宽度变窄,分辨力提高:仿真图如下:2. 波束宽度与波达方向及阵元数的关系clcclear all close allima=sqrt(-1);element_num1=16; %阵元数element_num2=128; element_num3=1024; lamda=; %波长为米d=1/2*lamda; %阵元间距与波长的关系theta=0:90;for j=1:length(theta); fai(j)=theta(j)*pi/180-asin(sin(theta(j)*pi/180)-lamda/(el

4、ement_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);endfigure;plot(theta,fai,'r',theta,psi,'b',theta,beta,'g'),grid onxlabel('theta');ylabel('width in radi

5、ans')title('波束宽度与波达方向及阵元数的关系')仿真图如下:3. 当阵元间距 时,会出现栅瓣,导致空间模糊。仿真图如下:4. 类似于时域滤波,天线方向图是最优权的傅立叶变换仿真程序和仿真图如下:clcclear all close allima=sqrt(-1);element_num=32; %阵元数source_num=1; %信源数d_lamda=1/2; %阵元间距与波长的关系theta=linspace(-pi/2,pi/2,200);theta0=0; %来波方向(ayy应该是阵列指向方向)w=exp(ima*2*pi*d_lamda*sin(t

6、heta0)*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 onxlabel('theta/radian')ylabel('amplitude')title('按定义的方向图')pfft=fftshift(fft(w,128);subplot(1,2,2)plot

7、(linspace(-pi/2,pi/2,128),abs(pfft),grid onxlabel('theta/radian')ylabel('fft_amplitude')title('最优权的傅里叶变换')5. %最大信噪比准则方向图和功率谱clc;clear all;close all;ima=sqrt(-1);element_num=8; %阵元数为8d_lamda=1/2; %间距为半波长theta=-90:90; %范围theta0=0; %来波方向theta1=20; %干扰方向l=512; %采样单元数for i=1:l amp

8、0=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);endrs=1/l*s*s' %信号自相关矩阵rnj=1/l*(j*j'+n*n'); %

9、干扰+噪声的自相关矩阵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;endf=20*log10(abs(f)/max(max(abs(f);p=20*log10(abs(p)/max(max(abs(p);subp

10、lot(121)plot(theta,f);grid on;hold onplot(theta0,-50:0,'.');plot(theta1,-50:0,'.')xlabel('theta/0');ylabel('f in db');title('max-snr 方向图');axis(-90 90 -50 0);hold onsubplot(122)plot(theta,p,'r');grid onxlabel('theta/0');ylabel('功率 in db'

11、;);title('max-snr功率谱')仿真图如下:6. %asc旁瓣相消-mse准则clc;close all;clear allima=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*sin(thet

12、a1*pi/180)*0:m-1')+ampn*(randn(m,1)+ima*randn(m,1); %干扰+噪声 s(ii)=amp0*exp(ima*2*pi*sin(theta0*pi/180)+amp1*exp(ima*2*pi*sin(theta1*pi/180)+ampn*(randn(1,1)+ima*randn(1,1);%接收信号(信号+干扰+噪声) s0(ii)=amp0*exp(ima*2*pi*sin(theta0*pi/180);endrx=1/l*jam*jam' %噪声自相关矩阵,相当于x(t)r_xd=1/l*jam*s'wopt=pi

13、nv(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;endf=20*log10(abs(f)/(max(max(abs(f);figure(1)plot(theta*180/pi,f),grid on,hold onplot(theta0,-50:0,

14、'.')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:; %搜索范围theta0=0; %三个信号源的来波方向t

15、heta1=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-

16、1')+. ampn*(randn(element_num,1)+ima*randn(element_num,1);endrx=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

17、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);endf=10*log10(abs(f)/(max(max(abs(f);figure(1)subplot(121)plot(theta,f),grid on,hold onplot(theta0,-20:0,'

18、.')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 onplot(theta0,-20:0,'.')plot(th

19、eta1,-20:0,'.')plot(theta2,-20:0,'.')xlabel('theta/o');ylabel('功率/db');title('capon beamforming功率谱')仿真图如下:8. %capon beamformingclc;clear all ;close all;ima=sqrt(-1);element_num=8; %阵元数d_lamda=1/2; %阵元间距与波长的关系theta=-90:90; %范围theta0=0; %来波方向theta1=20; %干扰方向thet

20、a2=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)

21、*0:element_num-1')+. ampn*(randn(element_num,1)+ima*randn(element_num,1);endrx=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);%capon最优权矢量for j=1:length(theta); a=exp(ima*2*pi*d_lamda*sin(theta(j)*pi/180)*0:element_num-1')

22、; f(j)=w'*a; p(j)=1/(a'*r*a);endf=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 onplot(theta0,-50:0,'.')plot(theta1,-50:0,'.')plot(theta2,-50:0,'.')xlabel('theta/o');ylabel('f/db&

23、#39;);title('capon beamforming方向图')axis(-90 90 -50 0);subplot(122)plot(theta,p),grid onxlabel('theta/o');ylabel('功率/db');title('capon beamforming功率谱')仿真图如下:9. %不同方法估计协方差矩阵的capon波束形成clc;clear all;close all;ima=sqrt(-1);element_num=8; %阵元数为8d_lamda=1/2; %间距为半波长theta=-90

24、:90; %范围theta0=0; %来波方向theta1=50; %干扰方向l=512;%采样单元数for i=1:l amp0=10*randn(1); amp1=50*randn(1); ampn=; 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'

25、);endrx=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(

26、theta(j)*pi/180)*0:element_num-1'); f1(j)=wopt_rx'*a; f2(j)=wopt_rnj'*a;endf1=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 onplot(theta0,-50:0,'.');plot(theta1,-50:0,'.')xlabel('theta/0

27、9;);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:90; %搜索范围theta0=0; %来波方向theta1=20; %干扰方向theta2=50; %干扰方向l=512; %采样单元数rx=zeros(element_num,el

28、ement_num);%产生协方差矩阵for i=1:l; amp0=10*randn(1); amp1=10*randn(1); amp2=50*randn(1); namp=*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_n

29、um-1'); x(:,i)=amp0*exp(ima*2*pi*1/2*sin(theta0*pi/180)*0:element_num-1')+. j(:,i);%表示接收信号endrx=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)*

30、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);endf=10*log10(abs(f)/max(max(f);%取对数的方向图p=10*log10(abs(p)/max(max(p);%取对数的功率谱估计figure;subplot(121)plot(theta,f),grid on,hold onplot(theta0,-50:0,'.&#

31、39;);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 onplot(theta0,-50:0,'.');plot(theta1,-50:0,'.');plot(theta2,-50:0,'.');xlabel('t

32、heta/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:90; %范围theta0=0; %来波方向theta1=45; %干扰方向theta2=60; %干扰方向l=512; %采样单元数for i=1:l; amp0=10*randn(

33、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);%产生阵列信号endrx=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*

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论