www.pudn.com > programradarsystemdisign.zip > fig12_12-13.m


%                        Figure18_3.m 
% 
%    Program to do Spotlight SAR using the rectangular format and 
%    HRR for range compression.    
% 
%                        13 June 2003 
%                     Dr. Brian J. Smith 
 
clear all; 
%%%%%%%%% SAR Image Resolution %%%% 
dr = .50; 
da = .10; 
% dr = 6*2.54/100; 
% da = 6*2.54/100; 
 
%%%%%%%%% Scatter Locations %%%%%%% 
xn = [10000 10015 9985];  % Scatter Location, x-axis 
yn = [0 -20 20];          % Scatter Location, y-axis 
Num_Scatter = 3;          % Number of Scatters 
Rnom = 10000; 
 
%%%%%%%%% Radar Parameters %%%%%%%% 
f_0 =   35.0e9;    % Lowest Freq. in the HRR Waveform 
df =     3.0e6;    % Freq. step size for HRR, Hz 
c =        3e8;    % Speed of light, m/s 
Kr = 1.33; 
Num_Pulse = 2^(round(log2(Kr*c/(2*dr*df)))); 
Lambda = c/(f_0 + Num_Pulse*df/2); 
 
%%%%%%%%% Synthetic Array Parameters %%%%%%% 
du = 0.2; 
L = round(Kr*Lambda*Rnom/(2*da)); 
U = -(L/2):du:(L/2); 
Num_du = length(U); 
 
%%%%%%%%% This section generates the target returns %%%%%% 
Num_U = round(L/du); 
I_Temp = 0; 
Q_Temp = 0; 
for I = 1:Num_U 
    for J = 1:Num_Pulse 
        for K = 1:Num_Scatter 
            Yr = yn(K) - ((I-1)*du - (L/2)); 
            Rt = sqrt(xn(K)^2 + Yr^2); 
            F_ci = f_0 + (J -1)*df; 
            PHI = -4*pi*Rt*F_ci/c; 
            I_Temp = cos(PHI) + I_Temp; 
            Q_Temp = sin(PHI) + Q_Temp; 
        end; 
        IQ_Raw(J,I) = I_Temp + i*Q_Temp; 
        I_Temp = 0.0; 
        Q_Temp = 0.0; 
    end; 
end; 
%%%%%%%%%% End target return section %%%%% 
 
%%%%%%%%%% Range Compression %%%%%%%%%%%%% 
Num_RB = 2*Num_Pulse; 
WR = hamming(Num_Pulse); 
for I = 1:Num_U 
    Range_Compressed(:,I) = fftshift(ifft(IQ_Raw(:,I).*WR,Num_RB)); 
end; 
 
%%%%%%%%%% Focus Range Compressed Data %%%% 
dn = (1:Num_U)*du - L/2; 
PHI_Focus = -2*pi*(dn.^2)/(Lambda*xn(1)); 
for I = 1:Num_RB 
    Temp = angle(Range_Compressed(I,:)) - PHI_Focus; 
    Focused(I,:) = abs(Range_Compressed(I,:)).*exp(i*Temp); 
end; 
%Focused = Range_Compressed; 
 
%%%%%%%%%% Azimuth Compression %%%%%%%%%%%% 
WA = hamming(Num_U); 
for I = 1:Num_RB 
   AZ_Compressed(I,:) = fftshift(ifft(Focused(I,:).*WA')); 
end; 
  
SAR_Map = 10*log10(abs(AZ_Compressed)); 
Y_Temp = (1:Num_RB)*(c/(2*Num_RB*df)); 
Y = Y_Temp - max(Y_Temp)/2; 
X_Temp = (1:length(IQ_Raw))*(Lambda*xn(1)/(2*L)); 
X = X_Temp - max(X_Temp)/2; 
 
image(X,Y,20-SAR_Map);  % 18.3(a)  
%image(X,Y,5-SAR_Map);  % 18.3(b) 
axis([-25 25 -25 25]); axis equal; colormap(gray(64)); 
xlabel('Cross Range (m)'); ylabel('Down Range (m)'); 
grid 
%print -djpeg .jpg