《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 一種新型超聲波測距系統(tǒng)信號處理方法
一種新型超聲波測距系統(tǒng)信號處理方法
2016年電子技術(shù)應(yīng)用第8期
許高斌1,閔 銳1,陳 興1,馬淵明1,金傳恩2
1.合肥工業(yè)大學(xué) 電子科學(xué)與應(yīng)用物理學(xué)院,安徽省MEMS工程技術(shù)研究中心,安徽 合肥230009;   2.合肥科盛微電子科技有限公司,安徽 合肥230000
摘要: 一種新型的適用于工程應(yīng)用的超聲波接收端數(shù)字信號處理方案,算法思路是以巴特沃斯IIR數(shù)字濾波器作為輸入輸出端,并結(jié)合一種新型的包絡(luò)檢波及下采樣處理,文中歸結(jié)為五步算法。詳細介紹了各步算法的實現(xiàn)方法、工作原理以及必要性,并結(jié)合五步算法的特性給出了一種新型的計算回波渡越時間的點跡法,避開了軟件延時與實時性需求之間的矛盾。綜合仿真與實驗測試說明,此設(shè)計方案不僅可以有效濾除信道噪聲的干擾,而且可以準確提取包絡(luò)信息并記錄峰值到達時間,極大地滿足了超聲波測距系統(tǒng)的穩(wěn)定性和實時性的需求。
中圖分類號: TN713;TP212
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.2016.08.020
中文引用格式: 許高斌,閔銳,陳興,等. 一種新型超聲波測距系統(tǒng)信號處理方法[J].電子技術(shù)應(yīng)用,2016,42(8):84-86,90.
英文引用格式: Xu Gaobin,Min Rui,Chen Xing,et al. A new research of signal processing of ultrasonic ranging system[J].Application of Electronic Technique,2016,42(8):84-86,90.
A new research of signal processing of ultrasonic ranging system
Xu Gaobin1,Min Rui1,Chen Xing1,Ma Yuanming1,Jin Chuan′en2
1.Micro Electromechanical System Research Center of Engineering and Technology of Anhui Province, School of Electronic Science & Applied Physics,Hefei University of Technology,Hefei 230009,China; 2.Silicon Ark Technology Co.Ltd,Hefei 230000,China
Abstract: A new scheme of digital signal processing in ultrasonic receiver which is suitable for engineering application was came up with. This scheme, summarized as a five-step algorithm, utilizes Butterworth IIR digital filter as the input and output side of this system and combines a new envelope detection and sampling process. The implementation methods, working principle and necessity of each step are introduced in detail. Combining the characteristic of five-step algorithm, a new algorithm of tracing by every vertex to calculate the echo transit time is given and the algorithm can avoid the contradiction between software delay and timeliness requirements. The comprehensive simulations and experimental measurements show the scheme in this paper can effectively filter out the interference of channel noise, accurately extract the envelope information and record peak arrival time. It is immensely meet the needs of real-time performance and stability of ultrasonic ranging system.
Key words : ultrasonic ranging algorithm;embedded system;IIR digital filter;envelope detection

0 引言

  超聲波測距系統(tǒng)以其對外界環(huán)境如霧霾天氣、沙塵暴天氣、雨雪天氣等的高適應(yīng)性而占據(jù)了絕大多數(shù)的汽車倒車雷達市場。傳統(tǒng)的超聲波換能器中心頻率為40 kHz[1],傳統(tǒng)的濾波器以及包絡(luò)檢測設(shè)計為RC阻容耦合電路的硬件電路實現(xiàn)[2],但是RC硬件電路存在不穩(wěn)定性。數(shù)字濾波、數(shù)字提取包絡(luò)相對于傳統(tǒng)的模擬濾波和硬件提取包絡(luò)來說,不僅省去了復(fù)雜的電路設(shè)計,而且處理信號的精確度和穩(wěn)定性也都有大幅度提高。國防科技大學(xué)對回波處理算法進行了細致的研究[3-4],其主體思路是利用偽隨機序列的相關(guān)運算進行處理,考慮到相關(guān)運算中FFT等運算的復(fù)雜性以及500 μs的碼元長度,其并不適用于短量程的嵌入式測距系統(tǒng)。北京科技大學(xué)采用了基于能量重心法和最小二乘法的橢圓中心算法處理回波[5],雖然精度控制在0.2%,但是復(fù)雜的運算必須結(jié)合上位機才可以實現(xiàn)。國內(nèi)還有很多關(guān)于高精度超聲波測距系統(tǒng)的研究[6-8],但是并未提及信號處理的具體實現(xiàn)方案。針對以上設(shè)計的不足,提出了一種新型的應(yīng)對嵌入式系統(tǒng)的超聲波測距五步算法,在數(shù)字濾波的基礎(chǔ)上采用一種新型的包絡(luò)檢測方式,同時在數(shù)據(jù)處理方面采用了新型的點跡計算法來計算回波峰值點。

1 超聲波測距系統(tǒng)框架

  系統(tǒng)框圖如圖1所示,實驗采用主控為基于Cortex-M4的ARM芯片。系統(tǒng)的工作流程為:主控芯片通過發(fā)出已被編碼的正負互補的PWM波形,促使驅(qū)動放大器模塊輸出幅值放大的正弦波。并通過中周模塊的穩(wěn)頻,驅(qū)動超聲波換能器發(fā)出中心頻率為40 kHz的超聲波。當(dāng)超聲波遇到障礙物時返回,經(jīng)過前置放大電路的放大后,進入ADC模塊進行數(shù)模轉(zhuǎn)換,轉(zhuǎn)換出的信號通過本文設(shè)計的數(shù)字通路后被解碼,從而被CPU處理。

圖像 001.png

圖1  系統(tǒng)框架圖

  距離可以通過式(1)計算:

  QQ圖片20161201155943.png

  式中,s為障礙物到探頭的距離,v為空氣中的聲速,T近似為超聲波在空氣中的傳播時間,近似程度由算法的延時決定。

2 超聲波測距DSP模塊設(shè)計

  超聲波數(shù)字通路處理從ADC的輸出信號開始,實際的數(shù)字信號處理模塊設(shè)計如圖2所示。

圖像 002.png

圖2  五步算法框架

  DSP模塊的五步算法處理流程:從ADC的輸出信號經(jīng)過數(shù)字帶通濾波器,可以濾除由于在空氣中傳播而摻雜的高斯噪聲。為了避免包絡(luò)檢測的正負抵消,需加入整流器,整流器的輸出需要經(jīng)過峰值提取器,提取采樣信號的包絡(luò),以計算準確的回波到達時間以及中斷觸發(fā)時間。由于1 MHz的采樣率不適用于計算機對數(shù)據(jù)的運算,則需要一個下采樣模塊來降低采樣率滿足計算機的需求。下采樣模塊的輸出信號需經(jīng)過數(shù)字低通濾波器來濾除高頻噪聲。

  2.1 IIR數(shù)字帶通濾波器的設(shè)計

  基于MATLAB的IIR數(shù)字濾波器的設(shè)計有多種方式,經(jīng)過反復(fù)實驗,在最大程度節(jié)約開發(fā)成本、保證濾波效果的情況下,確定濾波器的階數(shù)設(shè)定為2,采用模擬濾波器通過雙線性變換法轉(zhuǎn)數(shù)字濾波器。為了方便ARM內(nèi)核的移植,同時考慮到倒車雷達用戶不需要使用C來設(shè)計濾波器,結(jié)合實際工程需要,利用MATLAB軟件開發(fā)與設(shè)計濾波器,得到濾波器的傳遞函數(shù)參數(shù),然后再將MATLAB中的filter函數(shù)利用C設(shè)計實現(xiàn),即可以達到事半功倍的效果。圖3所示為超聲波回波信號與帶通濾波器的輸出,可以看出對于高斯噪聲的抑制效果優(yōu)良。

圖像 003.png

圖3  回波信號及帶通濾波器輸出

  2.2 整流器的設(shè)計

  由于數(shù)字信號后期會進行包絡(luò)檢測,當(dāng)超聲波的接收波形分布在X軸的上下側(cè),檢測出的包絡(luò)會正負抵消,則無法實現(xiàn)預(yù)期的結(jié)果。這里的整流器可近似為一個二極管的作用,使處于X軸負半軸的信號屏蔽,以利于后期的包絡(luò)檢測處理。程序上可以通過將X軸下方的數(shù)據(jù)均賦0來實現(xiàn)。

  2.3 包絡(luò)檢測器的設(shè)計

  在超聲波測距系統(tǒng)中,由于超聲波的衰減以及超聲波換能器壓電陶瓷在壓電轉(zhuǎn)換過程中的慣性滯后導(dǎo)致超聲波的回波信號被拓寬,使得回波到達時間點不確定,同時由于傳統(tǒng)設(shè)計的比較器閾值固定,增大了誤差的發(fā)生幾率,所以包絡(luò)峰值檢測在判斷飛越時間的過程中起著重要作用。通過MATLAB提供的庫函數(shù)可以方便地提取包絡(luò),但是MATLAB庫函數(shù)用C語言很難實現(xiàn),而且過于頻繁的乘加運算和FFT運算會增大工程算法的延時,對超聲波測距帶來不利影響,且不便于移植。

  峰值提取新算法是利用C語言實現(xiàn)峰值檢測,其理論依據(jù)為移位算法。如果峰值提取器的輸入大于先前的峰值提取器的輸出,則峰值提取器的輸出被更新,其理論框圖如圖4所示。

圖像 004.png

圖4  峰值提取算法示意圖

  其中x是峰值提取器的輸入,k是步長,y為輸出。在波形上升部分,包絡(luò)可以很好地提取,其技術(shù)難點在波形的下降部分。因為該算法只對比前一數(shù)據(jù)值更新,而對于過峰值后,波形的包絡(luò)無法被該算法更新則為一條直線??紤]到短延時的存在并不過多地影響最終的時間檢測,所以允許包絡(luò)相對于峰值點有一定的延遲。

  對下降部分單獨分析,需結(jié)合下采樣器的功能:對峰值提取器進行復(fù)位清0,同時生成輸出。峰值提取器的輸出是在下采樣器中的定時器到達預(yù)定值后生成輸出,即輸出為峰值點后,再對該輸出清零繼續(xù)進行后面的比較。下采樣器中的計數(shù)器的預(yù)定值,本質(zhì)上就是下采樣的頻率縮小為原始輸入頻率的1/DS,DS亦為每2個輸出點之間的采樣間隔。該算法的仿真結(jié)果如圖5所示,可見包絡(luò)提取滿足工程設(shè)計的需要,且節(jié)約了設(shè)計成本和減少了運算延遲。結(jié)果顯示有少許的相位差,可以通過實際測距過程中的測量統(tǒng)計來糾正。

圖像 005.png

圖5  峰值包絡(luò)檢測的新算法仿真

  2.4 下采樣器的設(shè)計

  一個樣值序列間隔幾個樣值取樣一次,這樣得到的新序列就是原序列的下采樣。采樣率變化主要是由于信號處理的不同模塊有不同的采樣率要求。下采樣相對于最初的連續(xù)時間信號而言,為了防止頻譜混疊要滿足采樣定理,此方案設(shè)計已將下采樣模塊與峰值提取模塊進行融合和互補控制,通過下采樣模塊可以使最后信號的采樣率與符號速率相等。這樣處理獲得的信噪比增益會大幅度提高。下采樣方便了后面的低通濾波器的設(shè)計,這是相輔相成的。為了迎合低通濾波器的處理效果,經(jīng)過反復(fù)實驗分析,下采樣寄存器的最佳允許值范圍為25~50。

  2.5 IIR數(shù)字低通濾波器的設(shè)計

  IIR數(shù)字低通濾波器的設(shè)計與帶通濾波器一致,本文設(shè)計的低通濾波器階數(shù)為1,可以滿足實際工程應(yīng)用需求。從ADC出來的信號為幅度變化的高頻信號,雖然發(fā)射的波形為等幅波形,但是在超聲波信號的傳輸過程中受到噪聲的干擾,產(chǎn)生了很多的高頻噪聲分量,導(dǎo)致接收到的信號為幅度變化的高頻波。由于高頻回波信號的包絡(luò)為低頻分量,加入低通濾波器可以濾去高頻處的噪聲,同時也可以濾除由于帶通濾波器拓寬帶寬而帶來的噪聲。低通濾波輸出亦為五步算法綜合輸出,其輸出圖以及頻譜對比圖如圖6所示,可以看出算法的平臺通用性和可移植性。

圖像 006.png

(a)低通濾波器輸出

圖像 007.png

(b)C輸出的頻譜

圖像 008.png

(c)MATLAB輸出的頻譜

  2.6 輸出數(shù)據(jù)的處理

  對于輸出數(shù)組的處理,采用一種新型的結(jié)合下采樣點跡的方式來計算超聲波的渡越時間,這種方法可以避開定時器的使用,節(jié)約了硬件資源,避免了由比較器的誤觸發(fā)而導(dǎo)致定時器中斷的干擾。同時由于數(shù)據(jù)處理的延時與渡越時間的測量是一對矛盾體,為了提高系統(tǒng)精度,五步算法傳遞的數(shù)據(jù)均為浮點數(shù),對于不同的回波數(shù)據(jù)值,ADC以及五步算法的軟件延時累積誤差會達到30 μs左右,所以利用點跡計算的方式實現(xiàn)了時間測量與系統(tǒng)軟件延時的有效分離。

  算法處理方式如下:在低通濾波輸出后,得到的包絡(luò)數(shù)據(jù)被保存于數(shù)組中,可以結(jié)合傳統(tǒng)的閾值處理以及回波包絡(luò)的對稱性找到回波數(shù)據(jù)中的峰值點,利用該峰值點在數(shù)組中的位置,同時根據(jù)下采樣的周期t_per計算出超聲波發(fā)射與接收的時間差。由于五步算法的相位差以及系統(tǒng)硬件的延遲與待測距離無關(guān),為固定值,所以通過板級實驗可以測試出總體的時延,在計算實際距離時將誤差減去即可。

  假設(shè)找到的峰值點為數(shù)組中的第N點,板級實驗測試的總體時延為t_dly,則超聲波發(fā)送與接收時間差T為:

  QQ圖片20161201155946.png

  將T代入式(1),再加上溫度傳感器的補償反饋,即可實現(xiàn)測距目的。

  2.7 測距算法的板級實驗

  為了測試所設(shè)計的五步算法的可行性,在自主設(shè)計的ARM超聲波測試板中進行了板級實驗。

  通過超聲波測距系統(tǒng)的量程(20 cm~5 m)固定距離,并以60 cm步進,分別使用本文設(shè)計的數(shù)字通路五步算法和傳統(tǒng)經(jīng)典的互相關(guān)時延算法進行了測距性能的對比,測試結(jié)果如表1所示。可以看出,在同等測試環(huán)境下,由于碼元長度的限制以及包絡(luò)提取、信道噪聲的影響,互相關(guān)算法在近距離時出現(xiàn)了較大的誤差,相比之下本文算法的精確度更高。

圖像 008.png

3 結(jié)論

  本文采用全數(shù)字化的五步算法實現(xiàn)對超聲波回波信號的處理,通過MATLAB與C程序輸出的對比與分析可知,設(shè)計方案合理,且便于對嵌入式主控的移植。相對于傳統(tǒng)的硬件模擬RC處理電路的設(shè)計,本文設(shè)計的方案具有更高的穩(wěn)定性與實時性,通過與互相關(guān)時延算法實驗比對,本文的測距算法方案具有更高的精度,且更適用于實際工程的應(yīng)用。

  參考文獻

  [1] 張紅蓮.基于單片機的超聲波測距系統(tǒng)的設(shè)計[J].可編程控制器與工廠自動化,2008,21(9):89-91.

  [2] 陳云超,程曉峰,郭峰.基于FPGA控制的超聲波測距系統(tǒng)設(shè)計[J].微型機與應(yīng)用,2012,31(1):90-92.

  [3] 祝琴.擴頻技術(shù)在超聲測距系統(tǒng)中的應(yīng)用研究[D].長沙:國防科技大學(xué)儀器學(xué)院,2006.

  [4] 潘仲明,簡盈,王躍科.基于兩步相關(guān)法的大量程超聲波測距技術(shù)[J].電子測量與儀器學(xué)報,2006,20(5):73-76.

  [5] 陳先中,侯慶文,葉琳,等.超聲測距系統(tǒng)的高精度中心橢圓算法[J].北京科技大學(xué)學(xué)報,2007,29(11):1154-1157.

  [6] 陳上挺,謝文彬,游穎敏.基于STM8的紅外與超聲波測距儀設(shè)計[J].電子技術(shù)應(yīng)用,2011,37(9):32-34.

  [7] 趙海鳴,王紀嬋,劉軍,等.一種高精度超聲波測距系統(tǒng)的改進[J].電子技術(shù)應(yīng)用,2007,33(4):59-62.

  [8] 張禾,李俊蘭,葛亮,等.一種高精度超聲波測距系統(tǒng)的設(shè)計[J].自動化儀表,2012,33(2):62-64.

  


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。