基于FPGA的高精度超聲波溫度計設計
當前,許多溫度傳感器只能應用于傳統的測量場(chǎng)合,而不能應用于高科技領(lǐng)域。因此,各國專(zhuān)家都在有針對性地競爭開(kāi)發(fā)各種新型溫度傳感器以及特殊實(shí)用的溫度測量技術(shù)[1]。其中,超聲波溫度計作為當今新型溫度傳感器的一種,已經(jīng)成為新的有前景的測溫方法,并已經(jīng)應用于發(fā)電廠(chǎng)、垃圾焚燒爐、水泥回轉窯等工業(yè)過(guò)程的溫度測量和控制以及一些醫療領(lǐng)域中[2-4]。
1 超聲波溫度計設計方案
超聲波溫度計是以介質(zhì)本身作為敏感元件,當進(jìn)行溫度測量時(shí),通過(guò)測量超聲波在被測介質(zhì)中的傳播速度,即可間接測得被測介質(zhì)溫度。如圖1所示,其實(shí)現流程如下:
(1)FPGA通過(guò)控制信號發(fā)生器產(chǎn)生數字正弦波信號,經(jīng)D/A轉換及濾波、放大之后,驅動(dòng)超聲波換能器E1發(fā)出超聲波信號。
(2)FPGA通過(guò)控制A/D轉換器對換能器E2接收到的回波信號進(jìn)行高速采樣和存儲。
(3)將采集數據送到FPGA片上的NIOS II處理器進(jìn)行分析處理,利用細分算法得到超聲波信號的納秒級傳播時(shí)間
(4)根據溫度與波速的關(guān)系模型計算出當前溫度值,并實(shí)時(shí)顯示于LCD上。
2 FPGA數字邏輯設計
超聲波溫度計的設計核心主要體現在FPGA的設計上,根據設計需求,主要包括控制電路的數字邏輯設計和NIOS_II算法處理設計。如圖2所示的是FPGA信號控制電路與被其控制的相關(guān)模塊組合后綜合生成的RTL視圖。其實(shí)現的功能有:在開(kāi)始信號觸發(fā)后,在每個(gè)周期中,首先控制信號發(fā)生器產(chǎn)生正弦波,并同時(shí)開(kāi)始自動(dòng)采集并存儲回波數據;采集結束后輸出硬件測得的傳播時(shí)間,將采集數據交給NIOS_II處理器進(jìn)一步細分處理;在一個(gè)周期結束時(shí),初始化各模塊,然后再次啟動(dòng)各模塊工作。為驗證該部分程序的正確性,在ModleSim下進(jìn)行了仿真,驗證了設計的正確性,如圖3所示。
3 NIOS_II算法處理
在FPGA完成數據采集后,軟核NiosII處理器開(kāi)始對采集到的數據進(jìn)行有效的分析并處理,其目的是通過(guò)采集數據對FPGA測得的傳播時(shí)間進(jìn)行進(jìn)一步的細分,實(shí)現納秒級傳播時(shí)間的測量,然后通過(guò)時(shí)間與溫度的關(guān)系得到對應的溫度數值,并將結果顯示到LCD上或通過(guò)RS232輸出到PC機上。
如圖4所示,超聲波傳播時(shí)間由T1和T2兩部分組成,其中,T1的測量通過(guò)FPGA數字邏輯計時(shí)和回波信號的采集頻率精確計算得到,對于時(shí)間終點(diǎn)T2的測量設計采用了軟件細分插補算法,從而使整個(gè)傳播時(shí)間測量分辨率達到納秒級。設A/D的采樣頻率為FA/D,采樣周期為T(mén)A/D;從第一個(gè)采樣點(diǎn)到采樣點(diǎn)P之間的采樣數為N,對應的采樣值為V1,對應的時(shí)刻為T(mén)1;采樣點(diǎn)P+1對應的采樣值為V2,則超聲波的傳輸時(shí)間TZD為:
其傳播時(shí)間的分辨率主要取決與T2的細分插補算法,因此測量傳播時(shí)間的分辨率R為:
4 實(shí)現結果分析
設計測量的精度取決于傳播時(shí)間的測量,為此進(jìn)行了傳播時(shí)間的實(shí)際測量實(shí)驗,如圖5所示。從圖5(a)可以看到,傳播時(shí)間測量的平穩性,在連續測量過(guò)程中,只有少數數據隨機地產(chǎn)生了±1 ns的誤差;如圖5(b)所示,對測得的數據進(jìn)行了10次均值濾波,去除了測量過(guò)程中的部分誤差,使傳播時(shí)間的測量達到了0.2 ns ,進(jìn)一步驗證了設計的高精度測量。由此,超聲波傳播時(shí)間的高精度測量便可實(shí)現。因為經(jīng)分析要達到0.001 ℃的溫度分辨率測量,需要超聲波傳輸時(shí)間測量小于1.5 ns。而設計的超聲波傳播時(shí)間的測量重復性誤差小于1 ns,因此,所設計的超聲波溫度計能夠解決超聲波測溫技術(shù)在實(shí)際應用中的關(guān)鍵問(wèn)題[5],并可以實(shí)現分辨率小于0.001 ℃的精密溫度測量。
評論