一、人耳是如何進(jìn)行聲音定位的?
在當(dāng)今科技高度發(fā)達(dá)的社會(huì)中,聲音中蘊(yùn)含的信息受到普遍關(guān)注。不論是炮彈的落點(diǎn),軸承的異常嘯叫,還是收音設(shè)備的自動(dòng)跟隨等方面,判斷其聲音產(chǎn)生的方位都是一個(gè)重要課題。
現(xiàn)階段的聲音定位技術(shù)大多是根據(jù)“人耳”發(fā)展而來的。人類單耳判斷聲源的方法是利用了耳廓對(duì)聲音的反射使聲波發(fā)生干涉,從而達(dá)到判斷聲音的目的。當(dāng)然更多情況下是雙耳判斷方向,主要有時(shí)間差(ITD)和聲級(jí)差(ILD)兩種形式,我們簡(jiǎn)單解釋一下。
人類兩耳間的距離大約在16-18cm,時(shí)間差正是利用了這一點(diǎn)。當(dāng)聲音從左側(cè)傳來,左耳首先接收到信號(hào),在零點(diǎn)幾毫秒后,右耳接受到聲音信號(hào)。雖然時(shí)間很短,但也能讓人類判斷聲音產(chǎn)生的方向了。
聲級(jí)差效應(yīng)的原理與時(shí)間差類似。當(dāng)聲源在頭部的右側(cè)時(shí),聲波經(jīng)過頭部的衰減,到達(dá)左耳的聲音強(qiáng)度就會(huì)減弱,這樣人們就可以通過聲音強(qiáng)弱辨別聲音的方向了。
二、用機(jī)器代替耳朵
人耳對(duì)聲源的定位精度畢竟是有限,而現(xiàn)實(shí)生活的需要只靠人耳已經(jīng)滿足不了,所以人們發(fā)明出聲強(qiáng)探頭和麥克風(fēng)陣列等聲源定位儀器。
聲強(qiáng)探頭可以看作是單個(gè)耳朵靠近聲源在聽,通過不斷移動(dòng)探頭以確定聲源的位置。更為常用的則是麥克風(fēng)陣列,麥克風(fēng)也叫做傳聲器,它相當(dāng)于人的耳朵,但是比人耳要靈敏的多。在麥克風(fēng)陣列上有幾個(gè)到幾千個(gè)麥克風(fēng),它們按照一定的規(guī)則排布構(gòu)成,因此叫做麥克風(fēng)陣列。麥克風(fēng)感知聲音的原理在我們之前的文章中介紹過,所以這里我們主要介紹它是怎樣代替耳朵判斷聲音位置的。
三、麥克風(fēng)陣列代替耳朵的原理
如何通過麥克風(fēng)陣列判斷聲源位置呢?我們介紹一種簡(jiǎn)單的TDOA算法,它可以利用時(shí)間差進(jìn)行定位,下面進(jìn)行詳細(xì)說明。
假定一個(gè)平面上有3個(gè)基站,分別是A1,A2和A3,而且A1、A2、A3的坐標(biāo)已知,分別是(X1,Y1),(X2,Y2),(X3,Y3)。假設(shè)待定位聲源Tag的位置是(x,y)。這樣就可以得到待測(cè)點(diǎn)T到每個(gè)基站的距離:
,其中i=0,1,2。
可以想到:求解點(diǎn)的位置,能夠轉(zhuǎn)化成求解兩條曲線的交點(diǎn),但由Ri的表達(dá)式組成的方程組顯然無法求解,因?yàn)榉匠探M中的未知量太多。不過距離差R2,1= R2-R1、R3,1= R3-R1是已知的,因?yàn)槁曇舻膫鞑ニ俣纫阎s為340米每秒,而且通過采集設(shè)備能夠計(jì)算出聲音到達(dá)各基站的時(shí)間,也就能求出距離差R2,1和R3,1了。那么有沒有一種曲線與距離差有關(guān)呢?這就是雙曲線。它的定義是平面上一點(diǎn)到兩個(gè)定點(diǎn)的距離之差的絕對(duì)值是定值的點(diǎn)的軌跡,這種曲線適用于上述情景。如下圖所示,(x,y)是待求解的點(diǎn),到A1、A3的距離是定值可構(gòu)成一條曲線,到A1、A2的距離是定值可構(gòu)成一條曲線。所以在剛剛的平面上我們就能畫出這樣的兩條曲線,而它們的交點(diǎn)就是我們T的位置(x,y)。那么就能列出這樣的非線性雙曲線方程組了。
求解此方程組時(shí),我們要盡量減少根式的存在。首先將方程組簡(jiǎn)化成:
Ri,1= Ri-R1
所以有方程:
Ri^2= (Ri,1 +R1)^2 (1)
由
可得:Ri^2=Xi^2-2Xi*x+x^2+Yi^2-2Yi*y+y^2 (2)
將(2)式代入(1)式中
則有:Xi^2-2Xi*x+x^2+Yi^2-2Yi*y+y^2=Ri,1^2+2Ri,1*R1+R1^2
又因?yàn)椋篟1^2= X1^2-2X1*x+x^2+Y1^2-2Y1*y+y^2
所以可得方程:
Xi^2-2Xi*x+x^2+Yi^2-2Yi*y+y^2-(X1^2-2X1*x+x^2+Y1^2-2Y1*y+y^2) =Ri,1^2+2Ri,1*R1
令Ki=Xi^2+Yi^2化簡(jiǎn)得:
Ki-K1+2X1*x-2Xi*x+2Y1*y-2Yi*y=Ri,1^2+2Ri,1*R1
Ki-K1+2x(X1-Xi)+2y(Y1-Yi)=Ri,1^2+2Ri,1*R1
又令:Xi,1=Xi-X1、Yi,1=Yi-Y1
則有:Ki-K1-2x*Xi,1- 2y*Yi,1 =Ri,1^2+2Ri,1*R1
通過一系列的等式變換,我們成功將未知項(xiàng)的二次項(xiàng)消除了。當(dāng)i=2,3時(shí),可得方程組
K2-K1-2X2,1*x-2Y2,1 *y=R2,1^2+2R2,1*R1
K3-K1-2X3,1*x-2Y3,1 *y=R3,1^2+2R3,1*R1
通過消元法得到
X=
y=
等式中的未知量只有R1,怎樣求解它的值呢?
我們先簡(jiǎn)化一下上述等式,令:
p1=
q1=
p2=
q2=
這樣就得到等式
x=p1+q1*R1
y=p2+q2*R1 ……(3)
而且等式中的p1、q1、p2、q2都是已知量。再將(3)式帶回到(2)式中,因?yàn)橐驲1的值,所以(2)式中的i=1??傻玫仁剑?/p>
R1^2=X1^2-2X1(p1+q1*R1)+(p1+q1*R1)^2+Y1^2-2Y1(p2+q2*R1)+( p2+q2*R1)^2
化簡(jiǎn)得:
(q1^2+q2^2-1)R1^2-2[q1(X1-p1)+q2(Y1-p2)]R1+[(X1-p1)^2+(Y1-p2)^2]=0
這樣就得到一個(gè)關(guān)于R1得一元二次方程,用求解公式R1=
解出R1,然后將有效解帶入到(3)式中就可以求出x、y的值了。
這種TDOA算法較為簡(jiǎn)單,沒有考慮到可能出現(xiàn)的誤差,同時(shí)參考基站的數(shù)量也比較少,所以會(huì)導(dǎo)致定位不精確。
四、聲源定位實(shí)驗(yàn)
下面我們正式開始實(shí)驗(yàn),使用三個(gè)麥克風(fēng)聲音傳感器組成一個(gè)平面直角坐標(biāo)系,X1麥克風(fēng)為原點(diǎn),距X2麥克風(fēng)15cm,距X3麥克風(fēng)27cm。麥克風(fēng)需要5V的直流電源,我們將它的輸出端S與USB-5111采集卡的Ai端口連接,GND端連接到采集卡的AGND端口上,VCC端與電源正極連接。電源的負(fù)極與采集卡的AGND連接。最后將采集卡與電腦連接。
接下來我們打開Smacq DAQ軟件采集聲音信息。開啟Ai0、Ai1,Ai2通道,
設(shè)置采集卡的采樣率為100000(Sa/s/ch),其他設(shè)置保持默認(rèn)就可以了。
點(diǎn)擊啟動(dòng),在靠近X1傳感器的位置拍手后,點(diǎn)擊軟件的停止按鈕。
使軟件顯示全部的采集波形,選擇一組反應(yīng)較為明顯的波形,將它的時(shí)間信息輸入到計(jì)算聲源位置程序中,
點(diǎn)擊運(yùn)行后,我們就可以看到聲源點(diǎn)出現(xiàn)在靠近X1坐標(biāo)的位置。
以上內(nèi)容就是我們聲源定位實(shí)驗(yàn)的全部?jī)?nèi)容。如果大家對(duì)文章內(nèi)容有任何問題,歡迎在評(píng)論區(qū)留言或搜索微信公眾號(hào)“思邁科華Smacq”直接聯(lián)系我們。文章視頻內(nèi)容可點(diǎn)擊如下連接跳轉(zhuǎn):數(shù)據(jù)采集卡與聲音定位
希望您點(diǎn)贊、評(píng)論、轉(zhuǎn)發(fā),我們下期再見。
審核編輯 黃宇
-
數(shù)據(jù)采集
+關(guān)注
關(guān)注
40文章
7507瀏覽量
118826 -
定位
+關(guān)注
關(guān)注
5文章
1515瀏覽量
36348
發(fā)布評(píng)論請(qǐng)先 登錄
2KW逆變側(cè)功率管的損耗如何進(jìn)行計(jì)算詳細(xì)公式免費(fèi)下載

評(píng)論