APP下载

基于Fu-LMS算法的前馈式噪声主动控制系统研究

2021-04-13高永升李忠利杨淑君陈修魁刘小锋

仪表技术与传感器 2021年3期
关键词:声源传递函数滤波器

高永升,李忠利,杨淑君,陈修魁,刘小锋

(河南科技大学车辆与交通工程学院,河南洛阳 471000)

0 引言

有源消噪由P. Leug提出,其原理是发声器发出与原噪声频率相同、振幅相等、相位相反的抵消噪声,利用声波的相消性来消除或削弱原噪声。20世纪80年代以前,有源噪声控制系统的控制电路使用模拟电路,这种控制电路无法随噪声和噪声声场变化而改变。因此,需要一种能自动跟随初级噪声统计特性、控制器可时变的自适应控制系统。随着自适应滤波理论发展和DSP芯片技术成熟,有源噪声控制逐渐发展为自适应有源噪声控制。噪声主动控制包括前馈控制和反馈控制。反馈控制不需要参考信号,结构简单,但系统容易失稳;前馈控制需要精准采集参考信号,系统降噪量、稳定性较好。常用的前馈式自适应控制系统核心部分由Fx-LMS算法和FIR滤波器组成,但是当存在声反馈时,控制系统传递函数引入了新的极点,FxLMS系统只能通过非常长的滤波器长度来模拟系统的极点,增加了系统的运算量,收敛速度变慢,实际应用降噪效果也不理想。因此需要一种运算量小并且降噪能力强的系统[1-3]。

基于以上背景,提出一种基于Fu-LMS算法的控制系统。本文首先对系统模型和滤波器结构进行分析,推导出Fu-LMS算法,利用MATLAB和Simulink设计系统模型、进行仿真,最后搭建平台实验验证可行性。结果表明,在声反馈下,系统降噪效果良好,从而验证了设计的控制系统的可行性和有效性。

1 前馈式噪声主动控制系统

前馈式噪声控制系统的基本结构如图1所示。p(t)为初级信号,x(t)为参考传感器产生的参考信号,y(t)为发声器产生的次级信号,e(t)为误差传感器接收的误差信号。系统的整个工作流程为:噪声源产生初级信号p(t),参考传感器接收初级信号后生成参考信号x(t),参考信号作为控制器的输入。控制器根据算法规则计算出次级信号y(t)输出后经功率放大器驱动次级声源。误差传感器同时接收初级信号和次级信号,两者叠加后形成误差信号e(t),误差信号输入到控制器中,自适应算法不断调整控制器权系数,从而改变次级信号强度,直至系统达到稳定状态[4-7]。控制器作为主动控制系统的核心部分,包含控制算法和滤波器两个内容。

图1 前馈控制系统示意图

随着数字处理技术发展,噪声主动控制系统多采用DSP芯片,这样系统内部之间传递的多为离散信号。因此为了分析问题方便,根据图1设计主动控制系统时,可以将系统模型转化离散域形式,如图2所示。

图2 前馈式噪声控制系统离散域框图

根据图2,推导控制器传递函数。为了简化分析,假设hr(z)=1。则图2z域中的误差信号为:

e(z)=hp(z)p(z)+hs(z)y(z)

(1)

(2)

(3)

如果参考信号是严格平稳的,hp(z)、hs(z)和hf(z)是线性是不变的,则自适应过程充分收敛达到理想状态后将使e(z)=0。由式(3)可以求出控制器传递函数为

(4)

由式(4)可以看到,系统传递函数引入新的极点[8-12]。

2 系统设计原理

2.1 滤波器结构设计

基于Fx-LMS算法的主动控制系统是一种比较经典的前馈式控制系统,该系统采用FIR滤波器。这种滤波器传递函数只有一组可变的零点,因此对于存在声反馈的系统,只能利用很长的滤波器系数来模拟实际的极点位置,这导致系统运算量增大,信号延迟也高。而无限冲激响应(IIR)滤波器传递函数包括零点和极点两组可调因素,在同样的滤波器设计指标下,IIR滤波器所要求的阶数可能只有FIR滤波器的1/5~1/10,因此IIR滤波器可用较低的阶数来实现较高的选择性[13-16]。通过设计IIR滤波器结构,实现对系统的极点匹配,这样不仅降低系统运算量,并且精确性更高。实现IIR滤波的方式很多,这里采用2个FIR滤波器相结合的方式实现IIR滤波器功能:前馈滤波器W1和反馈滤波器W2。滤波器结构如图3所示。

图3 IIR滤波器结构图

2.2 算法分析

噪声主动控制的核心是自适应控制算法。当输入到控制器的信号发生变化时,控制器会根据既定的控制算法实时调整控制器的输出参数,从而实现系统性能最优。选择IIR滤波器作为主动控制系统滤波器,根据图2设计主动降噪控制系统结构,结构图如图4所示。根据设计的结构图推算出所需要的算法结构。

图4 基于Fu-LMS算法主动降噪控制系统结构图

假设前馈和反馈滤波器长度分别为L和M,则输出信号为

y(n)=AT(n)X(n)+BT(n)Y(n-1)

(5)

式中:A(n)为W1滤波器的权值;B(n)为W2滤波器的权值;X(n)为参考矢量;Y(n-1)为滤波器输出矢量。

A(n)=[a0(n)a1(n)a2(n)…aL-1(n)]T

(6)

B(n)=[b0(n)b1(n)b2(n)…bM(n)]T

(7)

X(n)=[x(n)x(n-1) …x(n-L+1)]T

(8)

Y(n-1)=[y(n-1)y(n-2)y(n-3)…y(n-M)]T

(9)

于是,误差信号可以表示为

e(n)=d(n)-hp(n)y(n)

(10)

将IIR滤波器的2个滤波器权矢量合并为一个统一的权矢量:

(11)

参考信号向量为

(12)

则n时刻的输出为

y(n)=WT(n)U(n)

(13)

此时的误差信号可以表示为

e(n)=d(n)-hp(n)WT(n)U(n)

(14)

对误差信号的平方取平均,有:

j(n)=E[e2(n)]

(15)

按最陡下降法原理,根据随机梯度公式推出权重的递推公式:

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

(16)

其中:

r(n)=U(n)*hs(n)

(17)

式中:*代表卷积运算;hs(n)为次级通道脉冲响应;r(n)为滤波-U信号矢量。

3 仿真与分析

根据图4的系统框图,在Simulink里搭建Fu-LMS控制系统仿真模型,如图5所示。

图5 Fu-LMS仿真模型

基于Fx-LMS算法的控制系统设计过程参考文献[2],本文在Simulink里搭建Fx-LMS控制系统模型,如图6所示。

图6 Fx-LMS仿真模型

搭建的模型除了需要选择合适的算法和滤波器结构,还需要建立精确声通道模型,通道模型精确性对系统的降噪效果有很大影响。其中主要包括初级通道、次级通道、声反馈通道。初级通道是:噪声源与参考传感器之间的声场、参考传感器、AD、前置放大器、抗混淆滤波;次级通路是:次级声源、次级声源与误差传感器之间的声场、DA、平滑滤波、功率放大器;次级声反馈通路是:电声转换、次级声源到参考传感器的声场。选择各声通道传递函数分别为:

初级通道传递函数:

p(z)=0.05-0.001z-1+0.001z-2+0.8z-3+0.6z-4+

0.2z-5-0.5z-6-0.1z-7+0.4z-8-0.05z-9

(18)

次级通道传递函数

h(z)=0.005-0.01z-1+0.95z-2+0.01z-3-0.9z-4

(19)

次级声反馈通道传递函数:

f(z)=0.6z-1

(20)

为了便于分析观察,初级噪声采用白噪声与多个正弦信号的叠加信号,初级声源频谱图如图7所示。

设置Fu-LMS算法前馈、反馈滤波器阶数都取为40,前向步长0.000 8、反馈步长0.000 5。Fx-LMS算法滤波器阶数取为80,步长0.000 1。仿真时间5 s。结果如图8、图9所示。

从8(a)可以看到,Fu-LMS实现了15~20 dB的降噪,而Fx-LMS只有8~10 dB的降噪,说明设计的系统理论层面上是可行的。对比图7(b)、图8(b)、图9(b)看到,2个系统对低频噪声信号降噪幅度更大,说明主动降噪系统对于低频噪声有很好降噪效果,弥补了传统被动降噪对于低频噪声降噪效果不理想的短板。

(a)参考信号声压级

(a)误差信号声压级

(a)误差信号声压级

4 实验与分析

4.1 实验平台搭建

为了验证设计的主动降噪系统实际使用效果,搭建实验平台进行试验,实验平台选择在常规室内进行,如图10所示。

图10 主动降噪系统试验平台

整个系统的硬件部分主要分为运算部分和被控件部分。

控制器为系统的运算部分,采用STM32F4系列单片机,其特性如下:主频为168 MHz,GPIO口有112个,ADC为24通道,采样时间最快为0.42 μs,DAC有2个通道,功耗为238 μA/MHz。这款单片机采用全新的CortexTM-M4内核,集成了单周期DSP指令和FPU(floating point unit,浮点单元),对乘加运算的速度非常快,适合数字运算处理。

被控件部分主要为扬声器1、扬声器2、拾音器1、拾音器2。

为了使实验平台降噪效果跟仿真模型降噪效果有直观对比,试验平台的初级噪声采用仿真所用噪声。扬声器1为初级声源,产生初级噪声。扬声器2为次级声源,受控制器控制发出抵消新声波。

拾音器利用咪头采集声音信号并经过放大后输出,输出模拟信号。经过AD转换器后,模拟信号转换成数字信号输入到控制器。拾音器1采集传递到此处的声音作为参考信号输入到控制器内。拾音器2采集此处的声音作为误差信号输入到控制器。

分贝仪和Autotest数据采集器能够将拾音器2处的误差信号采集输入到计算机,为后期对比提供数据支持。整个试验的控制思路可以参考第1节内容。

系统的软件部分主要为在KEIL_5开发环境下编写2个主动降噪控制系统的C语言程序,不断进行调试确定控制算法无误,然后将程序下载到控制器内。

4.2 试验结果分析

分别进行两个主动降噪系统平台实验,同时利用分贝仪和数据采集器将测得的误差信号存储在计算机中。利用MATLAB处理采集的数据,画出误差信号声压级随时间变化的二维坐标图,如图11所示。

(a)基于Fu-LMS算法的系统

对比图11、图8(a)、图9(a)看到,基于Fu-LMS算法的系统平台实验降噪效果比基于Fx-LMS算法的系统多了5 dB左右,但比模型仿真结果低了2~3 dB。经过分析原因提出了一些改进措施:建立的声通道模型可以再精准些;控制器可以采用专门的数字信号处理芯片和AD/DA转换芯片相结合的方式。但是综合来看,本次提出的噪声主动控制系统在声反馈环境中有着理想降噪的效果。

5 结束语

本文首先研究了存在声反馈的前馈式噪声主动控制系统结构及其控制算法,在Simulink中搭建了控制系统模型,仿真结果显示系统降噪效果良好。最后,搭建控制系统实验平台,分别对2种系统进行实验。试验结果表明,基于Fu-LMS算法的主动控制系统在声反馈下的降噪效果有很好的优势。下一步将对系统做出改进调整并且应用到实际场合中。

猜你喜欢

声源传递函数滤波器
虚拟声源定位的等效源近场声全息算法
从滤波器理解卷积
基于GCC-nearest时延估计的室内声源定位
基于LabVIEW的火焰传递函数测量系统
开关电源EMI滤波器的应用方法探讨
运用内积相关性结合迭代相减识别两点声源
红外成像系统的调制传递函数测试
基于Canny振荡抑制准则的改进匹配滤波器
基于TMS320C6678的SAR方位向预滤波器的并行实现
力-声互易在水下声源强度测量中的应用