基于DSP的前馈式自适应有源低频噪声控制系统设计

2018-03-26 09:30陈智王贵锋李峰傅龙飞闫璞柳莺
中国新技术新产品 2018年5期

陈智 王贵锋 李峰 傅龙飞 闫璞 柳莺

摘 要:本文阐述了前馈式有源噪声控制系统原理及FxLMS算法。设计了一种基于DSP的前馈式自适应有源低频噪声控制系统,采用LMS算法实现次级通路辨识,采用FxLMS算法实现自适应有源噪声控制。 实验结果表明,对于频率为300Hz的低频噪声,能够取得14dB左右的降噪量。

关键词:前馈结构;FxLMS;低频噪声控制;DSP

中图分类号:TN912 文献标志码:A

Abstract: The principle of the feed-forward active noise control system and the FxLMS algorithm are presented. A feed-forward adaptive active low-frequency noise control system based on DSP is designed. The secondary path identification is realized by LMS algorithm, and the adaptive active noise control is realized by FxLMS algorithm. The experimental results show that the noise reduction of about 14dB can be achieved for the low frequency noise of 300Hz.

Keywords: feed-forward;FxLMS;low-frequency noise control;DSP

0 引言

噪声危害日益严重,已成为世界各国都十分关注的环境问题。为了获得较好的降噪效果,通常采用无源噪声控制方法,比如吸声、隔声、使用消声器等,这些传统方法对中高频噪声控制效果较好,但对低频噪声控制效果甚微。有源噪声控制技术提供了一种处理低频噪声的有效解决方法,这种技术既能降低低频噪声又不至于系统增重过大。目前,有源噪声控制系统主要有前馈和反馈两种结构,前者能够获得参考信号,系统降噪量、稳定性相对后者较好。

1 系统模型和算法

1.1 前馈式系统模型

前馈式系统基本结构如图1所示,其中:

p(t)为初级信号。

x(t)为参考信号。

y(t)为次级信号。

e(t)为误差信号。

系统工作过程:噪声源产生初级信号,参考传感器收到后生成参考信号x(t),并作用到控制器的输入端。控制器根据一定算法求出次级信号y(t),次级信号通过功率放大环节驱动次级声源。次级声源产生的次级声波和初级声波同时作用到误差传感器,由误差传感器叠加后生成误差信号e(t)。误差信号被送到控制器中,控制器算法通过不断地调节权系数进而改变次级信号的振幅和相位,以减小误差,这个过程会持续到满足预置控制目标为止。前馈系统存在次级声反馈通路,它影响系统的稳定性,由于可以通过合理布放参考传感器来避免声反馈影响,因此,为了简化问题,可以将声反馈通路忽略。

1.2 FxLMS算法分析

FxLMS算法是自适应有源噪声控制中最常见的算法。如图2所示,其中:

p(n)是噪声源产生的初级噪声信号。

p(n)是参考噪声信号。

d(n)是误差传感器接收到的噪声信号。

y(n)是滤波器输出的反噪声信号。

s(n)是次级声源发出的反噪声信号。

e(n)是误差信号。

W(Z)是控制器传递函数。

Hr(Z)、Hp(Z)、Hs(Z)分别是参考通路传递函数、初级通路传递函数、次级通路传递函数,他们的脉冲响应分别是hr(n)、hp(n)、hs(n)。

参考信号与初级信号的关系为:

x(n)=p(n)*hr(n) (1)

次级信号(滤波器输出信号)为:

y(n)=x(n)*w(n) (2)

其中,w(n)為横向FIR滤波器权系数。

误差传感器拾取的期望信号与次级信号(次级声源输出信号)分别为:

d(n)=p(n)*hp(n) (3)

s(n)=y(n)*hs(n) (4)

将式(2)代入式(4),得到:

s(n)=r(n)*w(n) (5)

式中r(n)=x(n)*hs(n) ,称为滤波-x信号。

误差信号为:

e(n)=d(n)+s(n) (6)

要得到滤波器的最佳权系数,必须设定一个目标函数,再去计算滤波器最佳传递函数,最简单的方法是采用最小均方误差准则,设目标函数为:

J(n)=E[e2(n)] (7)

采用最陡下降法,得出权矢量迭代公式:

W(n+1)=w(n)-2μe(n) r(n) (8)

其中,μ称为收敛系数,用于控制收敛速度和系统稳定性。可以看出式(8)中含有滤波-x信号矢量,所以将该算法称为滤波-x LMS算法,即FxLMS算法。

2 系统硬件设计

系统硬件采用TI公司生产的TMS320VC5509 DSP芯片和AIC23B音频芯片作为控制核心。其中,AIC23B芯片内部集成了放大电路、抗混叠滤波电路、平滑滤波电路以及ADC和DAC,可以在8kHz~96kHz的频率范围内提供16bit、20bit、24bit和32bit的采样,ADC和DAC的输出信噪比分别可以达到90dB和100dB。本系统针对的是低频噪声,频率在1kHz以下,为保证不失真,采样频率设置为8kHz,转换位数设置为16bit,AIC23B与DSP的连接如图3所示。

3 次级通路辨识

对于FxLMS算法而言,其滤波器权系数迭代中包含一项滤波-x信号矢量,它是输入信号矢量和次级通路脉冲响应的卷积,因此,必须先获取次级通路的传递函数。由于次级通路特性在整个噪声控制过程中保持不变,因此,次级通路辨识可以离线建模。这里采用附加随机噪声法:由DSP内部产生随机白噪声作为次级通路的激励,然后执行次级通路的迭代,权矢量更新采用LMS算法,待次级通路滤波器稳定后,将次级通路滤波器权系数固定不变,代入FxLMS算法进行自适应有源噪声控制过程。

4 系统软件设计

系统软件包括主程序、次级通路辨识程序、有源噪声控制程序3部分。主程序实现系统初始化和中断子程序控制,如图4所示。

进入中断后,先调用次级通路辨识程序,进行次级通路滤波器的迭代。当次级通路滤波器进入稳定状态后,将其权系数固定不变代入FxLMS算法,之后的中断均进入有源噪声控制程序,进行FxLMS滤波器权系数的迭代,并产生次级信号。次级通路辨识程序和有源噪声控制程序分别如图5和图6所示。

5 实验结果分析

在进行实验时,将系统的参考信号输入端、误差信号输入端、次级信号输出端以线连方式与虚拟信号分析仪连到一起,将声通路、传声器和发声器忽略不计,这样可以有效避免声反馈问题,同时便于结果分析。系统利用虚拟信号分析仪产生低频噪声,频率为300Hz。通过反复调整,确定次级通路辨识滤波器的阶数为32,步长为0.015,自适应控制器滤波器的阶数为64,步长为0.003。图7是系统关闭时的噪声,图8是系统开启时的噪声,横坐标采样时长为25s(采样点数2.0×105),纵坐标是采样幅值,通过计算得出降噪量约为14dB。

结语

本文选用TI公司的TMS320VC5509 DSP芯片和AIC23B音频芯片设计了一种前馈式自适应有源低频噪声控制系统,采用LMS算法和FxLMS算法分别实现次级通路辨识和自适应有源噪声控制。实验结果表明,对于频率为300Hz的低频噪声,能够取得14dB左右的降噪量。

参考文献

[1]陈克安.有源噪声控制(第2版)[M].北京:国防工业出版社,2014.

[2]陈克安.有源噪声控制技术及其在舰船中的应用[J].中国舰船研究,2017,12(4):17-21.

[3]裴春明,刘姜涛,刘震宇,应黎明.基于自适应技术的低频噪声控制研究[J].武汉大学学报(工学版),2013,46(3):371-375.

[4] Morgan D R.History,applications,and subsequent development of the FXLMS algorithm[J].IEEE Signal Processing Magazine,2013,30(3):172-176.

[3]裴春明,刘姜涛,刘震宇,等.基于自适应技术的低频噪声控制研究[J].武汉大学学报(工学版),2013,46(3):371-375.

[6]王世浩,王生栋,查富生,等.基于FxLMS算法的主動噪声控制降噪效果研究[J].机械与电子,2015(12):23-27.

[7]孙金玮,孙琳,刘剑,等.一种含次级通道在线辨识的窄带主动噪声控制系统[J].仪器仪表学报,2011,32(2):252-257.

[8]冯涵,何培宇,高勇,等.一种基于TMS320VC5416DSK的有源噪声控制系统设计与实现[J].四川大学学报(自然科学版),2008,45(4):842-846.