













摘 要:聲源定位技術是一種通過分析麥克風陣列所采集的信號來判斷聲音來源的技術。在生產環境中,為達到檢測產品質量、定位故障、實施異常預警的目的,提出了一種基于K210單片機的聲源定位追蹤系統。該系統利用K210芯片、TDOA算法和卡爾曼濾波技術對采集的聲源數據進行處理,計算聲源角度和距離,再通過PID技術和PWM控制SG90舵機旋轉激光筆,精準指向聲源位置。測試表明,此系統具有較高定位精度,可在更廣泛的頻率范圍和更大的聲音強度下使用。本研究為解決產品質量、故障診斷以及環境監測等問題提供了一種有效的技術手段,具有重要的實用價值和推廣意義。
關鍵詞:聲源定位;K210單片機;麥克風陣列;卡爾曼濾波;TDOA;PID控制
中圖分類號:TP29 文獻標識碼:A 文章編號:2095-1302(2025)04-00-04
0 引 言
近年來,基于麥克風陣列的聲源定位一直是熱度較高的研究課題。許多國家如美國、法國、意大利、以色列和加拿大等都相繼開展了相關研究工作并取得了不少成果[1]。在應用方面,麥克風陣列已經被廣泛應用于許多領域,例如:在高背景噪聲情況下探測航空器的噪聲源、在較遠距離識別聲音、在聲環境中查詢鑒別出不同尋常的聲音、以智能聲源定位的方式追蹤目標、在高噪聲環境下對危險情況進行探測和分類等。目前聲源定位系統的主要目標是識別聲音的方向,其一般使用TDOA算法測得目標發出的聲音到達麥克風單元的時間差,以及目標聲音的特征參數,同時利用時間差來確定目標聲音點與陣列的角度[2]。本文采用Maix Dock主控板,利用高性能的K210單片機處理麥克風陣列數據和控制各模塊運作,實現聲源定位與追蹤的目的。
1 系統整體設計方案
本文系統采用Maix Dock主控板與麥克風陣列相結合的方案。麥克風陣列定位可移動聲源的信息,將數據傳至Maix Dock主控板上的K210芯片中。數據經過TDOA處理、卡爾曼濾波與K210的基礎硬件庫函數處理后,最終獲得移動聲源與麥克風陣列的距離與角度,并將角度顯示于LCD屏幕上。該系統通過PID控制SG90舵機旋轉,使二維云臺轉動,同時帶動激光筆指向聲源,并隨著聲源的移動而移動,使激光一直定位在聲源方向。聲源定位追蹤系統設計方案如圖1所示。
2 系統硬件設計
2.1 處理器模塊
本文設計主要基于Maix Dock主控板(圖2),以K210芯片作為核心單元。該主控板內置64位雙核處理器芯片、8 MB片上SRAM,聽覺性能突出。此外,K210內置多種硬件加速單元(KPU、FPU、FFT等),總算力最高可達1 TOPS,能夠快速完成各類應用場景的聽覺算法,并可以實現語音方向掃描和語音數據輸出的前置處理。
2.2 麥克風陣列模塊
聲源采集主要使用麥克風陣列模塊(圖3)。麥克風陣列模塊由7個MSM261S4030H0R組成,具備定位聲源方向的功能,其采用電容式駐極體話筒,將模擬聲音信號轉換為電信號。12個LED組成一個環形LED陣列,在平面上可以360°直觀顯示聲源位置。
2.3 LCD顯示模塊
顯示模塊采用2.4英寸的LCD屏幕(圖4),屏幕分辨率為320×240。UI界面可顯示場地上聲源的大概位置,并實時更新聲源定位系統與移動聲源的距離與角度。
2.4 聲源指示控制裝置
聲源指示控制使用迷你尼龍二維平臺(圖5),其上搭載了2個SG90舵機,負責控制激光筆水平與垂直轉動,實現移動聲源位置的精準定位。
3 系統軟件設計
首先,使用聲源信號裝置對K210系統進行初始化,由麥克風陣列接收相關信息。接著,K210單片機模塊接收并轉換包括聲源方向和位置坐標等數據,通過TDOA和卡爾曼濾波算法的處理,使數據得到進一步優化。然后,K210單片機控制LCD顯示器呈現與聲源位置相關的方向和坐標參數,再控制二維云臺,確保激光筆精準定位,追蹤聲源目標位置[3]。聲源定位追蹤系統程序流程如圖6所示。
3.1 TDOA算法設計
基于TDOA的定位算法為目前應用與研究最廣泛的聲源定位算法。該算法的主要原理為利用接收器接收到的聲音信號,求取聲音信號到達各個接收器的時間延遲,分別對應三維空間中各個接收器與聲源之間的聲程差,利用聲程差與定位方程解算方法求解聲源的位置坐標[4]。
發射聲音位置與拾音器之間的距離滿足式(1):
(1)
式中:(xi, yi)為第i個聲音的接收模塊坐標;(x, y)為聲源坐標。雙曲線定位中發射聲音位置(x, y)和拾音器(xi, yi)之間的距離滿足式(2):
(2)
采用相位檢波的方法,將兩路正弦信號之間的相位差轉換為電壓信號,利用ADC測量電壓信號,反向計算得到相位差,轉化為方程求解問題,實現聲源定位[5]。
3.2 卡爾曼濾波算法的設計
卡爾曼濾波有2個步驟:預測步驟,即系統的下一個狀態根據上一個測量結果預測;更新步驟,即系統的當前狀態根據當前的測量結果估計。卡爾曼濾波算法如下[6]:
(1)預測步驟
(3)
Pk|k-1=Fk-1Pk-1|k-1FTk-1+Gk-1QkGTk-1" " " " " " " " " (4)
(2)更新步驟
(5)
Kk=Pk|k-1HTk [HkPk|k-1HTk+Rk]-1" " " " " " " " " " " (6)
Pk|k=Pk-1|k-1+KkHkPk|k-1" " " " " " " " " " " " " " (7)
式中:∈Rn為聲源目標狀態向量,其對應的協方差矩陣為Pk;Zk∈Rm為傳聲器對聲源的測量向量;Fk、Gk為狀態轉移矩陣;Qk、Rk為協方差矩陣。
編寫卡爾曼濾波函數,使經過TDOA處理后的數據經此函數處理,能夠更精準地定位聲源位置。卡爾曼濾波算法的設計代碼如圖7所示。
3.3 二維云臺的設計
二維云臺主要由SG90舵機控制,舵機由PWM信號控制。PWM信號數據由對已經通過TDOA與卡爾曼濾波函數處理后的精準角度簡易處理得到。PWM驅動二維云臺轉動到合適的角度,便于激光定位聲源。二維云臺的設計代碼如圖8所示。
4 系統測試與誤差分析
為了最大程度減小周圍環境對實驗的潛在影響,特別是排除室內可能存在的回聲混響等干擾,本文選擇了一個寬敞的場地進行實驗。在實驗布置中,將麥克風陣列和聲源裝置放置在同一水平面上,聲源裝置被安放在預先測定的位置,用于進行定點實驗,并播放相應音頻作為聲源。
4.1 測試距離與角度(無干擾)
首先驗證該系統定位數據的精準性。在正常無噪聲環境下,分別測試5次真實距離為1.0 m、1.5 m、2.0 m的距離精準度,并測試在此距離基礎上針對-60°~60°范圍內的角度精準度。聲源裝置的測試結果見表1和表2。
由表1可知,在1.0~1.5 m范圍內,距離精確度誤差范圍為0~0.1 m;而在1.5~2.0 m范圍內,距離精確度誤差范圍擴大至0.1~0.2 m。此時隨著距離的增加,距離精確度逐漸降低。
由表2可知,在聲源裝置進行-60°~60°的測試時,角度精確度誤差范圍為0°~3°。此時角度精確度較小。
4.2 測試距離與角度(有干擾)
本文還驗證了有無噪聲情況下,聲音強度對距離(測試距離分別1.0 m、1.5 m、2.0 m)與角度(角度固定為0°)的影響,分別見表3和表4。
分析表3和表4可得,2組數據顯示的距離和角度精準度隨噪聲從無到有,以及聲音強度的減小而降低。這說明有無噪聲和聲音強度的大小對聲源定位均產生了顯著影響,同時在無噪聲且聲音強度較高的情況下,麥克風陣列能夠更有效地接收聲波信號[7]。
4.3 測試移動聲源追蹤
測試聲源定位系統對于不同移動速度下聲源的定位精準度。表5為移動聲源定位追蹤的精準度。
由表5可知,在聲源緩慢移動的情況下,激光基本可跟蹤聲源移動,然而隨著聲源移動速度的加快,定位追蹤的精準度開始降低,出現了較大的角度偏移,當移動速度超過0.35 m/s后,無法準確定位和追蹤聲源目標[8]。
4.4 誤差分析
綜上所述,與當前市場上其他同類設備相比,本文設計的聲源定位系統具有顯著優勢和創新點。該系統綜合了TDOA算法和卡爾曼濾波技術,通過高性能的Maix Dock主控板和K210芯片處理麥克風陣列采集的聲源數據,實現了對聲源角度和距離的高精度定位。此外,該系統通過LCD屏幕實時顯示聲源信息,結合二維云臺和激光筆,使系統具備了實時追蹤的能力。在實驗中,該系統在1.0 ~2.0 m
的距離范圍內定位誤差較小;對于有無噪聲和不同聲音強度的環境,該系統也表現出較強的魯棒性,尤其在無噪聲和高聲音強度條件下,麥克風陣列能夠更有效地接收聲波信號。該系統還具備一定的移動目標跟蹤性能,盡管在較高速度下定位精準度有所下降,但這款聲源定位追蹤系統在硬件性能、實時顯示和追蹤等方面都展現出了較優越的性能[9-10]。
5 結 語
本文深入探討了聲源定位技術的應用和實現,提出了一種基于K210單片機的聲源定位追蹤系統,并詳細介紹了該系統的組成部分及工作原理。該系統利用了K210芯片的強大計算能力,結合TDOA算法和卡爾曼濾波技術,對采集的聲源數據進行處理,實現了對聲源角度和距離的精準計算。同時,該系統通過PID技術和PWM控制SG90舵機旋轉激光筆,實現了對聲源位置的精準指向。這些技術的融合使得系統具有較高的定位精度和穩定性。通過詳盡的測試和評估,該系統在不同頻率和聲音強度下均能夠穩定工作,并且具有較高的定位精度,這為聲源定位技術在生產環境中的應用提供了可靠的保障。
注:本文通訊作者為潘宇。
參考文獻
[1]石婷.麥克風陣列聲源定位算法研究綜述[J].科技視界,2016(27):274.
[2]李彥瑭,沈一,潘欣裕,等.基于麥克風陣列的聲源定位系統研究[J].物聯網技術,2021,11(7):26-28.
[3]代燕嬌,洪凌鈺,劉鈺,等.基于STM32單片機的聲源定位系
統[J].電腦編程技巧與維護,2023(10):10-13.
[4]王松.基于TDOA的聲源定位算法研究與實現[D].濟南:山東大學,2020.
[5]郝張紅,段羽浩,韓彬彬.基于TDOA的聲源定位算法研究及實現[J].信息系統工程,2020(2):140-141.
[6]戴文豐.基于卡爾曼濾波算法的聲源目標跟蹤研究[D].廣州:華南理工大學,2020.
[7]林志斌,徐柏齡.基于傳聲器陣列的聲源定位[J].電聲技術,2004(5):19-23.
[8]李曉陽,李世豪,范天一,等.基于Raspberry Pi的聲源定位跟蹤系統[J].科學技術創新,2022(32):33-36.
[9]崔瑋瑋,曹志剛,魏建強.聲源定位中的時延估計技術[J].數據采集與處理,2007(1):90-99.
[10]馮振宇.基于聲傳感器陣列的移動目標定位技術研究[D].沈陽:沈陽理工大學,2013.
作者簡介:王 暢(1980—),男,博士,高級工程師,研究方向為信號處理與通信系統、人工智能等。
潘 宇(2001—),男,研究方向為電子信息工程。