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

📄 sar_r_d_rangewalk.asv

📁 距离分辨率 thrt0=1*pi/6 斜视角 angb=0.6*lamda/res_a 合成波束宽度 Rr=5000
💻 ASV
字号:
clear all;close all;clc;
%%%%%%%%%%%%%%%%%%%%%%%%% 参数设定 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%                     距离徙动忽略条件 rr^2*Rc/32/res_a^2<res_r/8
%                     方位分辨率   0.5*rr/Lc*Rc
%                     V*T*cos(thrt0)*sin(angb/2)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
c=3e8;                      %光速
lamda=0.3;                     %波长R
res_a=5;                    %方位分辨率
res_r=5;                    %距离分辨率
thrt0=1*pi/6;               %斜视角
angb=0.6*lamda/res_a;          %合成波束宽度
Rr=5000;                    %目标中心到航迹垂直距离
V=100;                      %飞机的航速
Tp=1e-6;                    %脉冲宽度
T=10e-3;                    %脉冲周期
B=0.5*c/res_r;              %脉冲频宽
Kr=B/Tp;                     %频率调制率
fc=c/lamda;                    %载波频率
Rx=Rr*tan(thrt0);           %目标区中心横坐标
R0=Rr*sec(thrt0);           %目标区中x心距离
Lc0=1.0*angb*R0;            %正视有效积累长度
Lc=Lc0*sec(thrt0);          %斜视有效积累长度
Tc=Lc/V;                    %相干积累时间  
wx=100;                     %场景长度
wy=100;                     %场景宽度
Na=2^(ceil(log2((wx+wy*tan(thrt0)+Lc)/(T* V))));%回波次数
T=(wx+wy*tan(thrt0)+Lc)/Na/ V;                  %脉冲重复时间间隔
x_rader=[1:Na]*T*V-Na*T*V/2;                 %雷达扫描历程
Soder=10;                                          %点目标间距
y_order=Rr+[-wy/2:Soder:wy/2];                     %目标区纵轴范围
x_order=Rx+[-wx/2:Soder:wx/2];                     %目标区横轴范围

%定义目标形状
order=[ 0, 0,1;1, 0,1;2, 0,1;3, 0,1;
       -1, 0,1;-2, 0,1;-3, 0,1;0, 1,1;
        0,-1,1;-1, 2,1;-1,-2,1;-2, 3,1;
       -2,-3,1;-4, 1,1;-4,-1,1];
%%%%%%%%%%%%%%%%%%%%%%%%%%% 回波产生 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
for i=1:Na         %设定接收波门
    Rrmx(i)=max(sqrt((Rr+wy/2)^2+(x_order+wy/2*tan(thrt0)-x_rader(i)).^2));
    Rrmn(i)=min(sqrt((Rr-wy/2)^2+(x_order-wy/2*tan(thrt0)-x_rader(i)).^2));
end
Rmax=max(Rrmx);       %最大照射距离
Rmin=min(Rrmn);       %最小照射距离
fs=1.2*B;             %调整采样率
Nr=2^ceil(log2((2*(Rmax-Rmin)/c+Tp)*fs));
fs=Nr/(2*(Rmax-Rmin)/c+Tp);
t=[1:Nr]*1/fs;       %定义发射波
s=rectpuls(t-Tp/2,Tp).*exp(j*2*pi*(0.5*Kr*(t-Tp/2).^2)); 
t=2*Rmin/c+t;
for k=1:Na        %定义接收波
    for i=1:length(order(:,1))
        r(k)=sqrt((Rx+order(i,1)*Soder-x_rader(k))^2+(Rr+order(i,2)*Soder)^2);
        tr=2*r(k)/c;
        wa=rectpuls(order(i,1)*Soder-order(i,2)*Soder*tan(thrt0)-x_rader(k),Lc);
        wr=rectpuls(t-Tp/2-tr,Tp);
        sr(k,:)=sr(k,:)+order(i,3)*wa*wr.*exp(j*2*pi*(0.5*Kr*(t-Tp/2-tr).^2-fc*tr));   
    end
end
figure;imagesc(abs(sr));title('回波信号');
%%%%%%%%%%%%%%%%%%%%%%%%% 脉冲压缩 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Hr=conj(fftshift(fft(s)));
fr=[1:Nr]*fs/Nr-fs/2;
sig_fft=fftshift(fft(sr'))';  
for i=1:Na
     sig_fft=(fft(sr(i,:)));     
     deltaR=-x_rader(i)*sin(thrt0);
     RCMC=exp(j*4*pi*deltaR/c.*fr);            %设定走动补偿函数   
     sig_pc(i,:)=ifft(sig_fft.*Hr.*RCMC);
     %sig_pc(i,:)=ifft(sig_fft(i,:).*Hr.*RCMC);
end
% figure;imagesc(abs(sig_pc));title('距离压缩,并校正距离弯曲')
%%%%%%%%%%%%%%%%%%%%%%%%%%  方位方向脉冲压缩    %%%%%%%%%%%%%%%%%%%%%%%                    
tm=((1:Na)*T-Na*T/2)';
Ka=-2* V^2/lamda/R0*cos(thrt0)^2;
ha=rectpuls(tm,Tc).*exp(j*pi*(4*V*sin(thrt0)/lamda*tm+Ka*tm.^2));%方位匹配函数
Ha=conj((fft((ha)))); 
for i=1:Nr
    sig_rd=(fft((sig_pc(:,i)))); 
    temp1=sig_rd.*Ha;
    sig_sar(:,i)=(ifft((temp1)));
end
figure;imagesc(abs(sig_sar));title('方位压缩')

⌨️ 快捷键说明

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