chirp信号脉冲压缩,用于雷达信号处理,产生chirp信号后进行压缩,以实现高距离分辨力
Posted fpga&matlab
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了chirp信号脉冲压缩,用于雷达信号处理,产生chirp信号后进行压缩,以实现高距离分辨力相关的知识,希望对你有一定的参考价值。
% Author: Tian Liyu, BIT
% Date: Nov 16, 2009
% Description: chirp pulse compression
%matlab ver: 7.0.4, R14
function chirp_pc_result = Chirp_Pulse_Comp(LFM_Fre_Width, LFM_T_Width, Window_Type, Fs)
T = [0: 1/Fs : LFM_T_Width];
F0 = -LFM_Fre_Width/2;
%F0 = 0; %如果F0=0, 加窗后脉压的结果中的主瓣有分裂; 用复chirp信号仿真就不存在这个问题
T1 = LFM_T_Width;
F1 = F0 + LFM_Fre_Width;
chirp_echo = chirp(T,F0,T1,F1);
figure(1)
plot(chirp_echo);
title('chirp回波信号')
%chirp_MF: chirp脉压的匹配滤波器, 信号的(共轭)反转
chirp_MF = chirp_echo(length(chirp_echo) : -1 : 1);
win_len = length(chirp_echo);
%加窗
windows_chirp = ones( win_len , 1).';
switch Window_Type
case 0,
windows_chirp = ones( win_len , 1).'; %矩形窗
case 1,
windows_chirp = hamming( win_len ).';
case 2,
windows_chirp = hanning( win_len ).';
case 3,
windows_chirp = blackman( win_len ).';
otherwise,
end
chirp_MF = chirp_MF .* windows_chirp;
%chirp脉冲压缩
chirp_pc_result = abs(conv(chirp_echo, chirp_MF));
figure(2)
plot(chirp_pc_result);
title('chirp脉压的结果')
figure(3)
plot(20*log10(chirp_pc_result/max(chirp_pc_result)));
title('chirp脉压的结果(dB表示)')
ylabel('dB');
grid
D84
以上是关于chirp信号脉冲压缩,用于雷达信号处理,产生chirp信号后进行压缩,以实现高距离分辨力的主要内容,如果未能解决你的问题,请参考以下文章
对雷达常用的线性调频信号(lfm信号)进行脉冲压缩时的关键问题进行仿真