高永升,李忠利,楊淑君,陳修魁,劉小鋒
(河南科技大學(xué)車輛與交通工程學(xué)院,河南洛陽(yáng) 471000)
有源消噪由P. Leug提出,其原理是發(fā)聲器發(fā)出與原噪聲頻率相同、振幅相等、相位相反的抵消噪聲,利用聲波的相消性來(lái)消除或削弱原噪聲。20世紀(jì)80年代以前,有源噪聲控制系統(tǒng)的控制電路使用模擬電路,這種控制電路無(wú)法隨噪聲和噪聲聲場(chǎng)變化而改變。因此,需要一種能自動(dòng)跟隨初級(jí)噪聲統(tǒng)計(jì)特性、控制器可時(shí)變的自適應(yīng)控制系統(tǒng)。隨著自適應(yīng)濾波理論發(fā)展和DSP芯片技術(shù)成熟,有源噪聲控制逐漸發(fā)展為自適應(yīng)有源噪聲控制。噪聲主動(dòng)控制包括前饋控制和反饋控制。反饋控制不需要參考信號(hào),結(jié)構(gòu)簡(jiǎn)單,但系統(tǒng)容易失穩(wěn);前饋控制需要精準(zhǔn)采集參考信號(hào),系統(tǒng)降噪量、穩(wěn)定性較好。常用的前饋式自適應(yīng)控制系統(tǒng)核心部分由Fx-LMS算法和FIR濾波器組成,但是當(dāng)存在聲反饋時(shí),控制系統(tǒng)傳遞函數(shù)引入了新的極點(diǎn),F(xiàn)xLMS系統(tǒng)只能通過(guò)非常長(zhǎng)的濾波器長(zhǎng)度來(lái)模擬系統(tǒng)的極點(diǎn),增加了系統(tǒng)的運(yùn)算量,收斂速度變慢,實(shí)際應(yīng)用降噪效果也不理想。因此需要一種運(yùn)算量小并且降噪能力強(qiáng)的系統(tǒng)[1-3]。
基于以上背景,提出一種基于Fu-LMS算法的控制系統(tǒng)。本文首先對(duì)系統(tǒng)模型和濾波器結(jié)構(gòu)進(jìn)行分析,推導(dǎo)出Fu-LMS算法,利用MATLAB和Simulink設(shè)計(jì)系統(tǒng)模型、進(jìn)行仿真,最后搭建平臺(tái)實(shí)驗(yàn)驗(yàn)證可行性。結(jié)果表明,在聲反饋下,系統(tǒng)降噪效果良好,從而驗(yàn)證了設(shè)計(jì)的控制系統(tǒng)的可行性和有效性。
前饋式噪聲控制系統(tǒng)的基本結(jié)構(gòu)如圖1所示。p(t)為初級(jí)信號(hào),x(t)為參考傳感器產(chǎn)生的參考信號(hào),y(t)為發(fā)聲器產(chǎn)生的次級(jí)信號(hào),e(t)為誤差傳感器接收的誤差信號(hào)。系統(tǒng)的整個(gè)工作流程為:噪聲源產(chǎn)生初級(jí)信號(hào)p(t),參考傳感器接收初級(jí)信號(hào)后生成參考信號(hào)x(t),參考信號(hào)作為控制器的輸入??刂破鞲鶕?jù)算法規(guī)則計(jì)算出次級(jí)信號(hào)y(t)輸出后經(jīng)功率放大器驅(qū)動(dòng)次級(jí)聲源。誤差傳感器同時(shí)接收初級(jí)信號(hào)和次級(jí)信號(hào),兩者疊加后形成誤差信號(hào)e(t),誤差信號(hào)輸入到控制器中,自適應(yīng)算法不斷調(diào)整控制器權(quán)系數(shù),從而改變次級(jí)信號(hào)強(qiáng)度,直至系統(tǒng)達(dá)到穩(wěn)定狀態(tài)[4-7]??刂破髯鳛橹鲃?dòng)控制系統(tǒng)的核心部分,包含控制算法和濾波器兩個(gè)內(nèi)容。
圖1 前饋控制系統(tǒng)示意圖
隨著數(shù)字處理技術(shù)發(fā)展,噪聲主動(dòng)控制系統(tǒng)多采用DSP芯片,這樣系統(tǒng)內(nèi)部之間傳遞的多為離散信號(hào)。因此為了分析問(wèn)題方便,根據(jù)圖1設(shè)計(jì)主動(dòng)控制系統(tǒng)時(shí),可以將系統(tǒng)模型轉(zhuǎn)化離散域形式,如圖2所示。
圖2 前饋式噪聲控制系統(tǒng)離散域框圖
根據(jù)圖2,推導(dǎo)控制器傳遞函數(shù)。為了簡(jiǎn)化分析,假設(shè)hr(z)=1。則圖2z域中的誤差信號(hào)為:
e(z)=hp(z)p(z)+hs(z)y(z)
(1)
(2)
(3)
如果參考信號(hào)是嚴(yán)格平穩(wěn)的,hp(z)、hs(z)和hf(z)是線性是不變的,則自適應(yīng)過(guò)程充分收斂達(dá)到理想狀態(tài)后將使e(z)=0。由式(3)可以求出控制器傳遞函數(shù)為
(4)
由式(4)可以看到,系統(tǒng)傳遞函數(shù)引入新的極點(diǎn)[8-12]。
基于Fx-LMS算法的主動(dòng)控制系統(tǒng)是一種比較經(jīng)典的前饋式控制系統(tǒng),該系統(tǒng)采用FIR濾波器。這種濾波器傳遞函數(shù)只有一組可變的零點(diǎn),因此對(duì)于存在聲反饋的系統(tǒng),只能利用很長(zhǎng)的濾波器系數(shù)來(lái)模擬實(shí)際的極點(diǎn)位置,這導(dǎo)致系統(tǒng)運(yùn)算量增大,信號(hào)延遲也高。而無(wú)限沖激響應(yīng)(IIR)濾波器傳遞函數(shù)包括零點(diǎn)和極點(diǎn)兩組可調(diào)因素,在同樣的濾波器設(shè)計(jì)指標(biāo)下,IIR濾波器所要求的階數(shù)可能只有FIR濾波器的1/5~1/10,因此IIR濾波器可用較低的階數(shù)來(lái)實(shí)現(xiàn)較高的選擇性[13-16]。通過(guò)設(shè)計(jì)IIR濾波器結(jié)構(gòu),實(shí)現(xiàn)對(duì)系統(tǒng)的極點(diǎn)匹配,這樣不僅降低系統(tǒng)運(yùn)算量,并且精確性更高。實(shí)現(xiàn)IIR濾波的方式很多,這里采用2個(gè)FIR濾波器相結(jié)合的方式實(shí)現(xiàn)IIR濾波器功能:前饋濾波器W1和反饋濾波器W2。濾波器結(jié)構(gòu)如圖3所示。
圖3 IIR濾波器結(jié)構(gòu)圖
噪聲主動(dòng)控制的核心是自適應(yīng)控制算法。當(dāng)輸入到控制器的信號(hào)發(fā)生變化時(shí),控制器會(huì)根據(jù)既定的控制算法實(shí)時(shí)調(diào)整控制器的輸出參數(shù),從而實(shí)現(xiàn)系統(tǒng)性能最優(yōu)。選擇IIR濾波器作為主動(dòng)控制系統(tǒng)濾波器,根據(jù)圖2設(shè)計(jì)主動(dòng)降噪控制系統(tǒng)結(jié)構(gòu),結(jié)構(gòu)圖如圖4所示。根據(jù)設(shè)計(jì)的結(jié)構(gòu)圖推算出所需要的算法結(jié)構(gòu)。
圖4 基于Fu-LMS算法主動(dòng)降噪控制系統(tǒng)結(jié)構(gòu)圖
假設(shè)前饋和反饋濾波器長(zhǎng)度分別為L(zhǎng)和M,則輸出信號(hào)為
y(n)=AT(n)X(n)+BT(n)Y(n-1)
(5)
式中:A(n)為W1濾波器的權(quán)值;B(n)為W2濾波器的權(quán)值;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)
于是,誤差信號(hào)可以表示為
e(n)=d(n)-hp(n)y(n)
(10)
將IIR濾波器的2個(gè)濾波器權(quán)矢量合并為一個(gè)統(tǒng)一的權(quán)矢量:
(11)
參考信號(hào)向量為
(12)
則n時(shí)刻的輸出為
y(n)=WT(n)U(n)
(13)
此時(shí)的誤差信號(hào)可以表示為
e(n)=d(n)-hp(n)WT(n)U(n)
(14)
對(duì)誤差信號(hào)的平方取平均,有:
j(n)=E[e2(n)]
(15)
按最陡下降法原理,根據(jù)隨機(jī)梯度公式推出權(quán)重的遞推公式:
W(n+1)=W(n)-2μe(n)r(n)
(16)
其中:
r(n)=U(n)*hs(n)
(17)
式中:*代表卷積運(yùn)算;hs(n)為次級(jí)通道脈沖響應(yīng);r(n)為濾波-U信號(hào)矢量。
根據(jù)圖4的系統(tǒng)框圖,在Simulink里搭建Fu-LMS控制系統(tǒng)仿真模型,如圖5所示。
圖5 Fu-LMS仿真模型
基于Fx-LMS算法的控制系統(tǒng)設(shè)計(jì)過(guò)程參考文獻(xiàn)[2],本文在Simulink里搭建Fx-LMS控制系統(tǒng)模型,如圖6所示。
圖6 Fx-LMS仿真模型
搭建的模型除了需要選擇合適的算法和濾波器結(jié)構(gòu),還需要建立精確聲通道模型,通道模型精確性對(duì)系統(tǒng)的降噪效果有很大影響。其中主要包括初級(jí)通道、次級(jí)通道、聲反饋通道。初級(jí)通道是:噪聲源與參考傳感器之間的聲場(chǎng)、參考傳感器、AD、前置放大器、抗混淆濾波;次級(jí)通路是:次級(jí)聲源、次級(jí)聲源與誤差傳感器之間的聲場(chǎng)、DA、平滑濾波、功率放大器;次級(jí)聲反饋通路是:電聲轉(zhuǎn)換、次級(jí)聲源到參考傳感器的聲場(chǎng)。選擇各聲通道傳遞函數(shù)分別為:
初級(jí)通道傳遞函數(shù):
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)
次級(jí)通道傳遞函數(shù)
h(z)=0.005-0.01z-1+0.95z-2+0.01z-3-0.9z-4
(19)
次級(jí)聲反饋通道傳遞函數(shù):
f(z)=0.6z-1
(20)
為了便于分析觀察,初級(jí)噪聲采用白噪聲與多個(gè)正弦信號(hào)的疊加信號(hào),初級(jí)聲源頻譜圖如圖7所示。
設(shè)置Fu-LMS算法前饋、反饋濾波器階數(shù)都取為40,前向步長(zhǎng)0.000 8、反饋步長(zhǎng)0.000 5。Fx-LMS算法濾波器階數(shù)取為80,步長(zhǎng)0.000 1。仿真時(shí)間5 s。結(jié)果如圖8、圖9所示。
從8(a)可以看到,F(xiàn)u-LMS實(shí)現(xiàn)了15~20 dB的降噪,而Fx-LMS只有8~10 dB的降噪,說(shuō)明設(shè)計(jì)的系統(tǒng)理論層面上是可行的。對(duì)比圖7(b)、圖8(b)、圖9(b)看到,2個(gè)系統(tǒng)對(duì)低頻噪聲信號(hào)降噪幅度更大,說(shuō)明主動(dòng)降噪系統(tǒng)對(duì)于低頻噪聲有很好降噪效果,彌補(bǔ)了傳統(tǒng)被動(dòng)降噪對(duì)于低頻噪聲降噪效果不理想的短板。
(a)參考信號(hào)聲壓級(jí)
(a)誤差信號(hào)聲壓級(jí)
(a)誤差信號(hào)聲壓級(jí)
為了驗(yàn)證設(shè)計(jì)的主動(dòng)降噪系統(tǒng)實(shí)際使用效果,搭建實(shí)驗(yàn)平臺(tái)進(jìn)行試驗(yàn),實(shí)驗(yàn)平臺(tái)選擇在常規(guī)室內(nèi)進(jìn)行,如圖10所示。
圖10 主動(dòng)降噪系統(tǒng)試驗(yàn)平臺(tái)
整個(gè)系統(tǒng)的硬件部分主要分為運(yùn)算部分和被控件部分。
控制器為系統(tǒng)的運(yùn)算部分,采用STM32F4系列單片機(jī),其特性如下:主頻為168 MHz,GPIO口有112個(gè),ADC為24通道,采樣時(shí)間最快為0.42 μs,DAC有2個(gè)通道,功耗為238 μA/MHz。這款單片機(jī)采用全新的CortexTM-M4內(nèi)核,集成了單周期DSP指令和FPU(floating point unit,浮點(diǎn)單元),對(duì)乘加運(yùn)算的速度非??欤m合數(shù)字運(yùn)算處理。
被控件部分主要為揚(yáng)聲器1、揚(yáng)聲器2、拾音器1、拾音器2。
為了使實(shí)驗(yàn)平臺(tái)降噪效果跟仿真模型降噪效果有直觀對(duì)比,試驗(yàn)平臺(tái)的初級(jí)噪聲采用仿真所用噪聲。揚(yáng)聲器1為初級(jí)聲源,產(chǎn)生初級(jí)噪聲。揚(yáng)聲器2為次級(jí)聲源,受控制器控制發(fā)出抵消新聲波。
拾音器利用咪頭采集聲音信號(hào)并經(jīng)過(guò)放大后輸出,輸出模擬信號(hào)。經(jīng)過(guò)AD轉(zhuǎn)換器后,模擬信號(hào)轉(zhuǎn)換成數(shù)字信號(hào)輸入到控制器。拾音器1采集傳遞到此處的聲音作為參考信號(hào)輸入到控制器內(nèi)。拾音器2采集此處的聲音作為誤差信號(hào)輸入到控制器。
分貝儀和Autotest數(shù)據(jù)采集器能夠?qū)⑹耙羝?處的誤差信號(hào)采集輸入到計(jì)算機(jī),為后期對(duì)比提供數(shù)據(jù)支持。整個(gè)試驗(yàn)的控制思路可以參考第1節(jié)內(nèi)容。
系統(tǒng)的軟件部分主要為在KEIL_5開(kāi)發(fā)環(huán)境下編寫(xiě)2個(gè)主動(dòng)降噪控制系統(tǒng)的C語(yǔ)言程序,不斷進(jìn)行調(diào)試確定控制算法無(wú)誤,然后將程序下載到控制器內(nèi)。
分別進(jìn)行兩個(gè)主動(dòng)降噪系統(tǒng)平臺(tái)實(shí)驗(yàn),同時(shí)利用分貝儀和數(shù)據(jù)采集器將測(cè)得的誤差信號(hào)存儲(chǔ)在計(jì)算機(jī)中。利用MATLAB處理采集的數(shù)據(jù),畫(huà)出誤差信號(hào)聲壓級(jí)隨時(shí)間變化的二維坐標(biāo)圖,如圖11所示。
(a)基于Fu-LMS算法的系統(tǒng)
對(duì)比圖11、圖8(a)、圖9(a)看到,基于Fu-LMS算法的系統(tǒng)平臺(tái)實(shí)驗(yàn)降噪效果比基于Fx-LMS算法的系統(tǒng)多了5 dB左右,但比模型仿真結(jié)果低了2~3 dB。經(jīng)過(guò)分析原因提出了一些改進(jìn)措施:建立的聲通道模型可以再精準(zhǔn)些;控制器可以采用專門(mén)的數(shù)字信號(hào)處理芯片和AD/DA轉(zhuǎn)換芯片相結(jié)合的方式。但是綜合來(lái)看,本次提出的噪聲主動(dòng)控制系統(tǒng)在聲反饋環(huán)境中有著理想降噪的效果。
本文首先研究了存在聲反饋的前饋式噪聲主動(dòng)控制系統(tǒng)結(jié)構(gòu)及其控制算法,在Simulink中搭建了控制系統(tǒng)模型,仿真結(jié)果顯示系統(tǒng)降噪效果良好。最后,搭建控制系統(tǒng)實(shí)驗(yàn)平臺(tái),分別對(duì)2種系統(tǒng)進(jìn)行實(shí)驗(yàn)。試驗(yàn)結(jié)果表明,基于Fu-LMS算法的主動(dòng)控制系統(tǒng)在聲反饋下的降噪效果有很好的優(yōu)勢(shì)。下一步將對(duì)系統(tǒng)做出改進(jìn)調(diào)整并且應(yīng)用到實(shí)際場(chǎng)合中。