更多关于降噪耳机:有源噪声控制系统中的自适应控制器
2020年11月17日通过史蒂夫asrar主动噪声控制是降噪耳机中的一项基本技术。但在ANC的讨论中有一个微妙的部分值得讨论:自适应控制器和取消路径。
随着越来越多的人在家工作,降噪耳机变得越来越流行。在前一篇文章中,我们讨论了这一点主动噪声控制(ANC)需要一种自适应算法来调整滤波器系数和优化噪声衰减。这是由于噪声特性和系统响应会随时间而变化。
本文以第一篇文章中关于ANC的基本概念为基础,将更详细地评估ANC系统的自适应控制器。
梯度下降算法
ANC系统试图通过最小化由误差传声器拾取的声音的均方值来寻找最佳滤波器权值。
管道声前馈ANC系统。图片由Alina殿下
误差的均方值,在本文的其余部分中称为误差面,是滤波器系数的一个多变量函数。例如,使用双抽头过滤器,误差面是一个碗状函数,如下图所示:
图片由斯科特·d·斯奈德
自适应算法应该找到与这个碗的底部相对应的滤波器权重。实现这一目标的常用技术是梯度下降算法。该优化算法首先对最优滤波器权值进行初始猜测,然后迭代更新以找到最优值。
该算法计算误差面相对于滤波器权值的偏导数(或梯度),以决定该权值的初始值应该如何更新。您可以通过考虑单变量误差函数(如f(x)= x)来更好地理解这种机制2如下描述:
该误差函数的最小值出现在x=0处。如果我们当前的位置是x=4,那么f(x)的导数(与红线的斜率相同)是一个正值。在这种情况下,我们应该减少当前值以减少f(x)。然而,当当前权重值为x=-4时,f(x)的导数为负(青色线的斜率)。
在这种情况下,我们应该增加x来减少f(x)。因此,是增大还是减小x可以由f(x)的导数决定。这可以扩展为一个多变量函数;我们只需要用偏导数替换导数。在梯度下降算法的背景下,这个多变量函数的偏导数被称为梯度。
基于这一讨论,我们可以使用以下公式迭代更新权值:
w我的新=w我,老- μ x (误差面w.r.t w的偏导数我)
这里,μ是收敛系数,指定每次迭代中梯度的负值与当前权重值的百分比。
取消路径
在ANC系统中,自适应滤波器的输出被转换成模拟信号,然后在扬声器的输出处转换成声波。声波通过扬声器和误差传声器之间的声波路径。然后,它被错误传声器拾取并转换成数字信号。
自适应算法实际上接收这个数字信号作为输入。从数字滤波器的输出到自适应演算法的输入的路径通常被称为“消去路径”。
如果我们用传递函数S(z)来建模消去路径,我们可以用下面的框图来建模ANC系统:
图片由森·m·郭
综上所述,LMS算法的误差信号是由S(z)修改后的自适应滤波器输出得到的。这与我们在其他常见的自适应滤波器应用中的情况相反。优化算法需要S(z)的知识来计算梯度。除此之外,发表的非国大评论表明上面描述的系统通常是不稳定的。
这个问题可以通过在参考信号x(n)和LMS算法的权值更新之间放置一个估计S(z)来解决。如下图所示,其中S(z)表示取消路径传递函数S(z)的估计。
图片由森·m·郭
由于x(n)在应用到最小均方块(least mean square, LMS)之前是经过滤波的,所以该算法在文献中称为filter - x LMS算法。
取消路径建模
消去路径传递函数S(z)通过自适应滤波的第二次循环估计,如下图所示。
图片由斯科特·d·斯奈德
一个适当的信号(建模信号)应用于消去路径和它的“模型”。“LMS算法”监视错误信号,并试图通过调整“模型”的滤波器权重来使其最小化。当错误信号被最小化时,“模型”响应会更接近于取消路径的响应。
如前一节所讨论的,所获得模型的副本将用于过滤ANC系统的参考信号。这给了我们以下框图:
图片由科林·n·汉森
结论
过去的两篇文章回顾了ANC的基本知识以及ANC系统中的自适应控制器。随着噪音消除成为越来越多的消费耳机设备的主要功能,越来越多的电子工程师将会看到这些原理如何在电路层面上发挥作用。