欢迎来到天天文库
浏览记录
ID:55591004
大小:32.00 KB
页数:2页
时间:2020-05-19
《用matlab实现的自适应滤波器.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、第三章自适应数字滤波器利用自适应滤波法研究从宽带信号中提取单频信号的方法:1.设x(t)=s(t)+cos(2*pi*f*t),s(t)是宽带信号,f任选,要求提取cos(2*pi*f*t).、解:设单频信号频率f=1Hz,宽频信号s(t)均值为0,方差为0.5的白噪声。以时间间隔Ts对输入信号进行采样,得到num个采样数据进行实验。采用LMS准则的横向自适应滤波器W对x(t)进行自适应滤波,滤波器阶数(抽头数)为N,滤波器采用最陡下降法更新系数,调整步长为u。将输入信号延迟delay个单位作为参考输入,因为宽频噪声延迟后的自相关值几
2、乎为0,而单频周期信号仍有很强的相关性,因此通过递归调整,即可将宽频信号和单频信号分离。通过取不同的实验参数,可以发现,调整步长越大,滤波器的抽头数越多,输出收敛于期望信号的速度越快,但与此同时,稳态误差却越大。因此,应该选用合适的步长和阶数,在收敛速度和性能上取得权衡。另外,延迟时间间隔越大,宽带信号的自相关性越弱,最终得到的输出稳态误差也越小,但所花费的时间也越长。具体实验代码和实验结果如下:Ts=0.01;%采样间隔num=1500;%采样点数delay=100;%延迟间隔N=10;%滤波器抽头数u=0.001;%调整步长k=1
3、:num;f=cos(2*pi*k*Ts);%单频信号s=0.5*randn(1,num);%宽频信号x=s+f;%输入信号x_in=[xzeros(1,delay)];%当前的输入信号x_delay=[zeros(1,delay),x];%延迟的输入信号M=num+delay;y=zeros(1,M);%输出初始值w=zeros(1,N);%滤波系数初始值forn=N:M-N+1xx=x_delay(n+N-1:-1:n);%滤波器输入值y(n)=w*xx';%滤波器输出值e(n)=x_in(n)-y(n);%误差值w=w+2*u.
4、*e(n).*xx;%系数调整endsubplot(4,1,1);plot(f(1:num));ylim([-22]);title('无噪声单频信号波形');subplot(4,1,2);plot(x(1:num));ylim([-22]);title('受宽带干扰的输入信号波形');subplot(4,1,3);plot(y(1:num));ylim([-22]);title('提取的单频信号波形');subplot(4,1,4);plot(e(1:num));ylim([-22]);title('滤去的宽带信号波形');程序运行输
5、出:
此文档下载收益归作者所有