?

基于STM32的聲音定位系統

2019-09-10 03:00楊麗劉璐
新教育論壇 2019年1期
關鍵詞:時間差濾波

楊麗 劉璐

摘要:從GPS到手機定位,定位系統在我們的日常生活中越來越重要?,F在已將聲音定位應用在可視電話、視頻會議等系統中。本系統使用STM32產生頻率為500Hz的正弦波信號,以便單片機STM32對信號進行捕獲,減少誤觸發。聲源定位是通過對四個駐極體接收到相位差信號進行處理,經過一套比較完善的算法可得聲源的坐標,即可進行聲源定位。設計完成后,進行了整體測試,基本能夠達到設計要求。

關鍵詞:聲音定位;TODA算法;時間差;濾波

1、引言

1.1研究背景及意義

隨著科技的進步,定位已經在我們的日常生活中扮演的角色越來越重要。確定一個聲源在空間中的位置是一項有廣闊應用背景的有趣研究,將來可以將語音聲源定位應用在可視電話、視頻會議等系統中檢測說話人的位置。聲源定位通過測量物體發出的聲音對物體定位,與使用聲納、雷達、無線通訊的定位方法不同,前者信源是普通的聲音,是寬帶信號,而后者信源是窄帶信號。對聲源位置的確定能給大家有效的利用聲音提供幫助。事實證明,聲源定位系統是一個很有意義的研究課題。

1.2設計要求

設計一套聲音定位系統。在一塊不大于1m2的平板上貼一張500mm×350mm的坐標紙,在其四角外側分別固定安裝一個聲音接收模塊,聲音接收模塊通過導線將聲音信號傳輸到信息處理模塊,聲音定位系統根據聲響模塊通過空氣傳播到各聲音接收模塊的聲音信號,判定聲響模塊所在的位置坐標。

同時對于整個系統,要求:

(1)設計制作一個聲響模塊,含信號產生電路、放大電路和微型揚聲器等,每按鍵一次發聲一次,聲音信號的基波頻率為500Hz左右,聲音持續時間約為1s;

(2)設計制作四路聲音接收模塊,由麥克風、放大電路等組成,并分別與信息處理模塊相連接,以便將頻率為500Hz左右的信號傳送至信息處理模塊。

(3)設計制作一個信息處理模塊,要求該模塊能根據從聲音接收模塊傳來的信號判斷聲響模塊所在位置的x、y坐標,并以數字形式顯示x、y坐標值

(4)具有顯示聲響模塊移動軌跡的功能。當聲響模塊在坐標紙上按指定路徑移動時,液晶顯示屏能動態顯示聲響模塊移動的軌跡,顯示的軌跡與聲響模塊移動的路徑一致。

2、聲音定位原理簡述

聲源定位是一種利用麥克風陣列接收聲音信號,并使用信號處理等手段對其進行分析處理,最終確定聲源所在位置的技術.該技術在生產生活等領域得到了廣泛的應用,在科研方面也同樣具有寶貴的價值。由于定位方式原理有所不同,一般可將聲源定位技術分為3類:

(1)第一種是高分辨率譜估計定位技術,這種方法在遠場條件下的定位效果不錯,但計算量較大,且在處理寬帶信號上有所欠缺。

(2)第二種方法是基于可控波束形成法,但為了使波束功率達到最大值,需要對整個空間進行掃描搜索,計算量大,還需要了解背景噪聲等先驗知識。

(3)第三種定位算法是基于到達時間差技術,即TDOA。這也是現在最常用的一種方法。該方法主要有兩個步驟,分別是時延估計和定位估計,首先使用多組麥克風對信號進行接收,接著使用相關方法分別計算從而得到多組時延,然后由麥克風陣列位置結合上一步求得的時延進行定位,從而得到最終聲源的位置。這種方法的優勢在于原理簡單,計算量較小,且不需要知道噪聲的先驗知識。

3、方案論證與選擇

3.1總體設計方案論證與選擇

針對本次課程設計任務,進行分析得到:該聲音定位系統設計主要由以下幾個模塊組成:聲響模塊、聲音信號接收模塊、信息處理顯示模塊。在這幾個模塊中最主要的是聲音信號接收模塊,其功能是對聲響模塊發出的信號進行采集并放大,采集到的信號容易失真、不穩定,所以需要多次調試和修改電路。聲響模塊采用STM32F103驅動揚聲器發出500HZ方波信號。聲音接收處理模塊采用駐極體接收,通過多級放大整波電路,將接收的信號經放大、濾波、電壓比較排除噪聲干擾。再利用STM32F103微處理器處理接收到的信號,計算出位置坐標,顯示模塊直接利用STM32F103自帶的FFT屏幕完成顯示。

4、硬件設計

4.1聲響模塊電路設計

聲響模塊是由C8051F310單片機輸出頻率為500Hz的方波,然后從單片機引腳輸出,輸出的信號經過三極管后放大后,再接入到蜂鳴器。此時蜂鳴器的輸出電流為35mA左右,供電電源為5V,發聲模塊的功率低于200mW,符合本題的要求。

4.2聲音接收模塊

接收部分是用麥克風接收聲音信號。由于麥克風接收到的信號在不經過放大時信號很小,不易檢測,故后級利用運算放大器將接收的信號進行放大,已達到后級電路的要求。本次放大電路采用把運算放大器接成同相比例放大電路,放大倍數由R5和R8共同決定,放大倍數Au=R5/R8+1,通過調節R5可以很方便的改變放大倍數,以達到要求。

5、軟件設計

5.1發聲模塊流程圖

題目中要求產生頻率為500HZ的方波信號驅動蜂鳴器發聲,由于方波頻率f=500Hz周期T=1/500=2ms,讓定時器計滿1ms,蜂鳴器引腳輸出“0”,再計滿1ms,蜂鳴器接入單片機引腳輸出取反,這樣就可以產生500Hz的方波。

5.2聲音處理及顯示模塊流程

整個的聲音處理部分都采用STM32外部中斷和定時器完成。四個外部中斷的優先級設置為同級,這樣就可以四路信號無所謂先后的進行觸發。上電就把定時器和外部外部中斷初始化,然后等待四路信號的外部中斷觸發。當任意一路外部中斷被觸發,則立即啟動四路定時器開始定時,每接收一路信號,則關掉相應的定時器和外部中斷引腳,直到四路信號全部觸發完成,關掉所有定時器和外部中斷。然后對信號進行處理,利用數學方法計算出聲源位置,調用函數在TFT屏幕上顯示,完成一輪檢測。然后重復上述過程。

6、結果分析與總結

本次設計,整體來說基本完成任務,測試結果表明,整個系統基本能滿足要求,四路模塊接收到的信號有先后順序,但是由于噪聲和毛刺的干擾,會有誤判的現象。

本次課程設計遇到的問題比較多,最主要的原因在于對信號處理方面知識的欠缺和模擬電路知識的缺乏。具體來說

1.模擬電路知識缺乏:整個電路涉及到功率放大電路、信號放大電路、濾波電路、比較電路共四個主要部分的電路設計。在大學期間對于模擬電路的輕視,導致知識學習的不透徹,設計的電路有很多部分都參考了優秀的經典電路。為了能夠使設計達到,在課程設計期間,補充了很多模電知識。

2.信號處理知識不夠:本次課程設計處理的信號僅僅是對聲音信號的處理,但是在處理過程中,遇到了毛刺干擾的問題,一直不能很好的解決。這也是本次課程設計遇到的最主要問題,采用了比較電路、延時電路等多種方法都沒有能夠徹底的解決。在后面的實驗中發現,應該是由于電路時自己利用銅板搭建的,信號的干擾較大,如果要徹底解決,需要考慮到PCB的布線,元器件的布局等更多深層次的問題。

參考文獻:

[1]靳瑩,楊潤澤.聲測定位技術的現狀研究[J].電聲技術,2007,31(2): 4-8.

[2]韓紀慶,張磊,鄭鐵然,語音信號處理[M],北京:清華大學出版社,2004

[3]張志勇.基于嵌入式Linux 的分布式聲音定位系統的研究[D].北京:北京郵電大學,2011.

基金:2017年成都理工大學國家級大學生創新創業訓練計劃項目(項目編號:201710616005)。

猜你喜歡
時間差濾波
基于小波域濾波的電子通信信道惡意干擾信號分離方法
應用于農業溫度監測的幾種濾波算法研究
“低慢小”目標定位跟蹤算法研究
智利貿易“時間差”風口
幾種圖像濾波處理方法比較
基于BP網絡的GIS局部放電聲電聯合檢測故障定位方法
幼兒用餐的時間差對區域游戲的影響
立體聲音樂節目后期制作中聲像定位的探討
基于非下采樣剪切波變換與引導濾波結合的遙感圖像增強
厘米級室內無線定位方法研究
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合