基于M估计器的递归有源噪声控制方法与流程

文档序号:12128339阅读:544来源:国知局
本发明属于自适应有源噪声控制
技术领域
:。
背景技术
::噪音控制一直以来是一个重要的课题。随着科技的发展,噪声污染的问题越来越严重。很多电子设备及工业装置都会产生噪声。这些噪声不仅可能对通信或自动控制系统造成干扰,还会影响人的身心健康。噪声控制技术主要分为无源控制技术和有源(主动)控制技术。无源控制技术,主要采用消声器、振动隔离、阻尼减振等方法,不仅造价高,且对于低频噪声往往没有效果。有源控制技术,采用主动噪声控制(Activenoisecontrol,ANC)系统,利用两列频率相同、相位差固定的声波,叠加后会产生相加性或相消性干涉,从而使声能得到增强或减弱,利用声波相消性干涉来消除噪声。此类方法,有着有效的去噪能力(尤其是低频噪声),且成本低;近年来得到了广泛的关注。在一个有源(主动)噪声控制系统中,主麦克风置于噪声源处用于拾取噪声源的原始噪声(初级噪声),控制器通常是一个自适应滤波器,自适应滤波器对噪声信号滤波后通过扬声器输出一个反向(相)噪声(次级噪声);误差麦克风置于噪声消除点(扬声器处),用于拾取噪声消除点的残差信号(初级噪声与次级噪声抵消后的误差信号),该残差信号用于主动噪声控制器的反馈修正。从噪声源到噪声消除点的路径称为主级通路,噪声源经控制器到噪声消除点(扬声器)的路径称为次级通路。自适应有源噪声控制方法中,滤波-x最小均方(FxLMS)算法应用最为广泛,对于初级噪声信号为非冲击噪声的环境下,有着良好的鲁棒性,且结构简单。但是,当初级噪声为α稳定分布的冲击噪声时,FxLMS算法会出现不收敛的情况。由于FxLMS算法采用均方误差,而α稳定分布的噪声方差是无穷的,这样会导致控制器更新时参数发散。为避免这一缺陷,一些改进方法被相继提出,较成熟的方法有以下两种:(1)滤波p范数(FxLMP)方法参考文献1“LeahyR,ZhouZ,HsuYC.Adaptivefilteringofstableprocessesforactiveattenuationofimpulsivenoise.in:Proceedingsofthe1995InternationalConferenceonAcoustics,Speech,andSignalProcessing,vol.5;1995.p.2983‐2986.)该方法是将分数阶误差策略,即p范数(1<p<2)引入有源噪声控制系统中,使得当强噪声环境下,能够把滤波器限定在一个范围内,避免其参数发散,从而提高了算法在冲击噪声下的稳定性,也提高了算法收敛速度。但是实验结果表面该方法某些强冲击收敛速度仍然不够快。(2)鲁棒FxLMS(RFxLMS)方法参考文献2“GeorgeNV,PandaG.Arobustfiltered-sLMSalgorithmfornonlinearactivenoisecontrol.Appl.Acoust.2012;73(8):836–41.”。该文献提出了一种鲁棒的FxLMS消除方法。该方法采用一种基于对数的误差信号更新,而这种对数变换可以在一定程度上压缩α稳定分布噪声的幅值,从而限定控制器的参数,提高了算法在大部分情况下的稳定性,但是该算法具有较大的残差。技术实现要素:本发明的发明目的就是提供一种基于M估计器的递归有源噪声控制方法,该方法对冲击噪声的消除效果好,收敛速度快,残留误差小。本发明实现其发明目的所采用的技术方案是,基于M估计器的递归有源噪声控制方法,其步骤如下:1、基于M估计器的递归有源噪声控制方法,其步骤如下:A、噪声输入向量的生成置于噪声源的主麦克风拾取出噪声源当前时刻n产生的初级噪声值u(n);将当前时刻n和前L-1个时刻的L个初级噪声值u(n),u(n-1)...,u(n-L+1),构成滤波器当前时刻n的噪声输入向量U(n),U(n)=[u(n),u(n-1)...,u(n-L+1)]T;其中L=128,是滤波器的抽头数,上标T代表转置;B、权向量的生成滤波器生成当前时刻n和前L-1个时刻的权系数w(n),w(n-1)…w(n-L+1),并将这L个权系数构成当前时刻n的权向量W(n),W(n)=[w(n),w(n-1),...,w(n-L+1)];当前时刻n<129时,W(n)=0;C、滤波器输出值的生成滤波器根据当前时刻n的权向量W(n)对当前时刻n的噪声输入向量U(n)进行滤波得到当前时刻n输出到扬声器的滤波器输出值其中符号*代表卷积运算,s表示噪声源经滤波器到扬声器的次级通路固有的脉冲响应;D、残差信号阈值的确定D1、置于噪声消除点的误差麦克风拾取出噪声消除点在当前时刻n的声音信号,即当前时刻n的残差信号e(n);并得到当前时刻n的残差信号平方e2(n),将当前时刻n和前Nw-1个时刻的残差信号平方e2(n),e2(n-1),...,e2(n-Nw+1),组成残差信号平方窗函数向量E(n),E(n)=[e2(n),e2(n-1),...,e2(n-Nw+1)],其中,Nw是窗函数长度,取值为100;D2、计算M估计器的期望方差其中,C为计算纠正因子,C=1.483{1+5/(Nw-1)};ζ为缩放参数,其取值为0.9~1;med为取中位数运算;D3、计算出M估计器残差信号的低限阈值ξ、中限阈值Δ1和高限阈值Δ2,E、误差信号限定值的计算滤波器根据当前时刻n的残差信号e(n),计算出M估计器当前时刻n的误差信号限定值ψ(n):其中,sign表示符号函数,当e(n)>0时,其值为1;当e(n)<0时,其值为-1;当e(n)=0时,其值为0;F、权向量更新滤波器生成当前时刻n的增益向量Φ(n),式中,λ表示遗忘因子,其取值为0.9~1;F(n)为当前时刻n的递归矩阵,其大小为L×L,当前时刻n<129时,F(n)=0;下一时刻(n+1)的递归矩阵F(n+1)由公式F(n+1)=λ-1F(n)-λ-1Φ(n)(s*U(n))TF(n)得到;随后,滤波器算出下一时刻(n+1)的权向量W(n+1),W(n+1)=W(n)+Φ(n)e(n)G、迭代令n=n+1,重复A、B、C、D、E、F的步骤,直至滤波结束。与现有技术相比,本发明的有益效果是:本发明通过对残差信号进行递归M估计器运算,M估计器是对误差信号的鲁棒估计,当模型假设发生某种微小变化时,相应的估计器统计推断也只有微小改变。当误差信号限定值是有界函数时,基于M估计器的算法就会更加稳定,其原因是即使出现异常值,也不会对算法中滤波器权向量的更新产生无法控制的影响:当残差信号e(n)位于误差信号的低位阈值(下限)附近时,外界的信号的变化只会引起滤波器的参数微小变化;当残差信号e(n)位于误差信号中位阈值附近时,滤波器参数的变化与外界环境的变化成正相关;当残差信号e(n)位于误差信号的高限阈值附近时,滤波器参数的变化不再受外界环境的影响。因此,本发明对噪声信号有着相较于传统算法有着更好的信息采集、追踪能力;尤其对含有各种高阶信号的冲击噪声有着非常稳定的去噪性能,且收敛速度快。仿真实验证明,本发明的收敛速度快,较现有方法其收敛速度提高了大约50%;去噪性能好,残差功率小,其平均噪声残留较现有方法,降低了约5dB。下面结合附图和具体实施方式对本发明进行详细说明附图说明图1是本发明方法和文献1、文献2方法的仿真实验的平均噪声残留对比图。图2是本发明方法和文献1、文献2方法的仿真实验的残留噪声频谱密度对比图。下面结合附图和具体实施方式对本发明进行详细说明。具体实施方式实施例本发明的一种具体实施方式是,基于M估计器的递归有源噪声控制方法,其步骤如下:1、基于M估计器的递归有源噪声控制方法,其步骤如下:A、噪声输入向量的生成置于噪声源的主麦克风拾取出噪声源当前时刻n产生的初级噪声值u(n);将当前时刻n和前L-1个时刻的L个初级噪声值u(n),u(n-1)...,u(n-L+1),构成滤波器当前时刻n的噪声输入向量U(n),U(n)=[u(n),u(n-1)...,u(n-L+1)]T;其中L=128,是滤波器的抽头数,上标T代表转置;B、权向量的生成滤波器生成当前时刻n和前L-1个时刻的权系数w(n),w(n-1)…w(n-L+1),并将这L个权系数构成当前时刻n的权向量W(n),W(n)=[w(n),w(n-1),...,w(n-L+1)];当前时刻n<129时,W(n)=0;C、滤波器输出值的生成滤波器根据当前时刻n的权向量W(n)对当前时刻n的噪声输入向量U(n)进行滤波得到当前时刻n输出到扬声器的滤波器输出值其中符号*代表卷积运算,s表示噪声源经滤波器到扬声器的次级通路固有的脉冲响应;D、残差信号阈值的确定D1、置于噪声消除点的误差麦克风拾取出噪声消除点在当前时刻n的声音信号,即当前时刻n的残差信号e(n);并得到当前时刻n的残差信号平方e2(n),将当前时刻n和前Nw-1个时刻的残差信号平方e2(n),e2(n-1),...,e2(n-Nw+1),组成残差信号平方窗函数向量E(n),E(n)=[e2(n),e2(n-1),...,e2(n-Nw+1)],其中,Nw是窗函数长度,取值为100;D2、计算M估计器的期望方差其中,C为计算纠正因子,C=1.483{1+5/(Nw-1)};ζ为缩放参数,其取值为0.9~1;med为取中位数运算;D3、计算出M估计器残差信号的低限阈值ξ、中限阈值Δ1和高限阈值Δ2,E、误差信号限定值的计算滤波器根据当前时刻n的残差信号e(n),计算出M估计器当前时刻n的误差信号限定值ψ(n):其中,sign表示符号函数,当e(n)>0时,其值为1;当e(n)<0时,其值为-1;当e(n)=0时,其值为0;F、权向量更新滤波器生成当前时刻n的增益向量Φ(n),式中,λ表示遗忘因子,其取值为0.9~1;F(n)为当前时刻n的递归矩阵,其大小为L×L,当前时刻n<129时,F(n)=0;下一时刻(n+1)的递归矩阵F(n+1)由公式F(n+1)=λ-1F(n)-λ-1Φ(n)(s*U(n))TF(n)得到;随后,滤波器算出下一时刻(n+1)的权向量W(n+1),W(n+1)=W(n)+Φ(n)e(n)G、迭代令n=n+1,重复A、B、C、D、E、F的步骤,直至滤波结束。仿真实验:为了验证本发明的有效性,进行了仿真实验,并与文献1-2的算法进行了对比。仿真实验的主级通路和次级通路均采用高阶FIR滤波器建模。有源噪声控制器的阶数设定为128阶。初级噪声分别为一个α稳定分布的冲击噪声,α取值越大噪声越弱。ζ=0.999。图1是本发明方法和文献1、文献2方法的仿真实验的平均噪声残留(滤波后的残差信号与未经滤波的初级噪声传输到消除点的信号之比)对比图。由图1可知,本发明的收敛速度快,在大约10000时刻收敛,而文献1滤波器参数发散;文献2在大约在15000时刻收敛;本发明的收敛速度较效果好的文献2的方法,提高了大约50%。且平均噪声残留较文献1,文献2的方法,降低了约5dB。图2是本发明方法和文献1、文献2方法的仿真实验的残留噪声频谱密度对比图。由图2可知,本发明比文献1、2收敛速度更快,残差功率更小。当前第1页1 2 3 当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1