雷达系统匹配滤波器的仿真一.匹配滤波器原理在输入为确知加白噪声的情况下,所得输出信噪比最大的线性滤波器就是匹配滤波器,设一线性滤波器的输入信号为)(t x :)()()(t n t s t x += (1.1)其中:)(t s 为确知信号,)(t n 为均值为零的平稳白噪声,其功率谱密度为2/No 。
设线性滤波器系统的冲击响应为)(t h ,其频率响应为)(ωH ,其输出响应:)()()(t n t s t y o o += (1.2)输入信号能量: ∞<=⎰∞∞-dt t s s E )()(2(1.3)输入、输出信号频谱函数:dt e t s S t j ⎰∞∞--=ωω)()()()()(ωωωS H S o =ωωωπωωd eS H t s tj o ⎰∞-=)()(21)( (1.4)输出噪声的平均功率:ωωωπωωπd P H d P t n E n n o o ⎰⎰∞∞-∞∞-==)()(21)(21)]([22 (1.5))()()(21)()(2122ωωωπωωπωωd P H d eS H SNR n t j o o⎰⎰∞∞-∞∞-=(1.6)利用Schwarz 不等式得:ωωωπd P S SNR n o ⎰∞∞-≤)()(212(1.7)上式取等号时,滤波器输出功率信噪比o SNR 最大取等号条件:otj n eP S H ωωωαω-=)()()(* (1.8) 当滤波器输入功率谱密度是2/)(o n N P =ω的白噪声时,MF 的系统函数为:,)()(*o t j e kS H ωωω-=oN k α2=(1.9) k 为常数1,)(*ωS 为输入函数频谱的复共轭,)()(*ωω-=S S ,也是滤波器的传输函数)(ωH 。
oso N E SNR 2=(1.10) Es 为输入信号)(t s 的能量,白噪声)(t n 的功率谱为2/o No SNR 只输入信号)(t s 的能量Es 和白噪声功率谱密度有关。
白噪声条件下,匹配滤波器的脉冲响应:)()(*t t ks t h o -= (1.11) 如果输入信号为实函数,则与)(t s 匹配的匹配滤波器的脉冲响应为: )()(t t ks t h o -= (1.12) k 为滤波器的相对放大量,一般1=k 。
匹配滤波器的输出信号:)()(*)()(o o o t t kR t h t s t s -== (1.13) 匹配滤波器的输出波形是输入信号的自相关函数的k 倍,因此匹配滤波器可以看成是一个计算输入信号自相关函数的相关器,通常k =1。
二.线性调频信号(LFM )脉冲压缩雷达能同时提高雷达的作用距离和距离分辨率。
这种体制采用宽脉冲发射以提高发射的平均功率,保证足够大的作用距离;而接受时采用相应的脉冲压缩算法获得窄脉冲,以提高距离分辨率,较好的解决雷达作用距离与距离分辨率之间的矛盾。
脉冲压缩雷达最常见的调制信号是线性调频(Linear Frequency Modulation )信号,接收时采用匹配滤波器(Matched Filter )压缩脉冲。
LFM 信号(也称Chirp 信号)的数学表达式为:22()2()()c K j f t t t s t rect Te π+= (2.1)式中c f 为载波频率,()trect T为矩形信号,11()0,t t rect TT elsewise⎧ , ≤⎪=⎨⎪ ⎩(2.2) BK T=,是调频斜率,于是,信号的瞬时频率为()22c T T f Kt t + -≤≤,如图1图1 典型的chirp 信号(a )up-chirp(K>0)(b )down-chirp(K<0)将2.1式中的up-chirp 信号重写为:2()()c j f t s t S t e π= (2.3) 式中,2()()j Kt t S t rect e T π= (2.4)是信号s(t)的复包络。
由傅立叶变换性质,S(t)与s(t)具有相同的幅频特性,只是中心频率不同而以,因此,Matlab 仿真时,只需考虑S(t)。
通过MATLAB 仿真可得到信号时域和频域波形如下图所示:图2.LFM 信号的时域波形和幅频特性三.线性调频信号的匹配滤波器信号()s t 的匹配滤波器的时域脉冲响应为:*0()()h t s t t =- (3.1)0t 是使滤波器物理可实现所附加的时延。
理论分析时,可令0t =0,重写3.1式,*()()h t s t =- (3.2)将2.1式代入3.2式得:22()()c j f t j Kt th t rect e e Tππ-=⨯ (3.3 )图3.LFM 信号的匹配滤波如图3,()s t 经过系统()h t 得输出信号()o s t ,2222()()()()*()()()()()()()c c o j f u j f t u j Ku j K t u s t s t h t s u h t u du h u s t u du u t u e rect e e rect e du T T ππππ∞∞-∞-∞∞----∞= =- =-- =⨯ ⎰⎰⎰当0t T ≤≤时,22222022222()2sin ()TT c c j Kt j Ktu t j Ktu T j f t j Kt T j f ts t ee due ee t j Kt K T t t eKtπππππππππ---==⨯--- =⎰(3.4)当0T t -≤≤时,22222022222()2sin ()T T c c t j Kt j Ktu j Ktu T j f tj Kt T j f t s t e e dut e ee j Kt K T t t eKtπππππππππ+---=+ =⨯--+ =⎰(3.5) 合并3.4和3.5两式:20sin (1)()()2c j f t tKT tt T s t T rect e KTt Tπππ-= (3.6) 3.6式即为LFM 脉冲信号经匹配滤波器得输出,它是一固定载频c f 的信号。
当t T ≤时,包络近似为辛克(sinc )函数。
0()()()()()22t tS t TSa KTt rect TSa Bt rect T Tππ==(3.7)图4.匹配滤波的输出信号如图4,当Bt ππ=±时,1t B =±为其第一零点坐标;当2Bt ππ=±时,12t B =±,习惯上,将此时的脉冲宽度定义为压缩脉冲宽度。
1122B B τ=⨯= (3.8) LFM 信号的压缩前脉冲宽度T 和压缩后的脉冲宽度τ之比通常称为压缩比D , TD TB τ== (3.9)3.9式表明,压缩比也就是LFM 信号的时宽频宽积。
由(2.1),(3.3),(3.6)式,s(t),h(t),so(t)均为复信号形式,Matab 仿真时,只需考虑它们的复包络S(t),H(t),So(t)即可。
经MA TLAB 仿真得线性调频信号经过匹配滤波器的波形信号如图5所示:图5.Chirp 信号的匹配滤波图5中,时间轴进行了归一化,(/(1/)t B t B =⨯)。
图中反映出理论与仿真结果吻合良好。
第一零点出现在1±(即1B±)处,此时相对幅度-13.4dB 。
压缩后的脉冲宽度近似为1B(12B ±),此时相对幅度-4dB,这理论分析(图3.2)一致。
如果输入脉冲幅度为1,且匹配滤波器在通带内传输系数为1,则输出脉冲幅度为D TB kT ==2,即输出脉冲峰值功率o P 比输入脉冲峰值功率P 增大了D 倍。
四.雷达系统对线性调频信号的检测在实际实际雷达系统中,LFM 脉冲的处理过程如图6。
图6 LFM 信号的接收处理过程雷达回波信号()r s t 经过正交解调后,得到基带信号,再经过匹配滤波脉冲压缩后就可以作出判决。
正交解调原理如图7,雷达回波信号经正交解调后得两路相互正交的信号I(t)和Q(t)。
一种数字方法处理的的匹配滤波原理如图8。
图7 正交解调原理图8 一种脉冲压缩雷达的数字处理方式以下各图为经过脉冲压缩输出的已加噪声的线性调频信号(模拟雷达回波信号)的matlab仿真结果:波形参数脉冲宽度T=10s ,载频频率f=10khz,脉冲宽c度B=30Mhz图9.SNR=30的脉冲压缩输入输出波形图10 SNR=20的脉冲压缩输入输出波形图11 SNR=0的脉冲压缩输入输出波形图12 SNR=-10的脉冲压缩输入输出波形图13. SNR=-20的脉冲压缩输入输出波形图14. SNR=-30的脉冲压缩输入输出波形)(t S 信号中白噪声n 为:)))(,1(*))(,1((*)*5.0(t t S length randn j S length randn SNR sqrt n +=、仿真表明,线性调频信号经匹配滤波器后脉冲宽度被大大压缩,信噪比得到了显著提高,但是雷达目标回波信号信号的匹配滤波仿真结果图9-14可以看出当信噪比小于零时随着信噪比的不断减小,所噪声对线性调频信号的干扰愈来愈明显,当信噪比达到-30dB 时已经有部分回波信号被淹没了,也就是说当信噪比更小时即使是经过脉冲压缩,噪声仍能淹没有用信号。
五.程序附录1.线性频率调制信号(LFM )仿真:%%demo of chirp signalT=10e-6; %pulse duration10usB=30e6; %chirp frequency modulation bandwidth 30MHzK=B/T; %chirp slopeFs=2*B;Ts=1/Fs; %sampling frequency and sample spacingN=T/Ts;t=linspace(-T/2,T/2,N);St=exp(1i*pi*K*t.^2); %generate chirp signalsubplot(211)plot(t*1e6,real(St));xlabel('Time in u sec');title('Real part of chirp signal');grid on ;axis tight ;subplot(212)freq=linspace(-Fs/2,Fs/2,N);plot(freq*1e-6,fftshift(abs(fft(St))));xlabel('Frequency in MHz');title('Magnitude spectrum of chirp signal');grid on ;axis tight ;2 LFM 信号的匹配滤波仿真%%demo of chirp signal after matched filterT=10e-6; %pulse duration10usB=30e6; %chirp frequency modulation bandwidth 30MHzK=B/T; %chirp slopeFs=10*B;Ts=1/Fs; %sampling frequency and sample spacingN=T/Ts;t=linspace(-T/2,T/2,N);St=exp(j*pi*K*t.^2); %chirp signalHt=exp(-j*pi*K*t.^2); %matched filterSot=conv(St,Ht); %chirp signal after matched filter subplot(211)L=2*N-1;t1=linspace(-T,T,L);Z=abs(Sot);Z=Z/max(Z); %normalizeZ=20*log10(Z+1e-6);Z1=abs(sinc(B.*t1)); %sinc functionZ1=20*log10(Z1+1e-6);t1=t1*B;plot(t1,Z,t1,Z1,'r.');axis([-15,15,-50,inf]);grid on;legend('emulational','sinc');xlabel('Time in sec \times\itB');ylabel('Amplitude,dB');title('Chirp signal after matched filter');subplot(212) %zoomN0=3*Fs/B;t2=-N0*Ts:Ts:N0*Ts;t2=B*t2;plot(t2,Z(N-N0:N+N0),t2,Z1(N-N0:N+N0),'r.');axis([-inf,inf,-50,inf]);grid on;set(gca,'Ytick',[-13.4,-4,0],'Xtick',[-3,-2,-1,-0.5,0,0.5,1,2,3]);xlabel('Time in sec \times\itB');ylabel('Amplitude,dB');title('Chirp signal after matched filter (Zoom)');3.LFM信号的雷达监测仿真% input('\nPulse radar compression processing: \n ');clear;close all;T=10e-6;B=30e6;Rmin=8500;Rmax=11500;R=[9000,10000,10200];RCS=[1 1 1 ];C=3e8;K=B/T;Rwid=Rmax-Rmin;Twid=2*Rwid/C;Fs=5*B;Ts=1/Fs;Nwid=ceil(Twid/Ts);t=linspace(2*Rmin/C,2*Rmax/C,Nwid);M=length(R);td=ones(M,1)*t-2*R'/C*ones(1,Nwid);SNR=[1,0.1,0.01,0.001,10,100,1000];for i=1:1:7Srt1=RCS*(exp(1i*pi*K*td.^2).*(abs(td)<T/2));n=sqrt(0.5*SNR(i))*(randn(size(Srt1))+1i*randn(size(Srt1)));Srt=Srt1+n;%Digtal processing of pulse compression radar using FFT and IFFT Nchirp=ceil(T/Ts);Nfft=2^nextpow2(Nwid+Nwid-1);Srw=fft(Srt,Nfft);Srw1=fft(Srt1,Nfft);t0=linspace(-T/2,T/2,Nchirp);St=exp(1i*pi*K*t0.^2);Sw=fft(St,Nfft);Sot=fftshift(ifft(Srw.*conj(Sw)));Sot1=fftshift(ifft(Srw1.*conj(Sw)));N0=Nfft/2-Nchirp/2;Z=abs(Sot(N0:N0+Nwid-1));figuresubplot(211)plot(t*1e6,real(Srt));axis tight;xlabel('us');ylabel('幅度')title(['加噪线性调频信号压缩前,SNR =',num2str(-1*10*log10(SNR(i)))]); subplot(212)plot(t*C/2,Z)xlabel('Range in meters');ylabel('幅度')title(['加噪线性调频信号压缩后,SNR =',num2str(-1*10*log10(SNR(i)))]); end。