
Related theoretical knowledge and MATLAB simulation results can be found in “Radar Principles” (Issue 10) “Analysis of Coherent and Non-Coherent Accumulation Performance”.Radar Equation MATLAB Simulation Application
close all
clear all
clc
fs=600e6;% Sampling rate
t=5e-6;% Pulse width
f0=2e6;% Carrier frequency
Tr=50e-6;% Repetition period
t1=30e-6;% Pulse position
Nt1=round(fs*t1);
Nt=round(fs*t);
NTr=round(fs*Tr);
tt=0:1/fs:t-1/fs;
y0=cos(2*pi*f0.*tt);
y=[zeros(1,Nt1),y0,zeros(1,(NTr-Nt1-Nt))];
for k=1:32
y1_n_ind=awgn(y,10,'measured');
y1_n(k,:)=y1_n_ind./max(y1_n_ind); % Non-envelope detection, includes phase information
y2_n_ind=abs(y1_n_ind)/max(abs(y1_n_ind));
y2_n(k,:)=y2_n_ind./max(y2_n_ind); % Envelope detection, does not include phase information
end
ttr=0:1/fs:Tr-1/fs;
figure
plot(ttr.*1e6,y1_n(1,:),'k')
xlabel('Time (us)')
ylabel('Normalized Amplitude')
ylim([-1.2 1.2])
title('Echo Signal with Additive White Noise')
y1_n_s=sum(y1_n,1);
figure
plot(ttr.*1e6,y1_n_s./max(y1_n_s),'k')
xlabel('Time (us)')
ylabel('Normalized Amplitude')
ylim([-1.2 1.2])
title('Echo Signal after 32 Pulse Coherent Accumulation')
figure
plot(ttr.*1e6,10*log10(y1_n_s./max(y1_n_s)),'k')
xlabel('Time (us)')
ylabel('Normalized Amplitude (dB)')
ylim([-100 0])
title('Echo Signal after 32 Pulse Coherent Accumulation')
figure
plot(ttr.*1e6,y2_n(1,:),'k')
xlabel('Time (us)')
ylabel('Normalized Amplitude')
ylim([-1.2 1.2])
title('Echo Signal after Envelope Detector')
y2_n_s=sum(y2_n,1);
figure
plot(ttr.*1e6,y2_n_s./max(y2_n_s),'k')
xlabel('Time (us)')
ylabel('Normalized Amplitude')
ylim([-1.2 1.2])
title('Echo Signal after 32 Pulse Non-Coherent Accumulation')
figure
plot(ttr.*1e6,10*log10(y2_n_s./max(y2_n_s)),'k')
xlabel('Time (us)')
ylabel('Normalized Amplitude (dB)')
ylim([-100 0])
title('Echo Signal after 32 Pulse Non-Coherent Accumulation')
Follow us
Get more technical details and challenges
Helping you
Technical understanding made easy
Technical practice with details