羅 麗,馬尚昌,湯志亞,黃 敏,秦銳敏,尤 媛,郭 佳
(1.成都信息工程大學(xué) 電子工程學(xué)院,成都 610225;2.成都金本華科技股份有限公司,成都 610044;3.國(guó)家氣象中心,北京 100081;4.北京敏視達(dá)雷達(dá)有限公司,北京 100081)
基于MSP430F169單片機(jī)的聲音定位系統(tǒng)
羅 麗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)行處理和顯示。
聲音定位;信號(hào)處理;MSP430F169;LM567;12864液晶顯示
聲音定位簡(jiǎn)單地理解就是判斷聲音信號(hào)在空間位置中的具體方位。眾所周知,人的雙耳就是一個(gè)靈敏的定位系統(tǒng),它不僅能夠判定聲源的方向,同時(shí)也能夠判定聲源的遠(yuǎn)近[1-3]。聲音定位技術(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)中,主要靠視覺系統(tǒng)探尋周圍環(huán)境并作出相應(yīng)反應(yīng),但由于光線或者障礙物的阻擋影響,機(jī)器人的視覺系統(tǒng)對(duì)于障礙物的辨別能力很可能減弱甚至無(wú)法發(fā)現(xiàn)一些障礙物[5-6]。聲音在傳播過(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ù)參考。
圖2 音頻產(chǎn)生電路
通過(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)的顯示。
圖1 系統(tǒng)結(jié)構(gòu)示意圖
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í)間控制采用電容的充放電原理控制開關(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集成音頻選頻芯片所組成的具有選頻功能的聲音開關(guān)電路,將音頻模擬信號(hào)轉(zhuǎn)換為單片機(jī)可處理操作的數(shù)字信號(hào)。LM567鎖相環(huán)解碼器的主要功能是對(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 音頻接受處理電路
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。
圖4 聲音定位系統(tǒng)坐標(biāo)示意
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所示。
圖5 聲音定位檢測(cè)程序流程圖
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ò)程的程序流程框圖。
圖6 聲源位置移動(dòng)軌跡
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é)果
表1 A點(diǎn)測(cè)試結(jié)果 單位:mm
表2 B點(diǎn)測(cè)試結(jié)果(單位:mm)
表3 C點(diǎn)測(cè)試結(jié)果(單位:mm)
表4 D點(diǎn)測(cè)試結(jié)果(單位:mm)
由表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 測(cè)試軌跡1(單位:mm)
表6 測(cè)試軌跡2(單位:mm)
由表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ì)要求。
本系統(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ì)要求。
[1] 吳峰,高下,李志宏,等.聲音空間定位測(cè)聽系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].第四軍醫(yī)大學(xué)學(xué)報(bào),2001,22(7):656-658.
[2] 關(guān)健生.基于單片機(jī)的聲音導(dǎo)航定位系統(tǒng)的設(shè)計(jì)[J].信息系統(tǒng)工程,2009(9):96-98.
[3] 郝立果,趙凌云,袁建強(qiáng),等.聲音定位引導(dǎo)系統(tǒng)設(shè)計(jì)[J].機(jī)床與液壓,2011,39( 22):104-108.
[4] 陳益如,王博,鄔楊波.基于聲音引導(dǎo)的聲源定位系統(tǒng)設(shè)計(jì)[J].工業(yè)控制計(jì)算機(jī),2010,23(10):101-104.
[5] 李從清,孫立新,戴士杰,等.機(jī)器人聽覺定位跟蹤聲源的研究與進(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.
[7] 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.
[9] 龍興波,黃敏,樊昌元,等.基于MSP430的微弱信號(hào)檢測(cè)裝置[J].微型機(jī)與應(yīng)用,2014,33(3):18-20.
Sound localization system based on MSP430F169
Luo Li1,Ma Shangchang1,Tang Zhiya1,Huang Min1,Qin Ruimin2,You Yuan3,Guo Jia4
(1.School of Electronic Engineering, Chengdu University of Information Technology,Chengdu 610225,China;2. Chengdu Jinbenhua Technology co., Ltd., Chengdu 610044;3.National Meteorological Center, Beijing 100081,China;3.National Meteorological Center, Beijing 100081, China;4.Beijing Metstar Radar Co., Ltd.,Beijing 100081,China)
The paper designs a sound positioning system based on the main control unit MCU MSP430f169. The system can identify and calculate the sound signal and display the coordinates of sound source. The stable sine wave generated by RC bridge type sine-wave generator electric circuit is amplified by OPA2227, controlling the transistor on-off to make paper cone speaker produce sound signal. Voice-frequency signal receiver and voice processing circuit consists of LM358 two-stage amplifier and LM567 PLL decoder, which can filter clutter and convert analog signal to stable frequency digital signal. According to the TDOA( time difference of arrival) estimation method adopted in this paper, MCU will process and calculate the sound source and display the coordinates on the LCD12864. After the test, this system can determine and display the coordinates of sound source within acceptable error range.
sound localization; signal processing;MSP430F169;LM567;LCD12864
TN702
A
1674-7720(2016)04-0080-05
羅麗,馬尚昌,湯志亞,等.基于MSP430F169單片機(jī)的聲音定位系統(tǒng)[J] .微型機(jī)與應(yīng)用,2016,35(4):80-84.
2015-09-22)
羅麗(1990-),女,碩士,主要研究方向:大氣探測(cè)方向。
馬尚昌(1971-),男,博士,教授,主要研究方向:信息獲取與處理。
湯志亞(1977-),男,碩士,講師,主要研究方向:氣象探測(cè)技術(shù)。