信号检测实验报告

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

HarbinInstituteofTechnology匹配滤波器实验报告课程名称:信号检测理论院系:电子与信息工程学院姓名:高亚豪学号:14SD05003授课教师:郑薇哈尔滨工业大学1.实验目的通过Matlab编程实现对白噪声条件下的匹配滤波器的仿真,从而加深对匹配滤波器及其实现过程的理解。通过观察输入输出信号波形及频谱图,对匹配处理有一个更加直观的理解,同时验证匹配滤波器具有时间上的适应性。2.实验原理对于一个观测信号()rt,已知它或是干扰与噪声之和,或是单纯的干扰,即0()()()()autntrtnt这里()rt,()ut,()nt都是复包络,其中0a是信号的复幅度,()ut是确知的归一化信号的复包络,它们满足如下条件。2|()|d1utt201||2aE其中E为信号的能量。()nt是干扰的均值为0,方差为0N的白噪声干扰。使该信号通过一个线性滤波系统,有效地滤除干扰,使输出信号的信噪比在某一时刻0t达到最大,以便判断信号的有无。该线性系统即为匹配滤波器。以()ht代表系统的脉冲响应,则在信号存在的条件下,滤波器的输出为0000()()()d()()d()()dytrthauthnth右边的第一项和第二项分别为滤波器输出的信号成分和噪声成分,即00()()()dxtauth0()()()dtnth则输出噪声成分的平均功率(统计平均)为220E[|()|]=E[|()()d|]tnth**00*000200=E[()(')]()(')dd'=2()(')(')dd'2|()|dntnthhNhhNh而信号成分在0t时刻的峰值功率为2220000|()||||()()d|xtauth输出信号在0t时刻的总功率为22000E[|()|]E[|()()|]ytxtt22**0000002200E[|()||()|()()()()]|()|E[|()|]xttxtttxtxtt上式中输出噪声成分的期望值为0,即0E[()]0t,因此输出信号的功率成分中只包含信号功率和噪声功率。则该滤波器的输出信噪比为222000022000|||()()d||()|E[|()|]2|()|dauthxttNh根据Schwartz不等式有22200000|()()d||()|d|()|duthuth当且仅当*0()()hcut时等号成立,其中c为任意非零复常数。此时获得最大信噪比,即220000|||()|d2mautN对该式进行0tt的变量置换,得到0220|()|d|()|dtututt因此,()ut只有在0tt时刻之前结束,才能使信噪比达到最大值。即观察时刻0t需设置在输入信号结束之后,此时022|()|d|()|d1tuttutt。则最大信噪比为2000||2maENN综上所述,匹配滤波器的单位冲激响应为*0()()mhcut,对其进行傅里叶变换得到它的频率响应为0j2*()()eftmHfcUf,其中()Uf输入信号()ut傅里叶变换。从匹配滤波器的频率响应可以看出,滤波处理不仅对信号的幅度进行了匹配,使输入信号较强的频率成分得到较大的加权,而且将输入信号的非线性相位补偿掉,使输出信号具有线性相位。3.实验步骤(1)设定采样频率、噪声功率等仿真参数,产生输入信号的波形()ut。(2)根据()ut得到匹配滤波器的单位冲激响应()ht。(3)生成输入信号,它有()ut及其延迟叠加构成,即输入信号中存在两个回波。(4)对输入信号和单位脉冲响应分别进行N点FFT,其中N不小于输入信号和冲激响应的点数之和,将它们的结果相乘,在进行FFT的逆变换,得到滤波器的输出信号。(5)生成输出信号的波形图即频谱图。检测输出信号的两个峰值,将它们出现的时间与理论值比较,验证滤波器在时间上的适应性。4.实验结果与分析本实验中采用的仿真参数如下:采样频率为100KHz,载波频率为2KHz,信号脉冲宽度为0.015s,第二个回波信号延迟为0.025s。首先,在无噪声干扰的条件下,将有限时间的正弦信号及其延迟输入匹配滤波器,得到各部分仿真波形如下所示:计算得到的延迟结果为0.025s,与仿真设定值相等。从图像中可以看出,匹配滤波器的输出有两个峰值,分别对应两个输入信号结束的时刻,且它们之间的时间间隔等于输入信号的延迟时间,验证了匹配滤波器具有时间上的适应性。即当信号存在延迟时,不需要改变滤波器的形式,只需将观察时刻延迟相应的时间即可。输出信号的幅度谱与输入信号相比,有了更强的对比度,即在较大的频率分量上得到了较大加权,并且输出信号具有线性相位,验证了匹配处理对输入信号进行了幅度匹配和相位匹配。在有噪声干扰的条件下,仿真得到的结果如下所示,其中噪声平均功率为0.3:计算得到的延迟结果为0.025s。其中滤波器的频率响应与上面的相同,在此不再列出。以上结果说明在该噪声环境下仍能够实现信号的匹配滤波。只是输出信号的相位不再是线性的,这是由于滤波器无法对噪声的相位进行补偿。仍在该噪声条件下,将输入信号改为线性调频信号,得到的仿真结果为:其它条件不变,只将输入信号改为m序列的二相编码,其码元速率为2Kb/s,伪码周期为31,得到如下结果:可见,当改变信号波形时,进行相应的匹配滤波可以得到相似的结果,与理论推导结果一致,从而验证了匹配滤波器的幅度和相位匹配特性,以及时间适应性。5.实验仿真程序clearall;closeall;clc;%仿真参数设定fs=1e5;%采样频率100kHzA=0.3;%设置噪声平均功率fo=2e3;%载波频率2kHzTo=0.015;%调制脉冲长度0.015sts=1/fs;%采样周期td=0.01;%第二个回波的延时%df=1e4;%线性调频信号频率变化率%rb=2e3;%二相编码的码元速率tu=0:ts:(To-ts);%mseq=m_sequence([0,0,1,0,1],1);%[u,tu]=wave(mseq,fs,rb);%m序列二相编码%u=cos(2*pi*(fo+df*tu).*tu);%线性调频信号u=cos(2*pi*fo*tu);%回波信号为正弦信号h=fliplr(u);%匹配滤波器单位脉冲响应x=[u,zeros(1,fix(td/ts)),u]+A*randn(1,2*size(u,2)+fix(td/ts));N1=size(x,2);N2=size(h,2);M=N1+N2-1;%傅里叶变换的点数X=fft(x,M);H=fft(h,M);Y=X.*H;y=ifft(Y,M);[C,I1]=max(y);y1=y;y1(I1-10:I1+10)=0;[C,I2]=max(y1);tao=ts*abs(I1-I2)%仿真图像t=0:ts:ts*(M-1);figure(1);tx=0:ts:ts*(N1-1);plot(tx,x);axis([0,0.045,-2,2]);title('匹配滤波器输入信号波形(两个回波)');xlabel('时间/s');ylabel('幅度/V');figure(2);fd=fs/M;f=0:fd:(fs-fd);subplot(2,1,1);plot(f,abs(H));title('匹配滤波器幅频响应');xlabel('频率/Hz');ylabel('幅度');subplot(2,1,2);plot(f,angle(H));title('匹配滤波器相频响应');xlabel('频率/Hz');ylabel('角度/rad');figure(3);plot(t,y);title('匹配滤波器输出');xlabel('时间/s');ylabel('幅度/V');figure(4);subplot(2,1,1);plot(f,abs(X));title('输入信号与输出信号的幅频特性比较');xlabel('频率/Hz');ylabel('幅度');subplot(2,1,2);plot(f,abs(Y));xlabel('频率/Hz');ylabel('幅度');figure(5);subplot(2,1,1);plot(f,angle(X));title('输入信号与输出信号的相频特性比较');xlabel('频率/Hz');ylabel('角度/rad');subplot(2,1,2);plot(f,angle(Y));xlabel('频率/Hz');ylabel('角度/rad');%产生m序列functionmseq=m_sequence(fbconnection,period)n=length(fbconnection);N=2^n-1;%m序列的长度fork=1:periodregister=[zeros(1,n-1)1];%定义移位寄存器的初始状态mseq(1+N*(k-1))=register(n);%m序列的第一个输出码元fori=2+(N*(k-1)):(N*k)newregister(1)=mod(sum(fbconnection.*register),2);forj=2:nnewregister(j)=register(j-1);end;register=newregister;%移位后的寄存器mseq(i)=register(n);%新的寄存器输出endend%对m序列进行二相编码function[y,t]=wave(code,fs,rb)T=fs/rb;N=length(code);fori=1:N;ifcode(i)==1;forj=1:T;y(T*(i-1)+j)=1;endendifcode(i)==0;forj=1:T;y(T*(i-1)+j)=-1;endendendy=[y,y(T*N)];t=0:(1/fs):(N/rb);

1 / 11
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功