radar detecting the target
Mostrar comentarios más antiguos
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
Respuestas (0)
Categorías
Más información sobre Environment and Clutter en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!