余建平 刘武杰 李 栋
(1.兰州理工大学石油化工学院;2.山东东明石化集团有限公司)
调节阀被广泛应用于石油、化工及电力等行业中,以实现对压力和流量的控制[1]。 但在高压差、非稳定工况下调节阀产生的节流噪声可接近上百分贝,造成严重的噪声污染[2]。
目前,被动降噪法是抑制调节阀噪声的主流方法。 主要措施有两大类,一是对产生噪声的阀门和管道进行外包隔音层处理[3],另一类是改变阀体结构,使气体流动更均匀,消除湍流脉动噪声,常用的方法有在调节阀内部增设陶瓷节流孔板[4],在高压球阀进出口端设置多孔格栅[5],在球形调节阀中加入横向导游板[6]等。
被动降噪法在一定程度上起到了降噪作用,但由于节流过程产生的噪声频率多变,低频段噪声声波较长,不易被障碍物阻隔吸收,所以被动降噪技术很难实现对调节阀噪声的有效控制[7]。
阀门噪声可视为固定点噪声源沿管线或向周围环境传播过程,噪声源固定这一特性为主动降噪带来了便利。 因为噪声源的固定,所以前馈式主动降噪系统的参考信号麦克风易于安装,且初级通道(噪声源与误差信号麦克风之间的声学通道)和次级通道(次级声源与误差麦克风之间的声学通道)的声学环境相对稳定。 因此,阀门噪声声源固定的特性非常有利于前馈式主动降噪系统的应用。
主动噪声控制是与被动降噪完全不同的一项噪声控制技术[8],它根据声源的参数,通过自适应控制系统(Adaptive Filter)人为地创造出一个与噪声源振幅相同、相位相反的抗噪声源来抵消噪声源,从而达到降低噪声的目的[9,10]。
主动降噪原理简单,但实际应用时面临一个重要问题,自适应控制器是在检测到噪声源信号后产生一个反向抵消信号,信号转换中的时间滞后性极大地影响着降噪的效果,如果次级声源产生的反向信号与噪声信号不同步,次级声源的信号将反而变成噪声信号。 为此,人们将研究重点集中于自适应控制器算法的改良中。
ANC(Active Noise Control)系统的算法决定着降噪信号对噪声源信号的反馈灵敏程度,以定步长为基础的降噪算法, 如传统的FXLMS算法,代码简单、 易于实现, 但在噪声频率变化快时ANC系统的跟踪能力不强。 为此,变步长算法应运而生,如基于sigmoid函数的变步长算法[11]、基于t分布的变步长算法[12]、基于指数函数的变步长算法[13]及基于对数函数的变步长算法[14]等。 各种变步长的算法提高了ANC系统的跟踪识别能力,但步长函数中的参数需要根据实际条件多次测试获得。 虽然变步长算法有着很强的应用条件,但当噪声信号变化时,算法的收敛速度、稳定性、稳态误差和全局收敛性还有待提高。
针对上述问题,提出了一种将压缩因子粒子群算法和带修正因子的反正切函数变步长法相结合的滤波新算法(AFXLMS-CFPSO算法),之后通过有限元声学仿真的方法对次级声源的布放进行优化, 确定初级声源与次级声源之间的距离。 通过计算机仿真与实验验证的方法证明了该算法的有效性和可靠性。
AFXLMS-CFPSO算法逻辑框图如图1所示。它主要包括参考信号麦克风 (用于噪声源的收集)、 次级声源扬声器 (用于产生人工抗噪声信号)、误差信号麦克风(用于收集系统残余噪声)和有限脉冲响应滤波器(FIR)。
图1 AFXLMS-CFPSO算法逻辑框图
图2 修正因子曲线
其中,P(z)和S(z)分别代表初级通道和次级通道的传递函数,X(n)为输入的噪声源,S'(z)为S(z)的粗略估计值,W(z)为权重更新的控制器,d(n) 表示噪声源经过主级路径传递通道后到达目标降噪区域后的噪声,y(n)代表前馈ANC控制器的输出,e(n)代表降噪后残余的噪声信号。 n为n次迭代,z为z次变换。 计算功能可用以下公式表示。
自适应控制器的输出y(n)可表示为:
其中,X(n)=[X(n),X(n-1),X(n-2),…,X(n-L+1)]T为含有L个样本的参考信号,W(n)=[W0(n),W1(n),W2(n),…,WL(n)]T为控制器的权向量,T为向量的转置。
降噪区域的噪声信号d(n)可表示为:
其中,P(n)为P(z)的有限脉冲响应,S(n)与S(z)、S'(n)与S'(z)也是如此。 *为线性卷积运算[15]。
降噪区域的抗噪信号yf(n)可表示为:
其中,M为自适应滤波器W(z)的阶数,Px为滤波器参考信号Xf(n)的声功率[16]。
在式(6)中,步长μ在自适应控制器的权重更新方程中扮演着很重要的角色,因此,通过对以上变步长算法基本思路的了解,将带修正因子的反正切函数引入了对步长的控制中。 其中修正因子考虑到了误差信号e(n)的欧式(Euclidean)范数。 修正因子U(n)的定义如下:
朱斌和马艳提出了基于反正切函数的变步长LMS算法[17],其中步长μ的计算公式如下:
其中,b、β、∊为参数。
式(9)中的β替换为修正因子U(n),∊设为2,故得到步长μ的计算公式为:
将式(8)代入式(10)中,得:
其中,a是步长函数分子上的系数,b是反正切函数中的系数。
图3a、b给出不同的系数a和b对步长函数的影响。 显而易见,a和b在步长μ(n)的调整中起着至关重要的作用。 误差信号e(n)较大时,需要步长函数有一个较大的斜率来保证收敛速度,当误差信号e(n)缩小到一定范围时,就需要缩小步长来保证算法的稳定性,从图3a、b可以看出,步长随误差信号改变的趋势满足这一特点。
图3 不同的a和b对步长函数的影响
将式(11)代入式(6)中,得到改进AFXLMS算法的权重更新方程为:
a和b通过调整步长对AFXLMS-CFPSO算法的降噪性能起着至关重要的作用,为了进一步提高算法的降噪性能,利用带压缩因子的粒子群算法来更精准地找到a和b的最佳值。
设a和b为粒子,可以将填充矩阵初始化为:
其中,P为优化的粒子群总个数。
把第p个粒子带入控制器中得到输出为:
采用均方误差(MSE)作为压缩因子粒子群算法(CFPSO)的目标函数对其中的粒子{ai和bi(1≤i≤P)}进行更新,它被定义为:
带压缩因子粒子群算法中,算法优化的每一步都是根据局部最佳AUpbest(i)位置和全局最佳AUgbest位置来更新粒子的速度和位置。
速度的更新公式定义为:
其中,λ为压缩因子, 在粒子群算法的初期,压缩因子较大,提高算法的全局搜索能力;在粒子群算法后期,压缩因子较小,提高算法的局部搜索能力[18]。 则有:
位置的更新公式定义为:
在这些公式中,Vp代表了粒子的速度,i代表了粒子的迭代次数。λ为压缩因子,据研究结果表明,带压缩因子的粒子群算法比起传统的惯性权重的粒子群优化算法有更快的收敛速度。 c1和c2为学习因子,也称之为加速度常数。t1和t2为[0,1]范围内的均匀随机数, 增加了粒子飞行的随机性。 当均方误差达到最小的噪声水平时,设置终止条件为当MSE(AUgbest)≤ζ,AUp(i)=(ap,bp)=AUgbest;否则AUp(i)=AUp(i-1)+Vp(i)。
这里的ζ是一个很小的常数, 它的值越大算法的收敛速度就越快;它的值越小算法的降噪效果就越好。
仿真实验方案是分别将信噪比为SNR=0 dB和SNR=50 dB的高斯白噪声添加到样本总数为10 000的随机信号中形成实验测试信号, 用于对比传统FXLMS算法、VSS-LMS算法、A-LMS算法、AFXLMS-CFPSO算法的降噪性能。
仿真过程中自适应滤波器阶数取为4,初、次级模拟通道函数按下式设定:
各种算法参数取值见表1。
表1 各算法参数取值
图4为步长随迭代次数变化的曲线, 各算法的初始步长均为7×10-5。 从图中可以清晰地看出,步长随迭代次数的增加先增大后减小,这点也很符合变步长算法的基本原理。 AFXLMS-CFPSO算法的步长变化在迭代后期的稳定性要更好,这也为缩短计算时长提供了技术基础。
图4 步长随迭代次数变化的曲线
算法的收敛速度代表着当噪声信号变化时ANC系统对噪声信号响应速度的快慢, 图5给出了信噪比SNR分别为0、50 dB时各种算法的收敛过程。
图5 各算法的收敛曲线
当信噪比SNR为50 dB时,AFXLMS-CFPSO算法在迭代到1 800步时达到稳态,VSS-LMS算法、A-LMS算法分别在1 520步、5 500步的时候达到稳态, 而FXLMS算法在迭代到10 000步的时候误差信号仍然有较大的波动; 当信噪比SNR为0 dB时,AFXLMS-CFPSO算法在迭代到1 850步时达到稳态,VSS-LMS算法、A-LMS算法分别在4 580步和8 500步时达到稳态,而FXLMS算法在10 000步时仍然没有达到稳态。 从上述的数据对比中可以看出,无论是信噪比较高还是较低,AFXLMS-CFPSO算法的收敛速度均快于其他算法,亦可以看出信噪比的高低对AFXLMS-CFPSO算法收敛速度的影响不大,AFXLMS-CFPSO算法的抗噪性能要优于其他算法。
当信噪比SNR为50 dB时,AFXLMS-CFPSO算法、A-LMS算法、VSS-LMS算法、FXLMS算法的降噪量分别为18.8、15.4、14.6、11.7 dB; 当信噪比SNR 为0 dB 时,AFXLMS-CFPSO 算 法、A-LMS 算法、VSS-LMS算法、FXLMS算法的降噪量分别为18.7、13.6、8.5、3.5 dB。从上述数据的对比中可以看出在不同的信噪比下,AFXLMS-CFPSO算法的降噪量都要高于其他算法。 图5中的曲线亦可以明显看出AFXLMS-CFPSO算法误差信号的波动都要小于其他算法,算法的稳定性也优于其他算法。
综上所述,AFXLMS-CFPSO算法相较于其他的变步长算法和传统的FXLMS算法在收敛速度、降噪量、稳定性和抗噪性能方面都要更好。
ANC算法性能决定了噪声信号变化时系统跟踪信号的能力。 但声波在空间传递中,次级声源如何安放以最大限度抵消噪声信号也是降噪系统性能的另一重要方面,笔者采用有限元法确定次级声源最佳安放位置。
文中使用的三维模型如图6所示, 墙体的厚度200 mm,空间的长度6 900 mm,宽度4 900 mm,高度4 200 mm。 球阀内径d=150 mm,球阀开度为30%,阀体内部流体为空气,入口压力3 MPa,出口压力1.5 MPa。
图6 三维模型
通过布尔运算从结构模型中抽取出声学模型,由于模拟最高计算频率为600 Hz,因此声学模型网格(图7)的最大单元尺寸其中c为流体速度,取340 m/s,fmax为最高计算频率。因为房间墙壁用型号C25的混凝土筑成,所以房间天花板和墙壁的声阻抗为9.12×106kg/(m2·s),管道、球阀的声阻抗为40.82×106kg/(m2·s)。
图7 声学有限元网格
因为高速气流经阀体然后周期性排放的脉冲喷气噪声属于典型的气动单极子声源,所以仿真模拟的初级声源为单极子声源,其位置位于阀球内表面。 根据国家标准[19]可以确定出初级声源的振幅强度为0.92 Pa,相位设置为0°,频率范围为20 ~600 Hz, 在 模 型 中 的 坐 标 为(-1058.072,117.806,3049.826)。 国标计算公式中系数的名称和取值如下:
压力恢复系数FL0.99
比热比γ 1.4
质量流量m 2.35 kg/s
通用气体常数R 8 314 J/(kmol·K)
流体分子质量M 29 kg/kmol
声功率比γw0.25
基准声压P0200 kPa
基准声功率W010-12W
因为文献[20]中提出当初级声源与次级声源的间距不大于初级声源最高频率的半波长时主动噪声控制的降噪效果较好。 本次有限元仿真最高计算频率为600 Hz, 最短波长为0.283 m,所以次级声源距离初级声源的位置在0.000~0.283 m的范围之内选取。
取次级声源的振幅强度为0.92 Pa, 相位为90°,频率范围为20~600 Hz,监测点在声学模型中的坐标为(-3201.624,976.15,7781.902)。经过多次有限元声学仿真实验, 得出当次级声源与初级声源的距离为0.245 m, 次级声源在声学模型中的坐标为(-1058.072,117.806,3249.826)时,主动降噪系统的降噪效果最好,最大降噪量为18.6 dB。
当次级声源位于上述的最佳位置时,次级声源开启与关闭时各频率的声场分布对比云图如图8所示。
图8 声场分布图对比
各云图中红色与深红色的部分为该频段声压级较高的位置,绿色则为该频段声压级较低的位置。 从图中可以清晰地看出,当次级声源未开启时, 声学模型中各个位置处的声压级相对较高,而且声压集中区域相对较多;当次级声源开启时,声学模型中各个位置的声压级都出现了明显的降低,而且声压集中区域也相对较少。
监测点测得的加权A声压级频域图如图9所示。
图9 频域图对比
图9中, 黑色曲线为次级声源未开启时监测点测得的在20~600 Hz加权A声压级频域图曲线;红色曲线为当次级声源开启时,监测点测得的在20~600 Hz加权A声压级频域图曲线。 图中可以明显看出,当次级声源开启时监测点测得的声压级有明显的降低。 次级声源未开启时噪声的峰频率为195 Hz,声压级为93 dB(A),开启次级声源后在该频率下的声压级为74.4 dB(A)。
根据上述有限元声学仿真时的球阀工况进行噪声数据采集,之后再通过低通滤波器进行滤波处理,得到球阀20~600 Hz的噪声数据,将其作为初级声源通过扬声器输出。 本次实验使用的控制器为型号为DSPF28335的开发板, 误差信号传感器和参考信号传感器为麦克风,次级声源发声器为中低频扬声器,以及DSP仿真器、分贝仪、外围电路等。 实验示意图和实验图片如图10所示。
图10 实验示意图和实验图片
在实验开始前,还需要对次级通道(次级声源到误差传感器的声学通道)的传递函数进行建模。因为在本次实验中声学环境相对稳定, 所以采用附加白噪声离线次级通道辨识的方法。 建模滤波器为FIR滤波器,阶数为512阶。首先通过控制器驱动次级声源发出随机白噪声信号, 误差麦克风采集噪声信号,待通路系数稳定后完成通道辨识,次级通道建模框图如图11所示。 将辨识通道成功后的滤波器系数保存到电脑用MATLAB进行分析,该滤波器的权系数如图12所示,由图可知,当滤波器阶数为512阶时,脉冲响应系数趋近于0,说明阶数为512阶满足次级通道延时,此时可以将该滤波器的系数作为次级通道的估计值。
图11 次级通路建模框图
图12 S(z)权系数图
在实验阶段, 将低通滤波器处理得到的20~600 Hz的球阀噪声数据通过初级扬声器输出,采用控制算法为AFXLMS-CFPSO算法的ANC系统对初级声源的噪声进行控制,结果如图13所示。 从实验的时域图和频域图可以明显看出该控制系统对初级声源的噪声具有很好的控制效果。 经过3组实验测得ANC系统对初级声源的降噪量分别为:16.8、18.5、19.5 dB(A)。
图13 时域图和频域图
以球阀气动噪声为对象,展开对变步长ANC算法的研究。 提出的AFXLMS-CFPSO算法在用反正切函数建立步长与误差信号之间非线性关系的基础上引入修正因子,使算法在收敛末期具有更好的稳定性,并引入带压缩因子的粒子群算法对步长函数中的参数进行优化,使算法具有更好的全局收敛性。 通过数值仿真的方式对新算法进行仿真验证, 结果表明新算法比起FXLMS、VSSLMS、A-LMS算法在收敛速度和稳态误差上都有更好的表现。 之后用有限元声学仿真的方法对次级声源位置进行优化,仿真结果表明当次级声源位置距离初级声源245 mm时,空间声场分布的加权A声压级最低。 最后结合新算法和次级声源的最优位置,用DSPF28335控制器进行实验验证,实验结果表明在增设主动降噪设备后球阀20~600 Hz范围内噪声的加权A声压级普遍降低了15~20 dB。 综合上述的仿真与实验结果,验证了算法的有效性和实用性。