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