陶冶博,鄭潔霽,張?jiān)剑_必露,楊志超,葛永彥
(嘉興職業(yè)技術(shù)學(xué)院,浙江嘉興,314036)
為了實(shí)現(xiàn)基于TDOA 聲源定位算法的激光武器狙擊手攻擊系統(tǒng),本文以STM32 單片機(jī)為主控制器,以駐極體麥克風(fēng)為聲音檢測(cè)傳感器,利用TDOA 算法實(shí)現(xiàn)音源的坐標(biāo)測(cè)量,距離測(cè)量誤差小于±0.1m,角度測(cè)量誤差小于±1°,測(cè)量時(shí)間不超過2s。此外,本系統(tǒng)可以用激光指示出聲源所在位置,模擬使用激光武器打擊目標(biāo)。
時(shí)差到達(dá)(Time Difference of Arrival,TDOA)算法是一種用于測(cè)量信號(hào)源位置的技術(shù),其基本原理是通過分析信號(hào)在不同接收器之間的到達(dá)時(shí)間差來確定信號(hào)源的位置。TDOA 算法常用于定位聲音、雷達(dá)信號(hào)、通信信號(hào)等各種信號(hào)源的位置,尤其在無線通信、無人駕駛、軍事和應(yīng)急救援等領(lǐng)域具有重要應(yīng)用。
TDOA 算法的核心思想是:在一個(gè)多接收器的系統(tǒng)中,當(dāng)一個(gè)信號(hào)源發(fā)出信號(hào)時(shí),這個(gè)信號(hào)在不同接收器上的到達(dá)時(shí)間會(huì)因?yàn)樾盘?hào)傳播速度的限制和傳播路徑的不同而產(chǎn)生微小的差異。通過測(cè)量這些微小的時(shí)間差,可以推算出信號(hào)源相對(duì)于接收器的位置。
TDOA 算法的實(shí)現(xiàn)一般涉及以下幾個(gè)步驟:信號(hào)接收:在不同位置放置接收器來接收信號(hào)源發(fā)出的信號(hào);時(shí)間差測(cè)量:接收器會(huì)記錄信號(hào)到達(dá)的時(shí)間戳。通過比較不同接收器之間的時(shí)間戳差異,可以計(jì)算出信號(hào)到達(dá)的時(shí)間差;距離計(jì)算:通過已知的信號(hào)傳播速度(如聲速、電磁波速度等),可以將時(shí)間差轉(zhuǎn)換為距離差;定位計(jì)算:結(jié)合已知接收器的位置信息和計(jì)算得到的距離差,使用三角測(cè)量法或其他定位算法來計(jì)算信號(hào)源的精確位置。
到達(dá)時(shí)間差是利用待測(cè)目標(biāo)到達(dá)2 個(gè)接收基站的時(shí)間,取其差值來獲得,這時(shí)需要基站時(shí)間的嚴(yán)格同步,但是當(dāng)兩基站間移動(dòng)信道傳輸特性相似時(shí),可減少由多徑效應(yīng)帶來的誤差,如圖1 所示。

圖1 TDOA 算法示意圖
根據(jù)到達(dá)時(shí)間差獲得的TDOA 方程為:
其中(x,y)為待測(cè)目標(biāo)的坐標(biāo) (x1,y1) (x2,y2) (x3,y3)為3個(gè)接收基站的坐標(biāo),c為聲速,t1、t2、t3分別為待測(cè)目標(biāo)聲音信號(hào)傳播到3 個(gè)接收基站所需的時(shí)間。
通過將公式(1)~(3)這一組非線性方程求解,即可得到對(duì)目標(biāo)位置的估計(jì)。
發(fā)射端與接收端是異步的,無法得知發(fā)射的起始時(shí)刻,無法求出音源到麥克風(fēng)的絕對(duì)時(shí)間。所以我們只能算出音源到任意兩個(gè)麥克風(fēng)的時(shí)間差。
假設(shè)用于接收槍聲信號(hào)的麥克風(fēng)分別設(shè)置在A,B,C。Q 為原點(diǎn),P 為音源位置。通過3 個(gè)測(cè)試點(diǎn),兩兩求差,可得時(shí)間差為:
如圖2 所示,P 點(diǎn)為平面上的任意一點(diǎn),根據(jù)幾何關(guān)系可以推算出,得到如下公式:

圖2 音源檢測(cè)原理
求解公式(6)、(7)可得目標(biāo)坐標(biāo),為方便對(duì)聲源位置的判斷,通過以下公式將結(jié)果轉(zhuǎn)換為極坐標(biāo)。
本文設(shè)計(jì)的基于TDOA 聲源定位算法的激光武器狙擊手攻擊系統(tǒng)的整體框圖如圖3 所示,包括單片機(jī)、聲音檢測(cè)電路、舵機(jī)云臺(tái)、激光光源、電源。聲音檢測(cè)電路通過駐極體麥克風(fēng)采集聲音信號(hào),通過濾波、放大、整形后,送入單片機(jī)外部中斷,測(cè)出3 個(gè)麥克風(fēng)采集信號(hào)的時(shí)間差,再計(jì)算得出聲源的距離和角度。功能樣機(jī)實(shí)物圖如圖4 所示。

圖3 系統(tǒng)框圖

圖4 槍聲定位裝置實(shí)物圖
2.1.1 聲音檢測(cè)電路
本系統(tǒng)硬件電路的核心為聲音檢測(cè)電路,電路包含駐極體麥克風(fēng)信號(hào)采集、濾波、放大、整形幾部分組成,為了方便調(diào)試,在信號(hào)輸出端放置了LED,用于信號(hào)指示。電路原理圖如圖5 所示。

圖5 聲音檢測(cè)電路
2.1.2 激光驅(qū)動(dòng)電路
該系統(tǒng)使用小功率激光二極管模擬激光武器。本文采用繼電器實(shí)現(xiàn)對(duì)激光二極管開關(guān)的控制。繼電器線圈并聯(lián)的1N4148 二極管用于在繼電器斷開時(shí)釋放線圈中的能量。8050 三極管實(shí)現(xiàn)繼電器的驅(qū)動(dòng)。電路如圖6 所示。

圖6 繼電器電路圖
2.1.3 外部接口電路
硬件接口包括HMI 屏幕、3 路聲音采集電路接口、2 路云臺(tái)舵機(jī)接口以及激光接口。HMI 屏幕和聲音采集電路與單片機(jī)采用同一路電源供電。激光接口與舵機(jī)接口采用航模電池單獨(dú)供電,防止電機(jī)運(yùn)轉(zhuǎn)時(shí)產(chǎn)生的電源波動(dòng),影響系統(tǒng)的測(cè)量精度。電路如圖7 所示。

圖7 接口電路圖
軟件的總體流程如圖8 所示,系統(tǒng)的程序主要由兩部分構(gòu)成:聲源檢測(cè)、聲源位置指示。聲源檢測(cè)功能是由單片機(jī)測(cè)出聲源與測(cè)量點(diǎn)A、B、C 的時(shí)間差并轉(zhuǎn)換計(jì)算求得聲源位置與源點(diǎn)的距離和相角。聲源位置指示功能是由單片機(jī)根據(jù)測(cè)得聲源的位置和相角,來指示云臺(tái)轉(zhuǎn)動(dòng)達(dá)到聲源方向并開啟激光指示出聲源位置。

圖8 軟件流程圖
2.2.1 TDOA 算法求解
TDOA 算法的核心是非線性方程組的求解,該方程組可以通過多種數(shù)學(xué)方法來求解,其中最常見的方法之一是使用非線性最小二乘法(Nonlinear Least Squares,NLS)來擬合方程組以估計(jì)聲源的位置。但是本文設(shè)計(jì)的系統(tǒng)為了降低功耗、減小體積,采用單片機(jī)作為核心處理器。使用非線性最小二乘法來擬合方程組的求解方法對(duì)于單片機(jī)計(jì)算量較大。為了提高測(cè)量速度,本文采用查表法,即提前計(jì)算好測(cè)量區(qū)域內(nèi)時(shí)間差與坐標(biāo)的對(duì)應(yīng)表,并將該表存入單片機(jī)的ROM 內(nèi),通過查表的方式將時(shí)間差轉(zhuǎn)換為位置坐標(biāo),如圖9 所示。

圖9 TDOA 算法非線性方程組的求解
2.2.2 顯示界面
本文設(shè)計(jì)的基于TDOA 聲源定位算法的激光武器狙擊手攻擊系統(tǒng)的顯示界面如圖10 所示。

圖10 用戶交互界面
左上角顯示當(dāng)前的測(cè)量結(jié)果,包括角度和距離數(shù)據(jù)。下方是角度指示指針,便于用戶快速獲得槍聲的角度。
測(cè)試工具:米尺、量角器、秒表。
測(cè)試環(huán)境及條件:在場(chǎng)地中ABCD 內(nèi)放置好聲源檢測(cè)裝置,在聲源目標(biāo)擺放區(qū)內(nèi)擺置好模擬槍聲的聲源,如圖11 所示。
測(cè)試方案:將自制模擬槍聲音頻系統(tǒng)放置于測(cè)試場(chǎng)地,通過麥克風(fēng)組成陣列采集信號(hào),處理計(jì)算后通過屏幕顯示并記錄數(shù)據(jù),測(cè)量時(shí)間使用秒表記錄。測(cè)試數(shù)據(jù)如表1 所示。

表1 距離測(cè)量實(shí)驗(yàn)數(shù)據(jù)

圖11 測(cè)試環(huán)境
結(jié)論:測(cè)試結(jié)果表明,該系統(tǒng)可以實(shí)現(xiàn)槍聲距離的測(cè)量,測(cè)量誤差小于±0.1m,測(cè)量時(shí)間小于2s。
測(cè)試方案:將自制模擬槍聲音頻系統(tǒng)放置于測(cè)試場(chǎng)地,通過麥克風(fēng)組成陣列采集信號(hào),處理計(jì)算后通過屏幕顯示并記錄數(shù)據(jù),測(cè)量時(shí)間使用秒表記錄。測(cè)試數(shù)據(jù)如表2 所示。

表2 角度測(cè)量實(shí)驗(yàn)數(shù)據(jù)
結(jié)論:測(cè)試結(jié)果表明,該系統(tǒng)可以實(shí)現(xiàn)槍聲角度的測(cè)量,角度測(cè)量誤差小于±1°,測(cè)量時(shí)間小于2s。
本文設(shè)計(jì)的基于TDOA 聲源定位算法的激光武器狙擊手攻擊系統(tǒng),采用TDOA 算法,通過對(duì)槍聲到達(dá)不同聲音傳感器的時(shí)間差,實(shí)現(xiàn)槍聲位置的測(cè)量。為了提高測(cè)量速度,本文采用查表法代替?zhèn)鹘y(tǒng)的最小二乘擬合的方法求解非線性方程組,使得整機(jī)可以采用單片機(jī)作為核心處理器,降低了系統(tǒng)的功耗和體積。最后,本文通過實(shí)驗(yàn)測(cè)量所設(shè)計(jì)的槍聲定位系統(tǒng),距離測(cè)量誤差小于±0.1m,角度測(cè)量誤差小于±1°,測(cè)量時(shí)間不超過2s。此外,本系統(tǒng)可以用激光指示出聲源所在位置,模擬使用激光武器打擊目標(biāo)。