基于包絡(luò)擬合法的FPGA超聲測(cè)距系統(tǒng)設(shè)計(jì)
摘 要: 針對(duì)普通超聲測(cè)距系統(tǒng)精度低、速度慢的問(wèn)題,提出了一種全硬件實(shí)現(xiàn)的FPGA超聲測(cè)距系統(tǒng)。將最小二乘法的二次曲線擬合算法應(yīng)用于超聲回波包絡(luò)擬合,完成回波信號(hào)的數(shù)字信號(hào)處理和距離的測(cè)量。采用硬件描述語(yǔ)言在Altera公司的EP2C70F896C6上實(shí)現(xiàn),在4 m范圍內(nèi)測(cè)距誤差小于±1 mm。該系統(tǒng)具有精度高、運(yùn)算速度快的特點(diǎn),并具備很強(qiáng)的功能擴(kuò)展性,可擴(kuò)展到超聲探傷、超聲成像等領(lǐng)域。
關(guān)鍵詞: 超聲測(cè)距;包絡(luò)擬合;數(shù)字信號(hào)處理;FPGA
超聲測(cè)量是一種非接觸式的測(cè)量方法,具有成本低,對(duì)人體無(wú)害的特點(diǎn),廣泛應(yīng)用于現(xiàn)代工業(yè)、醫(yī)學(xué)、軍事、農(nóng)業(yè)等領(lǐng)域。隨著科技的進(jìn)步,超聲測(cè)距逐漸推廣到對(duì)精度、速度要求很高的場(chǎng)合,例如在精密液位測(cè)量、建筑工程測(cè)量中,需要達(dá)到毫米級(jí)的測(cè)量精度,否則會(huì)產(chǎn)生較大誤差;在機(jī)器人避障和定位、車輛自動(dòng)導(dǎo)航中,由于車體速度快,要求測(cè)量時(shí)間短,否則不能及時(shí)控制方向。
國(guó)內(nèi)已展開了對(duì)超聲波測(cè)距的研究,參考文獻(xiàn)[1]指出超聲測(cè)距的主要問(wèn)題是回波信號(hào)幅值隨傳播距離增大呈指數(shù)規(guī)律衰減,造成測(cè)距范圍有限和精度不高。參考文獻(xiàn)[2]提出雙比較器閾值檢測(cè)法,在2~4 m范圍內(nèi)誤差為±6 mm。參考文獻(xiàn)[3]使用LM567組成模擬檢波電路。但測(cè)量誤差只能保證在±2 cm之內(nèi)。參考文獻(xiàn)[4]提出了包絡(luò)峰值檢測(cè)法,系統(tǒng)的誤差為±4 mm。
針對(duì)以上問(wèn)題,本文將參考文獻(xiàn)[5]提出的二次曲線擬合算法應(yīng)用于超聲回波包絡(luò)擬合,設(shè)計(jì)了以FPGA為核心的全硬件超聲測(cè)距系統(tǒng)。在Altera公司EP2C70型FPGA組成的系統(tǒng)上完成了超聲測(cè)距系統(tǒng)測(cè)試,在4 m范圍內(nèi)測(cè)距誤差小于±1 mm。
2.1 模擬前端電路設(shè)計(jì)
系統(tǒng)采用ZT(R)40-16型分立式傳感器。超聲波發(fā)射電路選用MAX232芯片作為發(fā)射放大器件,接收電路選用集成運(yùn)放芯片OPA606組成放大電路。
2.2 FPGA數(shù)字電路設(shè)計(jì)
系統(tǒng)FPGA設(shè)計(jì)包含發(fā)射脈沖模塊、A/D(MAX120)驅(qū)動(dòng)模塊、測(cè)頻測(cè)溫模塊、FIR濾波模塊、RAM數(shù)據(jù)緩存模塊、包絡(luò)擬合模塊及顯示模塊。
2.2.1 FIR濾波模塊
設(shè)計(jì)了一個(gè)20階、帶通為30 kHz~50 kHz的濾波器。濾波后回波信號(hào)如圖2所示。
2.2.2 包絡(luò)擬合模塊