羅麗1,馬尚昌1,湯志亞1,黃敏1,秦銳敏2,尤媛3,郭佳4
(1.成都信息工程大學(xué) 電子工程學(xué)院,成都 610225;2.成都金本華科技股份有限公司,成都 610044;3.國(guó)家氣象中心,北京 100081;4.北京敏視達(dá)雷達(dá)有限公司,北京 100081)
摘要:基于MSP430F169單片機(jī)研究設(shè)計(jì)了一個(gè)對(duì)聲音信號(hào)進(jìn)行識(shí)別、運(yùn)算處理及坐標(biāo)顯示的聲音定位系統(tǒng)。聲源模塊利用RC橋式正弦波振蕩電路產(chǎn)生穩(wěn)定的正弦波,通過(guò)OPA2227放大以及單片機(jī)控制三極管的通斷,使紙盆喇叭產(chǎn)生音頻信號(hào),由LM358兩級(jí)運(yùn)算放大器以及LM567鎖相環(huán)解碼器構(gòu)成的音頻接收和聲音處理電路對(duì)聲音信號(hào)進(jìn)行濾波放大并將模擬信號(hào)轉(zhuǎn)換為頻率穩(wěn)定的數(shù)字信號(hào)。根據(jù)收到的聲音信號(hào)的時(shí)間差,單片機(jī)進(jìn)行運(yùn)算處理,將聲源坐標(biāo)顯示在LCD12864液晶顯示器上。經(jīng)測(cè)試,該系統(tǒng)能夠在誤差允許范圍內(nèi)判定聲源所在的位置坐標(biāo),并進(jìn)行處理和顯示。
關(guān)鍵詞:聲音定位;信號(hào)處理;MSP430F169;LM567;12864液晶顯示
0引言
聲音定位簡(jiǎn)單地理解就是判斷聲音信號(hào)在空間位置中的具體方位。眾所周知,人的雙耳就是一個(gè)靈敏的定位系統(tǒng),它不僅能夠判定聲源的方向,同時(shí)也能夠判定聲源的遠(yuǎn)近[13]。聲音定位技術(shù)在聲電學(xué)、信號(hào)與信息處理、通信系統(tǒng)以及軟件工程設(shè)計(jì)等諸多技術(shù)領(lǐng)域發(fā)揮著重要作用[4]。在軍事武器的導(dǎo)航系統(tǒng)中,利用聲音定位技術(shù)可以提高作戰(zhàn)的精確性,為打擊敵人提供有效保障。在日常生活中,聲音定位技術(shù)主要應(yīng)用于智能手機(jī)導(dǎo)航以及許多室內(nèi)視頻會(huì)議系統(tǒng)、可視電話等系統(tǒng)中,可以在噪聲環(huán)境下不受干擾,全天候提供可靠的服務(wù)。
在機(jī)器人的導(dǎo)航系統(tǒng)中,主要靠視覺(jué)系統(tǒng)探尋周圍環(huán)境并作出相應(yīng)反應(yīng),但由于光線或者障礙物的阻擋影響,機(jī)器人的視覺(jué)系統(tǒng)對(duì)于障礙物的辨別能力很可能減弱甚至無(wú)法發(fā)現(xiàn)一些障礙物[56]。聲音在傳播過(guò)程中遇到障礙物所反射形成的回聲聲波可以有效被聲音定位系統(tǒng)所探測(cè)到,因此給機(jī)器人裝上聲音定位系統(tǒng),能令機(jī)器人精確識(shí)別前方障礙并繞過(guò)障礙物,有效提高機(jī)器人的定位靈敏度以及智能化水平。國(guó)內(nèi)外對(duì)聲音定位技術(shù)做了許多研究,研究的熱點(diǎn)主要集中于3種聲源定位技術(shù)[7]:基于可控波束形成器的聲源定位技術(shù)、基于高分辨率空間譜估計(jì)聲源技術(shù)以及時(shí)延估計(jì)法(TDOA,利用到達(dá)麥克風(fēng)陣列上各個(gè)傳聲器的聲音信號(hào)間的時(shí)間差來(lái)判斷聲源的位置)。TDOA時(shí)差估計(jì)定位算法一般比前兩種方法的計(jì)算量要小,也是目前研究的熱點(diǎn),其中估算出較為精確的時(shí)間差是該方法的關(guān)鍵。
本文設(shè)計(jì)了一個(gè)基于單片機(jī)控制的聲音定位系統(tǒng),該單片機(jī)使用德州儀器(TI)公司提供的超低功耗單片機(jī)MSP430F169,采用時(shí)延估計(jì)法(TDOA)對(duì)二維平面內(nèi)的可移動(dòng)聲源進(jìn)行聲音定位,并將聲源位置坐標(biāo)顯示在LCD12864液晶顯示屏上。在較為空曠、安靜的室內(nèi)環(huán)境下對(duì)系統(tǒng)進(jìn)行功能性檢測(cè),結(jié)果表明了該系統(tǒng)設(shè)計(jì)的合理性和算法的準(zhǔn)確性,為研究聲音定位提供了一定理論和技術(shù)參考。
1系統(tǒng)總體設(shè)計(jì)
通過(guò)查閱大量關(guān)于聲音定位系統(tǒng)的理論算法及國(guó)內(nèi)外相關(guān)研究,研發(fā)設(shè)計(jì)出一個(gè)硬件電路容易實(shí)現(xiàn)、價(jià)格低廉、能準(zhǔn)確、可靠、穩(wěn)定檢測(cè)聲源位置坐標(biāo)的聲音定位系統(tǒng)。整個(gè)系統(tǒng)結(jié)構(gòu)示意圖如圖1所示,主要由音頻發(fā)聲模塊、聲音接收處理模塊、MSP430F169單片機(jī)主控單元模塊、液晶顯示模塊4個(gè)基本模塊組成。其中聲響模塊由紙盆喇叭產(chǎn)生500 Hz固定頻率,持續(xù)時(shí)間約為1 s的聲音信號(hào),4路麥克風(fēng)聲音接收電路將收到的聲音信號(hào)轉(zhuǎn)換為電信號(hào),交由信號(hào)處理模塊進(jìn)行濾波放大并將聲音模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào)傳輸至單片機(jī)進(jìn)行處理。本系統(tǒng)采用TI公司提供的16位超低功耗MSP430F169單片機(jī)[8],選用該單片機(jī)作為本系統(tǒng)的主控芯片是因其具有獨(dú)特的優(yōu)點(diǎn):處理能力強(qiáng)大,功耗超低,處理功能強(qiáng)大,系統(tǒng)穩(wěn)定,使用靈活方便,工作電壓比51單片機(jī)更低,在模數(shù)信號(hào)轉(zhuǎn)換、智能化儀器儀表以及電子通信設(shè)備中得到廣泛的應(yīng)用。單片機(jī)采用C語(yǔ)言編程實(shí)現(xiàn)分析和計(jì)算,判定出聲響模塊所在的位置坐標(biāo),并將其顯示在液晶顯示屏上。本系統(tǒng)采用既可以顯示中文漢字又可以顯示各種圖形的LCD12864液晶顯示器進(jìn)行聲源位置坐標(biāo)的顯示。
2系統(tǒng)硬件電路設(shè)計(jì)
2.1音頻發(fā)聲模塊
本系統(tǒng)音頻發(fā)聲模塊使用價(jià)格相對(duì)低廉、發(fā)聲頻率高的紙盆喇叭發(fā)聲。發(fā)聲的簡(jiǎn)單原理是利用RC橋式正弦波振蕩電路產(chǎn)生幅度穩(wěn)定、頻率固定的正弦波,通過(guò)由高精度、高增益、低噪聲運(yùn)放OPA2227為核心組成的比例放大器放大后,控制三極管的通斷,使紙盆喇叭產(chǎn)生500 Hz固定頻率、持續(xù)約1s的音頻信號(hào)。發(fā)聲持續(xù)時(shí)間控制采用電容的充放電原理控制開(kāi)關(guān)三極管的通斷,實(shí)現(xiàn)控制振蕩電路的電源,從而控制最后的發(fā)聲時(shí)間。其電路原理圖如圖2所示。RC橋式正弦波振蕩電路起振容易、調(diào)節(jié)頻率方便,波形不易失真,該音頻信號(hào)發(fā)生電路結(jié)構(gòu)簡(jiǎn)單、功耗低、使用外界元件少、容易實(shí)現(xiàn)。
2.2聲音接收與處理模塊
音頻信號(hào)的接收處理模塊由麥克風(fēng)構(gòu)成的接收電路和由運(yùn)算放大器、濾波選頻電路等構(gòu)成的音頻信號(hào)處理電路組成,其原理結(jié)構(gòu)圖如圖3所示。麥克風(fēng)往往接收到的音頻信號(hào)比較微弱[9],雜波信號(hào)比較多,為保證系統(tǒng)的穩(wěn)定性,需要將聲響模塊產(chǎn)生的聲波信號(hào)經(jīng)過(guò)濾波放大電路去除雜波干擾以及對(duì)信號(hào)進(jìn)行放大處理。由LM358芯片為核心組成兩級(jí)放大電路與LM567集成音頻選頻芯片所組成的具有選頻功能的聲音開(kāi)關(guān)電路,將音頻模擬信號(hào)轉(zhuǎn)換為單片機(jī)可處理操作的數(shù)字信號(hào)。LM567鎖相環(huán)解碼圖3音頻接受處理電路器的主要功能是對(duì)輸入的模擬信號(hào)進(jìn)行檢波、濾波、放大、選頻,最終輸出數(shù)字信號(hào)。由LM358兩級(jí)運(yùn)算放大器以及LM567鎖相環(huán)解碼器構(gòu)成的音頻接收、處理電路,輸出信號(hào)頻率穩(wěn)定,調(diào)節(jié)方便,不管在性能上還是在造價(jià)方面,優(yōu)點(diǎn)都非常突出。
3系統(tǒng)軟件設(shè)計(jì)
3.1理論分析與計(jì)算
本設(shè)計(jì)對(duì)聲音信號(hào)的處理算法采用基于到達(dá)時(shí)間差的任意三角形定位算法,如圖4所示,S點(diǎn)為當(dāng)前聲響模塊的位置,設(shè)其坐標(biāo)為(X,Y)。A、B、C、D為4個(gè)聲音接收處理模塊,當(dāng)聲響模塊發(fā)聲時(shí),由于S點(diǎn)位置所處的隨機(jī)性,A、B、C 3點(diǎn)接收到聲音信號(hào)的時(shí)間不同,根據(jù)A、B和A、C之間的時(shí)間差Tab、Tac,聲音在空氣中的傳播速度為V=340 m/s,通過(guò)三角形余弦定理推導(dǎo)可得:
SC2=SA2+AC2-2×SA×AC×cos(90°-θ)(1)
SB2=SA2+AB2-2×SA×AB×cos(θ)(2)
SC=SA+V×Tac(3)
SB=SA+V×Tab(4)
由式(1)~(4)可得:
其中,a=1-(V×Tab)2/6002-(V×Tac)2/4502;b=(6002-(V×Tab)2)×(V×Tab)/6002+(4502-(V×Tac)2)×(V×Tac)/4502;c=-[((600-V×Tab)/1200)2+((450-V×Tac)/900)2];X=(6002-2ab-b2)/1200-50;Y=(4502-2ac-c2)/900-50?!?/p>
3.2定點(diǎn)檢測(cè)聲源位置
上電后,啟動(dòng)系統(tǒng)各工作模塊(包括MSP430單片機(jī)、LCD12864模塊等)進(jìn)行數(shù)據(jù)初始化。手動(dòng)按下發(fā)聲按鈕,喇叭發(fā)出聲音信號(hào),通過(guò)空氣傳輸至接收模塊對(duì)信號(hào)進(jìn)行放大選頻后傳輸?shù)叫畔⑻幚砟K對(duì)信號(hào)進(jìn)行模數(shù)轉(zhuǎn)換處理,單片機(jī)啟動(dòng)TB定時(shí)器作為定時(shí)中斷處理,進(jìn)入中斷服務(wù)程序,啟動(dòng)定位模式,對(duì)4路聲音接收電路采集到的信息進(jìn)行判斷處理,根據(jù)本文采用的時(shí)間差延遲估法計(jì)算得出聲源所在位置(X,Y),并將坐標(biāo)值顯示在LCD12864液晶顯示屏上。本系統(tǒng)聲音定位監(jiān)測(cè)的主程序流程圖如圖5所示。
3.3聲響位置移動(dòng)軌跡程序設(shè)計(jì)
當(dāng)聲源在坐標(biāo)值范圍內(nèi)進(jìn)行隨機(jī)移動(dòng),單片機(jī)不斷地計(jì)算聲源的位置坐標(biāo)并對(duì)瞬時(shí)位置坐標(biāo)動(dòng)態(tài)顯示在LCD12864的液晶顯示器上,該功能主要通過(guò)編寫軌跡函數(shù)實(shí)現(xiàn)實(shí)時(shí)定位聲源位置。圖6為判斷聲源位置移動(dòng)軌跡坐標(biāo)顯示過(guò)程的程序流程框圖。
4系統(tǒng)測(cè)試方案與結(jié)果分析
4.1系統(tǒng)測(cè)試方法
在一個(gè)相對(duì)安靜、空曠的室內(nèi)房間中對(duì)本系統(tǒng)進(jìn)行功能性測(cè)試。按照?qǐng)D6在一個(gè)長(zhǎng)600 mm,寬450 mm的平板上固定A、B、C、D 4個(gè)聲音接收器,為了方便檢驗(yàn),在平板上繪制500 mm×350 mm的坐標(biāo)方格線。
首先檢測(cè)對(duì)于固定的某一點(diǎn)坐標(biāo),該聲音定位系統(tǒng)是否能正確判斷聲響模塊所在的位置坐標(biāo);其次通過(guò)改善信號(hào)放大電路性能以及相關(guān)算法,移動(dòng)聲響模塊,檢測(cè)該系統(tǒng)能否正確判斷聲源的位置坐標(biāo)。
4.2聲源固定測(cè)試結(jié)果
將聲源模塊放置坐標(biāo)中選定的4個(gè)坐標(biāo)(A(200,100)、B(200,200)、C(300,200)、D(300,100),單位:mm)中的任意3個(gè)點(diǎn),通過(guò)多次檢測(cè)來(lái)驗(yàn)證結(jié)果是否符合要求。測(cè)試結(jié)果如表1~表4所示。(注:|誤差|=(x2-x1)2+(y2-y1)2,其中測(cè)量坐標(biāo)為(x1,y1),實(shí)際坐標(biāo)為(x2,y2)。)
由表1~表4數(shù)據(jù)結(jié)果分析可知:本系統(tǒng)能夠正常接收聲源信號(hào),單片機(jī)工作穩(wěn)定,能有效判斷出聲響模塊的位置坐標(biāo),并清晰顯示在液晶顯示上,且位置坐標(biāo)的誤差絕對(duì)值均小于30 mm,滿足本系統(tǒng)設(shè)計(jì)要求。以上誤差存在原因除了系統(tǒng)本身的不精確,還可能是周圍環(huán)境影響所致。
4.3聲源移動(dòng)測(cè)試結(jié)果
將聲源模塊在平面坐標(biāo)紙上任意移動(dòng),通過(guò)直接讀取當(dāng)下喇叭所處位置的坐標(biāo)點(diǎn)并與液晶顯示器上的結(jié)果進(jìn)行分析比較,檢測(cè)結(jié)果是否符合要求,同時(shí)液晶顯示器能動(dòng)態(tài)顯示聲響模塊移動(dòng)軌跡。表5是聲源模塊移動(dòng)軌跡為A1→B1→C1→D1→E1,表6是聲源模塊移動(dòng)軌跡為A2→B2→C2→D2→E2。
由表5和表6數(shù)據(jù)結(jié)果分析可知:本系統(tǒng)測(cè)試聲源位置移動(dòng)軌跡坐標(biāo)的每次測(cè)試誤差均小于10 mm,說(shuō)明該系統(tǒng)可以準(zhǔn)確、穩(wěn)定、動(dòng)態(tài)測(cè)出聲源位置移動(dòng)軌跡坐標(biāo),滿足設(shè)計(jì)要求。
5結(jié)論
本系統(tǒng)以MSP430F169單片機(jī)為核心部件,根據(jù)接收模塊獲取的音頻信號(hào)的不同響應(yīng)時(shí)間,配合一套完整的程序,通過(guò)反復(fù)調(diào)試改進(jìn),基本實(shí)現(xiàn)聲音精確定位,且定位誤差均在允許范圍之內(nèi)。單片機(jī)MSP430F169作為本系統(tǒng)的主控芯片,在測(cè)試中工作正常,數(shù)據(jù)接收、處理、輸出及時(shí)準(zhǔn)確。顯示模塊LED12964顯示正常。經(jīng)過(guò)充分的討論和計(jì)算,本設(shè)計(jì)也存在許多問(wèn)題,特別在硬件實(shí)現(xiàn)方面,看似很簡(jiǎn)單的電路,仿真起來(lái)也很準(zhǔn)確,但是測(cè)試時(shí)也會(huì)出現(xiàn)一些誤差。在設(shè)計(jì)中,盡量采用低功耗器件,使硬件電路達(dá)到最大的經(jīng)濟(jì)性與準(zhǔn)確性,充分發(fā)揮軟件控制靈活的特點(diǎn)來(lái)滿足設(shè)計(jì)要求。
參考文獻(xiàn)
?。?] 吳峰,高下,李志宏,等.聲音空間定位測(cè)聽(tīng)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].第四軍醫(yī)大學(xué)學(xué)報(bào),2001,22(7):656-658.
?。?] 關(guān)健生.基于單片機(jī)的聲音導(dǎo)航定位系統(tǒng)的設(shè)計(jì)[J].信息系統(tǒng)工程,2009(9):96-98.
?。?] 郝立果,趙凌云,袁建強(qiáng),等.聲音定位引導(dǎo)系統(tǒng)設(shè)計(jì)[J].機(jī)床與液壓,2011,39( 22):104-108.
?。?] 陳益如,王博,鄔楊波.基于聲音引導(dǎo)的聲源定位系統(tǒng)設(shè)計(jì)[J].工業(yè)控制計(jì)算機(jī),2010,23(10):101-104.
?。?] 李從清,孫立新,戴士杰,等.機(jī)器人聽(tīng)覺(jué)定位跟蹤聲源的研究與進(jìn)展[J].燕山大學(xué)學(xué)報(bào),2009,33(3):201-205.
[6] 頓向明,繆松華,沈靜,等.基于麥克風(fēng)陣列的儲(chǔ)罐內(nèi)爬壁機(jī)器人定位技術(shù)[J].機(jī)器人 ROBOT,2012,34(4):460-475.
?。?] PAVLIDI D, GRIFFIN A, PUIGT M,et al.Realtime multiple sound source localization and counting using a circular microphone array[J].IEEE Transactions on Audio,Speech and Language Processing,2013,21 ( 10) : 2193-2206.
[8] 沈建華,楊艷琴.MSP430系列16位超低功耗單片機(jī)原理與實(shí)踐[M].北京:北京航空航天大學(xué)出版社,2008.
?。?] 龍興波,黃敏,樊昌元,等.基于MSP430的微弱信號(hào)檢測(cè)裝置[J].微型機(jī)與應(yīng)用,2014,33(3):18-20.