王小懷 伊樹(shù)彬 蔡洛思
(韓山師范學(xué)院物理與電子工程學(xué)院,廣東 潮州 521000)
聲源定位是通過(guò)接收目標(biāo)聲源信息并利用電子裝置確定目標(biāo)位置的技術(shù),即利用麥克風(fēng)陣列在不同位置點(diǎn)對(duì)聲信號(hào)進(jìn)行測(cè)量,由于目標(biāo)聲源到達(dá)各個(gè)麥克風(fēng)存在時(shí)間延遲,因此利用定位算法對(duì)測(cè)量到的聲信號(hào)進(jìn)行處理,并構(gòu)建相關(guān)的物理模型,以獲得聲源點(diǎn)相對(duì)麥克風(fēng)的位置信息(包括方位角、距離)。聲源定位的研究對(duì)物理聲學(xué)、工業(yè)、航空航天、智能制造以及軍事都具有重要意義[1]。
為實(shí)現(xiàn)聲源的低成本且高精度定位,該文設(shè)計(jì)并制作了一種基于到達(dá)時(shí)間差(Time Difference of Arrival,TDOA)技術(shù)及幾何模型的聲源定位裝置。
該設(shè)計(jì)采用基于TDOA到達(dá)時(shí)間差定位原理和廣義互相關(guān)函數(shù)的時(shí)延估計(jì)GCC-PHAT(Generalized Cross Correlation PHAse Transformation,GCC-PHAT)原理[2]。在原理代碼化編程上采用C語(yǔ)言編程,試驗(yàn)設(shè)備上有麥克風(fēng)聲音接收裝置、ADC模數(shù)轉(zhuǎn)換等,涉及數(shù)字信號(hào)處理和相關(guān)算法的程序?qū)崿F(xiàn)。
該裝置對(duì)一個(gè)麥克風(fēng)接收到的信號(hào)與另一個(gè)麥克風(fēng)接收到的信號(hào)進(jìn)行相關(guān)運(yùn)算,從而得到TDOA的值,這種算法可以在麥克風(fēng)接收信號(hào)不同步時(shí)利用互相關(guān)估計(jì)得到TDOA值,再進(jìn)行定位計(jì)算就可以獲得較高的精度。TDOA技術(shù)不僅定位準(zhǔn)確,而且對(duì)算法的要求相對(duì)較低,具有很強(qiáng)的實(shí)際應(yīng)用價(jià)值。
GCC-PHAT基于廣義互相關(guān)函數(shù)的時(shí)延估計(jì)算法引入了一個(gè)加權(quán)函數(shù)對(duì)互功率譜密度進(jìn)行調(diào)整,從而優(yōu)化時(shí)延估計(jì)的性能。根據(jù)加權(quán)函數(shù)的不同,廣義互相關(guān)函數(shù)有多種不同的變形,其中廣義互相關(guān)-相位變換方法應(yīng)用最廣泛。研究表明,麥克風(fēng)對(duì)的GCC-PHAT函數(shù)的最大值越大,則該對(duì)麥克風(fēng)的接收信號(hào)越可靠,也就是接收信號(hào)質(zhì)量越高[3]。
ADC轉(zhuǎn)換就是將輸入模擬的信號(hào)量轉(zhuǎn)換成數(shù)字量。根據(jù)奎斯特采樣定理,在進(jìn)行模擬/數(shù)字信號(hào)的轉(zhuǎn)換過(guò)程中,當(dāng)采樣頻率Fs大于或等于信號(hào)中最高頻率Fm的2倍時(shí),采樣后的數(shù)字信號(hào)才能完整保留原始信號(hào)中的信息。
在聲源定位系統(tǒng)中,麥克風(fēng)陣列的每個(gè)陣元接收到的目標(biāo)信號(hào)都來(lái)自于同一個(gè)聲源。因此,各通道信號(hào)之間具有較強(qiáng)的相關(guān)性。理想情況下,通過(guò)計(jì)算每?jī)陕沸盘?hào)之間的相關(guān)函數(shù),就可以確定2個(gè)麥克風(fēng)觀測(cè)信號(hào)之間的時(shí)延。如圖1所示,S點(diǎn)為聲源信號(hào),M1、M2為2個(gè)麥克風(fēng),τ為麥克風(fēng)M1、M2接受信號(hào)的時(shí)延。當(dāng)τ=0時(shí),聲源方位在麥克風(fēng)陣列的中垂線上。
圖1 雙麥克風(fēng)陣列模型圖
雖然采用雙麥克風(fēng)和TDOA算法可以確定聲源方位,但是無(wú)法確定聲源距離,也就無(wú)法完全確定聲源的準(zhǔn)確位置。
根據(jù)平面內(nèi)2條直線相交確定1個(gè)交點(diǎn)的幾何性質(zhì),建構(gòu)的麥克風(fēng)陣列中垂線相交幾何模型,如圖2所示。
圖2 麥克風(fēng)陣列中垂線相交模型圖
S為聲源位置,雙麥克風(fēng)陣列既可繞中心點(diǎn)A旋轉(zhuǎn),還可沿導(dǎo)軌整體移動(dòng),用A、A1表示其在導(dǎo)軌上所處的2個(gè)不同位置,距離AA1可在導(dǎo)軌的有效范圍內(nèi)靈活調(diào)節(jié),導(dǎo)軌滑動(dòng)方向與AA1相同。
麥克風(fēng)陣列的主要作用是通過(guò)分析陣列中不同麥克風(fēng)采集的信息,從而得出聲音源的方向和距離[4]。如圖3所示,如果雙麥克風(fēng)陣列在A點(diǎn)時(shí)測(cè)出聲源S相對(duì)導(dǎo)軌的方位角為θ1,將雙麥克風(fēng)陣列移至A1點(diǎn)時(shí)測(cè)出聲源S相對(duì)導(dǎo)軌的方位角為θ2,那么測(cè)出A和A1間的距離為AA1。
圖3 聲源位置計(jì)算模型圖
根據(jù)正弦定理如公式(1)和公式(2)所示。
其中,θ3=θ1-θ2,θ4=180°-θ1。
將θ1、θ2以及AA1代入上式即可求出SA和SA1,從而實(shí)現(xiàn)了對(duì)聲源S進(jìn)行精確定位的目標(biāo)。
該裝置所使用的設(shè)計(jì)硬件主要由主控模塊(STM32F407-ZGT6單片機(jī))、雙麥克風(fēng)陣列、3.3 V和5 V雙穩(wěn)壓電源模塊以及3.5寸TFT LCD觸摸液晶顯示模塊等組成。硬件設(shè)計(jì)實(shí)物如圖4所示。在該裝置中,考慮單片機(jī)可能存在供電不足的情況,因此通過(guò)輸入6.5 V~10 V的直流電源到電源板為麥克風(fēng)陣列提供3.3 V電源電壓,而單片機(jī)另外由USB_TTL接口進(jìn)行5 V供電。
圖4 硬件裝置實(shí)物圖
信號(hào)采集和模數(shù)轉(zhuǎn)換:2個(gè)麥克風(fēng)采集到的聲源模擬信號(hào)首先發(fā)送至ADC模塊進(jìn)行模數(shù)轉(zhuǎn)換,得到數(shù)字信號(hào)。由于該試驗(yàn)測(cè)試用的聲源信號(hào)頻率范圍50 kHz~10 kHz,為了滿足奈奎斯特采樣定理,獲得質(zhì)量較好的數(shù)字信號(hào),設(shè)置采樣頻率為20 kHz,采樣點(diǎn)為2 048。
數(shù)字信號(hào)處理:將基于TDOA聲源定位算法和廣義互相關(guān)時(shí)延函數(shù)算法用C語(yǔ)言實(shí)現(xiàn)代碼化,燒錄進(jìn)STM32F407單片機(jī)。主控系統(tǒng)對(duì)ADC轉(zhuǎn)換得到的離散實(shí)信號(hào)序列依次進(jìn)行廣義互相關(guān)函數(shù)的時(shí)延估計(jì)GCC-PHAT算法和TDOA定位原理算法的運(yùn)算處理后得到聲源方位數(shù)據(jù)。
定位信息顯示:將聲源與接收點(diǎn)的直線距離、聲源與X軸夾角以及聲源在X軸上的投射點(diǎn)與測(cè)量點(diǎn)的距離等聲源定位信息通過(guò)LCD液晶屏幕直接顯示。根據(jù)不同需求亦可使用串口通信方式將聲源方位數(shù)據(jù)發(fā)送至電腦串口調(diào)試助手顯示測(cè)量結(jié)果。
聲音信號(hào)采集系統(tǒng)由間隔為20 cm的雙麥克風(fēng)陣列構(gòu)成,通過(guò)調(diào)節(jié)螺絲松緊度使2個(gè)麥克風(fēng)處在同一水平線上。雙麥克風(fēng)陣列固定在一個(gè)刻度盤(pán)上,并可隨轉(zhuǎn)盤(pán)在水平面內(nèi)作360°旋轉(zhuǎn);刻度盤(pán)和雙麥克風(fēng)陣列組合體安裝在一段滑軌上,可在滑軌的有效滑動(dòng)范圍內(nèi)移動(dòng);另外,還設(shè)有指針、刻度尺等方位角和距離讀數(shù)輔助部件[5],聲源定位裝置的整體實(shí)物如圖5所示。
圖5 定位裝置實(shí)物圖
定位操作基本步驟如下:1) 燒錄程序。將編寫(xiě)好的程序編譯并燒錄至STM32F407ZGT6單片機(jī)。2)儀器安裝。將2個(gè)麥克風(fēng)輸出端分別與單片機(jī)ADC各采集通道連接 PA2、PA3,并將單片機(jī)與電源板共地。3) 固定麥克風(fēng)陣列。使2個(gè)麥克風(fēng)都處在同一水平線,并與地面保持垂直。4) 標(biāo)記測(cè)量點(diǎn)。選定測(cè)量點(diǎn)并進(jìn)行標(biāo)記。5) 放置聲源。保持聲源與麥克風(fēng)陣列處在同一高度,朝麥克風(fēng)陣列方向放置。6) 測(cè)量聲源方位。觀察LCD屏顯示的方位數(shù)據(jù),待數(shù)據(jù)穩(wěn)定后記錄聲源位置。7) 重復(fù)測(cè)量聲源方位。重新放置聲源,并重復(fù)上步操作。
將刻度盤(pán)和雙麥克風(fēng)陣列組合體(以下簡(jiǎn)稱組合體)固定在滑軌左端某一位置A, 調(diào)節(jié)雙麥克風(fēng)陣列的初始方向(與導(dǎo)軌平行),此時(shí)方位指針與轉(zhuǎn)盤(pán)的初始零刻度線對(duì)齊。慢慢轉(zhuǎn)動(dòng)組合體直至LCD屏實(shí)時(shí)顯示的待測(cè)聲源到達(dá)2個(gè)麥克風(fēng)的時(shí)延差為0,記錄此時(shí)方位指針在刻度盤(pán)上度數(shù),即為聲源方位角θ1。接著沿導(dǎo)軌移動(dòng)組合體至位置A1,再次轉(zhuǎn)動(dòng)組合體至兩麥克風(fēng)的時(shí)延差為0,記錄此時(shí)方位指針在刻度盤(pán)上度數(shù),即為聲源方位角θ2,重復(fù)以上操作共3次。改變聲源位置,重復(fù)以上測(cè)量。
該試驗(yàn)采用雙麥克風(fēng)陣列去計(jì)算聲源的位置,每組采用同一函數(shù)組,每組得出的結(jié)果進(jìn)行相互校驗(yàn),提高了試驗(yàn)中聲源定位的準(zhǔn)確度。
繪制各個(gè)位置對(duì)應(yīng)的聲源方位角θ1、θ2的測(cè)量平均值與其實(shí)際值對(duì)比圖,如圖6和圖7所示。由圖6和圖7可知,測(cè)量平均值與其實(shí)際值的圖線基本重合,說(shuō)明聲源方位角測(cè)量值與實(shí)際值吻合得很好,聲源方向定位精度很高。
圖6 方位角θ1的測(cè)量值與實(shí)際值對(duì)比
圖7 方位角θ2的測(cè)量值與實(shí)際值對(duì)比
將以上θ1、θ2以及AA1的測(cè)量值代入公式(1)、公式(2)就可以得出聲源與麥克風(fēng)探頭的距離SA和SA1,實(shí)現(xiàn)對(duì)聲源距離進(jìn)行定位的目標(biāo)。距離定位結(jié)果如圖8和圖9所示。
由圖8和圖9可知,聲源距離的測(cè)量值與實(shí)際值數(shù)據(jù)作出的圖線高度相似,同樣說(shuō)明聲源的距離定位也有較高的精度。
圖8 SA的測(cè)量值與實(shí)際值對(duì)比圖
圖9 SA1的測(cè)量值與實(shí)際值對(duì)比圖
分別計(jì)算聲源方位角、聲源距離的測(cè)量相對(duì)誤差,見(jiàn)表1。
表1 聲源方位角、距離的測(cè)量相對(duì)誤差(單位:%)
首先是時(shí)延差量化分辨率不足。因?yàn)樽钚×炕瘯r(shí)延差為前端的ADC采樣周期,ADC采樣率為21 kHz,所以最小量化時(shí)延差約為47.6 μs,從而導(dǎo)致時(shí)延代入數(shù)學(xué)模型中,產(chǎn)生對(duì)應(yīng)距離和角度的誤差。
其次是聲源信號(hào)的信噪比不足。該試驗(yàn)所采用的聲源信噪比偏低。雖然在信號(hào)處理中采用基于廣義互相關(guān)函數(shù)的時(shí)延估計(jì)計(jì)算GCCPHAT的方法,經(jīng)過(guò)PHAT加權(quán)互功率譜(白化濾波)能較好地抑制大噪聲,但是并不能完全消除噪聲,從而也會(huì)對(duì)測(cè)量精度造成一定影響。
從以上試驗(yàn)數(shù)據(jù)及分析結(jié)果可以看出,該文所采用的基于TDOA技術(shù)和GCC—PHAT廣義互相關(guān)函數(shù)采集時(shí)延、再結(jié)合幾何模型的定位方法能夠準(zhǔn)確測(cè)出聲源的方位和距離。
該定位裝置特有的360°全方位旋轉(zhuǎn)雙麥克風(fēng)陣列可以在各種不同情形下靈活、快速且精準(zhǔn)地確定聲源方位。
后續(xù)可通過(guò)時(shí)延反饋信號(hào)自動(dòng)控制麥克風(fēng)陣列旋轉(zhuǎn)跟蹤并指向聲源。在此基礎(chǔ)上設(shè)計(jì)搭載該裝置的智能小車(chē),通過(guò)判斷聲源位置后實(shí)現(xiàn)自動(dòng)跟蹤聲源并到達(dá)指定位置,可應(yīng)用于餐廳的智能送餐。另外,進(jìn)一步擴(kuò)展麥克風(fēng)陣列、優(yōu)化算法以及更新信號(hào)處理方式,有望設(shè)計(jì)出更精確、更具實(shí)用化的聲源定位系統(tǒng)以及相關(guān)的拓展應(yīng)用。
中國(guó)新技術(shù)新產(chǎn)品2022年22期