屈順彪,俞 華,蘆竹茂,申 沖,韓 鈺,王晨光
(1. 中北大學(xué)儀器科學(xué)與動(dòng)態(tài)測(cè)試教育部重點(diǎn)實(shí)驗(yàn)室,太原 030051; 2. 國(guó)網(wǎng)山西省電力公司電力科學(xué)研究院,太原 030001; 3. 中北大學(xué)信息與通信工程學(xué)院,太原 030051;4.中北大學(xué)儀器與電子學(xué)院,太原 030051)
隨著現(xiàn)代信號(hào)處理技術(shù)的發(fā)展,當(dāng)前基于麥克風(fēng)陣列的聲源定位方法采用麥克風(fēng)陣列拾取聲源信號(hào),再經(jīng)過(guò)一系列語(yǔ)音處理手段完成聲源的定位操作,在無(wú)人機(jī)定位和工業(yè)設(shè)備故障監(jiān)測(cè)方面都有著廣泛的用途。因此,該技術(shù)越來(lái)越受到國(guó)內(nèi)外相關(guān)企業(yè)、科研院所及高校的關(guān)注。文獻(xiàn)[1]中提出了一種基于相位變換的廣義互相關(guān)函數(shù)的聲源定位算法。該算法采用7個(gè)麥克風(fēng)接收聲源信號(hào),并對(duì)接收到的信號(hào)進(jìn)行濾波、加窗、譜減和倒譜等預(yù)處理,得到純語(yǔ)音信號(hào),通過(guò)計(jì)算純語(yǔ)音信號(hào)的廣義互相關(guān)函數(shù)的相位變換,從而得到接收信號(hào)的時(shí)延估計(jì)值,再利用到達(dá)時(shí)間差算法和坐標(biāo)旋轉(zhuǎn)數(shù)字計(jì)算機(jī)算法計(jì)算方位角、俯仰角和距離以確定聲源方位。文獻(xiàn)[2]中提出了一種廣義交叉功率譜算法來(lái)濾除卷積干擾,通過(guò)對(duì)采樣信號(hào)進(jìn)行白化處理,并根據(jù)信噪比變化調(diào)整交叉功率譜算法的加權(quán)值以提高抗噪和抗卷積性能,與傳統(tǒng)的廣義互功率譜算法相比,能夠克服混響和噪聲的卷積干擾,銳化峰值,從而準(zhǔn)確估計(jì)出信號(hào)的時(shí)延。
當(dāng)前基于麥克風(fēng)陣列的聲源定位主要通過(guò)三類(lèi)算法模型實(shí)現(xiàn),分別是高分辨率譜估計(jì)方法[3]、可控波束形成方法[4]和基于到達(dá)時(shí)間差的時(shí)延估計(jì)方法[5]。其中高分辨率譜估計(jì)方法通過(guò)計(jì)算各個(gè)陣元的相關(guān)矩陣,獲取不同參數(shù)下的子空間,進(jìn)而求取聲源的方位信息;可控波束形成方法通過(guò)對(duì)采集的信號(hào)計(jì)算加權(quán)和得到波束,然后改變麥克風(fēng)陣列接收信號(hào)的方向并計(jì)算信號(hào)的功率,不斷搜索得到輸出功率最大的波束方向,該方向即為所求的聲源方位;基于到達(dá)時(shí)間差的時(shí)延估計(jì)方法主要分為兩步實(shí)現(xiàn),首先是估算同一聲源到達(dá)陣列中不同麥克風(fēng)之間的時(shí)間差,其次再根據(jù)該差值求解聲源到達(dá)各個(gè)麥克風(fēng)之間的距離,最后再利用求解幾何的方法確定聲源的方位[6-8]。相較于前兩種方法,該方法計(jì)算量較小,實(shí)時(shí)性較高,在麥克風(fēng)聲源定位系統(tǒng)中被廣泛采用。
在傳統(tǒng)的麥克風(fēng)聲源定位系統(tǒng)中大多采用模擬麥克風(fēng)作為聲傳感器,為保證信號(hào)的穩(wěn)定可靠,需要設(shè)計(jì)復(fù)雜的信號(hào)調(diào)理電路[7],以完成信號(hào)的濾波及放大等預(yù)處理,這都將增加系統(tǒng)的復(fù)雜度。因此本文采用數(shù)字微機(jī)電系統(tǒng)(Micro-Electro-Mechanical System,MEMS)麥克風(fēng)作為聲傳感器,由于該型傳感器直接輸出數(shù)字量的脈沖密度調(diào)制(Pulse Density Modulation,PDM)信號(hào),因此具有很強(qiáng)的抗干擾性,且不需要再設(shè)計(jì)外圍信號(hào)調(diào)理電路。對(duì)于時(shí)延估計(jì)過(guò)程中環(huán)境噪聲干擾導(dǎo)致時(shí)延估計(jì)誤差增大的問(wèn)題,本文在傳統(tǒng)的廣義互相關(guān)方法的基礎(chǔ)上,通過(guò)改進(jìn)PHAT加權(quán)函數(shù)進(jìn)一步提高其抗噪能力,從而提高時(shí)延估計(jì)的精度,最后再通過(guò)實(shí)驗(yàn)驗(yàn)證了該方法的可靠性[9-10]。
本設(shè)計(jì)中采用鈺太科技推出的型號(hào)為ZTS6032的數(shù)字MEMS麥克風(fēng),該型傳感器輸出數(shù)據(jù)為1bit的PDM信號(hào),具有很強(qiáng)的抗干擾能力,工作電壓范圍為2.4~3.3V,工作電流為500μA,其麥克風(fēng)陣列的電路設(shè)計(jì)如圖1所示。將現(xiàn)場(chǎng)可編程邏輯門(mén)陣列(Field Programmable Gate Array,F(xiàn)PGA)的IO端口分別和麥克風(fēng)的時(shí)鐘引腳以及數(shù)據(jù)引腳相連,F(xiàn)PGA提供給4路麥克風(fēng)正常工作所需要的4路同步時(shí)鐘信號(hào),保證輸出的PDM數(shù)據(jù)和輸入的時(shí)鐘信號(hào)同步,F(xiàn)PGA將采集到的4路麥克風(fēng)數(shù)據(jù)在先進(jìn)先出(First Input First Output,F(xiàn)IFO)模塊中進(jìn)行簡(jiǎn)單的處理后,等待寫(xiě)入DDR3 SDRAM中緩存。
圖1 麥克風(fēng)陣列電路工作示意圖Fig.1 Schematic diagram of microphone array circuit
在電路工作過(guò)程中,F(xiàn)PGA同步控制4路MEMS麥克風(fēng)進(jìn)行聲源信號(hào)的同步采集,設(shè)置一幀信號(hào)的采集時(shí)長(zhǎng)為10s,即一幀數(shù)據(jù)的數(shù)據(jù)量為2.86MB。采集的大量數(shù)據(jù)先經(jīng)由FPGA進(jìn)行緩存處理,由于MEMS數(shù)字麥克風(fēng)的工作時(shí)鐘和DDR3 SDRAM的工作時(shí)鐘不一致,因此分別設(shè)置2個(gè)FIFO用作數(shù)據(jù)的中間緩沖。FIFO的數(shù)據(jù)位寬設(shè)置為128bit,深度為512,將每個(gè)麥克風(fēng)輸出的1bit PDM數(shù)據(jù)聯(lián)合組成一個(gè)16字節(jié)的數(shù)據(jù),再通過(guò)寫(xiě)FIFO模塊寫(xiě)入DDR3 SDRAM中緩存等待以太網(wǎng)的發(fā)送,數(shù)據(jù)采集系統(tǒng)的整體架構(gòu)如圖2所示。
圖2 多通道麥克風(fēng)陣列數(shù)據(jù)采集系統(tǒng)Fig.2 Multi-channel microphone array data acquisition system
使用Xilinx的Vivado軟件開(kāi)發(fā)平臺(tái)自帶的內(nèi)部邏輯分析儀可實(shí)時(shí)抓取到FPGA同步采集的4路麥克風(fēng)輸出的PDM數(shù)據(jù),其結(jié)果如圖3所示。
圖3 同步采集4路麥克風(fēng)輸出的PDM數(shù)據(jù)Fig.3 Simultaneous collection of PDM data from four microphones
ZTS6032型數(shù)字MEMS麥克風(fēng)輸出信號(hào)采用PDM信號(hào)編碼,傳感器輸出信號(hào)的幅值由多個(gè)脈沖的平均值決定。由于輸出的PDM信號(hào)采用過(guò)采樣技術(shù),因此在數(shù)據(jù)解碼過(guò)程中首先需要降低信號(hào)的采樣頻率以降低硬件系統(tǒng)的功耗,這里選擇使用Q級(jí)CIC(Cascade Integrator Comb)濾波器級(jí)聯(lián)的方式降低系統(tǒng)的采樣頻率。CIC濾波器由積分器和微分器共同組成,積分器是單極點(diǎn)的IIR(Infinite Impulse Response)濾波器,微分器是對(duì)稱(chēng)的 FIR (Fi-nite Impulse Response)濾波器,其各自的傳遞函數(shù)和CIC濾波器的傳遞函數(shù)分別為式(1)和式(2)
(1)
|H(z)|=HI(z)QHc(z)Q
(2)
將z=ejω代入系統(tǒng)函數(shù)H(z), 最終可得
(3)
其中,D為降采樣倍數(shù),Q為濾波器級(jí)聯(lián)級(jí)數(shù),CIC濾波器的系統(tǒng)函數(shù)由D和Q唯一確定。圖4所示為CIC濾波器的幅頻響應(yīng)曲線,抽取倍數(shù)D越大,通帶內(nèi)降幅越大,第一旁瓣抑制比隨著Q的增大而增加,Q級(jí)CIC濾波器級(jí)聯(lián)的旁瓣抑制比為13.46Q,該參數(shù)直接關(guān)系到后續(xù)的抽取是否會(huì)發(fā)生頻譜混疊現(xiàn)象。
圖4 CIC幅頻圖Fig.4 CIC amplitude frequency diagram
由圖4可知,隨著濾波器級(jí)聯(lián)級(jí)數(shù)的增加,阻帶衰減增大,當(dāng)濾波器的級(jí)聯(lián)級(jí)數(shù)為5時(shí),阻帶最小衰減能達(dá)到67.3dB,基本能滿(mǎn)足實(shí)際的應(yīng)用需求。
由CIC濾波器的特性可知,增加濾波器的級(jí)聯(lián)級(jí)數(shù)雖然能夠增大阻帶衰減,但是同時(shí)也會(huì)帶來(lái)通帶衰減。當(dāng)信號(hào)通帶頻率為2kHz,以2.4MHz作為信號(hào)的采樣頻率,采用5級(jí)CIC濾波器級(jí)聯(lián)以150倍抽取時(shí),CIC濾波器的頻率響應(yīng)如圖5所示。在通帶內(nèi)信號(hào)幅值有將近3.57dB的衰減,當(dāng)信號(hào)通過(guò)時(shí)會(huì)出現(xiàn)比較嚴(yán)重失真的情況,因此需要設(shè)計(jì)一個(gè)補(bǔ)償濾波器以改善CIC濾波器的通帶衰減問(wèn)題,CIC補(bǔ)償濾波器的幅頻響應(yīng)曲線如圖5所示。
圖5 CIC補(bǔ)償濾波器的幅頻響應(yīng)Fig.5 Amplitude frequency response of CIC compensation filter
由圖5CIC補(bǔ)償濾波器的幅頻響應(yīng)曲線可知,經(jīng)過(guò)CIC的補(bǔ)償之后,通帶內(nèi)的幅值衰減下降到0.35dB,因此該濾波器能達(dá)到補(bǔ)償CIC濾波器通帶內(nèi)幅值衰減的目的。
麥克風(fēng)陣列的設(shè)計(jì)對(duì)聲源信號(hào)的成功定位起著關(guān)鍵作用,在對(duì)空間信號(hào)進(jìn)行定位時(shí)至少需要4個(gè)麥克風(fēng)傳感器放置在不同的方位。理論上聲傳感器越多能獲得的定位結(jié)果越精確,但同時(shí)也會(huì)帶來(lái)陣列冗余和計(jì)算量加大的問(wèn)題,對(duì)時(shí)延估值造成一定的影響。因此,本文綜合考慮各方面因素,選擇基于四元麥克風(fēng)陣列的聲源定位模型。
以O(shè)為原點(diǎn)建立如圖6所示的空間坐標(biāo)系,聲源S到原點(diǎn)O的距離為l,其在平面的投影與X正半軸的夾角為φ,與Z正半軸的夾角為θ,聲傳感器依次放置在圖6所示的位置,其中S1(d,0,0),S2(0,d,0),S3(-d,0,0),S4(0,-d,0)分別表示4個(gè)聲傳感器的坐標(biāo)位置。在近場(chǎng)模式下聲信號(hào)以球面波的形式傳播,以τij表示聲源到傳感器Si與Sj之間的時(shí)間延遲,v表示聲音在空氣中的傳播速度,聲源S到達(dá)各個(gè)傳感器的距離分別為l1、l2、l3和l4。
圖6 麥克風(fēng)陣列原理圖Fig.6 Schematic diagram of microphone array
根據(jù)以上條件可得
(4)
(5)
再將直角坐標(biāo)系轉(zhuǎn)化為球面坐標(biāo)系可得
(6)
聯(lián)立以上方程組化簡(jiǎn)可得
(7)
根據(jù)式(4)、式(5)、式(6)和式(7)即可求得聲源到達(dá)各個(gè)傳感器之間的時(shí)延值和其方位角與俯仰角,從而確定聲源的方位[11-13]。
在麥克風(fēng)陣列的聲源定位系統(tǒng)中,采用基本互相關(guān)算法進(jìn)行時(shí)延估計(jì)時(shí),由于環(huán)境中噪聲的影響導(dǎo)致所求得的互相關(guān)函數(shù)峰值難以和噪聲等干擾形成的偽峰值明顯區(qū)分開(kāi),進(jìn)而影響到時(shí)延估計(jì)和方位估計(jì)的精度。為了抑制噪聲提高信噪比[14],在基本互相關(guān)算法的基礎(chǔ)上采用頻域加權(quán)的方式對(duì)信號(hào)的互功率譜進(jìn)行處理,銳化信號(hào)的峰值。將處理后的信號(hào)通過(guò)傅里葉逆變換到時(shí)域,進(jìn)一步求解信號(hào)到達(dá)相鄰2個(gè)麥克風(fēng)的時(shí)延值,基于加權(quán)函數(shù)的廣義互相關(guān)函數(shù)Rx1x2(τ)表達(dá)式為
(8)
其中,ψ(ω)為加權(quán)函數(shù);Gx1x2(ω)為信號(hào)x1(t)和x2(t)的互功率譜;當(dāng)互相關(guān)函數(shù)Rx1x2(τ)取得最大值時(shí)所對(duì)應(yīng)的τ值即為所求的時(shí)延估計(jì)值。在不同的環(huán)境下選擇不同的加權(quán)函數(shù)對(duì)整個(gè)系統(tǒng)有著不同的影響,通過(guò)選擇合適的加權(quán)函數(shù)可以極大地增強(qiáng)系統(tǒng)抗環(huán)境干擾的能力,從而提高時(shí)延估計(jì)精度。傳統(tǒng)的加權(quán)函數(shù)有ROTH加權(quán)函數(shù)、SCOT加權(quán)函數(shù)和PHAT加權(quán)函數(shù)[15],PHAT加權(quán)函數(shù)的表達(dá)式為
(9)
在低信噪比時(shí),基于PHAT的加權(quán)函數(shù)在同等條件下相較于前兩者有著更好的表現(xiàn),但是隨著信噪比的降低,其時(shí)延估計(jì)精度也隨之下降,因此在實(shí)際應(yīng)用中如何提高時(shí)延估計(jì)精度是當(dāng)前基于麥克風(fēng)陣列聲源定位系統(tǒng)研究的重點(diǎn)。本文充分考慮在PHAT加權(quán)函數(shù)的基礎(chǔ)上進(jìn)一步優(yōu)化,提出了一種改進(jìn)的PHAT加權(quán)函數(shù),通過(guò)給PHAT加權(quán)函數(shù)增加權(quán)重的方式提高其在低信噪比條件下抑制偽峰值的能力,降低噪聲對(duì)時(shí)延估值的影響。將改進(jìn)后的PHAT加權(quán)函數(shù)定義為PHAT-σ加權(quán)函數(shù),其表達(dá)式為
(10)
加權(quán)因子σ的取值通過(guò)在不同信噪比條件下多次實(shí)驗(yàn)估計(jì)出最優(yōu)值,根據(jù)經(jīng)驗(yàn)選擇合適的加權(quán)因子σ以降低PHAT加權(quán)函數(shù)在低信噪比下的時(shí)延估計(jì)誤差和提升抗噪能力,從而達(dá)到達(dá)銳化信號(hào)峰值和提高時(shí)延估計(jì)準(zhǔn)確性的目的。改進(jìn)后的廣義互相關(guān)函數(shù)表達(dá)式為
(11)
采用2kHz的余弦信號(hào)模擬聲源信號(hào),在信噪比為-5dB的條件下采用兩種不同加權(quán)函數(shù)的廣義互相關(guān)算法進(jìn)行時(shí)延估計(jì),其結(jié)果如圖7所示。通過(guò)比較兩圖可以發(fā)現(xiàn),在低信噪比情況下直接使用PHAT加權(quán)函數(shù)計(jì)算的信號(hào)互功率譜偽峰值較為嚴(yán)重,極值不太明顯;而采用改進(jìn)后的PHAT-σ加權(quán)函數(shù)處理后的信號(hào)互功率譜偽峰值得到了明顯的抑制,其抗噪性能更強(qiáng)。
圖7 不同加權(quán)函數(shù)下的互功率譜Fig.7 Cross power spectrum under different weighting functions
通過(guò)圖7可以發(fā)現(xiàn),在信噪比較低的環(huán)境下,PHAT加權(quán)函數(shù)對(duì)噪聲的抑制能力相對(duì)較弱,信號(hào)的偽峰值較明顯,而改進(jìn)的PHAT-σ加權(quán)函數(shù)表現(xiàn)更為良好,能起到很好地銳化信號(hào)峰值的作用。因此在信噪比為-5dB條件下,對(duì)同一聲源S采用PHAT加權(quán)函數(shù)算法和PHAT-σ加權(quán)函數(shù)算法進(jìn)行實(shí)驗(yàn)測(cè)試。將4路麥克風(fēng)S1、S2、S3、S4放置成均勻線陣,相鄰2路麥克風(fēng)傳感器的間距為0.07m,麥克風(fēng)陣列的參考陣元S1與聲源的方位角為120°,聲源處于遠(yuǎn)場(chǎng)模型,設(shè)定聲速為340m/s,信號(hào)到達(dá)相鄰2路傳感器之間的理論延遲應(yīng)為0.1029ms,取10次實(shí)驗(yàn)結(jié)果進(jìn)行誤差分析,測(cè)試結(jié)果如表1所示。
根據(jù)表1可知,基于PHAT加權(quán)函數(shù)的時(shí)延估計(jì)相對(duì)誤差為4.22%,角度估計(jì)相對(duì)誤差為1.16%;基于PHAT-σ加權(quán)函數(shù)的時(shí)延估計(jì)相對(duì)誤差為1.46%,角度估計(jì)誤差為0.39%。綜上,在低信噪比條件下,對(duì)比兩種加權(quán)函數(shù)處理后的結(jié)果可知,經(jīng)過(guò)改進(jìn)后的加權(quán)函數(shù)算法抗噪性能得到了加強(qiáng),并且時(shí)延估計(jì)誤差和角度估計(jì)誤差都有了不同程度的降低,在聲源定位系統(tǒng)中能夠更加有效地確定聲源所在方位。
表1 采用兩種不同算法進(jìn)行時(shí)延估計(jì)的測(cè)試結(jié)果
本文設(shè)計(jì)的聲源定位系統(tǒng)中,使用數(shù)字MEMS麥克風(fēng)傳感器采集聲源信號(hào),采用FPGA作為核心控制系統(tǒng)完成多通道聲源信號(hào)的同步采集和數(shù)據(jù)傳輸,并且針對(duì)傳統(tǒng)廣義互相關(guān)算法的加權(quán)函數(shù)在信噪比較低的環(huán)境下時(shí)延估計(jì)誤差較大的問(wèn)題,提出了一種改進(jìn)PHAT加權(quán)函數(shù)的方法,實(shí)驗(yàn)結(jié)果表明:
1)在相同的環(huán)境下采用改進(jìn)后的PHAT-σ加權(quán)函數(shù)進(jìn)行時(shí)延估計(jì)時(shí),誤差將進(jìn)一步降低,且其抗噪能力更強(qiáng)。
2)本文提出的改進(jìn)廣義互相關(guān)加權(quán)函數(shù)算法未充分考慮室內(nèi)回聲對(duì)麥克風(fēng)陣列接收到的信號(hào)的干擾,在麥克風(fēng)陣列接收到的信號(hào)較弱時(shí),加權(quán)函數(shù)可能會(huì)出現(xiàn)較大的偏差導(dǎo)致定位誤差變大,因此在未來(lái)的研究中需要進(jìn)一步加強(qiáng)這一方面的研究。