国产精品久久久久永久免费看,大地资源网更新免费播放视频,国产成人久久av免费,成人欧美一区二区三区黑人免费,丁香五月天综合缴情网

  • 正文
  • 相關推薦
申請入駐 產業(yè)圖譜

信標代碼在單片機實踐效果差

2020/04/03
60
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

子曰:“不憤不啟,不悱不發(fā)”。卓大大,我現在心好累。

提問

我的心好累呀

卓大大您好,我是一名信標組的參賽選手 . 最近研究聲音定位已經一個多星期了,一直在跟著您推文中的方法走,也曾像其他人求助,解決了很多問題,但是也遇到了一些新的問題,有些暫時想不明白,就想來請教一下。

購買的 TC264 核心板尚未拿到手,于是用上一屆的 K66 板子做實驗。使用的麥克風是 MAX9814 模塊,GAIN 接 5V。

實驗電路板與麥克風傳感器

?

一開始先用兩個麥克風,10khz 采集 2000 個數據做互相關運算,結果存在數組內。找出互相關的最大值對應的下標 Nmax,這個下標和 2000 的差 2000-Nmax 即為時間延遲 / 采樣間隔。

  • 當 Nmax=0 時,對應信標在兩個麥克風正前方,角度對應 90 度;當 Nmax<0 時,對應信標在兩個麥克風左側,定義角度為 0;當 Nmax0 時,對應信標在兩個麥克風的右側,定義角度為 180 度。

實驗布局示意圖

?

這里遇到的問題是求出的結果只有三個,兩個麥克風距離算 8 厘米,最大時間間隔才 235 微妙,而采樣 100 微妙一次,這樣的結果就理所當然了。

通過提高采樣速率,軟件插值,提高麥克風間距,增加測量時間可以增加分辨率。我都嘗試了。

提高采樣速率和軟件插值效果明顯,可以做到互相關的最大值的坐標從 3 個點內的移動增大到 100 個點內的 移動。我覺得這應已經很不錯了。

Chirp 信號波形

?

麥克風間距受到 Chirp 半波長限制,增加采樣時間效果不明顯(試驗從 1000 到 4000 個點)。

然后我開始嘗試用三個麥克風實現定位,作了一個等邊三角形固定麥克風。以厘米為單位建立平面坐標,求解聯立的雙曲線方程,再代入第三個方程求得唯一解。

折騰半天算出來表達式非常長的一串,在電腦上運行 C 語言程序,MATLAB 計算,代入數值答案都正確而且一致,說明等式沒有問題。

使用三角形麥克風陣列測量揚聲器的位置

?

把這些代碼移植到單片機里實踐,效果確實非常差:大部分時候算出來的 X,Y 坐標只是符號正確而已,說明好壞知道我在哪個象限;有些符號都是錯誤的。我想這個數學模型是非常敏感的。在遠點的地方雙曲線接近平行,0.1 厘米的誤差都會導致誤解或者提前相交 -- 失之毫厘,差之千里。

于是,我開始尋找誤差來源:麥克風的誤差可以忽略不計;K66 的 ADC 采樣的誤差,一是 ADC 腳懸空時跳變較大(但是接入麥克風后又是穩(wěn)定很多),而是一個 ADC 的才寄回干擾的其他的 ADC。這個挺明顯的,1 個麥克風+2 個懸空使用虛擬示波器看波形,有聲音的時候 2 個懸空的也有不算小的波動。

采集到的波形信號

?

我找了個 RT1064 來做對比,發(fā)現這兩個指標都好上不少;三是麥克風不是一個點,是一個圓柱體,加上等邊三角形的誤差,鳳城參數和我實際麥克風間具有一定的差距。

然后尋找錯誤的來源:在 Chirp 的中頻段,有可能互相關的結果在 t 點和 T-t 點都是峰值(t 是時間延遲,T 是信號周期)。因為我采集到的信號并不是一個完整周期的 Chirp 信號,可能在我采集的這一段就是規(guī)律的正弦信號,往左往右都可以重合。

Chirp 信號的自相關信號

?

用完整的 Chirp 信號可以解決這個錯誤,但是在保證時間分辨率起碼在 10 微妙的情況下,不管是提高采樣頻率還是插值,一個 0.2048s 的信號的點起賣超過 20000 個。而且不知道信號的起始時間的情況下才采集這么長的時間也不一定才到完整的一幀 Chirp 信號。

所以我現在有點懷疑純麥克風的方案。折騰了這么久,以為快要成功的時候又發(fā)現了 一大大堆不知道如何解決的問題。我現在也沒有力氣再重新飛線測試 RT1064 的結果了。

Chirp 信號的 FFT 幅度譜

?

萬一只是誤差非常非常大和非常大的區(qū)別呢?不知不覺寫了這么多,真的是麻煩卓老師了。

回復:

采集數據的頻率只需要設置為 10kHz 就好了,不需要提高采樣頻率。這是因為實際信號產生的 DAC 的頻率就是 10kHz,提高采樣頻率也不會提高數據的精度;提高自相關判斷的精度是采用 FFT+補零的方式來完成的;具體方法以后會進行理論分析;對于聲源的定位,麥克風陣列的極限越長,定位精度越高。可以伴隨追的車模運動,自然產生拉長后的麥克風陣列基線;需要假設能夠利用調頻接收模塊來獲得發(fā)送的信號。根據該信號的起始點來確定采集的起始點以保證能夠采集到完整的一幀 Chip 信號;在實際測試中,距離的重復誤差應該在 1 厘米左右,如果大于這個誤差,請檢查一下你的電路中實際信號的幅值和噪聲。

公眾號留言

卓大大,可千萬別把電磁 AI 的賽道搞得太長,我剛試了一下,推車采集數據真的好累人啊 /::<身體累是一方面,心也累,都不知道辛辛苦苦采集的數據訓練的結果會是啥鬼樣子。

相關推薦

登錄即可解鎖
  • 海量技術文章
  • 設計資源下載
  • 產業(yè)鏈客戶資源
  • 寫文章/發(fā)需求
立即登錄

公眾號TsinghuaJoking主筆。清華大學自動化系教師,研究興趣范圍包括自動控制、智能信息處理、嵌入式電子系統(tǒng)等。全國大學生智能汽車競賽秘書處主任,技術組組長,網稱“卓大大”。