国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于TDOA和Kalman濾波的聲音定位系統(tǒng)的設計

2018-10-12 05:48王雷郝建新陳蔚蔚
現(xiàn)代電子技術 2018年19期

王雷 郝建新 陳蔚蔚

摘 要: 使用單片機STM32F103ZET6為控制核心,通過以LM324芯片、LM567鑒頻芯片為主組成的固定聲音識別電路設計聲音定位系統(tǒng)。針對在固定音頻信號采集過程中,由元器件本身以及周圍環(huán)境等影響而產(chǎn)生的噪聲誤差,采用TDOA算法和Kalman濾波相結合的方式,對于TDOA算法的計算結果進行優(yōu)化處理,得出音源位置的最優(yōu)估計值。經(jīng)過運行調(diào)試,使用Kalman濾波之后,使得系統(tǒng)的定位精度得到較大的提高,實現(xiàn)對目標的快速穩(wěn)定跟蹤。

關鍵詞: 聲音識別; 聲音定位; TDOA; Kalman濾波; STM32F103; Arduino

中圖分類號: TN710?34; TP273 文獻標識碼: A 文章編號: 1004?373X(2018)19?0161?04

Abstract: A sound location system is designed by taking microcontroller STM32F103ZET6 as the control core, LM324 chip and LM567 frequency discrimination chip as the major components of fixed voice recognition circuit. In the acquisition process of fixed audio signal, the method combining TDOA algorithm and Kalman filtering is used to eliminate the noise error generated by components themselves and surrounding environment. The calculation result of the TDOA algorithm is optimized to get the optimal estimation value of voice source location. The debugging and running results show that the location accuracy of the system has been greatly improved by means of Kalman filtering, and the system can realize rapid and stable target tracking.

Keywords: voice recognition; sound positioning; TDOA; Kalman filtering; STM32F103; Arduino

0 引 言

聲音定位是一種應用廣泛的技術[1],利用聲學傳感器以及與其相連的電子設備(MCU)和相關電路,處理接收到的聲波信號,確定聲源的位置[2]。聲音在空間上沿球面?zhèn)鞑?,時間上具有唯一性[3],因此在臨床醫(yī)學[1]、現(xiàn)代戰(zhàn)爭進攻與防御[2]、機器視覺[3]、無線傳感器網(wǎng)絡[4?5]等領域均得到了重要的應用。TDOA算法是一種較為常用的定位算法[2?8],其計算過程更加簡單,計算精度準確。由于聲源信號接收過程中存在隨機噪聲等影響,使用Kalman濾波可有效地降低噪聲影響。Kalman濾波理論已經(jīng)在國防、軍事、跟蹤、制導等許多領域得到廣泛應用[10]。將Kalman濾波算法與TDOA算法結合,既能夠?qū)⒙曉葱盘柌杉到y(tǒng)的噪聲影響降低,又能快速準確地確定聲源信號的位置,同時采用MCU?STM32F103ZET6作為主控芯片[7],大大提高聲音定位系統(tǒng)的穩(wěn)定性和可靠性。

1 系統(tǒng)設計

系統(tǒng)機械結構如圖1所示,在一個500 mm×500 mm的垂直平面上,自由選位放置一個小音源(50 mm×50 mm),產(chǎn)生1 800 Hz的正弦波聲源信號,由固定在4個角的拾音器收集,通過信號采集電路傳輸?shù)娇刂葡到y(tǒng)中,經(jīng)過濾波、計算得出音源的位置,最后驅(qū)動定位跟隨模塊,將紅外線射擊到音源位置。系統(tǒng)結構框圖如圖2所示。

1.1 音源模塊

輸入信號為1 800 Hz的正弦波信號,通過RC振蕩電路直接產(chǎn)生正弦波,再經(jīng)功率放大器驅(qū)動揚聲器發(fā)聲。正弦波產(chǎn)生電路不僅要產(chǎn)生所需輸出的正弦信號,而且是后面電路的輸入信號。電路結構如圖3所示。

1.2 聲音接收模塊[2]

由聲音傳感器?電容式駐極體話筒、LM324芯片、LM567鑒頻芯片為主組成的固定音頻識別電路。由揚聲器識取聲音信號,進行兩級放大處理,然后使用LM567對放大后的信號進行鑒頻識別。與使用精密電位器設定的固定頻率進行對比,當頻率相同時,輸出一個開關量信號,以達到固定頻率識別的目的。聲音接收電路結構如圖4所示。

1.3 MCU控制模塊

選擇STM32F103ZET6作為主控MCU,內(nèi)核為ARM 32位的CortexTM?M3 CPU,最高72 MHz的工作頻率,集成256~512 KB的FLASH存儲器,64 KB的SRAM。多達11個定時器,方便信號的采集,并集成了多種接口,可以進行不同通信接口的通信。

1.4 定位跟隨模塊

Arduino單片機控制由兩個舵機和紅外線發(fā)射器組成的定位跟隨系統(tǒng)。舵機內(nèi)置微型處理器,具有速度快、穩(wěn)定性好、體積小、扭力大等特點。主控MCU與Arduino之間通過藍牙串口模塊進行通信。

2 軟件設計

聲音定位的關鍵是求出各個傳感器接收到信號的時間差,選用3個傳感器,得出3個時間差,即可得出3條雙曲線。由于實驗中存在誤差,因而3條曲線不會交于一點,而是兩兩相交形成三角形,之后找出3個坐標點形成的三角形的重心,該重心即為發(fā)聲源的位置。使用單片機的3個中斷,計算聲音到達傳感器的時間,進一步得到時間差。系統(tǒng)流程圖如圖5所示。

2.1 TDOA算法測試

聲源定位坐標示意圖如圖6所示,在平面上分布有3個傳感器[A,B,C],坐標分別為[(0,0)],[(a,0)]和[(0,a)]。

2.2 Kalman濾波器設計

Kalman濾波算法是一個最優(yōu)化自回歸數(shù)據(jù)處理算法,是利用當前時刻的測量值以及前一時刻的估計值來更新狀態(tài)變量,最終估計出當前時刻的最優(yōu)值[9?11]。由于音量、周圍噪聲、元器件及電路本身等原因,均會對測量時間產(chǎn)生影響,使用Kalman濾波對計算結果進行優(yōu)化處理,得出音源位置的最優(yōu)估計值。

通過表2可以看出,經(jīng)過Kalman濾波之后的定位結果要優(yōu)于優(yōu)化之前的定位結果。濾波之前定位誤差最大可以達到25 mm,濾波之后,將誤差控制在10 mm以內(nèi)。

3 結 論

本文通過使用Kalman濾波算法和TDOA定位算法完成基于STM32F103ZET6為控制核心的聲音定位系統(tǒng)的設計。經(jīng)過實驗結果論證,經(jīng)過Kalman濾波對于TDOA算法的計算結果進行優(yōu)化處理后,定位精度得到提高,減小了定位誤差值。由于雙算法的計算復雜度,使得Kalman濾波僅進行了10次運算,在計算準確度上存在著一定的不足。同時也使計算時間增加,因此對于兩種算法的混合應用仍然有較大的提升空間。

參考文獻

[1] 耿艷香,梁雪芹,董愛云,等.基于MSP430的聲音定位系統(tǒng)設計[J].實驗室科學,2014,17(1):8?10.

GENG Yanxiang, LIANG Xueqin, DONG Aiyun, et al. Design of voice fixing position system based on MSP430 [J]. Laboratory science, 2014, 17(1): 8?10.

[2] 李昌祿,郭威辰,蘇寒松.基于TDOA的聲音定位系統(tǒng)[J].實驗室研究與探索,2014,33(6):118?121.

LI Changlu, GUO Weichen, SU Hansong. Sound positioning system based on TDOA [J]. Research and exploration in laboratory, 2014, 33(6): 118?121.

[3] 韓毅,吳初娜,李龍飛,等.基于到達時差的聲音定位系統(tǒng)的研究與實現(xiàn)[J].計算機工程與設計,2010, 31(11):2462?2465.

HAN Yi, WU Chuna, LI Longfei, et al. Research and development of sound localization system based on time difference of arrival [J]. Computer engineering and design, 2010, 31(11): 2462?2465.

[4] 李大舟,趙海,朱劍,等.無線傳感器網(wǎng)絡中免于測距的聲音定位算法[J].東北大學學報(自然科學版),2011,32(6):806?809.

LI Dazhou, ZHAO Hai, ZHU Jian, et al. A range free acoustic localization algorithm in WSN [J]. Journal of Northeastern University (natural science), 2011, 32(6): 806?809.

[5] 殷桂華,王小輝,雷毅談.基于TDOA的室內(nèi)運動目標雙曲線RFID定位方法[J].計算機應用,2014,34(z2):52?54.

YIN Guihua, WANG Xiaohui, LEI Yitan. RFID hyperbolic positioning using TDOA method for indoor moving target [J]. Journal of computer applications, 2014, 34(S2): 52?54.

[6] 王益平,王皓,吳衡,等.基于到達時差的低功耗聲音定位系統(tǒng)[J].機電工程,2014,30(8):1015?1019.

WANG Yiping, WANG Hao, WU Heng, et al. Sound localization system based on time difference of arrival with conside?rable power saving [J]. Journal of mechanical & electrical engineering, 2014, 30(8): 1015?1019.

[7] 王瑞榮,鄭書萬,陳浩龍,等.一種基于Talor和Kalman的室內(nèi)協(xié)同定位方法[J].傳感技術學報,2014,27(11): 1557?1561.

WANG Ruirong, ZHENG Shuwan, CHEN Haolong, et al. An cooperative localization method based on Taylor and Kalman algorithms [J]. Chinese journal of sensors and actuators, 2014, 27(11): 1557?1561.

[8] 苗晟,周維,唐浩,等.一種聲源定位系統(tǒng)設計[J].計算機科學,2013,40(11A):398?400.

MIAO Sheng, ZHOU Wei, TANG Hao, et al. Acoustic location system design [J]. Computer science, 2013, 40(11A): 398?400.

[9] 王素青,熊維堂.基于STM32的兩輪自平衡小車系統(tǒng)設計[J].實驗室研究與探索,2016,35(5):146?150.

WANG Suqing, XIONG Weitang. The design of the two?wheel self?balancing vehicle system based on STM32 [J]. Research and exploration in laboratory, 2016, 35(5): 146?150.

[10] 黃小平,王巖.卡爾曼濾波原理及應用Matlab仿真[M].北京:電子工業(yè)出版社,2015.

HUANG Xiaoping, WANG Yan. The principle and application of Kalman filter: Matlab simulation [M]. Beijing: Publi?shing House of Electronics Industry, 2015.

[11] 李慶瀛,褚金奎,李榮華,等.基于卡爾曼濾波的移動機器人運動目標跟蹤[J].傳感器與微系統(tǒng),2008,27(11):66?68.

LI Qingying, CHU Jinkui, LI Ronghua, et al. Moving object tracking algorithm for mobile robot based on Kalman filter [J]. Transducer and microsystem technologies, 2008, 27(11): 66?68.

吴江市| 垫江县| 文水县| 涿鹿县| 泸西县| 偃师市| 千阳县| 浮山县| 颍上县| 犍为县| 南木林县| 北宁市| 响水县| 沂水县| 崇义县| 济源市| 清新县| 宾阳县| 监利县| 石首市| 闽清县| 清徐县| 金平| 西充县| 仙桃市| 威海市| 海兴县| 桂东县| 宜君县| 饶河县| 宣汉县| 长春市| 沅陵县| 邢台市| 吉首市| 晋中市| 新余市| 陆河县| 吉水县| 弋阳县| 固始县|