自适应波束形成与Matlab程序代码注解.doc

上传人:scccc 文档编号:11413963 上传时间:2021-08-03 格式:DOC 页数:24 大小:238.50KB
返回 下载 相关 举报
自适应波束形成与Matlab程序代码注解.doc_第1页
第1页 / 共24页
自适应波束形成与Matlab程序代码注解.doc_第2页
第2页 / 共24页
自适应波束形成与Matlab程序代码注解.doc_第3页
第3页 / 共24页
自适应波束形成与Matlab程序代码注解.doc_第4页
第4页 / 共24页
自适应波束形成与Matlab程序代码注解.doc_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《自适应波束形成与Matlab程序代码注解.doc》由会员分享,可在线阅读,更多相关《自适应波束形成与Matlab程序代码注解.doc(24页珍藏版)》请在三一文库上搜索。

1、1. 均匀线阵方向图(1)matlab 程序clc;clear all;close all;imag=sqrt(-1);element_num=32;%阵元数为8d_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;endpat

2、ternmag=abs(p);patternmagnorm=patternmag/max(max(patternmag);patterndB=20*log10(patternmag);patterndBnorm=20*log10(patternmagnorm);figure(1)plot(theta*180/pi,patternmag);grid on;xlabel(theta/radian)ylabel(amplitude/dB)title(num2str(element_num) 阵元均匀线阵方向图,来波方向为 num2str(theta0*180/pi) 度);hold on;figur

3、e(2)plot(theta,patterndBnorm,r);grid on;xlabel(theta/radian)ylabel(amplitude/dB)title(num2str(element_num) 阵元均匀线阵方向图,来波方向为 num2str(theta0*180/pi) 度);axis(-1.5 1.5 -50 0); (2) 仿真结果A.来波方向为0 不归一化归一化B.来波方向为45不归一化归一化C.随着阵元数的增加,波束宽度变窄,分辨力提高,仿真图如下: 非归一化归一化 不归一化 归一化2. 波束宽度与波达方向及阵元数的关系(1)matlab 程序clc;clear a

4、ll;close all;imag=sqrt(-1);element_num1=16;element_num2=128;element_num3=1024;lambda=0.1;d=0.5*lambda;theta=0:0.5:90;for j=1:length(theta)fai(j)=theta(j)*pi/180-asin(sin(theta(j)*pi/180)-lambda/(element_num1*d);psi(j)=theta(j)*pi/180-asin(sin(theta(j)*pi/180)-lambda/(element_num2*d);beta(j)=theta(j)

5、*pi/180-asin(sin(theta(j)*pi/180)-lambda/(element_num3*d);endfigureplot(theta,fai,r,theta,psi,b,theta,beta,g);grid on;xlabel(theta);ylabel(width in radians);title(波束宽度与达波方向及阵元数目的关系);legend(N=16,N=128,N=1024);(2) 仿真结果 结果3. 当阵元间距时,会出现栅瓣,导致空间模糊(1)仿真结果 非归一化归一化4. 类似于时域滤波,天线方向图是最优权的傅立叶变换(1)matlab 程序clc;cl

6、ear all;close all;imag=sqrt(-1);element_num=32;source_num=1;d_lambda=0.5;theta=linspace(-pi/2,pi/2,200);theta0=0;w=exp(imag*2*pi*d_lambda*sin(theta0)*0:element_num-1);for j=1:length(theta) a=exp(imag*2*pi*d_lambda*sin(theta(j)*0:element_num-1); p(j)=w*a;endpatternmag=abs(p);patternmagnorm=patternmag

7、/max(max(patternmag);patterndB=20*log10(patternmag);patterndBnorm=20*log10(patternmagnorm);figure(1)subplot(1,2,1);plot(theta,patterndBnorm);grid on;xlabel(theta/radian);ylabel(amplitude/dB);axis(-2.0 2.0 -50 0);subplot(1,2,2);pfft=fftshift(fft(w,256);pfftmag=abs(pfft);pfftmagnorm=pfftmag/max(max(pf

8、ftmag);pfftdB=20*log10(pfftmagnorm);pfftdBnorm=20*log10(pfftmagnorm);plot(linspace(-pi/2,pi/2,256),pfftdBnorm);grid on;xlabel(theta/radian);ylabel(FFT_amplitude/dB);axis(-2.0 2.0 -50 0);(2)仿真结果5. 最大信噪比准则方向图和功率谱(1) matlab 程序clc;clear all;close all;imag=sqrt(-1);element_num=8;%阵元数为8d_lambda=0.5;%间距为半波

9、长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(imag*2*pi*0.5*sin(theta0*pi/180)*0:element_num-1); j(:,i)=amp1*exp(imag*2*pi*0.5*sin(theta1*pi/180)*0:element_num-1); n(:,i)=ampn*exp(randn(element_num,1)+imag*randn(

10、element_num,1);endRs=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(imag*2*pi*d_lambda*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

11、(f);P=20*log10(abs(p)/max(max(abs(p);subplot(1,2,1)plot(theta,F);grid on;hold on;plot(theta0,-80:0,.);plot(theta1,-80:0,.);xlabel(theta/0);ylabel(F in dB);title(max-SNR 方向图);axis(-90 90 -80 0);hold on;subplot(1,2,2);plot(theta,P,r);grid on;xlabel(theta/0);ylabel(功率 in dB);title(max-SNR 功率谱);grid on;

12、axis(-90 90 -80 0);(2)仿真结果6. ASC旁瓣相消-MSE准则(1) matlab 程序clc;close all;clear all;imag=sqrt(-1);M=32;%辅助天线数目d_lambda=0.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(imag*2*pi*d_lam

13、bda*sin(theta1*pi/180)*0:M-1)+ampn*(randn(M,1)+imag*randn(M,1); %干扰+噪声 s(ii)=amp0*exp(imag*2*pi*d_lambda*sin(theta0*pi/180)+amp1*exp(imag*2*pi*d_lambda*sin(theta1*pi/180)+ampn*(randn(1,1)+imag*randn(1,1);%接收信号(信号+干扰+噪声)s0(ii)=amp0*exp(imag*2*pi*d_lambda*sin(theta0*pi/180);endRx=1/L*jam*jam;r_xd=1/L*

14、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(imag*2*pi*d_lambda*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 on;plot(theta0,-50:

15、0,.);plot(theta1,-50:0,.);xlabel(theta/);ylabel(F/dB);title(MSE准则下的方向图);axis(-90 90 -50 0);(2)仿真结果7. 线性约束最小方差(LCMV)准则 (1) matlab 程序clc;clear all;close all;imag=sqrt(-1);element_num=8;%阵元数d_lambda=0.5;%阵元间距与波长的关系theta=-90:0.5:90; %搜索范围theta0=0; %三个信号源的来波方向theta1=30;theta2=60;L=512;%采样单元数for i=1:L amp

16、0=10*randn(1); amp1=100*randn(1); amp2=10*randn(1); ampn=10;x(:,i)=amp0*exp(imag*2*pi*d_lambda*sin(theta0*pi/180)*0:element_num-1)+amp1*exp(imag*2*pi*d_lambda*sin(theta1*pi/180)*0:element_num-1)+amp2*exp(imag*2*pi*d_lambda*sin(theta2*pi/180)*0:element_num-1)+ampn*(randn(element_num,1)+imag*randn(ele

17、ment_num,1);endRx=1/L*x*x;steer1=exp(imag*2*pi*d_lambda*sin(theta0*pi/180)*0:element_num-1);steer2=exp(imag*2*pi*d_lambda*sin(theta1*pi/180)*0:element_num-1);steer3=exp(imag*2*pi*d_lambda*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;

18、for j=1:length(theta) a=exp(imag*2*pi*d_lambda*sin(theta(j)*pi/180)*0:element_num-1); f(j)=w*a; p(j)=1/(a*inv(Rx)*a);endF=20*log10(abs(f)/(max(max(abs(f);subplot(1,2,1)plot(theta,F);grid on;hold on;plot(theta0,-20:0,.);plot(theta1,-20:0,.);plot(theta2,-20:0,.);xlabel(theta/);ylabel(F/dB);title(Capon

19、 beamforming 方向图);axis(-90 90 -20 0);P=20*log10(abs(p)/(max(max(abs(p);subplot(1,2,2)plot(theta,P);grid on;hold on;plot(theta0,-20:0,.);plot(theta1,-20:0,.);plot(theta2,-20:0,.);xlabel(theta/);ylabel(P/dB);title(Capon beamforming 功率谱);axis(-90 90 -20 0);(2) 仿真结果8. Capon beamforming(1) matlab 程序clc;c

20、lear all;close all;imag=sqrt(-1);element_num=8;%阵元数d_lambda=0.5;%阵元间距与波长的关系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(imag*2*pi*d_lambda*sin(theta0*pi/180)*0:element_num-1)+amp

21、1*exp(imag*2*pi*d_lambda*sin(theta1*pi/180)*0:element_num-1)+amp2*exp(imag*2*pi*d_lambda*sin(theta2*pi/180)*0:element_num-1)+ampn*(randn(element_num,1)+imag*randn(element_num,1);endRx=1/L*x*x;R=inv(Rx);steer=exp(imag*2*pi*d_lambda*sin(theta0*pi/180)*0:element_num-1);w=R*steer/(steer*R*steer);%最优权矢量f

22、or j=1:length(theta) a=exp(imag*2*pi*d_lambda*sin(theta(j)*pi/180)*0:element_num-1); f(j)=w*a; p(j)=1/(a*R*a);endF=20*log10(abs(f)/(max(max(abs(f);subplot(1,2,1)plot(theta,F);grid on;hold on;plot(theta0,-50:0,.);plot(theta1,-50:0,.);plot(theta2,-50:0,.);xlabel(theta/);ylabel(F/dB);title(Capon beamfo

23、rming 方向图);axis(-90 90 -50 0);P=20*log10(abs(p)/(max(max(abs(p);subplot(1,2,2)plot(theta,P);grid on;hold on;xlabel(theta/);ylabel(P/dB);title(Capon beamforming 功率谱);axis(-90 90 -90 0);(2) 仿真结果9. 不同方法估计协方差矩阵的Capon波束形成(1)matlab 程序clc;clear all;close all;imag=sqrt(-1);element_num=8;%阵元数为8d_lambda=0.5;%

24、间距为半波长theta=-90:0.5:90;%扫描范围theta0=0;%来波方向theta1=50;%干扰方向L=1024;%采样单元数for i=1:L amp0=10*randn(1); amp1=50*randn(1); ampn=0.5; s(:,i)=amp0*exp(imag*2*pi*d_lambda*sin(theta0*pi/180)*0:element_num-1); j(:,i)=amp1*exp(imag*2*pi*d_lambda*sin(theta1*pi/180)*0:element_num-1); n(:,i)=ampn*exp(imag*2*pi*rand

25、n(1)*0:element_num-1);endRx=1/L*(s+j+n)*(s+j+n);%接收信号自相关矩阵Rnj=1/L*(j+n)*(j+n);%干拢+噪声的自相关矩阵e=exp(imag*2*pi*d_lambda*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(imag*2*pi*d_lambda*sin(theta(

26、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 on;plot(theta0,-50:0,.);plot(theta1,-50:0,.);xlabel(theta/);ylabel(F(1,2)/dB);title(不同方法估计协方差矩阵的Capon波束形成);axis(-90 9

27、0 -60 0);(2)仿真结果 10 多点约束的Capon波束形成和方向图(1)matlab 程序clc;clear all;close all;imag=sqrt(-1);element_num=8;d_lambda=0.5;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);ampn=0.5*randn(1);%噪声的幅度随机产生

28、,保证噪声与信号之间是不相关的 j(:,i)=amp1*exp(imag*2*pi*d_lambda*sin(theta1*pi/180)*0:element_num-1)+amp2*exp(imag*2*pi*d_lambda*sin(theta2*pi/180)*0:element_num-1)+ampn*exp(imag*2*pi*randn(1)*0:element_num-1); x(:,i)=amp0*exp(imag*2*pi*d_lambda*sin(theta0*pi/180)*0:element_num-1)+j(:,i);%表示接收信号endRx=1/L*x*x;R=in

29、v(Rx);w=amp0*exp(imag*2*pi*d_lambda*sin(theta0*pi/180)*0:element_num-1)+amp1*exp(imag*2*pi*d_lambda*sin(theta1*pi/180)*0:element_num-1)+amp2*exp(imag*2*pi*d_lambda*sin(theta2*pi/180)*0:element_num-1);for j=1:length(theta) a=exp(imag*2*pi*d_lambda*sin(theta(j)*pi/180)*0:element_num-1); f(j)=w*a; p(j)

30、=1/(a*R*a);endF=20*log10(abs(f)/max(max(abs(f);P=20*log10(abs(p)/max(max(abs(p);figure;subplot(1,2,1);plot(theta,F);grid on;hold on;plot(theta0,-50:0,.);plot(theta1,-50:0,.);plot(theta2,-50:0,.);xlabel(theta/);ylabel(F/dB);title(Capon beamforming方向图);axis(-90 90 -50 0);subplot(1,2,2);plot(theta,P);h

31、old on;grid on;plot(theta0,-90:0,.);plot(theta1,-90:0,.);plot(theta2,-90:0,.);xlabel(theta/);ylabel(P/dB);title(Capon beamforming功率谱);(2) 仿真结果11 自适应波束形成方向图(1)matlab 程序clc;clear all;close all;imag=sqrt(-1);element_num=8;c=3e8;f=5e8;lambda=c/f;d_lambda=0.5;theta=-90:0.5:90;theta0=0;theta1=45;theta2=60

32、;L=2048;for i=1:L amp0=10*randn(1); amp1=100*randn(1); amp2=100*randn(1); ampn=10; x(:,i)=amp0*exp(imag*2*pi*d_lambda*sin(theta0*pi/180)*0:element_num-1)+amp1*exp(imag*2*pi*d_lambda*sin(theta1*pi/180)*0:element_num-1)+amp2*exp(imag*2*pi*d_lambda*sin(theta2*pi/180)*0:element_num-1)+ampn*(randn(elemen

33、t_num,1)+imag*randn(element_num,1);endRx=1/L*x*x;steer1=exp(imag*2*pi*d_lambda*sin(theta0*pi/180)*0:element_num-1);steer2=exp(imag*2*pi*d_lambda*sin(theta1*pi/180)*0:element_num-1);steer3=exp(imag*2*pi*d_lambda*sin(theta2*pi/180)*0:element_num-1);C=steer1 steer2 steer3;F=1 0 0;w=inv(Rx)*C*(inv(C*inv

34、(Rx)*C)*F;for j=1:length(theta) a=exp(imag*2*pi*d_lambda*sin(theta(j)*pi/180)*0:element_num-1); f(j)=w*a; p(j)=1/(a*inv(Rx)*a);endF=20*log10(abs(f)/(max(max(abs(f);subplot(1,2,1)plot(theta,F);grid on;hold on;plot(theta0,-50:0,.);plot(theta1,-50:0,.);plot(theta2,-50:0,.);xlabel(theta/);ylabel(F/dB);title(自适应波束形成方向图);axis(-90 90 -50 0);P=20*log10(abs(p)/(max(max(abs(p);subplot(1,2,2)plot(theta,P);grid on;hold on;xlabel(theta/);ylabel(P/dB);title(功率谱);axis(-90 90 -50 0);(2)仿真结果(3) GUI界面24

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1