關鍵詞 聲源定位;時延法;多普勒效應;非對稱麥克風陣列
聲源定位在工業、交通、軍事等領域中有著廣泛的應用[1-3]。如何通過定位算法和裝置的設計實現高精度、大范圍的定位是聲源定位重要的研究方向。聲源定位技術,即利用聲源所產生的聲音確定聲源目標相對于傳感器的方向、距離的技術。掌握該技術需要充分理解聲音的產生、傳播和探測等知識。在大學物理實驗教學中,聲學相關的實驗內容有聲速測量實驗、超聲光柵實驗、超聲波探傷實驗、多普勒效應實驗[4-8],且所用聲頻多為超聲波段。然而,教學上的聲音定位實驗案例更少,所用聲頻信號也為超聲波[9]。因此在實驗教學中引入相關的聲學實驗內容,可以豐富和加強學生對聲信號特征、聲信號的處理及應用的認識和理解,具有很大的教學價值。
1973 年,Hahn Wtichu 提出了時延估計的相關理論[10]。隨著聲音定位研究的不斷深入,發展出基于麥克風陣列的定位方法[11]。麥克風陣列的使用提高了三維空間定位的精度,但受到聲音處理算法的限制。目前,基于麥克風陣列的聲音定位的算法(方法)主要有[12]:基于最大輸出功率的可控波束形成算法,基于高分辨率譜估計的聲源定位算法,基于聲壓幅度比的聲音定位算法,基于到達時延差(TDOA)的定位技術。
聲音的多普勒效應體現在對運動聲源的定位中。通過對接收的聲音信號的處理,可以得到與聲源運動相關的多普勒因子,進而推斷聲源的速度信息。
綜合考慮四種定位算法的優劣及適用范圍,同時考慮實際應用中運動聲源的情況,我們設計了一種利用聲音信號到達時延差和多普勒效應的聲源定位裝置,該裝置以七元非對稱麥克風陣列為探測端,實現了對0~70cm 范圍內靜止聲源和較低速運動聲源的定位和定速。
1 聲源定位及定速原理
本實驗方法主要包含兩部分:一是基于到達時延差的定位方法,二是基于多普勒效應的定速方法。
1.1 基于到達時延差的定位方法——時延法
如圖1所示,由于聲源到不同麥克風的距離不同,聲音傳播時間也不同,這在不同麥克風接收的聲音信號上體現為一定的相位差。假設兩個不同位置的麥克風i,j 接收到的聲音信號為(消除信號中的混響)
2 聲源定位裝置
七元非對稱麥克風陣列定位裝置如圖3所示。實驗裝置主要包含三個模塊:聲音探測模塊、信號采集模塊、聲源運動控制模塊。
聲音探測模塊為由七個朝向相同的麥克風組成的麥克風陣列,麥克風為海康威視DS-2FP1021型通用麥克風。以陣列中心桿的底端為坐標系原點,陣列中各個麥克風的位置如表1所示。之后聲源定位的坐標亦是在此坐標系下的坐標。裝置采用七個麥克風是在控制硬件成本和計算時間的前提下,保證實現較高的定位精確度。采用非對稱的結構一方面保證麥克風之間互不遮擋,可以較好采集聲音信號;另一方面陣列的非對稱性也能消除定位結果的簡并性。
信號采集模塊采用AD7606型8通道同步采樣模數數據采集系統。該系統可以實現8通道聲音信號的同步采樣,最大采樣頻率可達到200kHz,遠大于實驗中的聲音頻率(~kHz),能夠滿足實驗要求。本實驗的采樣率設置為100kHz。
聲源運動模塊負責控制聲源運動,實驗中采用二維導軌控制聲源位置,通過單擺裝置和轉動電機控制聲源進行單擺運動和圓周運動。
實際應用時,可通過以下步驟進行操作:
(1) 通過聲音探測模塊(麥克風陣列)探測聲源發出的聲音信號,信號采集模塊完成聲音信號的數據采集和存儲;
(2) 對聲音信號進行預處理,消除噪聲與混響;
(3) 通過互相關函數與模糊度函數求得各聲音信號間的時延差與多普勒因子。對于運動聲源,以Δt 為時間間隔,對每段Δt 的聲音信號求取時延差與多普勒因子;
(4) 將時延差與多普勒因子代入位置方程式(6)與速度方程式(18),可解得聲源的位置與速度。對于運動聲源,即得每段Δt 時間內的平均位置與平均速度。
3 聲源定位實驗結果
實驗中分別以測量結果的不確定度和誤差來反映裝置的穩定性和精準性,對靜止聲源定位進行了多次實驗探究。
3.1 不同聲源信號定位
考慮算法對不同聲頻信號的應用效果,首先分別采用歌聲(《夜鶯》)、調制信號和敲擊聲進行定位測試。利用麥克風陣列采集5秒聲音信號,并計算得到了其互相關函數,如圖4所示。
利用互相關函數得到各個麥克風信號之間的時延差后,代入方程(6)進行解算可得聲源的定位結果。對每種聲源進行獨立重復的5次定位,定位結果如圖5所示。
3.2 靜止聲源定位
將聲源固定在二維軌道的不同位置,聲音信號選為歌聲(《夜鶯》)。如圖6所示,以麥克風陣列所朝方向為+y 方向,與其垂直方向為x 方向。將聲源分別置于五個y 坐標、三個x 坐標不同的位置,以探究裝置對不同空間位置處靜止聲源的定位效果。
將聲源放置在y 坐標不同的五個位置上,每個位置重復進行五次定位,取位置平均值為最終結果,計算定位結果的不確定度與誤差。具體數據如表3所示。
將聲源放置在x 坐標不同的三個位置上,每個位置重復進行五次定位,取位置平均值為最終結果,計算定位結果的不確定度與誤差,整理定位結果如表4所示。
最終在不同的位置的定位結果如圖7所示。在改變y 坐標的實驗中,隨著聲源y 坐標的增大,即離麥克風陣列越遠,三個維度上的不確定度均增加,且精度存在減小的趨勢,在y=65.4cm處,x,y,z 的定位結果均在實際位置誤差范圍的邊緣,且不確定度均較大,因此可以認為y 在 0,70 cm內為本裝置的較優的定位范圍。
在改變x 坐標的實驗中,x 坐標的誤差與不確定度在三個位置均較小,但y 坐標的誤差與不確定度在x=0的位置較小,在離y 軸遠的位置較大。對于x 坐標的不確定度小于y 坐標不確定度的現象,考慮是由于麥克風陣列朝向y 方向,改變聲源的x 坐標相較改變y 坐標對麥克風之間的時延差改變較大,因此相較于y 坐標,信號間的時延差能夠較好地限制x 坐標,因此x 坐標的不確定度較小;對于y 坐標的不確定度隨著離y 軸越遠而增大的情況,考慮是由于在y 軸上,由于正對麥克風陣列,因此改變y 坐標,前后斜向的麥克風之間時延差變化較大,因此結果的y 坐標不確定度較小,而在遠離y 軸位置,改變y 坐標對時延差改變不大,因此不確定度較大。但在實驗所涉及的范圍內,y 坐標多次定位的誤差也僅有2cm 左右。
3.3 運動聲源定位
考慮在實際應用中,多是對運動聲源的定位,且均為較大尺度,結合實驗教學內容,將該裝置應用于單擺和圓周運動實驗中,采用時延法和多普勒效應的聯合定位,分別對做勻速圓周運動和單擺運動的聲源進行探測,聲音信號為歌聲(《夜鶯》)。
3.3.1 勻速圓周運動聲源
利用時延法對勻速圓周運動聲源的位置進行解算,選取的定位間隔為0.1s,對持續運動2.4s的聲源進行定位,之后利用位置解算結果和多普勒效應對速度進行解算。但由于聲源在0.8m 之外的運動超出了麥克風陣列的定位區間,數據誤差較大。因此選擇定位精度較好的部分 0~0.7m 進行數據分析。對圓形軌跡進行擬合,如圖8所示。
運動速度的擬合結果 (圖9(c)和圖9(d)) 相對誤差較大,是由于聲源運動速度較小,多普勒效應較弱,同時受到環境噪聲的影響,導致算法存在一定誤差,但位置誤差均在5cm 以內,速度誤差均在0.3m/s以內。
3.3.2 單擺運動聲源
同樣利用時延法對單擺運動聲源的位置進行解算,選取的定位間隔為0.1s,對持續運動3.2s的聲源進行定位,利用位置解算結果和多普勒效應對速度進行解算,對聲源的運動軌跡進行擬合,如圖10所示。
4 結語
文章提出一種綜合時延法與多普勒效應的定位方法,并基于此方法搭建了一套七元非對稱麥克風陣列聲音定位探測裝置,在對前人的算法進行優化后,增加了定位結果的抗噪性,提高了時延計算的精度并解決了運動聲源定位問題。通過實驗測定顯示,裝置具有較好的穩定性和精準性,裝置的定位范圍為0~70cm,定位誤差為±2cm。同時將其應用于不同運動形式的聲源定位探測,進一步獲得聲源運動速度以及其他相關物理量的測量,例如單擺實驗中的重力加速度的測量。將聲音定位與其他實驗內容的結合,為大學物理實驗教學提出一種新穎的教學案例,相信學生通過本實驗的探究,會對聲學的理論和技術有一個較全面的認識和掌握。
受實驗室條件的限定,裝置仍存在一定的局限性,但此類裝置在簡單的實驗場景中有著不錯的應用。在較復雜的實驗環境中,可以考慮通過互相關函數的特性,進行多個不同聲源聲音信號的區分和分離,以及各自的定位;同時考慮風速的影響,則需計算更為復雜的多普勒效應等。