⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dft_beamforming.m

📁 dft波束形成程序
💻 M
字号:
%--------------DFT波束形成----------------------`
close all;
clear all;
%--------------基阵参数-----------------------
Rate=30

M=32;  %基元数
I=f_df(Rate,M)
d=0.0635;   %阵元间隔
xi=[-M/2+1:1:M/2]*d   ; 
D=d*(M-1);   %基阵尺寸
f=20000;   %信号频率
 fs=10*f;   %采样频率
c=1477;     %声速
lmda=c/f;   %波长
w=2*pi*f;
r0=5;    %焦距 
T=0.0005;
t=[0:1/fs:T];
%-------------目标参数---------------------
%目标一
r1=5.1;  %距离
a1=15; %方向(角度)
phai1=a1*pi/180; %方向(弧度)
%目标二
r2=5 ;
a2=0; %方向(角度)
phai2=a2*pi/180; %方向(弧度)
% sv=zeros(1,512);
% signal5_15=zeros(1,128);



    signal1=I.*exp(j*w*xi*sin(phai1)/c).*exp(-j*w*xi.^2/(2*r1*c));%
   %signal2=exp(j*w*xi(k1)*sin(phai2)/c)*exp(-j*w*xi(k1)^2/(2*r2*c));%
     signal=signal1%+signal2;
% signal5_15(1:2:63)=real(signal);
% signal5_15(2:2:64)=imag(signal);

N=128;

    comp=exp(j*w*xi.^2/(2*r0*c));

% comp5(1:2:63)=real(comp);
% comp5(2:2:64)=imag(comp);


sv=signal.*comp;

y=fft(sv,N);

% y1=abs(y);
% y2=abs(y1).^2;
% plot(10*log10(y2));


z=zeros(1,N);
z(1:N/2)=y(N/2+1:N);
z(N/2+1:N)=y(1:N/2);
y1=z/max(z);
for i=-N/2+1:N/2
    angle(i+N/2)=(asin(lmda*(i-1)/(N*d)))*180/pi;
end
% % svr=real(sv);
% % svi=imag(sv);
% % svc(1:2:63)=svr;
% % svc(2:2:64)=svi;
% % for k1=1:2:M-1
% %     svc(k1)=svr(k1);
% %     svc(k1+1)=svi(k1);
% % end
% fid = fopen('d:\comp15.dat','w');
% fprintf(fid,'%d\n',comp5);
%  fclose(fid);
%  fid = fopen('d:\signal5_15.dat','w');
% fprintf(fid,'%d\n',signal5_15);
% % % fprintf(fid,'%6.2g %12.8g\n',y);
%  fclose(fid);
figure;
plot(angle,20*log10(y1));


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -