您好,欢迎访问三七文档
当前位置:首页 > 机械/制造/汽车 > 机械/模具设计 > 自适应滤波系统的应用
自适应滤波系统的应用摘要本文阐述了自适应滤波的基本原理,详细介绍了采用LMS算法的自适应滤波器,并利用自适应滤波器进行系统识别。引言自1967年威德诺(B.Widrow)等人提出自适应滤波以来,在短短几十年中,自适应滤波器发展很快,已广泛的应用于系统模型识别,通信信道的自适应均衡,雷达与声纳的波束形成,减少或心电图中的周期干扰,噪声中信号的检测、跟踪、增强和线性预测等。自适应滤波器的特点是:滤波器的参数可以自动的按照某种准则调整到最佳滤波;实现时不需要任何关于信号和噪声的先验统计知识,尤其当统计特性变化时,自适应滤波器都能调整自身的参数来满足最佳滤波需要。常常将这种输入统计特性未知,调整自身参数到最佳的过程称为“跟踪过程”,因此自适应滤波器具有学习和跟踪的性能。原理自适应线性滤波器是一种参数可自适应调整的有限冲击响应(FIR)数字滤波器,具有非递归结构形式。如图1所示为自适应线性滤波器的一般形式。FIR的输出y(n)用滤波器的单位脉冲相应w(n)表示为(1)z-1z-1x(n-1)x(n-2)x(n-N)z-1d(n)e(n)+-y(n)…x(n)w2w3wN-1wNw1图1自适应线性滤波器的结构10)()()(Nmmnxmwny令:i=m+1,wi=w(i-1),xi=x(n-i+1),n用j表示,wi也称为滤波器加权系数。将式(1)表示成矩阵形式如(2)式:误差信号ej的表达式如式(3)利用均方误差最小准则求最佳权系数和最小均方误差,误差信号被用来作为权系数的控制信号,均方误差的表达式如式(4)均方误差使用矩阵形式表示为式(7)Rdx称为dj与Xj的互相关矩阵,是一个N维列矩阵,Rxx是输入信号的自相关矩阵。(8)式表明,均方误差E[e2j]是权系数W的二次函数。如果只有一个权系数w1,则均方误差是w1的开口向上的抛物线;如果有两个权系数w1w2,则是开口向上的抛物面;对于两个以上的情况,则属于超抛物面.均方误差E[e2j]在自适应信号处理中是一个重要的函数,常称之为性能函数。为了选择合适的权系数,使性能函数到达它的最小点,最广泛使用的自适应算法形式为下降算法。有两种主要实现方式:一种是自适应梯度算法,另一种是自适应高斯-牛顿算法。梯度算法包括LMS算法及其变型和改进,自适应高斯-牛顿算法包括RLS算法及其变型改进。jjjXWWXyTTT21T21],,,[,],,,[NjjjjNxxxX(2)jjjydejjjjXWdWXdTT(3)])[(][22jjjydEeEWXXEWWXdEdEjjjjj][][2][TTT2][jjXdEdxRTNjjjjjjxdxdxdE],,,[21][TjjXXExxRNjNjjNjjNjNjjjjjjNjjjjjjxxxxxxxxxxxxxxxxxxE212221212111(6)(5)(4)WRWWRdEeExxdxjjTT222][][(7)WRWWRdEeExxdxjjTT222][][(8)下面介绍一下LMS算法即最小均方算法,此算法是一种以期望响应和滤波器输出信号之间误差的均方值最小为准则,依据输入信号在迭代过程中估计梯度矢量,并更新权系数以达到最佳自适应迭代算法。LMS算法的权值计算如下:LMS算法的梯度估计值用单次误差信号进行计算如式(9)所以滤波器权系数的递推公式为即FIR滤波器中的第i个权系数的计算公式为上式中的u称为收敛因子,由此可知,自适应迭代下一时刻的权系数矢量可以由当前时刻的权系数矢量加上以误差函数为比例因子的输入矢量得到。因此,LMS算法也称随机梯度法。系统辨识是指根据系统的输入和输出信号来估计或确定系统的特性以及系统的单位脉冲响应或传递函数。由于自适应滤波器和未知系统有相同的输入和接近相同的输出,因此自适应滤波器可以用于模拟一个未知特性的动态系统,进行系统识别。若未知系统本身是一个FIR系统,则可以用一个有限长的横向FIR自适应滤波器来准确的模仿它。若未知系统是一个IIR系统,则可以用一个有限长的FIR系统去逼近该系统。假定未知系统为FIR结构,构造一个FIR结构的自适应滤波器。利用伪随机序列作为系统的输入信号x(n),同时送入未知系统和自适应滤波器。调整自适应滤波器系数,使误差信号e(n)的均方误差达到最小,则自适应滤波器的输出y(n)近似等于系统的输出d(n)。具有相同输入和相似输出的两个FIR系统必然具有相似的特性,因此可以用作系统辨别。jjjWe2ˆjNjjjjjwewewe22212(9)jjjjXWdeTjˆjjXe2)(1jjjWWjjjjXeWW21ijjijijxeww,,,12Ni,,3,2,1实验及结论实验条件:利用matlab仿真输入信号x(t)=cos(2πt)+2cos(2πt)+u(t),其中=100Hz,=180Hz,=700Hz,u(t)为白噪声干扰信号。实验要求:利用LMS算法设计FIR滤波器进行自适应调整,使其与未知系统参数充分逼近,达到系统识别。实验结果:如图(2)所示。结论:自适应FIR滤波器能很好地模拟未知系统,它们对原始信号处理后的效果十分接近,因此可以用来识别未知系统。实验代码如下:clear;clcee=0;fs=700;det=1/fs;f1=100;f2=180;t=[0:det:2-det];x=cos(2*pi*f1*t)+2*cos(2*pi*f2*t)+randn(size(t));%未知系统050100150200250300350400050010001500原输入信号频谱0501001502002503003504000200400600经过未知系统后的频谱0501001502002503003504000200400600f/Hz经过自适应FIR滤波器后的信号频谱图2实验结果信号频谱[b,a]=butter(5,150*2/fs);d=filter(b,a,x);%自适应FIR滤波器N=5;delta=0.06;M=length(x);y=zeros(1,M);h=zeros(1,N);forn=N:Mx1=x(n:-1:n-N+1);y(n)=h*x1';e(n)=d(n)-y(n);h=h+delta.*e(n).*x1;endX=abs(fft(x,2048));Nx=length(x);kx=0:800/Nx:(Nx/2-1)*(800/Nx);D=abs(fft(d,2048));Nd=length(D);kd=0:800/Nd:(Nd/2-1)*(800/Nd);Y=abs(fft(y,2048));Ny=length(Y);ky=0:800/Ny:(Ny/2-1)*(800/Ny);figure(1);subplot(3,1,1);plot(kx,X(1:Nx/2));legend('原输入信号频谱');subplot(3,1,2);plot(kd,D(1:Nd/2));legend('经过未知系统后的频谱');subplot(3,1,3);plot(ky,Y(1:Ny/2));xlabel('f/Hz');legend('经过自适应FIR滤波器后的信号频谱');参考文献1丁玉美等.数字信号处理.西安电子科技大学出版社.20022赵树杰等.信号检测与估值理论.清华大学出版社.20053程佩青.数字信号处理教程.清华大学出版社.2001
本文标题:自适应滤波系统的应用
链接地址:https://www.777doc.com/doc-2052381 .html