肖 強
(中國船舶重工集團公司 第717研究所,湖北 武漢430074)
定位系統(tǒng)是當今很熱門的一個研究課題,國內(nèi)外測距定位技術(shù)常用到的有激光測距定位,超聲波測距定位,GPS定位等,而利用音頻信號實現(xiàn)定位的技術(shù)也因其低成本,易實現(xiàn),精確度也較高等優(yōu)勢而在飛速發(fā)展,在智能控制領(lǐng)域有著較廣泛的應(yīng)用。
系統(tǒng)主要由移動聲源,聲音接收處理,軟件處理三大部分組成。移動聲源主要以小車為載體由蜂鳴器產(chǎn)生周期性的聲音信號。聲音接收處理由麥克風(fēng)接收聲音信號并對信號進行放大濾波等,直至將信號送入單片機。軟件處理部分由送入單片機的信號做出相應(yīng)判斷并控制無線模塊發(fā)送數(shù)據(jù)和命令給移動聲源,移動聲源再做相應(yīng)調(diào)整。
圖1 系統(tǒng)總體框圖
采用差分放大器AD620放大接收到的微弱的聲音信號,后級利用MAX264構(gòu)成Q值較高的帶通濾波器,濾波之后的信號跟一級放大以提高相鄰兩脈沖幅度差,放大之后信號再經(jīng)比較器LM311整形得到脈沖信號作為中斷信號送入MSP430處理,處理之后得到時間差數(shù)據(jù),通過無線模塊NRF24L01將數(shù)據(jù)送到聲源做處理。同時鍵盤輸入的目的坐標點數(shù)據(jù)也通過無線模塊傳輸?shù)铰曉础?/p>
聲源載體為步進電機驅(qū)動的兩輪小車,利用蜂鳴器發(fā)聲。車上的MSP430控制蜂鳴器發(fā)聲,無線模塊收到來自聲音接收處理端發(fā)過來的數(shù)據(jù)后計算出聲源坐標,根據(jù)目的坐標點由MSP430輸出相應(yīng)PWM波控制步進電機轉(zhuǎn)動使小車移動到目的坐標點。
聲源發(fā)出周期性的聲音信號,開始發(fā)聲時刻通過無線模塊給接收端一個標志,接收端開啟定時器開始計時,出現(xiàn)有效中斷信號后停止計時,即可得到時間差數(shù)據(jù)。聲源部分接收到時間差數(shù)據(jù)后計算出坐標控制電機運動。
聲源端和接收端都采用MSP430F449單片機,外部晶振8MHz,則:時鐘周期=0.125us.根據(jù)系統(tǒng)算法的設(shè)計,系統(tǒng)核心是測出聲音信號到兩接收點的時間差?,F(xiàn)系統(tǒng)的精度要求為1cm,聲波速度為344m/s,則:時間精度Te=0.01/344=29us。單片機在一個時間精度能夠執(zhí)行的指令個數(shù)為:Te/Tsck=29/0.125=232。本系統(tǒng)中,由接收端通過無線信號控制移動聲源的停車和移動,所以移動聲源的位置誤差產(chǎn)生主要是來自于接收端和聲源之間的無線通信,而無線通信主要的耗時來自單片機內(nèi)無線指令的執(zhí)行,而1cm誤差范圍內(nèi)的232條指令時間足夠執(zhí)行無線指令。聲源部分的單片機主要負責(zé)和接收點之間的無線通信,控制小車運動,產(chǎn)生周期性聲波等操作,對精度要求不高。綜上所述,采用MSP430F449單片機作為聲源端和接收端控制芯片完全滿足系統(tǒng)的性能指標。
2.2.1 差分放大電路設(shè)計
采用雙麥克風(fēng)接收聲音信號,能大大減小環(huán)境噪聲干擾,提高共模抑制比。采用儀表放大器AD620進行差分放大,AD620共模抑制比可達100dB以上,能夠有效的抑制共模噪聲,并且可達到60dB的放大倍數(shù),僅需一個外接電阻就可調(diào)節(jié)其放大倍數(shù)。采用雙麥克風(fēng)差分放大一個重要優(yōu)勢在于:放大輸出信號的幅度不再是與聲源和麥克風(fēng)之間的距離成反比,其幅度隨聲源在平面坐標的不同而隨機發(fā)生很小范圍的波動(這是由于電路放大的是兩個麥克風(fēng)聲音信號之差,距離遠聲音信號之差不會變的很小,距離近聲音信號之差也不會很大),這有利于比較器門限的設(shè)定。但由于采用雙麥克風(fēng)差分放大,即使AD620放大倍數(shù)很高,放大后的信號峰峰值仍然不超過100mv,須進一步放大。系統(tǒng)后級放大采用的是較高Q值的帶通濾波器,濾波的同時對中心頻率信號也有著很高的放大倍數(shù)。
2.2.2 聲音信號濾波模塊設(shè)計
本系統(tǒng)以蜂鳴器作為聲源,蜂鳴器發(fā)出的聲音信號頻率為3.6kHz。在聲音信號經(jīng)過前置放大電路以后,會引入高頻噪聲和低頻噪聲,因而必須在后級處理模塊中接入Q值較高的帶通濾波電路,濾波采用MAX264開關(guān)電容濾波器,能取得優(yōu)良的帶通濾波特性,同時較高Q值進一步放大信號。MAX264是MAXIM公司的一款通用濾波器,內(nèi)置兩個獨立2階濾波器,可以通過引腳編程設(shè)置為低通,高通,帶通或陷波濾波器,而且濾波器的Q值可以引腳編程在0.504-90.5之間設(shè)定,中心頻率F0通過外接時鐘和引腳編程設(shè)定。經(jīng)多次測試本系統(tǒng)濾波模塊設(shè)定的Q值為16.0,Q值的選擇較重要,Q值太小或太大都會影響輸出信號的質(zhì)量,必須使濾波輸出信號噪聲小才能保證后級比較器整形的準確穩(wěn)定。濾波器時鐘為705M,引腳編程設(shè)定中心頻率為3.6K,以達到最佳濾波效果。由于開關(guān)電容濾波器難以避免有高頻開關(guān)噪聲,因而濾波輸出信號后接一個簡單的RC低通結(jié),即可有效濾除時鐘信號帶來的高頻噪聲。
2.2.3 后級放大模塊設(shè)計
濾波之后的信號噪聲幅度在20mv以下,為了便于比較器門限的設(shè)定,再跟一級放大以提高比較信號兩相鄰脈沖幅度之差,這有利于系統(tǒng)的穩(wěn)定工作。選用高CMRR運放OPA602。
2.2.4 比較整形模塊設(shè)計
為了能對濾波輸出聲音信號進行處理,需要將模擬信號整形成能被單片機識別的TTL脈沖信號。采用比較器LM311實現(xiàn)對輸出信號的整形,得到的信號接到MSP430擴展的中斷口上,以實現(xiàn)對時間差的測量。LM311采用單門限比較,門限電平的設(shè)定是很重要的一步,若門限太低則容易將噪聲信號比較出來造成時間差的偏差,若門限太高則穩(wěn)定性不好,時間差測量會隨著聲源位置的變化而隨機產(chǎn)生偏差,這是由于信號幅值的波動引起的。經(jīng)過多實驗次測試本系統(tǒng)的門限設(shè)定在100mv,系統(tǒng)能穩(wěn)定準確地工作。
圖2 程序流程圖
2.2.5 無線發(fā)射模塊設(shè)計
本系統(tǒng)采用無線收發(fā)模塊RF24L01進行誤差信號的傳輸。該芯片1.9-3.6V供電,功耗小。其內(nèi)置2.4GHz天線,并采用高效的GFSK調(diào)制,抗干擾能力強。這款芯片制成了PCB板,內(nèi)置了專門的穩(wěn)壓電路,使其在各類的電源供電情況下,都有很好的通信效果。該模塊可以通過軟件設(shè)置地址,只有收到本機地址時才會輸出數(shù)據(jù),可直接接各種單片機使用,軟件編程十分方便。
聲源引導(dǎo)部分的軟件設(shè)計包括對可移動聲源發(fā)聲命令的發(fā)送,時間差信號的接收與處理,載體小車上電機控制命令的發(fā)送以及無線發(fā)射模塊的控制??梢苿勇曉床糠值膯纹瑱C主要完成對無線接收模塊上寄存器的查詢,得到聲源引導(dǎo)部分發(fā)出的數(shù)據(jù)命令,并對可移動聲源部分的蜂鳴器和步進電機進行控制,軟件設(shè)計流程如圖2所示。
[1]謝自美.電子線路設(shè)計·實驗·測試[M].武昌:華中科技大學(xué)出版社,2000.
[2]黃根春.電子設(shè)計教程[M].北京:電子工業(yè)出版社,2007.
[3]沈建華.MSP430系列16位超低功耗單片機原理與應(yīng)用[M].北京:清華大學(xué)出版社,2004.
[4]沈紅衛(wèi).基于單片機的智能系統(tǒng)設(shè)計與實現(xiàn)[M].北京:電子工業(yè)出版社,2005.
[5]馬中梅,籍順心.單片機的C語言應(yīng)用程序設(shè)計[M].3版.北京:北京航空航天大學(xué)出版社,2003.
[6]戎曉政,劉加.聲源定位中的延時估計方法研究[J].電聲技術(shù),2010,33(2):42-46.