鄔文俊,陳澤遠(yuǎn),馬 丹,程 斌,王選擇,翟中生
(1.湖北工業(yè)大學(xué)機(jī)械工程學(xué)院,湖北武漢 430068;2.現(xiàn)代制造質(zhì)量工程湖北省重點實驗室,湖北武漢 430068)
超聲波測距成本低、結(jié)構(gòu)簡單、使用方便,且在空氣介質(zhì)中,光線、粉塵、煙霧、電磁干擾和有毒氣體幾乎對超聲波測距傳感器的性能沒有影響,因此在物位測量、定位[1-2]、汽車倒車防撞系統(tǒng)等領(lǐng)域應(yīng)用廣泛。
超聲波測距方法主要有相位檢測法[3-4]、時間互相關(guān)檢測法[5-6]和渡越時間法[7-8]。其中,相位檢測法檢測范圍有限;時間互相關(guān)檢測法運算復(fù)雜,不適用于實時的嵌入式系統(tǒng)。為此,本文采用常見的渡越時間法展開研究。渡越時間法通過檢測超聲波在空氣中傳播的時間而計算出發(fā)射端至接收端的距離。該方法提高距離測量精度的關(guān)鍵在于獲得超聲信號的準(zhǔn)確走時和被測環(huán)境聲速[5]。由于超聲換能器的機(jī)械慣性,其發(fā)射超聲波是逐步由小到大,首波信號的幅值很小,并且隨測量距離的變化而改變,因此,采用閾值判斷法很難確定首波時域值的大小。
為解決這個問題,已提出了許多解決的辦法,如新型的五步法[9],該方法采用一種新型的包絡(luò)檢測方法,易受噪聲干擾;超聲波到達(dá)時刻法[10]通過找超聲波形上升階段的穩(wěn)定特征點來實現(xiàn),但該特征點不具有唯一性;可變閾值鑒幅法[11-12]是使閾值隨射程時間的延長而呈指數(shù)形式遞減,但需要較復(fù)雜的接收電路。針對以上不足,本文提出一種新的測量方法,利用三段式正反向交替的瞬態(tài)脈沖激勵,采用數(shù)字解調(diào)法提取出采樣信號的包絡(luò)曲線,并準(zhǔn)確找到過渡谷點,根據(jù)過渡谷點采樣順序與實際距離之間的線性關(guān)系得出距離測量值,提高測量精度。
根據(jù)超聲波在空氣中的傳播特性,采用分體式的超聲測距探頭,設(shè)計超聲波測距系統(tǒng),系統(tǒng)框圖如圖1所示。
圖1 系統(tǒng)框圖
系統(tǒng)由STM32單片機(jī)、超聲波發(fā)射電路、超聲波接收電路、顯示模塊和上位機(jī)構(gòu)成。STM32單片機(jī)為整個系統(tǒng)的核心部件,通過DAC模塊輸出頻率為40 kHz的三段式正反向交替的瞬態(tài)脈沖激勵信號,該激勵信號加載在超聲發(fā)射電路,超聲發(fā)射器受激勵后發(fā)射40 kHz的超聲波信號。信號接收端的超聲換能器接收到超聲發(fā)射器產(chǎn)生的超聲波信號,并將其轉(zhuǎn)換為電信號,作為超聲測量信號。當(dāng)單片機(jī)產(chǎn)生激勵信號的同時,開啟ADC對接收信號進(jìn)行采樣;當(dāng)采樣完成后,對采樣信號進(jìn)行算法處理,得出實際測量距離值,將數(shù)據(jù)發(fā)送至上位機(jī),系統(tǒng)程序流程圖如圖2所示。
圖2 系統(tǒng)程序流程圖
三段式正反向交替的瞬態(tài)脈沖激勵原理是利用正反向脈沖交替激勵,使超聲發(fā)射器產(chǎn)生了一個先衰減后增強(qiáng)的振蕩信號,形成一個代表振蕩方向變化的過渡谷點??紤]到該谷點特征明顯,對此點位置的檢測誤差小。同時為了克服單方向脈沖激勵下的振蕩衰減慢的問題,采用三段式正反向交替激勵方式,即先正向再反向然后正向的激勵方式,保證超聲接收器下次測量前處于無振蕩狀態(tài)。
三段式正反向交替瞬態(tài)脈沖激勵的具體實施方式是利用STM32單片機(jī)的DAC模塊先發(fā)送n1(本測量系統(tǒng)取n1=3)個周期為T(T=25 μs)的脈沖,延時τ(取τ=T/2),再發(fā)送n2(本測量系統(tǒng)取n2=10)個周期為T的脈沖,再延時τ,最后發(fā)送n3(本測量系統(tǒng)取n3=6)個周期為T的脈沖,這些脈沖經(jīng)過激勵驅(qū)動電路放大后,按發(fā)送的順序依次被加載到超聲發(fā)射器的發(fā)射端,超聲發(fā)射器隨之發(fā)射超聲波信號,同一直線方向下的超聲波接收器接收到超聲波信號后將其轉(zhuǎn)換為電信號;其中第3次發(fā)送n3個激勵脈沖的目的是為了將前一次的振蕩能量抵消,使得超聲發(fā)射器在下一個激勵周期來臨時處于無振蕩狀態(tài),從而避免了對下一個激勵周期的影響。這里所選定的脈沖個數(shù)n1、n2、n3能夠保證包絡(luò)最大峰值出現(xiàn)在第2段激勵產(chǎn)生的包絡(luò)波上,它們之間應(yīng)滿足最基本的關(guān)系n2>n1、n2>n3。三段式正反交替的瞬態(tài)脈沖激勵示意圖如圖3所示,第1段與第3段與正向激勵同向,而第2段與正向激勵反向。
圖3 三段式正反交替脈沖激勵示意圖
根據(jù)采樣信號提取出距離信息,是超聲測量的關(guān)鍵。超聲信號的處理方法先要解決包絡(luò)曲線的提取,快速準(zhǔn)確地提取包絡(luò)曲線是衡量算法成功的關(guān)鍵。楊飛鵬[13]在其文獻(xiàn)中提到采用二次曲線擬合算法提取包絡(luò)曲線,該算法是先尋找包括峰值點在內(nèi)的前面8個極值點,然后代入待擬合的二次曲線方程中,最后求出各未知參數(shù)。該算法存在的主要問題是極值點的選取具有一定的隨機(jī)性,求出的二次曲線方程存在一定的誤差,所以包絡(luò)曲線的可靠性不強(qiáng)。本文結(jié)合童峰[14]給出的超聲接收信號的數(shù)學(xué)表達(dá)式,對采樣后的接收信號的數(shù)字量進(jìn)行逐步分段正弦擬合,提取每次正弦擬合曲線的幅值相位,基于此,本文設(shè)計了一種移動正弦擬合算法實現(xiàn)包絡(luò)曲線的提取。
移動正弦擬合算法提取包絡(luò)曲線的思路是:先對第1到nT個采樣點進(jìn)行第1次正弦擬合,nT為一個擬合周期點數(shù),提取第1次正弦擬合曲線的幅值,隨后對2到nT+1個采樣點進(jìn)行第2次正弦擬合,提取第2次正弦擬合曲線的幅值,依次類推,總共有N個采樣點,直至對N-nT+1到第N個采樣點進(jìn)行第N-nT+1次曲線擬合,提取第N-nT+1次正弦擬合曲線的幅值,最后由所提取的N-nT+1次正弦擬合曲線的幅值構(gòu)成一個集合M,該集合是超聲接收信號的包絡(luò)線。
移動正弦擬合的數(shù)據(jù)區(qū)間移動過程如圖4所示,求解移動數(shù)據(jù)點T(m)、T(m+1)、T(m+2)…對應(yīng)的正弦幅值,需要分別對區(qū)間m、m+1、m+2…內(nèi)的數(shù)據(jù)進(jìn)行正弦擬合。分析可以看出,移動過程中,擬合數(shù)據(jù)區(qū)間實際上只是首端去掉第一個值,結(jié)尾增加一個值,總數(shù)據(jù)量不變。可見移動擬合過程類似移動平均,上一個數(shù)據(jù)擬合區(qū)間與下一個數(shù)據(jù)擬合區(qū)間存在大量重復(fù)點數(shù)據(jù)的處理,因此,根據(jù)擬合算法的特點,對重復(fù)點的數(shù)據(jù)進(jìn)行適當(dāng)?shù)膮^(qū)分處理,利用遞推思路,可以有效降低擬合計算量,即可實現(xiàn)正弦擬合快速算法。
圖4 調(diào)幅信號移動正弦擬合
對原始采樣數(shù)據(jù)經(jīng)過移動正弦擬合算法處理后,得到超聲接收信號的包絡(luò)曲線,如圖5所示。從圖5可以看出,包絡(luò)線可以準(zhǔn)確地反映超聲接收信號各點處的幅值信息。在3種不同距離下過渡谷點的相對位置固定,干擾因素小,可以準(zhǔn)確反映出距離信息。
(b)
(c)圖5 3種不同距離包絡(luò)曲線提取圖
從實際分析及采樣圖中,可以看出過渡谷點處,包絡(luò)曲線先減后增處于轉(zhuǎn)折點,變化趨勢最明顯,受信號飽和影響最小,其唯一性也更優(yōu),所以本文將過渡谷點作為三段式正反交替激勵模式下的考察對象,即尋找距離l與過渡谷點的采樣順序之間存在的數(shù)學(xué)關(guān)系,最終將對距離的測量轉(zhuǎn)換為對過渡谷點的采樣順序的計算。
過渡谷點搜索包括搜索包絡(luò)峰值點和過渡谷點,搜索包絡(luò)峰值點表達(dá)式如下:
M(xm)=Max{M(xi)} (0
(1)
式中Max表示求區(qū)間內(nèi)的最大值;xm為包絡(luò)峰值點的橫坐標(biāo)。
找到峰值點后,在區(qū)間(x0-w,w)內(nèi)找最小值點即過渡谷點,搜索過渡谷點表達(dá)式如下:
M(xp)=Min{M(xi)} (x0-w
(2)
式中:Min表示求區(qū)間內(nèi)最小值;M為包絡(luò)解集;xi表示第i點采樣順序;x0為峰值點采樣順序;xp為過渡谷點采樣順序;w為區(qū)間長度。
圖6 搜索過渡谷點程序流程圖
過渡谷點搜索的程序流程圖如圖6所示,對于同一測量系統(tǒng),其中區(qū)間長度w是固定的經(jīng)驗值,可以通過多次實驗尋找,本測量系統(tǒng)中w=220,過渡谷點的搜索示意圖如圖7所示。圖7中,w=220。
圖7 過渡谷點的搜索示意圖
由于采樣時間間隔一定,所以超聲波的飛行時間與采樣順序之間是正比關(guān)系,再結(jié)合距離與飛行時間的線性關(guān)系可知,所測距離l與過渡谷點的采樣序列位置xp之間也存在線性關(guān)系。因此,根據(jù)待測距離組L={l1,l2,…,ln}和上述步驟計算出對應(yīng)的xp={xp1,xp2,…,xpn},以xp為自變量,l為因變量,應(yīng)用最小二乘法原理擬合出l與xp的數(shù)學(xué)關(guān)系表達(dá)式:
l=axp+b
(3)
對于任一待測距離l,運用文中方法求出其過渡谷點的采樣順序xp,然后將xp代入擬合的數(shù)學(xué)表達(dá)式中,即可求出待測距離l。
在50~800 mm范圍內(nèi),用16組標(biāo)定距離,測出每組標(biāo)定距離下過渡谷點對應(yīng)的采樣順序xp,得到的16組數(shù)據(jù)如表1所示。實驗溫度為15.8 ℃。
將表1中的16組數(shù)據(jù)作為樣本,以過渡谷點采樣順序xp為自變量,標(biāo)定距離l為因變量,運用最小二乘法進(jìn)行線性擬合,擬合的直線如圖8所示。擬合所
表1 距離標(biāo)定實驗數(shù)據(jù)
得的數(shù)學(xué)關(guān)系表達(dá)式為
l=0.396 5xp-110.146 1
(4)
式中距離單位為mm,為當(dāng)前所測距離下接收信號的過渡谷點對應(yīng)的采樣順序。
其中一次項前面的比例系數(shù)為0.396 5,表示相鄰兩個采樣點之間代表的距離為0.396 5 mm,而相鄰采樣點之間時間間隔為1.17 μs,所以當(dāng)前環(huán)境下理論聲速為339.86 m/s,按實驗過程中所測溫度為15.8 ℃,按聲速與溫度的關(guān)系,可以計算當(dāng)前聲速為340.88 m/s,考慮其他環(huán)境因素的影響,這與當(dāng)前理論聲速基本吻合。這也說明了三段式激勵模式的可行性。擬合式(2)作為當(dāng)前環(huán)境下,測量系統(tǒng)所測距離l與過渡谷點采樣順序之間的標(biāo)定數(shù)學(xué)關(guān)系,因此可將此標(biāo)定數(shù)學(xué)關(guān)系嵌入到STM32單片機(jī)程序中。按文中所提算法獲取過渡谷點采樣順序xp,單片機(jī)由標(biāo)定數(shù)學(xué)關(guān)系計算出當(dāng)前所測距離。
圖8 距離l與過渡谷點采樣順序xp擬合關(guān)系圖
按照上述方法,在0~50 mm范圍內(nèi),逐漸縮短測量距離,并將所測距離與米尺測量的距離進(jìn)行比對,發(fā)現(xiàn)當(dāng)距離小于3 mm時,運用上述標(biāo)定關(guān)系式測量出的距離值與米尺測量的距離值相差較大,所以此種激勵模式下,測量系統(tǒng)的最小測量距離為3 mm,所以本測量系統(tǒng)在三段式激勵模式下的測量范圍為3~800 mm。
將表1中過渡谷點的采樣順序xp對應(yīng)的16組數(shù)據(jù)代入擬合表達(dá)式中,可得到擬合情況下的距離值l′,記標(biāo)定距離為l,則距離誤差Δl=l-l′,將所得的16組距離誤差Δl繪制成曲線圖,如圖9所示。
圖9 距離誤差曲線圖
從圖9可以看出,測量系統(tǒng)的誤差波動趨勢是一致的,按照所提的標(biāo)準(zhǔn)差求解公式,求出16組距離誤差值的標(biāo)準(zhǔn)差δ=0.329 mm,按照3δ評定原則,可知測量系統(tǒng)的誤差為±3δ,即0.987 mm。所以此種激勵模式下的測量精度為0.987 mm,小于1 mm,達(dá)到了較高精度超聲測量的目的。
本文以渡越時間測距原理為基礎(chǔ),提出一種新的測距方法,采用三段式正反交替激勵模式,通過脈沖的交替激勵構(gòu)造出一個振動方向發(fā)生改變的特征點即過渡谷點,通過對超聲接收信號的處理可以看出,包絡(luò)曲線可以很好反映每點幅值信息,且過渡谷點處于包絡(luò)曲線先減后增變化趨勢最明顯處,其唯一性和確定性更好。根據(jù)過渡谷點采樣順序與實際距離值的線性關(guān)系得出距離測量值,結(jié)果表明采用本文提出的測量方法,測量距離在3~800 mm時測量精度優(yōu)于1 mm,整個測量系統(tǒng)的盲區(qū)小、測量精度高。