一種基于TMS320VC5416DSK 的有源噪聲控制系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
1 引 言
噪聲作為主要環(huán)境污染之一,是一個(gè)全世界都十分關(guān)注的環(huán)境問題. 目前,噪聲控制的主要措施分為無源噪聲控制( PassiveNoiseControl ) 和有源噪聲控制(ActiveNoiseControl,ANC ) . 無源噪聲控制采用吸聲、隔聲、使用消聲器等被動(dòng)噪聲控制的方法,對中高頻噪聲的控制效較好,但對低頻噪聲的控制效果不明顯. 有源噪聲控制又稱為有源聲控制或有源消聲[1] ,是根據(jù)聲波相消性干涉原理,由次級聲源產(chǎn)生與待抵消聲源(初級聲源) 聲波幅度大小相等、相位相反的聲波,從而實(shí)現(xiàn)相消性干涉,達(dá)到降低噪聲的目的. 有源噪聲控制對低頻和窄帶噪聲有較好的控制效果.
2 系統(tǒng)結(jié)構(gòu)及原理
單通道自適應(yīng)有源噪聲控制系統(tǒng)如圖1 所示.整個(gè)系統(tǒng)由初級揚(yáng)聲器(初級聲源) 、次級揚(yáng)聲器(次級聲源) 、參考麥克風(fēng)、誤差麥克風(fēng)和自適應(yīng)控制器等組成.
![]() |
噪聲源產(chǎn)生待抵消的噪聲信號,被參考麥克風(fēng)拾取,并作為參考信號x ( n) 輸入至自適應(yīng)控制器. 自適應(yīng)控制器采用Filtered2XLMS 算法計(jì)算得到次級信號y ( n) ,經(jīng)過功率放大器驅(qū)動(dòng)次級揚(yáng)聲器. 初級揚(yáng)聲器和次級揚(yáng)聲器產(chǎn)生的聲波分別形成初級聲場和次級聲場,兩者在誤差麥克風(fēng)處發(fā)生相消性干涉后形成誤差信號e ( n) ,被誤差麥克風(fēng)拾取后反饋到自適應(yīng)控制器中,以控制自適應(yīng)控制器權(quán)的更新.Filtered 2XLMS 算法通過調(diào)整控制器權(quán)系數(shù)而改變次級信號的幅度和相位,以使接收到的誤差信號e ( n) 強(qiáng)度最小. 這樣的更新過程不斷進(jìn)行,直至系統(tǒng)達(dá)到穩(wěn)定狀態(tài). 此時(shí),Filtered 2XLMS算法收斂,殘留誤差信號e ( n) 強(qiáng)度最弱,則在誤差傳感器附近形成了一個(gè)靜音區(qū).下面三小節(jié)先闡述自適應(yīng)控制和次級通路辨識的結(jié)構(gòu)模型及原理,然后推導(dǎo)了噪聲控制所采用的 Filtered2XLMS 算法.
2.1 自適應(yīng)控制器部分
自適應(yīng)控制器是整個(gè)系統(tǒng)的核心部分. 自適應(yīng)控制器采用Filtered2XLMS 算法輸出次級信號y( n) ,其激勵(lì)揚(yáng)聲器產(chǎn)生的聲波與待抵消噪聲聲波y ( n) 在空間發(fā)生相消性干涉,從而在誤差麥克風(fēng)附近形成一靜音區(qū). 靜音區(qū)的尺寸大小約為噪聲信波長的十分之一[2] ,即噪聲頻率越低靜音區(qū)尺寸就越大.圖2 顯示了自適應(yīng)前饋控制器工作原理. 由VC5416DSK 構(gòu)成的自適應(yīng)濾波器采用Filtered2XLMS 算法,根據(jù)當(dāng)前和過去時(shí)刻采樣值預(yù)測下一時(shí)刻噪聲信號樣值,使得輸出信號y ( n) 激勵(lì)次級揚(yáng)聲器產(chǎn)生的干涉聲波盡量與誤差麥克風(fēng)處的噪聲聲波的幅度大小相等、相位相反. 兩聲波在空間發(fā)生相消性干涉后被誤差麥克風(fēng)取并反饋給自適應(yīng)控制器,該信號與參考麥克風(fēng)拾取的參考信號x ( n) 一起控制Filtered2XLMS 算法的權(quán)值更新.由于該控制器是自適應(yīng)的,它能自適應(yīng)地調(diào)整權(quán)W, 以跟蹤實(shí)際環(huán)境中噪聲特性及聲空間物理參數(shù)(如溫度、氣流速度等) 隨時(shí)間的變化,從而在誤差麥克風(fēng)附近形成并保持一靜音區(qū).
![]() |
對一個(gè)單頻信號,兩個(gè)權(quán)的自適應(yīng)線性組合器在權(quán)收斂后就可得到其等幅反相輸出信號[3] . 本系統(tǒng)設(shè)計(jì)中,自適應(yīng)濾波器階數(shù)設(shè)為16 階,可以控制多達(dá)8 個(gè)單頻信號.
2.2 次級通路自適應(yīng)辨識部分
次級通路辨識是自適應(yīng)有源噪聲控制系統(tǒng)與信號處理中自適應(yīng)噪聲抵消系統(tǒng)的區(qū)別所在[1] .有源噪聲控制系統(tǒng)中,次級聲源產(chǎn)生的聲波并不是立即被誤差麥克風(fēng)拾取,而是經(jīng)過次級通路傳播后再被拾取. 因此,次級通路對有源噪聲控制系統(tǒng)的影響不容忽略,而對次級通路的辨識也是有源噪聲控制中不可缺少的模塊.圖3 顯示了次級通路自適應(yīng)辨識原理.
VC5416DSP 產(chǎn)生一高斯白噪聲通過次級揚(yáng)聲器輸出,輸出聲信號被誤差麥克風(fēng)拾取后反饋給由VC5416DSK 構(gòu)成的自適應(yīng)濾波器. 濾波器采用LMS 算法,利用當(dāng)前和過去時(shí)刻反饋信號樣值和噪聲信號樣值,預(yù)測下一時(shí)刻誤差麥克風(fēng)接收到的信號樣值. 系統(tǒng)進(jìn)入穩(wěn)態(tài)或自適應(yīng)算法收斂后,濾波器權(quán)系數(shù)即為次級通路的傳遞函數(shù)的估計(jì)值.自適應(yīng)濾波器階數(shù)的選取主要取決于兩個(gè)因素,即有源噪聲控制系統(tǒng)所在房間的混響狀況以及系統(tǒng)的采樣率. 房間混響越嚴(yán)重,則所需濾波器階數(shù)就越大. 同時(shí),所需濾波器階數(shù)還會(huì)隨系統(tǒng)采樣率的升高而增加. 本系統(tǒng)設(shè)計(jì)中,系統(tǒng)采樣率設(shè)為8kHz, 實(shí)驗(yàn)所在房間混響屬于中等程度,選取的濾波器階數(shù)為256 階.
![]() |
3 硬件系統(tǒng)
有源噪聲控制硬件系統(tǒng)包含:VC5416DSK 、音頻子板、作為初、次級聲源的兩臺揚(yáng)聲器、作為參考、誤差麥克風(fēng)的兩只電容式麥克風(fēng)以及控制兩麥風(fēng)的調(diào)音臺.VC5416DSK ( DSPSTARTERKIT) 是TI 公司為DSP 應(yīng)用者開發(fā)的DSP 系統(tǒng)開成2 萬條指令周期,能夠滿足該系統(tǒng)設(shè)計(jì)的實(shí)時(shí)性要求.有源前饋噪聲控制系統(tǒng)需要兩路信號(參考信號和誤差信號) 同時(shí)輸入. 在VC5416DSK 已有一CODEC 芯片基礎(chǔ)上,我們通過板上的PeripheralInterface 擴(kuò)展接口設(shè)計(jì)了一音頻子板. 該子板我們選用了TI 公司生產(chǎn)的、集成了模擬功能的高性能立體聲音頻編解碼器CODEC2TLV320AIC23 (簡稱AIC23 ) . 該子板的設(shè)計(jì)采用SPI 模式, 將VC5416 設(shè)為主設(shè)備,將AIC23 設(shè)為從設(shè)備,由主設(shè)備VC5416 提供時(shí)鐘信號并控制數(shù)據(jù)傳輸過程.VC5416 與AIC23 的連接如圖4 所示:
![]() |
4 系統(tǒng)的軟件實(shí)現(xiàn)
系統(tǒng)實(shí)現(xiàn)的軟件部分主要由主程序和中斷服務(wù)程序組成. 其中,主程序?qū)崿F(xiàn)系統(tǒng)的初始化和程序模塊控制等功能. 中斷服務(wù)程序主要實(shí)現(xiàn)次級通路辨識(采用LMS 算法) 和噪聲控制(采用Fil2tered2XLMS 算法) ,這兩模塊均需要實(shí)時(shí)處理. 本文設(shè)計(jì)中采用C 語言實(shí)現(xiàn),并通過C54x 的內(nèi)聯(lián)函數(shù)[5] 進(jìn)行了優(yōu)化. 主程序流程圖和中斷程序流程圖分別如圖5 和圖6 所示.在下面兩小節(jié)中,將對圖6 中次級通路辨識、噪聲控制兩模塊的算法流程作詳細(xì)闡述.
![]() |
4.1 次級通路辨識的算法流程
對DSP 和CODEC 等硬件模塊初始化后,次級通路自適應(yīng)辨識過程開始進(jìn)行. 該自適應(yīng)過程執(zhí)行的迭代次數(shù)取決于自適應(yīng)辨識過程收斂快慢. 經(jīng)多次實(shí)驗(yàn)比較,迭代次數(shù)設(shè)為128000 次,且步長因mu - h 取為8000 (Q15 格式) 時(shí),獲得了較好的辨識結(jié)果. 需要注意的是,辨識過程中,麥克風(fēng)所拾取信號電平幅度峰值應(yīng)該控制在100mV 左右,這可通過對控制麥克風(fēng)的調(diào)音臺進(jìn)行調(diào)節(jié)而實(shí)現(xiàn). 次級通路辨識算法流程圖如圖7 所示:
![]() |
4.2 噪聲控制算法流程
噪聲控制過程是整個(gè)算法流程的最后一個(gè)過程,也是有源噪聲控制系統(tǒng)發(fā)揮其降噪功能的階段. 該過程的算法( Filtered2XLMS 算法) 會(huì)一直運(yùn)行,直至DSP 復(fù)位才會(huì)停止. 噪聲控制算法流程圖如圖8 所示:
![]() |
Filtered2XLMS 算法的步長因子mu - w 的值和誤差麥克風(fēng)所采信號的電平大小,將影響該過程噪聲控制效果. mu - w 取較大值時(shí)會(huì)使收斂更快,但若取值過大又會(huì)導(dǎo)致算法的發(fā)散,并產(chǎn)生令人厭煩的發(fā)散噪聲. mu - w 取值太小時(shí),算法收斂速度會(huì)變慢,甚至不能跟蹤噪聲信號特征變化,影響噪聲控制效果. 另外,若誤差麥克風(fēng)返回電平的幅度峰值太大,會(huì)使DSP 在運(yùn)算過程中產(chǎn)生溢出. 經(jīng)過多次實(shí)驗(yàn)比較,本文實(shí)驗(yàn)中mu - w 值取為12000(Q15 格式) ,誤差麥克風(fēng)返回信號電平的幅度峰值調(diào)節(jié)為100mV 左右.
5 實(shí)驗(yàn)結(jié)果及分析
在本文的實(shí)驗(yàn)中,次級揚(yáng)聲器和麥克風(fēng)距離設(shè)為30cm, 實(shí)驗(yàn)在一般普通的實(shí)驗(yàn)室中進(jìn)行(即存在房間混響、反射和環(huán)境噪聲等條件下) ,根據(jù)前面介紹的算法和相應(yīng)的實(shí)驗(yàn)設(shè)置,得到的次級通路自適應(yīng)辨識結(jié)果如圖9 所示.實(shí)驗(yàn)中, 待抵消噪聲設(shè)為含有180Hz 、235Hz、290Hz 、340Hz 四個(gè)低頻范圍內(nèi)單頻正弦波的噪聲信號. 在有源噪聲控制系統(tǒng)運(yùn)行前后,由DSP通過誤差麥克風(fēng)分別采集5000 樣本點(diǎn)噪聲信號,采用基于Burg 算法的現(xiàn)代譜估計(jì)方法,分析它們功率譜得到了圖10 所示結(jié)果. 由圖10 可見,在四個(gè)頻率點(diǎn)處均獲得了4~5dB 的噪聲控制效果.
![]() |
本文介紹了在由VC5416DSK 、音頻子板和麥克風(fēng)等構(gòu)成的硬件平臺上,在一般普通的實(shí)驗(yàn)室中(即存在著房間混響、反射和環(huán)境噪聲等影響) ,針對由多個(gè)單頻正弦波構(gòu)成的低頻噪聲信號,采用LMS 算法和Filtered2XLMS 算法分別實(shí)現(xiàn)了次級通路辨識和空間有源噪聲控制,完成了自適應(yīng)空間有源噪聲控制實(shí)驗(yàn). 實(shí)驗(yàn)結(jié)果表明,該系統(tǒng)獲得了一定的噪聲控制效果,對空間有源噪聲控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)具有一定的參考意義.

使用微信“掃一掃”功能添加“谷騰環(huán)保網(wǎng)”