高h肉辣文公交车_色偷偷综合_99热国产这里只有精品9九_国产亚洲精品日韩香蕉网

首頁 >> 新聞中心 >>行業(yè)科技 >> 基于FPGA的高精度超聲波測距儀設(shè)計
详细内容

基于FPGA的高精度超聲波測距儀設(shè)計

       為了提高超聲波的測量精度,利用FPGA技術(shù)設(shè)計了一種高精度超聲波測距儀。采用Quartus II軟件在高密度可編程邏輯門陣列(FPGA)上設(shè)計了基于SoP C的硬件系統(tǒng)平臺,并采用nios II ED S開發(fā)軟件開發(fā)了測量儀的軟件系統(tǒng)。利用FPGA內(nèi)部的硬件資源,設(shè)計了高速超聲波控制器。溫度傳感器ds18b20用于測量環(huán)境溫度,并利用溫度校正超聲波的傳播速度。試驗表明,采用該方案設(shè)計的超聲波測距儀具有較高的測距精度,具有一定的實(shí)用推廣價值。

0引言

        超聲波測距儀是一種利用超聲波測量距離的非接觸式測距工具。由于超聲波具有定向性好、使用方便、成本低、抗干擾能力強(qiáng)等優(yōu)點(diǎn),所以超聲波測距儀在工業(yè)測量、車輛避障、安全警示、液位測量等方面都有應(yīng)用。機(jī)械內(nèi)部損傷檢測、車輛自動導(dǎo)航III和機(jī)器人等領(lǐng)域得到了廣泛應(yīng)用。然而,目前大多數(shù)超聲波測距儀一般采用MCS51單片機(jī)作為控制器,其測量精度受定時器時鐘頻率的限制,不能令人滿意。

       針對上述情況,本文利用大規(guī)模FPGA設(shè)計了一套基于SoPCtgj的嵌入式高精度超聲測距系統(tǒng),采用軟硬件協(xié)同設(shè)計方法,采用自定義IP核技術(shù)和溫度補(bǔ)償技術(shù)。該測試系統(tǒng)具有高可靠性、高集成度、快速響應(yīng)、高精度、低成本等特點(diǎn)。

1硬件系統(tǒng)設(shè)計

       在硬件系統(tǒng)中,測距儀采用高密度可編程邏輯門陣列(FPGA)作為硬件設(shè)計平臺,系統(tǒng)設(shè)計框圖如圖1所示。主要器件有Nios lI處理器、A Valon-m總線、JT AG控制器、U APPA控制器、EPCS控制器、超聲波控制器、LCD控制器、EPCS4存儲器、SD-R AM控制器、SRAM存儲器、LDAC顯示器、通用I/O口和H.C.SR04超聲波收發(fā)模塊。為了實(shí)現(xiàn)復(fù)雜的控制,在可編程邏輯門陣列(FPGA)中嵌入了32位Nios II處理器。N ios II處理器是era公司提供的32位軟核處理器。在系統(tǒng)設(shè)計中,設(shè)計者根據(jù)項目要求,將ios II軟核CPU免費(fèi)嵌入到A tera公司生產(chǎn)的FPG A中。SD RAM控制器控制外部SD RAM存儲核心芯片,用于存儲和存儲數(shù)據(jù)。JTA GUA RT控制器可以在線下載和調(diào)試程序。EPSC控制器控制EPSC存儲芯片,EPSC存儲芯片用于存儲FP A配置文件;液晶顯示控制器控制液晶顯示顯示測量數(shù)據(jù)。超聲波控制器是根據(jù)外接超聲波收發(fā)模塊的電氣特性設(shè)計的自定義控制器。控制器的輸出引腳與外部超聲波收發(fā)模塊連接,控制超聲波收發(fā)模塊進(jìn)行測距。溫度對超聲波的傳播速度有很大影響。該系統(tǒng)設(shè)計了溫度補(bǔ)償電路,提高了測量精度。系統(tǒng)通過PIO連接到DS18B20數(shù)字溫度傳感器。

2. 硬件系統(tǒng)設(shè)計

2.1超聲波控制器的設(shè)計

        超聲波控制器是本系統(tǒng)的核心模塊,其設(shè)計框圖如圖2所示。它主要由接口單元電路、寄存器組、倍頻器、計數(shù)器和狀態(tài)機(jī)組成。接口單元電路用于將Valon-M總線連接到超聲波控制器。因為接口單元內(nèi)有一個地解碼器,所以控制器中的所有寄存器都可以被Nios II通過地解碼器訪問。倍頻器的作用是將50兆赫茲系統(tǒng)時鐘的頻率翻倍到100兆赫茲,從而提高系統(tǒng)的測量精度。狀態(tài)機(jī)控制中各模塊的協(xié)調(diào)是通過產(chǎn)生各種定時信號來實(shí)現(xiàn)的。TR IG為超聲波收發(fā)模塊的觸發(fā)信號;EC H O為超聲反射接收和判斷的輸入信號;s T為計數(shù)器啟動信號,高電平計數(shù)器開始計數(shù);CLR是計數(shù)器清零信號。當(dāng)CLR高時,它將計數(shù)器值清除為零。H為計數(shù)器值,保存控制信號,H為高功率電平,計數(shù)器的電流值保存在計數(shù)器寄存器中。在超聲波控制器中,還定義了三個寄存器,并對其進(jìn)行了定義.

2. 雙狀態(tài)機(jī)模塊化設(shè)計

        狀態(tài)機(jī)模塊是超聲波控制器的關(guān)鍵模塊,其功能是產(chǎn)生各種定時控制。圖3是狀態(tài)機(jī)的狀態(tài)轉(zhuǎn)換圖,有五種狀態(tài):空閑、啟動、計數(shù)、數(shù)據(jù)保存和計數(shù)器清除。上電過程中,狀態(tài)機(jī)處于空閑狀態(tài)。一旦開始指令被寫入控制寄存器,狀態(tài)機(jī)就進(jìn)入啟動狀態(tài)。在啟動狀態(tài)下,狀態(tài)機(jī)一側(cè)對啟動寄存器進(jìn)行清零操作,另一側(cè)產(chǎn)生超聲波測距啟動信號TR IG,啟動超聲波測距模塊產(chǎn)生超聲波。完成這些任務(wù)后,狀態(tài)機(jī)進(jìn)入計數(shù)狀態(tài)。計數(shù)狀態(tài)下,計數(shù)器對100m hz時鐘進(jìn)行計數(shù)。當(dāng)超聲波收發(fā)模塊接收到障礙物反射回來的超聲波時,能能值降低,計數(shù)器停止計數(shù),狀態(tài)機(jī)進(jìn)入數(shù)據(jù)保存狀態(tài)。在數(shù)據(jù)保存狀態(tài)下,計數(shù)數(shù)據(jù)保存在計數(shù)寄存器中。保存數(shù)據(jù)后,狀態(tài)機(jī)進(jìn)入計數(shù)器數(shù)據(jù)零狀態(tài),此時將清除計數(shù)器中的值以準(zhǔn)備下一次計數(shù)。

2. 3硬件平臺設(shè)計

        超聲波測距儀的SoP C硬件設(shè)計采用Altera公司的SoP C B開發(fā)工具。SoP C B builder是一個功能強(qiáng)大的系統(tǒng)開發(fā)工具,它使嵌入式系統(tǒng)設(shè)計人員可以很容易地設(shè)計基于ios II處理器的片上系統(tǒng)。在SoP CBuilder的圖形用戶界面中,設(shè)計人員可以將SoP CBuilder庫中的功能模塊添加到系統(tǒng)中。SoPCBuilder還允許設(shè)計人員向SoPCBuilder庫添加用戶定義的邏輯單元。SoPC Builder開發(fā)工具定義的硬件系統(tǒng)如表2所示,其中uhrasonc為超聲波控制器和用戶定義的邏輯控制單元。

2.4溫度補(bǔ)償電路的設(shè)計

        超聲波的傳播速度極易受溫度的影響。超聲波在室溫下的傳播速度約為340 m/s,但當(dāng)溫度發(fā)生變化時,超聲波的傳播速度會發(fā)生變化,例如當(dāng)溫度升高1℃時,超聲波的傳播速度會增加0.6 m/s,因此在使用超聲波測量距離時,必須考慮溫度對超聲波傳播速度的影響。

db14645e-5061-4b25-bd98-3a4e15543dd0.png

表 2 硬件系統(tǒng)模塊的定義

      為了提高測量精度,本系統(tǒng)設(shè)計溫度補(bǔ)償電路。 本系統(tǒng)的溫度補(bǔ)償電路主要采用了DS18B20全數(shù)字溫度傳感器來測量環(huán)境溫度 ,再利用下式對超聲波傳播速度進(jìn)行溫度補(bǔ)償 。

c5bbd880-bd0b-44a1-b42e-0783b3219732.png

式中:為超聲補(bǔ)償后的傳播速度;T是實(shí)際溫度。

3.系統(tǒng)程序設(shè)計

      為了使測試儀正常工作,還需要設(shè)計系統(tǒng)的控制程序。系統(tǒng)程序采用Ahera公司的Nios lI EDS 8.0集成開發(fā)環(huán)境進(jìn)行開發(fā)。圖4是系統(tǒng)程序的算法流程圖。程序啟動后,ios II主程序?qū)ο到y(tǒng)的相關(guān)設(shè)備進(jìn)行初始化,如LCD屏幕初始化、溫度傳感器DS18B20初始化、串口初始化等。

系統(tǒng)初始化完成后,ios lI軟核CPU讀取DS18B20的溫度值,得到當(dāng)前測試環(huán)境的溫度值。讀取溫度后,向超聲波控制系統(tǒng)中的啟動寄存器發(fā)送啟動命令,啟動超聲波測距模塊移動距離,通過讀取狀態(tài)寄存器的值來了解控制器的工作狀態(tài)。如果控制器處于工作繁忙狀態(tài),控制器會延時一段時間,重新讀取狀態(tài)信息。如果已知控制器處于“空閑”工作狀態(tài),則讀取計數(shù)寄存器中的值,并根據(jù)公式(1)對超聲波的傳播速度進(jìn)行校正,然后用校正后的傳播速度計算距離并顯示距離。

4.檢查測試結(jié)果

       為了進(jìn)一步評估超聲波測距儀的精度,根據(jù)上述設(shè)計方法,利用高密度FPGA和超聲波收發(fā)模塊設(shè)計了測試樣機(jī),并對測試樣機(jī)的性能進(jìn)行了測試。FPG A采用Altera公司生產(chǎn)的EP 1C 6Q 240 C8,超聲波收發(fā)模塊采用HC。SR 04。表3給出了一組測試樣機(jī)的測試結(jié)果。從試驗結(jié)果可以看出,使用本試驗測量距離時,除測量近距離距離的匹配誤差誤差為2%外,測量中長距離距離的相對誤差均保持在1%以內(nèi)。該測試儀測量精度高。

ec9a6d8f-ae7b-40d3-8ebc-fcf09e407466.png

表3測試結(jié)果

5、總結(jié)

       超聲波測距儀是一種非接觸式距離測量工具,具有許多優(yōu)點(diǎn)。本文針對傳統(tǒng)單片機(jī)超聲測距儀測量誤差大的缺點(diǎn),采用軟硬件協(xié)同設(shè)計方法和用戶自定義IP核心技術(shù),設(shè)計了一套基于Nios II的高精度超聲測距系統(tǒng)。該系統(tǒng)具有可靠性高、集成度高、響應(yīng)速度快、精度高、成本低等優(yōu)點(diǎn)。

參 考 文 獻(xiàn)

[1] 汪才杰 ,張大名 ,張米露.基 于 FPG A 的高精度超聲波 測距 系統(tǒng)的設(shè)計『J].微型機(jī)與應(yīng)用 , 20 12 ,3 1(17 ) :25 —27 .
[2] 張攀 峰 ,王 玉萍 , 張健 ,等 .帶有溫度補(bǔ)償 的超聲波測距 儀的設(shè)計[J].計算機(jī)測量 與控制 ,20 12 ,2 0(6) : 17 17 —17 20.
[3]張全禹 ,蘇寶林 , 李懷亮 ,等 .基于 FP GA 的超聲 波測距 系統(tǒng)設(shè)計與實(shí)現(xiàn) [J].電子測試 ,20 14(2 2 ) : 164. 165 .
[4] 趙海 鳴 , 卜英勇 ,王 紀(jì)嬋.一種高精 度超聲 波測距 系統(tǒng) 的研制[JJ.礦業(yè)研究 與開發(fā) ,20 06 ,2 6 (3 ) :6 2 .6 5 .
[5] 張芬 , 董浩 斌 ,焦 彥斌 .基 于 C8 05 1F3 20 單 片機(jī) 的超 聲波測 距儀[J].儀表技術(shù)與傳感器 , 2009 (12 ) :3 5—3 7 .
[6] 樊紅 星 , 張小超 ,劉 磊 ,等.基于 FPGA 的 CM O S 線 陣圖像 傳感器 數(shù) 據(jù)采 集 系統(tǒng) 設(shè)計 【J】_現(xiàn) 代 電子 技術(shù) , 2015 , 38 (14) : 129—1 3 2 .
[7] 賈穎燾 ,顧 趙宇 ,傅其詳 , 等.基 于 FPG A 和 D SP 的雷達(dá)信 號脈沖壓縮[J]_現(xiàn)代 電子技 術(shù) ,20 15 , 38 (17 ) : 13—16.
[8] 陳鵬名 ,盧 振洋 , 劉嘉 ,等 .基于 FPG A 的圖像 與模擬信 號 同步采集系統(tǒng)[J].現(xiàn)代 電子技術(shù) ,20 15 , 38 (19 ) :7 9.8 2 .
[9] 代俊 鋒 , 穆欣.基于 SoPC 的伺 服控制器 的方 案研究 [J].現(xiàn)代 電子技術(shù) ,2 015 ,3 8(2 0) : 150. 15 3 .
[1O]趙 小強(qiáng) , 趙連 玉.超聲 波測距 系統(tǒng) 中的溫度 補(bǔ)償 [J】.組合機(jī) 床與 自動化加工技術(shù) , 2008 (12 ) :65—68 .



班寧產(chǎn)品匯總   



seo seo