《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 其他 > 業(yè)界動(dòng)態(tài) > 基于FPGA的超聲波液體密度傳感器

基于FPGA的超聲波液體密度傳感器

2008-08-22
作者:姚明林;陳先中

?

  0 引言

?

  液體密度是許多工業(yè)中的重要參數(shù),,它可以直接參與生產(chǎn)過(guò)程中的控制和決策,因此對(duì)液體密度進(jìn)行快速而準(zhǔn)確的在線檢測(cè)有著重要的意義,。尤其是在石油、化工,、食品,、醫(yī)藥等工業(yè)領(lǐng)域,對(duì)密度的測(cè)量直接關(guān)系到國(guó)民經(jīng)濟(jì)和消費(fèi)者的人身安全,。

?

  1 超聲波液體密度計(jì)" title="密度計(jì)">密度計(jì)的工作原理

?

  用超聲波來(lái)測(cè)量液體的密度有多種方法,,隨著電子技術(shù)的飛速發(fā)展,借助于聲速測(cè)量密度的方法得到了廣泛的應(yīng)用,。這是因?yàn)槌暡ㄔ谝后w中傳播時(shí),,其聲速與液體的密度之間遵從下面的關(guān)系式:

公式  (1-1)

?

  式中C是超聲波在液體中傳播的速度;ρ為液體的密度,;K為壓縮系數(shù)" title="壓縮系數(shù)">壓縮系數(shù),。對(duì)于特定的液體,其壓縮系數(shù)K是常數(shù),,只要測(cè)得超聲波在液體中的傳播速度,,就可以計(jì)算出液體的密度。而速度的測(cè)量則可由超聲波在液體中所經(jīng)過(guò)的聲程以及傳播時(shí)間所決定,。

?

  2. 基于FPGA的控制和運(yùn)算電路的設(shè)計(jì)

?

  由于FPGA芯片的頻率很高,,容易設(shè)計(jì)實(shí)現(xiàn)幾十兆甚至上百兆的時(shí)鐘電路,因此很適合于用來(lái)設(shè)計(jì)高速計(jì)時(shí)電路,。本設(shè)計(jì)中選用Altera公司的CycloneⅡ系列芯片,,該系列芯片的工作頻率可高達(dá)400MHz,足以滿足本設(shè)計(jì)的需要,。軟件開發(fā)平臺(tái)為QuartusⅡ,。電路(包括模擬、數(shù)字部分)的整體系統(tǒng)框圖如圖1所示。

?

系統(tǒng)電路原理圖

?

圖1 系統(tǒng)電路原理圖

  2.1方脈沖生成模塊

?

  方脈沖生成模塊的作用是產(chǎn)生一定頻率的方脈沖用以激勵(lì)發(fā)射探頭工作,。方脈沖頻率的選擇范圍應(yīng)該是探頭壓電晶片振動(dòng)頻率(本設(shè)計(jì)中為2MHz)的1/10,,因此選擇200KHz,其產(chǎn)生是由基于FPGA的方脈沖信號(hào)發(fā)生器來(lái)實(shí)現(xiàn)[1],。其外部引腳結(jié)構(gòu)如圖4所示,,圖中輸入信號(hào)" title="輸入信號(hào)">輸入信號(hào)為clk(時(shí)鐘) 和en(使能端) ,輸出信號(hào)為dout[7…0],。

?

  2.2 高速計(jì)數(shù)器" title="高速計(jì)數(shù)器">高速計(jì)數(shù)器的設(shè)計(jì)

?

  高速計(jì)數(shù)器的設(shè)計(jì)是實(shí)現(xiàn)精確測(cè)量時(shí)間的核心。本設(shè)計(jì)中,,為了獲得精確的計(jì)數(shù)頻率,,采用了QuartusⅡ中內(nèi)嵌的鎖相環(huán)" title="鎖相環(huán)">鎖相環(huán),外部的參考時(shí)鐘由16MHz的晶振提供,,鎖相環(huán)所采用的倍頻為6倍,,這樣就能獲得穩(wěn)定的96MHz的內(nèi)部時(shí)鐘。整體的原理圖結(jié)構(gòu)如圖2所示,。鎖相環(huán)(PLL3)的頻率輸出作為計(jì)數(shù)器的計(jì)數(shù)時(shí)鐘,,計(jì)數(shù)器(cnter)由四個(gè)十進(jìn)制計(jì)數(shù)器組成,內(nèi)部設(shè)有FIFO,,主要用于計(jì)數(shù)結(jié)果的讀取,,當(dāng)wrreq(寫允許)信號(hào)為高電平時(shí),將計(jì)數(shù)結(jié)果寫入FIFO,,F(xiàn)IFO的時(shí)鐘與計(jì)數(shù)器的時(shí)鐘同步,;當(dāng)接收電路的信號(hào)經(jīng)過(guò)光電耦合器到達(dá)rdreq(讀允許)端時(shí),該端電平變?yōu)楦唠娖?,同時(shí)wrreq為低電平,,此時(shí)計(jì)數(shù)結(jié)束,同時(shí)將計(jì)數(shù)結(jié)果送到輸出端,,輸出計(jì)數(shù)結(jié)果,。

?

高速計(jì)數(shù)器原理圖

?

圖2 高速計(jì)數(shù)器原理圖

?

  2.3 運(yùn)算、補(bǔ)償模塊

?

  運(yùn)算,、補(bǔ)償模塊分為計(jì)算和補(bǔ)償兩個(gè)部分,。其作用是根據(jù)計(jì)數(shù)器的計(jì)數(shù)結(jié)果和補(bǔ)償電路對(duì)溫度修正后的結(jié)果計(jì)算液體的密度。本設(shè)計(jì)中發(fā)射和接收探頭之間的距離為2cm,;聲波在兩探頭之間傳遞的時(shí)間可由計(jì)數(shù)器的計(jì)數(shù)結(jié)果(cntvalue)得到,,因?yàn)閱挝挥?jì)數(shù)的時(shí)間是計(jì)數(shù)頻率的倒數(shù),所以有:

公式  (2-1)

?

  運(yùn)算器結(jié)構(gòu)如圖3所示,。輸入c1和c2是計(jì)數(shù)值,,經(jīng)過(guò)并行乘法器運(yùn)算后的結(jié)果送入并行除法器;因?yàn)閴嚎s系數(shù)K是常數(shù),,但每一種液體的K都不相同,,因此整個(gè)密度計(jì)需要有對(duì)液體進(jìn)行選擇的功能,,圖中的sel模塊是實(shí)現(xiàn)這一功能的部分,輸入信號(hào)用來(lái)選擇待測(cè)液體,,本設(shè)計(jì)中的密度計(jì)能夠測(cè)量300種液體,,因此選擇信號(hào)為9位編碼的二進(jìn)制數(shù),選擇模塊的實(shí)質(zhì)是一個(gè)存儲(chǔ)了各種液體壓縮系數(shù)的存儲(chǔ)器,,根據(jù)選擇信號(hào)尋找待測(cè)液體密度的系數(shù),,其結(jié)果也送入除法器。

運(yùn)算

圖3 運(yùn)算,、補(bǔ)償模塊結(jié)構(gòu)

?

  圖中的tem為溫度補(bǔ)償模塊。溫度對(duì)聲速的影響很大,,在液體中,,溫度每變化1℃將引起聲速約為2%的變化,而在實(shí)際環(huán)境中,,一般會(huì)有40℃以上的溫度變化范圍,,由此造成的聲速8%以上的變化就可能給實(shí)際測(cè)量引入8%以上的誤差。在利用超聲波聲速對(duì)液體密度進(jìn)行測(cè)量時(shí),,為了提高精度,,勢(shì)必就要對(duì)溫度進(jìn)行補(bǔ)償[2]。

?

  2.4 控制和運(yùn)算電路

?

  控制和運(yùn)算電路的整體結(jié)構(gòu)如圖4所示,。其中pulse為方脈沖產(chǎn)生模塊,;count為高速計(jì)數(shù)器;operate為運(yùn)算和補(bǔ)償模塊,;ADC為A/D轉(zhuǎn)換控制模塊,。整個(gè)系統(tǒng)的工作過(guò)程為:pulse模塊的使能端為高電平時(shí),模塊開始工作,,產(chǎn)生方脈沖,;因?yàn)橛?jì)數(shù)器的使能端與pulse的使能端共用,所以計(jì)數(shù)器在產(chǎn)生方脈沖的同時(shí)開始計(jì)數(shù),;pulse 的輸出pulse_out 經(jīng)過(guò)處理后送入后續(xù)的模擬電路,;計(jì)數(shù)器(count)在接收到rdreq端的高電平時(shí)停止計(jì)數(shù),該信號(hào)來(lái)自于接收電路,,此時(shí)計(jì)數(shù)結(jié)果送入運(yùn)算補(bǔ)償模塊(operate)進(jìn)行后續(xù)運(yùn)算,,同時(shí),計(jì)數(shù)器的clr端清零,,等待下一次計(jì)數(shù),;adc模塊控制A/D轉(zhuǎn)換器將溫度補(bǔ)償電路的信號(hào)轉(zhuǎn)換成數(shù)字量并且送入到運(yùn)算補(bǔ)償模塊的補(bǔ)償部分進(jìn)行查表運(yùn)算。運(yùn)算模塊負(fù)責(zé)最后的運(yùn)算輸出。

?

控制,、運(yùn)算整體結(jié)構(gòu)圖

?

圖4 控制,、運(yùn)算整體結(jié)構(gòu)圖

?

  3. 結(jié)論

?

  實(shí)驗(yàn)在常溫(20℃)、常壓(1標(biāo)準(zhǔn)大氣壓)下進(jìn)行,,待測(cè)液體為常用的水,,其壓縮系數(shù)K=5×10-5/大氣壓。通過(guò)仿真(圖5)可以得到水的密度為1Kg/m3,。這與實(shí)際結(jié)果相同,。由于輸入信號(hào)多,這里只選擇了部分仿真信號(hào),。通過(guò)對(duì)時(shí)序的分析,,可以得到整個(gè)電路整體上的延時(shí)為230ns,可見,,系統(tǒng)地響應(yīng)速度很高。

系統(tǒng)仿真結(jié)果

圖5 系統(tǒng)仿真結(jié)果

?

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章,、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者,。如涉及作品內(nèi)容,、版權(quán)和其它問(wèn)題,請(qǐng)及時(shí)通過(guò)電子郵件或電話通知我們,,以便迅速采取適當(dāng)措施,,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118,;郵箱:aet@chinaaet.com,。