1、完整word版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=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)*
2、0:element_num-1); p(j)=w*a;endfigure;plot(theta,abs(p),grid onxlabel(theta/radian)ylabel(amplitude)title(8阵元均匀线阵方向图)当来波方向为45度时,仿真图如下:8阵元均匀线阵方向图如下,来波方向为0度,20log(dB)随着阵元数的增加,波束宽度变窄,分辨力提高:仿真图如下:2. 波束宽度与波达方向及阵元数的关系clcclear all close allima=sqrt(-1);element_num1=16; %阵元数element_num2=128; element_num3=102
3、4; 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_num
4、3*d);endfigure;plot(theta,fai,r,theta,psi,b,theta,beta,g),grid onxlabel(theta);ylabel(Width in radians)title(波束宽度与波达方向及阵元数的关系)仿真图如下:3. 当阵元间距 时,会出现栅瓣,导致空间模糊。仿真图如下:4. 类似于时域滤波,天线方向图是最优权的傅立叶变换仿真程序和仿真图如下:clcclear all close allima=sqrt(-1);element_num=32; %阵元数source_num=1; %信源数d_lamda=1/2; %阵元间距与波长的关系thet
5、a=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 onxlabel(theta/radian)ylabel(amplitude)title(按定义的方向图)pfft=fftshift(fft(
6、w,128);subplot(1,2,2)plot(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:0.5:90; %范围theta0=0; %来波方向theta1=20; %干扰方向L=512; %采样单元数for i=1:L amp0
7、=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); %干扰+噪声的自相关矩阵V,D=eig(Rs,Rnj
8、); %(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);subplot(121)plot(theta,F);grid on;hold onplot(the
9、ta0,-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);title(max-SNR功率谱)仿真图如下:6. %ASC旁瓣相消-MSE准则clc;close all;clear allima=sqrt(-1);M=32; %辅助天线的数目d_lamda=.5;theta0=-30; %来波方向thet
10、a1=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(
11、theta1*pi/180)+ampn*(randn(1,1)+ima*randn(1,1);%接收信号(信号+干扰+噪声) s0(ii)=amp0*exp(ima*2*pi*0.5*sin(theta0*pi/180);endRx=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)
12、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,.)plot(theta1,-50:0,.)xlabel(theta/o);ylabel(F/dB);title(MSE准则下的方向图)axis(-90 90 -50 0);%可为x轴和y轴设置一个极限范围仿真图如下:7. %线性约束最小方差(LCMV)准则 clc;clear all ;cl
13、ose 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
14、*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*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:elem
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1