《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > 基于FPGA的高精度超聲波測距系統(tǒng)的設(shè)計(jì)
基于FPGA的高精度超聲波測距系統(tǒng)的設(shè)計(jì)
來源:微型機(jī)與應(yīng)用2012年第17期
汪才杰,張大名,張米露
(黑龍江科技學(xué)院 電氣與信息工程學(xué)院,黑龍江 哈爾濱 150000)
摘要: 設(shè)計(jì)了一種基于FPGA的超聲波測距模塊。在時(shí)序和信號處理方面,采用Cyclone II系列EP2C5T144C8芯片,通過設(shè)計(jì)時(shí)序發(fā)生器、高速計(jì)數(shù)、回波識別和可變門檻控制等邏輯電路模塊可快速有序地對信號進(jìn)行處理。在聲速方面,加入了溫度補(bǔ)償模塊,避免使用固定的聲速值所引入的偏差,從而提高系統(tǒng)精度。該系統(tǒng)具有可靠性高、集成度高和響應(yīng)速度快等特點(diǎn),實(shí)驗(yàn)表明,在距障礙物600 mm~3 600 mm時(shí),相對誤差在0.3%以內(nèi),測量精度得到很大提高。
Abstract:
Key words :

摘  要: 設(shè)計(jì)了一種基于FPGA超聲波測距模塊。在時(shí)序和信號處理方面,采用Cyclone II系列EP2C5T144C8芯片,通過設(shè)計(jì)時(shí)序發(fā)生器、高速計(jì)數(shù)、回波識別和可變門檻控制等邏輯電路模塊可快速有序地對信號進(jìn)行處理。在聲速方面,加入了溫度補(bǔ)償模塊,避免使用固定的聲速值所引入的偏差,從而提高系統(tǒng)精度。該系統(tǒng)具有可靠性高、集成度高和響應(yīng)速度快等特點(diǎn),實(shí)驗(yàn)表明,在距障礙物600 mm~3 600 mm時(shí),相對誤差在0.3%以內(nèi),測量精度得到很大提高。
關(guān)鍵詞: 超聲波測距;FPGA;溫度補(bǔ)償;DS18B20;回波識別

 超聲波測距是一種非接觸式測量技術(shù),具有定向性好以及對色彩、光照度、外界光線和電磁場不敏感的優(yōu)點(diǎn),當(dāng)被測物處于黑暗、有灰塵或煙霧、強(qiáng)電磁干擾及有毒等惡劣的環(huán)境時(shí),超聲波有很強(qiáng)的適應(yīng)性。因此超聲波傳感器廣泛用于工業(yè)測量、安全預(yù)警、車輛避障、自動導(dǎo)航以及現(xiàn)場機(jī)器人等相關(guān)領(lǐng)域。
 目前絕大多數(shù)超聲波測距系統(tǒng)都是以單片機(jī)作為信號發(fā)生和控制器,其測量精度嚴(yán)重受限于單片機(jī)的晶振頻率(1.2 MHz~24 MHz),往往難以令人滿意。而且用單片機(jī)控制的測距系統(tǒng)需要輔助設(shè)計(jì)較多的由分立元件組成的外部模擬電路,故其抗干擾性能也相對較差。FPGA作為一種高密度可編程器件,其內(nèi)部可以集成較大規(guī)模的邏輯單元,適用于時(shí)序、組合等各種邏輯電路應(yīng)用場合,具有運(yùn)行速度快(100 MHz以上)、內(nèi)部資源豐富等特點(diǎn)[2],為開發(fā)高精確度的超聲測距系統(tǒng)提供了新的設(shè)計(jì)方案。
 為此,本文設(shè)計(jì)了一種基于FPGA的超聲波測距系統(tǒng),有效提升了系統(tǒng)整體性能。
1 超聲波測距原理
 目前,超聲波傳感器的種類有很多,一般采用壓電式超聲波傳感器。超聲波測距原理如圖1所示。超聲波信號由超聲波發(fā)射探頭發(fā)出的同時(shí),計(jì)數(shù)器開始計(jì)數(shù),超聲波在傳輸過程中遇到障礙物會反射回來(稱為回波),在超聲波接收探頭收到回波的同時(shí),計(jì)數(shù)器停止計(jì)數(shù)。由速度和時(shí)間即可得到障礙物與測距裝置之間的距離:
 S≈L=V×t/2(1)
 其中,S為障礙物與測距裝置之間的距離,V為超聲波的傳播速度,t為計(jì)數(shù)器測得時(shí)間。

2 測距系統(tǒng)與硬件電路
 本超聲波測距系統(tǒng)整體結(jié)構(gòu)如圖2所示,包括發(fā)射模塊、接收模塊、顯示模塊、溫度補(bǔ)償模塊和FPGA設(shè)計(jì)模塊等。

 CX20106A的2引腳與GND之間連接RC串聯(lián)網(wǎng)絡(luò),改變它們的數(shù)值便能改變芯片內(nèi)部前置放大器的增益和頻率特性。增大電阻R或是減小電容C,都將使負(fù)反饋量增大,放大倍數(shù)下降;反之則放大倍數(shù)增大。這樣便可以調(diào)節(jié)超聲波接收探頭R的接收靈敏度。但電容的改變會影響頻率特性。
CX20106A的5引腳與電源端VCC接入一個(gè)電阻,用來設(shè)置其內(nèi)部帶通濾波器的中心頻率f0。當(dāng)R6阻值越大時(shí),濾波器的中心頻率越低。
 CX20106A的7引腳的輸出方式為集電極開路,因此該引腳必須接上一個(gè)上拉電阻到電源端,沒有接收到超聲波回波信號時(shí),該端輸出為高電平,當(dāng)有回波信號進(jìn)入時(shí),該引腳則會跳變?yōu)榈碗娖健?br />
3 FPGA邏輯電路設(shè)計(jì)
 在測距系統(tǒng)中,F(xiàn)PGA設(shè)計(jì)主要的功能模塊有:時(shí)序發(fā)生電路模塊、回波識別模塊、檢波模塊、可變門檻控制模塊、高速計(jì)數(shù)器模塊、溫度補(bǔ)償計(jì)算模塊、距離計(jì)算模塊、顯示控制模塊和一些輔助模塊。在此,F(xiàn)PGA主要完成了產(chǎn)生超聲波驅(qū)動信號、檢波、計(jì)時(shí)、溫度補(bǔ)償計(jì)算、距離計(jì)算和抗干擾等任務(wù)。
時(shí)序發(fā)生器是FPGA和整個(gè)系統(tǒng)按照設(shè)定的時(shí)序正常工作的基礎(chǔ)。主要為FPGA、超聲波驅(qū)動控制信號、接收使能信號和高速計(jì)數(shù)器等提供精確的時(shí)序與控制。在時(shí)序發(fā)生器的基礎(chǔ)上,通過將全局時(shí)鐘信號進(jìn)行分頻處理,得到符合驅(qū)動信號頻率的方波脈沖。
 檢波器接收電壓比較器的輸出信號進(jìn)行高速處理,并對回波到達(dá)時(shí)間精確鎖定,同時(shí)高速計(jì)數(shù)器會停止計(jì)數(shù)。
 高速計(jì)數(shù)器主要通過記錄計(jì)數(shù)脈沖的個(gè)數(shù)來計(jì)算渡越時(shí)間。在驅(qū)動超聲波信號發(fā)出時(shí),高速計(jì)數(shù)器開始計(jì)數(shù),信號經(jīng)功率放大再由發(fā)射探頭發(fā)出超聲波,遇到障礙物后返回,回波經(jīng)電壓比較器和檢波器后,由檢波器向高速計(jì)數(shù)器發(fā)出信號,高速計(jì)數(shù)器停止計(jì)數(shù)。由于高速計(jì)數(shù)器的計(jì)數(shù)頻率即為驅(qū)動超聲波信號的頻率,因此可以計(jì)算出渡越時(shí)間t=n/f,其中n為計(jì)數(shù)脈沖的個(gè)數(shù),f為驅(qū)動超聲波信號的頻率。
門檻控制是指設(shè)定一個(gè)電壓門檻,在回波幅值高于此門檻的時(shí)候才有效??勺冮T檻控制模塊主要是為了接收回波并降低干擾。障礙物的遠(yuǎn)近不同,回波的強(qiáng)度亦有所不同,所以應(yīng)當(dāng)設(shè)置可變的門檻值。當(dāng)障礙物較遠(yuǎn)時(shí),采用低的門檻值;反之,采用較高的門檻值。絕大多數(shù)干擾信號的幅值較低,采用較高門檻就有較好的魯棒性,能有效降低外界的干擾。由于被測距離多分布于中等范圍,因此,在大部分時(shí)間內(nèi)可以采用較高門檻值,有效避開干擾信號。
 依據(jù)信號的強(qiáng)度來區(qū)分回波和干擾,而回波識別模塊是依據(jù)信號的持續(xù)時(shí)間和周期個(gè)數(shù)區(qū)分回波和干擾。由于超聲波發(fā)生器振子存在余振,余振波也會成為一種干擾,但余振和一般的干擾信號至多只有1~2個(gè)周期,而真實(shí)回波持續(xù)時(shí)間長一般會超過10個(gè)周期。所以設(shè)計(jì)回波模塊時(shí),如果周期超過一定數(shù)目,則認(rèn)為是真實(shí)回波,否則忽略對該信號的接收。這樣能進(jìn)一步減小干擾。
4 實(shí)驗(yàn)結(jié)果分析及總結(jié)

 


 為驗(yàn)證超聲波測距模塊的測量精度,在室內(nèi)(溫度為18.6℃)進(jìn)行了實(shí)際測量實(shí)驗(yàn),其中測量距離由鋼質(zhì)卷尺多次測量求平均值所得。數(shù)據(jù)如表1所示。

 從表1可以看出,距障礙物過近或較遠(yuǎn)時(shí),測量精度下降。因?yàn)樘鼤r(shí)接收和發(fā)射等電路的時(shí)延影響相對變大,而且發(fā)射信號必須有一個(gè)上升時(shí)間,當(dāng)障礙物距離太近時(shí)系統(tǒng)不能及時(shí)處理回波信號[6],所以測量誤差明顯增加。障礙物距離太遠(yuǎn)時(shí),回波信號微弱,混有大量的噪聲,對門檻判定造成很大的挑戰(zhàn)。分析表1中數(shù)據(jù)可知,在障礙物距離測距裝置600 mm~3 600 mm時(shí),可以達(dá)到較高精度,相對誤差范圍保持在0.3%以內(nèi),穩(wěn)定性也較高,可以滿足絕大多數(shù)實(shí)驗(yàn)的需求。
 表1中超聲波所測數(shù)據(jù)均大于尺測距離,而不是在尺測距離上下波動,原因可能是某部分電路存在極小的延時(shí),導(dǎo)致高速計(jì)數(shù)器計(jì)時(shí)時(shí)間比實(shí)際時(shí)間長。下一步可以考慮在分析大量測試數(shù)據(jù)后,在測試結(jié)果上再在加上一定的修正量,減小電路延時(shí)引入的偏差,進(jìn)一步提高系統(tǒng)精度。
 如需獲得更高的精度,可以提高超聲波頻率,但這是以犧牲測量范圍為代價(jià)的;同理,使用更低的超聲波頻率可使測距范圍增大,但測量精度會下降。可依據(jù)實(shí)際情況來選擇超聲波頻率。
 總體來看,本文提出的基于FPGA的超聲波測距系統(tǒng)很好地利用了超聲波檢測技術(shù)優(yōu)點(diǎn),充分發(fā)揮了FPGA的優(yōu)勢,采用多種措施來提高超聲波測距精度,具有良好的抗干擾性和穩(wěn)定性,且測量盲區(qū)小、精度高,滿足了大多數(shù)實(shí)驗(yàn)對障礙物測量的需要。若要求測量不同方向的障礙物,只需設(shè)計(jì)為多傳感系統(tǒng)即可,具有實(shí)際應(yīng)用價(jià)值。
參考文獻(xiàn)
[1] 吳超.基于FPGA的超聲波測距系統(tǒng)[D].武漢:武漢理工大學(xué),2009.
[2] 潘松,黃繼業(yè),陳龍.EDA技術(shù)與Verilog HDL[M].北京:清華大學(xué)出版社,2010.
[3] 英勇,王紀(jì)嬋,趙海鳴,等.基于單片機(jī)的高精度超聲波測距系統(tǒng)[J].儀表技術(shù)與傳感器,2007(3):66-68.
[4] 王紅云,姚志敏,王竹林,等.超聲波測距系統(tǒng)設(shè)計(jì)[J].儀表技術(shù),2010(11):47-49.
[5] 童亮.基于CAN總線的智能超聲波測距系統(tǒng)[J].儀表技術(shù)與傳感器,2007(12):34-36.
[6] 唐穎,張凡,郭勇.移動機(jī)器人的超聲波測距傳感器設(shè)計(jì)[J].傳感技術(shù)學(xué)報(bào),2010(11):1646-1649.
[7] KOVACHEV D M, GEORGIEVA N E. A mathematical modeling and FPGA-based digital receiver in a continuous wave Doppler radar[C]. 27th International Spring Seminar on Electronics Technology: Meeting of Challenges of Electronics Technology Progress, 2004(2):221-225.

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