亚当•库克MathWorks
主动噪声控制(ANC),也称为主动噪声消除,试图用破坏性干扰来消除不想要的声音。ANC系统使用自适应数字滤波来合成与无用信号振幅相同但相位相反的声波。本视频首先回顾了非国大的基本原则。然后演示如何使用Simulink万博1manbetx®设计并模拟一个利用滤波- x NLMS自适应滤波器消除管道模型噪声的ANC系统。最后,您将看到如何使用一个真实的管道和配备了超低延迟操作系统和超低延迟a /D和D/ a转换器的Speedgoat实时音频机器来实现ANC系统。该视频展示了如何使用自动C代码生成将仿真模型转换为实时原型。
探索这个视频中使用的例子:自适应噪声控制与Simulink实时万博1manbetx。
你有没有想过如何噪音有源降噪系统,如耳机,汽车和空调系统中的开发和原型?
让我向您展示一个使用MATLAB、Simulink和Speedgoat实时目标机的原万博1manbetx型。
使用一些简单的PVC管,该系统模型可能在管道中可以使用用于HVAC噪声消除系统的类型。
突然想到谈谈我们如何开发这个系统。
主动噪声消除的原理是,当一个音频波与它的确切的逆相加时,产生的波形是零。
那么,如何产生的波形,它是原始噪声源的完全相反的?
这是不平凡的历程。然而,使用声学的一些基本原理和信号处理,我们可以设计一个系统,可以让我们非常满意的结果取消。
考虑我们的PVC管模式的这个图。在我们的模型中的噪声源是在PVC管的一端的扬声器。噪声消除,或“抗噪声”,源是通过肘关节连接的另一个扬声器。
这是如何我们的动画线与我们的真实世界PVC管道模型。
除了噪声和抗噪声源,我们的系统还使用了两个测量麦克风。第一个测量mic是我们的“参考mic”。这记录了靠近噪声源的噪声源。
第二测量麦克风被称作“错误麦克风”。它被放置在PVC管的输出。该麦克风在哪里会出现噪声消除的位置。
所以,如果抗噪信号是噪声源的逆信号,为什么我们不能把参考麦克风信号逆信号播放出来呢?原因是噪声源会沿着路径从它的源头传播到管道的末端。我们测量音频信号在管道的末端与我们的“错误麦克风”。当信号传播时,管道就像一个过滤器一样改变噪音的声音。噪声从它的起源到管的末端的传播路径称为“主路径”。
我们可以通过使用一个“自适应滤波器”算法确定这个“主路径”滤波器的特性。该过滤器会适应,直到它已经学会了滤波器权提供此过滤器的数字表示。
我们用它来更新滤波器权重更新算法被称为“归一化LMS”。
别急,抗噪扬声器都有自己的传播路径,以及!我们还必须采取的路径考虑。从抗噪声的扬声器到误差麦克风的传输路径称为“次级路径”。我们包括NLMS更新之前在我们的系统,二次路径的评估。
所以,我们现在完成了吗?不完全的!要考虑的最终路径是从抗噪音喇叭噪声参考麦克风的反馈路径。我们需要从我们的参考麦克风减去抗噪声信号,否则我们有一个连续的反馈回路,这将导致不正确的结果。
好了,现在我们已经准备好来模拟。使用Simu万博1manbetxlink,我们创建了真实世界的PVC管系统和我们主动噪声消除算法的仿真模型。
该模型允许我们使用快速原型化环境来模拟真实世界的系统。
例如,在该模型中,我们模拟与数字滤波器当量的伯和仲的传播路径。此外,我们还模拟与求和块噪声和抗噪声信号的声学总和。
现在,任何开发过实时音频硬件系统的人都知道,经常会出现一些不便和技术上的困难,阻碍你专注于你的算法。这种方法的好处是,我们可以在不使用硬件的情况下开始,测试/调试算法,然后在确信算法运行良好时,用真实世界的等效物替换算法的模拟部分。
这个工作流程通常被称为基于模型的设计。
当我们在模拟中运行这个模型时,我们可以实时地收听音频信号。
我们还可以查看信号是如何在时间范围随时间变化。将黄色信号表示输入噪声信号,因此它保持不变。蓝色信号表示作为在误差麦克风测量的信号。当我们运行仿真,我们看到蓝色的信号幅度减少随着时间的过滤器适应。
在这里,我们看到,随时间变化的过滤器适应过滤器的权重。
一旦我们相信,我们的算法在模拟工作,下一步是实际的现实世界的系统来替代模拟声学环境。要做到这一点,我们需要一个工具,它将使我们获得音频信号输入和输出我们的Simulink模型与超低延迟。万博1manbetx
为了达到最佳的延迟性能,我们部署了使用Simulink的实时和的Speedgoat实时目标机的模型。万博1manbetx
这台机器提供了超低延迟的实时内核和超低延迟转换器,使信号通过的速度比传统的台式机或笔记本电脑快得多。
为什么我们要关心低延迟?让我们回到我们的模型。系统必须记录参考麦克风,计算响应,并在声音在这些点之间传播的时间内在ANC扬声器上播放。在本例中,参考麦克风与“Y”部分开头之间的距离为34厘米。音速是343米/秒,因此我们的最大延迟是1毫秒。
Speedgoat可以配备必要的A/D和D/A转换器,以非常低的延迟将音频输入和输出机器。实际上,这个解决方案的总延迟是2个样本。如果我们使用8khz的采样率,那就是四分之一毫秒!
我们可以让我们的Simulink万博1manbetx模型上的Speedgoat硬件几个简单的修改即可运行。
我们将与真实世界的音频信号要使用这些定制的Simulink模块,并从我们的Speedgoat目标的人机界面。万博1manbetx这些模块允许我们指定诸如我们的音频信号的采样率和电压范围。
我们还可以访问“目标范围”,让我们能够想象在连接到目标机监控的信号。
在这里,我们看到模型的主动噪声控制部分,适用于在运行的Speedgoat。
由于我们使用了基于模型的设计方法,这个模型与我们最初为测试算法而建立的仿真模型非常相似。
我们已经移除模仿我们的声音滤波和声学总和,因为他们不再需要的块。我们现在直接与真实世界的信号接口。
我们已经加入到我们的模型中的另一项功能是进行“二次路径估计”块。这使我们能够替换采用模拟过程中与现实世界的次要通道的实际测量中使用我们的次要通道的估计。
当模型第一次运行时会出现此测量。测量完成后,我们将切换到执行主动噪声消除。
我们对声音反馈做了同样的事情。
这里是的Speedgoat机上实时运行我们的模型。
我们开始与模型测量二次路径估计和声音反馈。这是通过抗噪声扬声器发送白噪声信号来完成。
即完成之后,我们切换到噪音的产生。所产生的噪声源包括在模拟的HVAC风扇或电机的振动合成音调。或者,我们可以使用类似的噪声类型的真实世界录音。
我们先从系统关闭。我们可以监控我们的实时监控范围内对测量麦克风信号。另外,我们可以查看与我们已经放在旁边的测量麦克风分贝计的噪声信号的电平。
现在,我们将打开使用在我们的模型中,这仪表盘开关的有源噪声控制。
在分贝仪启动噪音水平降低。几秒钟内,我们可以看到非常明显的效果。噪声降低了20dB!
我们希望这个视频提供了一些有用的见解,我们的方法快速原型与实时流音频主动噪声消除系统。
我们可以使用Simulink创建一个真实的系统模型,然后使用Simulink real和Speedgoat实时目标机将该模万博1manbetx型应用到真实的实现中。
您还可以选择从下面的列表中的网站:
选择最佳的网站性能的中国网站(在中国或英文)。其他MathWorks的国家网站都没有从您的位置访问进行了优化。