張 麗,陳衛(wèi)松,崔婷玉,仝喜峰
(安徽師范大學(xué) 物理與電子信息學(xué)院,安徽 蕪湖 241003)
有源噪聲控制在治理低頻噪聲方面具有明顯的優(yōu)勢(shì),已經(jīng)較成功地應(yīng)用于封閉空間、管道、結(jié)構(gòu)聲輻射和聲傳輸?shù)确矫娴脑肼暱刂芠1]。有源噪聲控制系統(tǒng)的關(guān)鍵技術(shù)除了噪聲控制環(huán)節(jié),還包括次級(jí)通道建模環(huán)節(jié)。次級(jí)通道依據(jù)系統(tǒng)建模的狀態(tài)分為離線(xiàn)建模和在線(xiàn)建模兩大類(lèi)。離線(xiàn)建模是先對(duì)次級(jí)通道進(jìn)行辨識(shí)然后進(jìn)入主動(dòng)噪聲控制環(huán)節(jié)。該方法結(jié)構(gòu)簡(jiǎn)單,易于硬件實(shí)現(xiàn),但是不能及時(shí)地跟蹤由于環(huán)境變化造成的次級(jí)通道參數(shù)的改變[2]。為了保證降噪算法的實(shí)時(shí)性、穩(wěn)定性,通常對(duì)次級(jí)通道采用在線(xiàn)建模的方法。它能夠?qū)Υ渭?jí)通路參數(shù)進(jìn)行實(shí)時(shí)更新,當(dāng)次級(jí)通道發(fā)生突變時(shí)能讓系統(tǒng)快速恢復(fù)到穩(wěn)定狀態(tài)?;谠诰€(xiàn)建模的有源噪聲控制系統(tǒng)中,次級(jí)通道建模精度直接影響到系統(tǒng)穩(wěn)定性及收斂效果[3]。主動(dòng)控制信號(hào)會(huì)嚴(yán)重影響次級(jí)通道建模精度,同樣次級(jí)通道建模的建模信號(hào)也對(duì)主動(dòng)控制有一定影響。提高次級(jí)通道建模精度、解決建模信號(hào)與主動(dòng)控制信號(hào)的相互干擾是有源噪聲控制需要考慮的關(guān)鍵問(wèn)題。
Eriksson[4]首先用附加的隨機(jī)白噪聲作為建模信號(hào),對(duì)次級(jí)通道進(jìn)行在線(xiàn)建模,但建模信號(hào)與控制信號(hào)會(huì)相互干擾,嚴(yán)重時(shí)會(huì)導(dǎo)致系統(tǒng)不穩(wěn)定、算法發(fā)散。Bao為了減少主動(dòng)控制環(huán)節(jié)對(duì)建模環(huán)節(jié)的影響,在Eriksson算法中加入一個(gè)輔助自適應(yīng)濾波器。Kuo采用一個(gè)誤差預(yù)測(cè)濾波器,通過(guò)信號(hào)延遲將建模誤差信號(hào)從期望信號(hào)中分離。Bao和Kuo的方法都是從期望信號(hào)著手來(lái)減少主動(dòng)控制環(huán)節(jié)對(duì)建模環(huán)節(jié)的影響,但沒(méi)有解決建模信號(hào)對(duì)主動(dòng)控制信號(hào)的影響。張明等[5]在此基礎(chǔ)上引入了第三個(gè)濾波器,通過(guò)抵消建模誤差信號(hào)中的控制信號(hào),有效解決了建模信號(hào)與主動(dòng)控制信號(hào)間的相互影響。楊鐵軍等[6]在文獻(xiàn)[5]的基礎(chǔ)上增加了一個(gè)誤差通道濾波器,在調(diào)整建模濾波器和第三個(gè)濾波器的誤差信號(hào)中減去控制信號(hào)經(jīng)過(guò)建模濾波器的濾波。這些算法思路都是通過(guò)增加自適應(yīng)濾波器來(lái)改進(jìn)算法控制性能,存在主動(dòng)控制結(jié)構(gòu)設(shè)計(jì)難度大、算法的計(jì)算量大和算法復(fù)雜度高的問(wèn)題[7]。
Akhtar[8]提出的對(duì)次級(jí)通道采用變步長(zhǎng)算法(VSS-LMS)受到較多關(guān)注,這種方法在不增加結(jié)構(gòu)復(fù)雜度的情況下,改善了Eriksson算法中主動(dòng)控制信號(hào)對(duì)建模環(huán)節(jié)的影響。但是Akhtar算法沒(méi)有考慮建模信號(hào)對(duì)主動(dòng)控制信號(hào)的影響。Davari[9]提出了一種對(duì)建模信號(hào)進(jìn)行開(kāi)關(guān)控制的策略,當(dāng)系統(tǒng)達(dá)到穩(wěn)定狀態(tài)時(shí)停止次級(jí)通道建模,當(dāng)檢測(cè)到次級(jí)通道發(fā)生變化時(shí),注入建模信號(hào)重新建模,但是環(huán)境變化門(mén)限值需要再次調(diào)節(jié)[3]。Shakeel Ahmed[10]提出了調(diào)節(jié)建模信號(hào)功率的方案,第1階段,建模信號(hào)功率隨著次級(jí)通道建模濾波器的誤差信號(hào)的功率而變化,第二階段,建模信號(hào)功率隨著兩個(gè)相鄰次級(jí)通道建模濾波器誤差信號(hào)的相關(guān)估計(jì)而變化,該算法提高了系統(tǒng)性能。但是該算法引入了MFXNLMS算法,不僅結(jié)構(gòu)復(fù)雜,計(jì)算量也遠(yuǎn)高于Akhtar算法。
本文在Akhtar算法的基礎(chǔ)上提出一種基于梯度下降的次級(jí)通道在線(xiàn)建模有源噪聲控制算法,改進(jìn)算法結(jié)構(gòu)如圖1所示。
其中:P(n)、S(n)分別為初級(jí)通道和次級(jí)通道,d(n)是期望信號(hào),e(n)為降噪系統(tǒng)的殘余誤差信號(hào),噪聲源X(n)經(jīng)過(guò)建模濾波器(n)得到(n),作為主動(dòng)控制環(huán)節(jié)的輸入信號(hào),白噪聲信號(hào)v(n)是建模環(huán)節(jié)的輸入信號(hào)。
圖1 改進(jìn)算法結(jié)構(gòu)圖
Akhtar提出的方法中,f(n)是更新主濾波器和建模濾波器的誤差信號(hào)。在次級(jí)通道建模中,收斂因子隨著e(n)和f(n)能量比的變化進(jìn)行調(diào)整。初始階段,系統(tǒng)處于最不穩(wěn)定狀態(tài),μs(n)采用最小值μsmin,隨著系統(tǒng)收斂,μs(n)值逐漸增加,調(diào)節(jié)公式為[8]
為改善Akhtar算法中建模信號(hào)對(duì)主動(dòng)控制信號(hào)的影響,本文提出將μs(n)的調(diào)節(jié)方式與主動(dòng)控制模塊的收斂因子μw(n)的調(diào)節(jié)方式相結(jié)合,其中對(duì)建模收斂因子μs(n)進(jìn)行梯度下降調(diào)整。
W(n)、(n)分別為主動(dòng)控制環(huán)節(jié)和次級(jí)通道建模環(huán)節(jié)的自適應(yīng)濾波器,根據(jù)各自環(huán)節(jié)的輸入信號(hào)和誤差信號(hào)及步長(zhǎng)因子來(lái)自適應(yīng)更新濾波器權(quán)值。式(5),式(6)[11]分別為自適應(yīng)濾波器權(quán)系數(shù)的更新方式。式(7)[12]為更新建模濾波器(n)的誤差信號(hào),也是更新主濾波器W(n)的誤差信號(hào)。白噪聲信號(hào)v(n)和控制信號(hào)y(n)經(jīng)過(guò)次級(jí)通道,輸出[ys(n)-vs(n)]。在建模環(huán)節(jié)v(n)經(jīng)過(guò)(n)輸出s(n),如式(7)所示,誤差信號(hào)f(n)中既包括建模環(huán)節(jié)的信號(hào)也包括降噪環(huán)節(jié)的信號(hào),其中主動(dòng)控制環(huán)節(jié)的理論誤差[d(n)-ys(n)]會(huì)干擾(n)的更新,次級(jí)通道建模環(huán)節(jié)的理論誤差[vs(n)-s(n)]也會(huì)干擾W(n)的更新,為了最大程度地減弱兩個(gè)環(huán)節(jié)的相互影響,在線(xiàn)建模和主控制模塊均采用變化步長(zhǎng)值。
初始階段控制模塊的信號(hào)能量較高(此時(shí)ys(n),s(n)值 很 小 ,P[d(n)]>>P[vs(n)],即ρ(n)≈1),對(duì)建模系統(tǒng)影響較大,所以建模收斂因子μs采用小步長(zhǎng),而主動(dòng)控制模塊的μw采用較大步長(zhǎng)值,隨著系統(tǒng)逐漸收斂,[d(n)-ys(n)]逐漸變小,控制模塊的信號(hào)能量逐漸降低(當(dāng)?shù)鸁o(wú)數(shù)次(n→∞),[d(n)-ys(n)]→0),此時(shí)建模信號(hào)對(duì)主動(dòng)控制模塊的影響逐漸增大,所以μs逐漸變大,μw逐漸減小。主動(dòng)控制模塊μw更新方式為
β,ε為固定參數(shù),ρ(n)為本次運(yùn)算所得能量值。在線(xiàn)建模模塊μs更新方式為
a,b,μ為固定參數(shù),ρ(n)為本次運(yùn)算所得能量值,ρ(n-1)為上次運(yùn)算所得的能量值。從降噪速度和降噪量上與其他算法進(jìn)行比較,得出其改進(jìn)優(yōu)勢(shì)。
上述收斂過(guò)程中,在線(xiàn)建模的步長(zhǎng)值μs(n)由小到大變化,但是較大步長(zhǎng)值會(huì)影響建模精度,并且干擾系統(tǒng)穩(wěn)定性,嚴(yán)重時(shí)會(huì)導(dǎo)致系統(tǒng)發(fā)散。為了獲得更好的建模精度和穩(wěn)定性,后期對(duì)步長(zhǎng)值采用梯度下降方法,本文利用建模精度的變化檢測(cè)步長(zhǎng)值是否進(jìn)行下降。
函數(shù)C(n)為在線(xiàn)建模精度實(shí)時(shí)值,本文將C(n)作為μs是否進(jìn)行下降的檢測(cè)函數(shù),同時(shí)設(shè)置T1、T2兩個(gè)下降閾值。其中T1為步長(zhǎng)僅采用μs(n)的建模中,ΔS剛開(kāi)始收斂時(shí)刻C(n)的值;T2為第一次下降條件下,ΔS剛開(kāi)始收斂時(shí)刻C(n)的值。
基于梯度下降的建模方法具體步驟:
(1)初始階段,即檢測(cè)函數(shù)C(n)大于T1時(shí),建模收斂因子μs采用步長(zhǎng)值μs(n);
(2)步驟(1)雖然提高了建模收斂速度,但是建模精度低,為保持原收斂速度的同時(shí)獲得較好穩(wěn)態(tài)誤差,對(duì)μs進(jìn)行第一次下降,即當(dāng)T2<C(n)<T1時(shí)采用定步長(zhǎng)μ1,為得到較好收斂效果,二者關(guān)系應(yīng)滿(mǎn)足max[μs(n)]-μ1<0.015;
(3)當(dāng)C(n)<T2時(shí),對(duì)μs進(jìn)行第二次下降,μs采用定步長(zhǎng)μ2()0.015< μ1-μ2<0.02 。所述C(n)的表達(dá)式為
M是建模濾波器長(zhǎng)度,S(n)為次級(jí)通道脈沖響應(yīng)(橫向FIR濾波器),(n)為建模濾波器。從收斂性能和建模精度跟其他算法進(jìn)行比較,得出其改進(jìn)優(yōu)勢(shì)。
為驗(yàn)證本文改進(jìn)算法的性能,在MATLAB中將張明的算法、Akhtar算法和本文改進(jìn)算法進(jìn)行仿真實(shí)驗(yàn)。為了精確衡量在線(xiàn)建模的收斂性及精度,定義次級(jí)通道建模誤差為
定義系統(tǒng)降噪量為
設(shè)置初級(jí)通道和次級(jí)通道的傳遞函數(shù),主控制濾波器長(zhǎng)度和建模濾波器長(zhǎng)度分別為32和16,張明算法中第三個(gè)濾波器長(zhǎng)度為16,仿真圖均是在相同實(shí)驗(yàn)下取10次平均所得的結(jié)果。參數(shù)設(shè)置如表1所示。
初級(jí)通道P(n)的傳遞函數(shù)為
次級(jí)通道S(n)的傳遞函數(shù)為
表1 算法參數(shù)設(shè)置[9]
初級(jí)聲源為50 Hz,150 Hz,300 Hz的單頻信號(hào)組合后疊加白噪聲信號(hào),信噪比(SNR)為30 dB。取均值為零、方差為0.05的高斯白噪聲作為次級(jí)通道辨識(shí)的建模信號(hào)。Akhtar算法與張明算法仿真參數(shù)分別按照文獻(xiàn)[9]設(shè)置,經(jīng)過(guò)多次實(shí)驗(yàn)分析,下降閾值 及 定 步 長(zhǎng) 值 為 :T1=1×10-4,T2=2×10-5,μ1=2.5×10-2,μ2=5×10-3,λ=0.99,采 樣 頻 率為Fs=2 000Hz。
仿真結(jié)果如圖2所示,圖2(a)是控制模塊收斂因子的變化,圖2(b)是建模收斂因子的變化,初始階段控制信號(hào)能量較高,控制模塊選取較大步長(zhǎng)值,因控制信號(hào)對(duì)建模環(huán)節(jié)影響較大,所以建模濾波器選擇小步長(zhǎng)值。
隨著系統(tǒng)迭代,控制信號(hào)逐漸減小,主濾波器步長(zhǎng)值從大到小變化,建模濾波器步長(zhǎng)值則從小到大變化。系統(tǒng)迭代2000次后,建模濾波器步長(zhǎng)進(jìn)行第1次下降,迭代2500次后其進(jìn)行第2次下降,可以獲得較低的建模穩(wěn)態(tài)誤差。從圖2(b)中可以看出,本文算法中建模濾波器步長(zhǎng)值逐漸增大,后期步長(zhǎng)逐級(jí)下降,初始階段大于Akhtar算法的步長(zhǎng)值,較大的步長(zhǎng)可以有效提高建模誤差的收斂速度,后期較小的步長(zhǎng)可以獲得較低的建模誤差穩(wěn)態(tài)值。圖2(a)、圖2(b)中收斂因子的調(diào)節(jié)方式能減小兩個(gè)環(huán)節(jié)的相互影響,二者步長(zhǎng)未同時(shí)出現(xiàn)較大值,系統(tǒng)能一直處于穩(wěn)定狀態(tài)。次級(jí)通道建模精度和系統(tǒng)降噪性能分別如圖2(c)和圖2(d)所示,由圖2(c)可見(jiàn),本文提出的算法較張明和Akhtar算法獲得了較低的次級(jí)通道建模誤差值,同時(shí)(n)快速收斂至S(n)。圖2(d)中迭代5000次時(shí)本文提出算法已收斂,Akhtar算法與張明算法還未收斂,由圖可見(jiàn),本文算法在降噪量和降噪速度上都有所改進(jìn)。本文算法增加了檢測(cè)函數(shù)C(n)的計(jì)算同時(shí)μw由定步長(zhǎng)換為變步長(zhǎng),與Akhtar算法相比,增加了計(jì)算量,因未加入第3個(gè)濾波器,計(jì)算量小于張明算法。
圖2 混頻噪聲信號(hào)算法性能比較
實(shí)際情況下次級(jí)通道是隨時(shí)間不斷變化的,這就需要控制算法能夠快速跟蹤這種變化。假設(shè)系統(tǒng)迭代30000時(shí)通道發(fā)生突變,其他仿真條件和2.1節(jié)相同。
次級(jí)通道的傳遞函數(shù)為
仿真結(jié)果如圖3所示。圖3(a)是控制模塊收斂因子的變化,圖3(b)是建模收斂因子的變化,圖3(c)是次級(jí)通道建模誤差的變化,圖3(d)是系統(tǒng)降噪性能的變化。
可以看出,當(dāng)次級(jí)通道在迭代30000次后發(fā)生突變條件時(shí),本文改進(jìn)算法通過(guò)自適應(yīng)調(diào)整收斂因子使系統(tǒng)快速恢復(fù)到穩(wěn)定狀態(tài)。相較于其他兩種算法,該算法在次級(jí)通道建模上依然保持高收斂率和低穩(wěn)態(tài)誤差值,從圖3(d)可以看出,本文算法仍然保持較快收斂速度和較好的降噪量。
圖3 次級(jí)通道時(shí)變的控制算法性能比較
本文基于梯度下降方法,提出一種次級(jí)通道在線(xiàn)建模的有源噪聲控制算法。針對(duì)在線(xiàn)建模有源噪聲控制算法中建模信號(hào)對(duì)主動(dòng)控制信號(hào)的影響及參數(shù)調(diào)整工作量大的問(wèn)題,該算法將主動(dòng)控制收斂因子調(diào)節(jié)方式與建模收斂因子調(diào)節(jié)方式相結(jié)合,并將梯度下降方法應(yīng)用于在線(xiàn)建模中收斂因子的控制,仿真結(jié)果表明該算法具有收斂速度快,穩(wěn)態(tài)誤差低的特點(diǎn),在次級(jí)通道發(fā)生時(shí)變的條件下仍然保持高收斂速度和低穩(wěn)態(tài)誤差值。本文算法涉及下降閾值參數(shù)較多,噪聲源發(fā)生較大變化時(shí)閾值參數(shù)需要重新設(shè)定,后期需要在該方面進(jìn)行進(jìn)一步研究改進(jìn)。因硬件調(diào)試結(jié)果不理想,下一步仍需在該方面進(jìn)行研究。
[1]朱明剛,靳國(guó)永,肖友洪,等.聲振主動(dòng)控制系統(tǒng)中誤差通道的在線(xiàn)辨識(shí)問(wèn)題[J].噪聲與振動(dòng)控制,2005,25(4):18-22.
[2]孫金瑋,孫琳,等.一種含次級(jí)通道在線(xiàn)辨識(shí)的窄帶主動(dòng)噪聲控制系統(tǒng)[J].儀器儀表學(xué)報(bào),2011,32(2):252-257.
[3]楊茜,吳超,付強(qiáng),等.ANC次級(jí)通道在線(xiàn)建模的輔助噪聲控制方法[J].網(wǎng)絡(luò)新媒體技術(shù),2014,3(5):43-46.
[4]ERIKSSON L J,ALLIE M A.Use of random noise for online transducer estimate in an adaptive attenuation system[J].Journal of the Acoustical Society of America,1989,85(2):797-802.
[5]ZHANG M,LAN H,SER W.Cross-updated active noise control system with online secondary path modeling[J].IEEE Transactions on Speech and Audio Processing.2001,9(5):598-602.
[6]楊鐵軍,顧仲權(quán),魯明月,等.基于次級(jí)通道在線(xiàn)辨識(shí)的結(jié)構(gòu)振動(dòng)主動(dòng)控制系統(tǒng)[J].振動(dòng)與沖擊,2004,23(3):55-59.
[7]浦玉學(xué),張方,姜金輝,等.基于次級(jí)通道在線(xiàn)辨識(shí)新算法的振動(dòng)主動(dòng)控制[J].振動(dòng)、測(cè)試與診斷,2016,36(1):28-35.
[8]AKHTAR M T,ABE M,KAWAMAT M.Noise power scheduling in active noise control systems with online secondary path modeling[J].IEICE Electronics Express,2007,4(2):66-71.
[9]DAVARI P,HASSANPOUR H.Designing a new robust on-line secondary path modeling technique for feedforward active noise controlsystems[J].Signal Process,2009,89:1195-1204.
[10]AHMED S,AKHTAR M T,ZHANG XI.Robust auxiliarynoise-power scheduling in active noise control systems with online secondary path modeling[J].IEEE Trans on Audio,Speech,and Language Processing,2013,214(4):749-761.
[11]陳克安,馬遠(yuǎn)良.自適應(yīng)有源噪聲控制—原理、算法及實(shí)現(xiàn)[M].西安:西北工業(yè)大學(xué)出版社,1993:133-138.
[12]ERIKSSON L J,ALLIE M A.Use of random noise for online transducer estimate in an adaptive attenuation system[J].Journal of the Acoustical Society of America,1989,85(2):797-802.