自适应滤波器的仿真研究

作者:孙沉芳 刊名:实验科学与技术 上传者:高文林

【摘要】针对目前自适应滤波器的研究现状,依据其原理、介绍了LMS、LSL及FTF自适应的具体算法,给出了具体实例及应用,实现了自适应滤波器的功能。结果表明,利用LabVIEW仿真自适应滤波器,使数字信号处理工作变得十分简单,为滤波器的优化设计及合理应用提供了可靠依据,具有很好的工程实用价值。

全文阅读

1引言目前,自适应滤波器的研究大多采用DSP、FP-GA及MATLAB等实现,虽然简单灵活,但是这种灵活性有时是以牺牲效率为代价的。当要求精度很高时,程序复杂度就会增大,因而很难保证实时的要求在现代数字系统中。LabVIEW可以在很短的时间里设计、构建和修改自己的虚拟仪器系统[1-2]。本文用LabVIEW对自适应滤波器进行仿真研究,并介绍了LMS、LSL及FTF自适应的具体算法。2自适应滤波器的原理自适应滤波器由参数可调的数字滤波器和自适应算法两部分组成。参数可调数字滤波器可以是FIR数字滤波器或IIR数字滤波器,也可以是格形数字滤波器。输入信号通过参数可调数字滤波器后产生输出信号,与参考信号进行比较形成误差信号。并通过某种自适应算法对滤波器参数进行调整,最终使误差信号的均方值最小。因此,实际上自适应滤波器是一种自动调整本身参数的特殊维纳滤波器,能够在自己的工作过程中逐渐“了解”或估计出所需的统计特性,并以此为依据自动调整自己的参数,以达到最佳滤波效果[3]。本文研究自适应预测和自适应建模。滤波器的结构选用FIR和格形结构两种。输入x(n)与输出y(n)之间的关系为单输入时:y(n)=Lk=0wk(n)x(n-K)(1)多输入时:y(n)=Lk=0wk(n)xk(n)(2)权矢量W(n)为W(n)=[w0(n)w1(n)…wL(n)]T(3)式(3)中T表示矩阵转置则式(1)和式(2)可统一表示为(y(n)=xT(n)w(n)=wT(n)x(n)(4)参考信号d(n)与输出响应y(n)之差称为误差信号,用e(n)表示,即e(n)=d(n)-XT(n)W(n)(5)自适应线性组合器按照误差信号均方值最小的准则,即(n)=E(e2(n)=min来自动调整权矢量。3自适应滤波器算法[4]3.1最小均方(LMS)算法LMS算法最核心的思想是用平方误差代替均方误差,均方误差性能曲面的梯度可用下式来近似表示,即(n)e2(n)w0e2(n)w1e2w(nL)T(6)根据式(6)与式(4)得到LMS算法的基本关系式为w(n+1)=w(n)+2ue(n)x(n)(7)式(7)中u为收敛参数,该算法实际上是在每次迭代中用很粗略的梯度估计值代替精确值(n)。LMS算法的收敛条件:对于横向自适应滤波器来说,输入信号的自相关矩阵的迹可用输入信号功率表示为tr[R]=(L+1)E[x2]=(L+1)pin(8)式中,pin是输入功率。因此LMS的收敛条件可表示为0<u<[(L+1)pin]-1(9)3.2最小二乘格形(LSL)算法计算步骤如下:1)初始化emb(0)=0,n(0)=0,m(0)=1mf(0)=bm(0)=(10)式中,是前向和后向的预测误差剩余的初始值。2)迭代计算(按时间n=1,2,…)e0b(n)=ef0(n)=x(n)0b(n)=0f(n)=0f(n-1)+x2(n)0=1(11)3)迭代计算(按阶m=0,1,…,M-1)m+1(n)=m+1(n-1)+ebm(nm(-n1)-e1fm)(n)emf+1(n)=emf(n)-m+1(mbn()nebm-(1n)-1)emb+1(n)=emb(n-1)-m+1(mfn()ne)fm(n)mf+1(n)=mf(n)-bm(2m+n1(-n1))mb+1(n)=mb(n-1)-m2mf+1((nn))m+1(n-1)=m(n-1)-[embbm((nn--11))]2(12)式(12)中m为滤波器的阶,mf为前向的预测误差剩余值,mb为后向的预测误差剩余值,为前后预测误差相关系数,为角参量,而efm和em

参考文献

引证文献

问答

我要提问