radar detecting the target
Show older comments
Problem Statement: Use the MATLAB code for MATLAB Assignment-4. Use the SNR for target #1 and plot the probability of detecting the target during its full flight from t=0 seconds to t=60 seconds (i.e. make a plot of PD vs. Time) for the following three cases (plot all 3 curves on the same plot):
- 1-detection in 1 dwell (trial),
- 2-detections out of 4 dwells (trials),
- 5-detections out of 8 dwells (trials)
Also, give the resulting PFA for each of the three cases above. Assumptions:
- Target rcs = 60 m2
- Target fluctuation type is SW-1
- Initial required 1-dwell PFA = 10-5.
Assignment-4 code:
%% Radar Parameters
clear all;clf
clc;
%
% Now we will calculate maximum unambiguous range, Ru
c = 3e8; % Speed of light (m/s)
fo = 5e9; % Radar center frequency (Hz)
lam = c/fo; % Radar wavelength (m)
to = 0; % Starting time
tf = 60; % Ending time (sec)
scan_rpm = 120; % Antenna scanning rate (rev/min)
scan_rps = scan_rpm/60; % Antenna scannning rate (rev/sec) or (360/sec)
scan_period = 1/scan_rps % Time to complete one rev (sec/rev) or (sec/360)
time_for_deg = scan_period/360 % Time for the antenna to turn ONE deg
t = to:time_for_deg:tf; % The time domain for the simulation
tot_incs = length(t)
%
%% Initial Targets Parameters for THREE Targets
% POSITION VECTORS
x_init = [12000 -14000 15000]; % Initial target location x-coordinates
y_init = [6000 9000 11000]; % Initial target location y-coordinates
z_init = [6000 7000 8000]; % Initial target location z-coordinates
Pos_vectors_init = [x_init(1) y_init(1) z_init(1); x_init(2) ...
y_init(2) z_init(2); x_init(3) y_init(3) z_init(3)];
% VELOCITY VECTORS
vx = [-300 250 -275]; % velocity vector x-component (m/s)
vy = [200 150 250]; % No velocity componennt in y-axis
vz = [0 0 0]; % No velocity componennt in z-axis
Vel_vectors_init = [vx(1) vy(1) vz(1); vx(2) vy(2) vz(2); vx(3) vy(3) vz(3)];
%
%% Creating Target Parameter Vectors for Full Flight Duration
% Initiating target locations, and angles
no_targets = length(x_init);
Pos_vectors = zeros(no_targets, 3, tot_incs); % position vectors for all time increments
Pos_vectors(:,:,1) = Pos_vectors_init;
Vel_vectors = zeros(no_targets, 3, tot_incs); % Range to targets (m)
Vel_vectors(:,:,1) = Vel_vectors_init;
R = zeros(no_targets,tot_incs); % Range to targets (m)
vr = zeros(no_targets,tot_incs); % Radial velocity (m/s)
fD = zeros(no_targets,tot_incs); % Doppler frequency vector (Hz)
%
%% Now inserting the initial parameters into the target vectors
for tgt = 1:no_targets
R(tgt,1) = norm(Pos_vectors(tgt,:,1));
vr(tgt,1) = Vel_vectors(tgt,:,1)*Pos_vectors(tgt,:,1)'/norm(Pos_vectors(tgt,:,1));
fD(tgt,1) = -2*vr(tgt,1)/lam;
end
%
%% Now Incrementing the time by one degree rotation and updating the calculations
%
for i= 2:tot_incs
for tgt = 1:no_targets
Pos_vectors(tgt,:,i) = Pos_vectors(tgt,:,i-1) + Vel_vectors(tgt,:,i-1)*time_for_deg;
R(tgt,i) = norm(Pos_vectors(tgt,:,i));
Vel_vectors(tgt,:,i) = Vel_vectors(tgt,:,i-1);
vr(tgt,i) = Vel_vectors(tgt,:,i)*Pos_vectors(tgt,:,i)'/norm(Pos_vectors(tgt,:,i));
fD(tgt,i) = -2*vr(tgt,i)/lam;
end
end
%
%% Plotting results
clf(1)
figure(1)
hold on
grid on
for tgt = 1:3
plot(R(tgt,:),fD(tgt,:),'LineWidth',1)
end
hold off
%% SNR Calculations (Using the Radar Rannge Equation)
k = 1.38e-23;
To = 290;
snr = zeros(no_targets,tot_incs); % SNR for all time increments
snr_db = zeros(no_targets,tot_incs); % SNR for all time increments
% Radar parameters
Gt = 1000;
Gr = Gt;
Pt = 4e3;
np = 40;
NF = 20;
B = 2e6;
Ls = 200;
% Target parameters (3 targets)
Sig = [60 140 200];
%%
clf(2)
figure(2)
hold on
grid on
for tgt = 1:3
snr(tgt,:) = Pt*Gt*Gr*lam^2*Sig(tgt)*np./((4*pi)^3.*R(tgt,:).^4 ...
* k*To*NF*B*Ls);
snr_db(tgt,:) = 10*log10(snr(tgt,:));
plot(t,snr_db(tgt,:),'LineWidth',1)
end
plot(t,15+zeros(size(t)),'--')
hold off
Answers (0)
Categories
Find more on Environment and Clutter in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!