本實(shí)用新型涉及液體密度計(jì)技術(shù)領(lǐng)域,尤其涉及一種基于FPGA的超聲波液體密度計(jì)。
背景技術(shù):
隨著測(cè)量技術(shù)的發(fā)展,對(duì)液體密度測(cè)算的需求越來(lái)越多。傳統(tǒng)的測(cè)量技術(shù)已經(jīng)不能滿足需求。因此,超聲波測(cè)量技術(shù)被越來(lái)越多的液體密度測(cè)量設(shè)備采用。傳統(tǒng)的超聲波液體密度計(jì)受限于專用芯片的功能與時(shí)鐘頻率,功能單一,測(cè)試精度較低,不能滿足用戶多樣化的需求。而且伴隨著用戶需求多樣性的日益增多,專用芯片靈活性較差的缺點(diǎn)愈發(fā)顯露,增加了產(chǎn)品的成本和開(kāi)發(fā)周期。
技術(shù)實(shí)現(xiàn)要素:
本實(shí)用新型的目的在于克服上述技術(shù)的不足,而提供一種基于FPGA的超聲波液體密度計(jì),簡(jiǎn)化結(jié)構(gòu),節(jié)省成本。
本實(shí)用新型為實(shí)現(xiàn)上述目的,采用以下技術(shù)方案:
一種基于FPGA的超聲波液體密度計(jì),其特征在于:包括FPGA芯片、超聲波發(fā)射模塊、超聲波接收模塊、超聲波發(fā)射探頭、超聲波接收探頭、溫度傳感器ADT7420以及上位機(jī);
所述FPGA芯片的輸出端通過(guò)所述超聲波發(fā)射模塊與所述超聲波發(fā)射探頭連接;
所述FPGA芯片的輸入端通過(guò)所述超聲波接收模塊與所述超聲波接收探頭連接;
所述溫度傳感器ADT7420將測(cè)量的液體傳送給所述FPGA芯片;
所述FPGA通過(guò)串行接口將液體密度信息傳輸給上位機(jī),上位機(jī)顯示液體密度。
優(yōu)選地,所述FPGA芯片采用Xilinx公司的XC6VLX75T-FFG484。
優(yōu)選地,所述FPGA芯片通過(guò)RS232接口與上位機(jī)連接。
優(yōu)選地,所述FPGA芯片內(nèi)部劃分為鎖相環(huán)電路、溫度補(bǔ)償電路、主控電路、脈沖發(fā)生電路、脈沖采集電路、RS232電路、運(yùn)算電路、計(jì)數(shù)器電路以及I2C電路。
鎖相環(huán)電路,輸入20MHz時(shí)鐘,輸出80MHz的時(shí)鐘。輸出的時(shí)鐘作為其它所有電路的主時(shí)鐘。
I2C電路的輸入信號(hào)是溫度傳感器ADT7420的輸出,I2C電路的輸出連接到溫度補(bǔ)償電路。
溫度補(bǔ)償電路的輸入信號(hào)是I2C電路的輸出,溫度補(bǔ)償電路的輸出連接到主控電路。
脈沖發(fā)生電路的輸入信號(hào)是主控電路的輸出,脈沖發(fā)生電路的輸出連接到超聲波發(fā)射電路的輸入。
脈沖采集電路的輸入信號(hào)是超聲波接收電路的輸出,脈沖采集電路的輸出連接到主控電路。
RS232電路的輸入信號(hào)來(lái)自主控電路和上位機(jī),RS232電路的輸出連接到主控電路和上位機(jī)。
運(yùn)算電路的輸入、輸出均連接到主控電路。
計(jì)數(shù)器電路的輸入、輸出均連接到主控電路。
本實(shí)用新型的有益效果是:相對(duì)于現(xiàn)有技術(shù),通過(guò)調(diào)用FPGA芯片內(nèi)的高速計(jì)數(shù)電路,可以在FPGA中實(shí)現(xiàn)傳統(tǒng)分立器件才能實(shí)現(xiàn)的高速計(jì)數(shù)電路的各種功能。運(yùn)行穩(wěn)定、可靠、操作簡(jiǎn)單、維護(hù)方便,達(dá)到了設(shè)計(jì)要求。
附圖說(shuō)明
圖1為本實(shí)用新型的硬件及主要信號(hào)線連接示意圖;
圖2為本實(shí)用新型中FPGA內(nèi)部功能模塊連接示意圖;
圖3為本實(shí)用新型中運(yùn)算電路的電路圖。
具體實(shí)施方式
下面結(jié)合附圖及較佳實(shí)施例詳細(xì)說(shuō)明本實(shí)用新型的具體實(shí)施方式。如圖1和圖2和圖3所示,一種基于FPGA的超聲波液體密度計(jì),包括:
1)晶振:對(duì)FPGA提供20MHz高精度低抖動(dòng)的時(shí)鐘信號(hào);
2)FPGA:主要完成超聲波液體密度計(jì)的計(jì)算功能;
3)上位機(jī):主要完成超聲波液體密度計(jì)的控制功能和人機(jī)交互功能;
4)超聲波發(fā)射模塊和超聲波發(fā)射探頭:主要完成超聲波的發(fā)送功能;
5)超聲波接收模塊和超聲波接收探頭:主要完成超聲波的接收功能;
6)ADT7420:主要完成溫度采集功能。
所述FPGA芯片控制所述超聲波發(fā)射模塊通過(guò)超聲波發(fā)射探頭發(fā)射超聲波,同時(shí)啟動(dòng)所述FPGA芯片內(nèi)部的計(jì)數(shù)器開(kāi)始計(jì)數(shù);所述超聲波接收模塊通過(guò)超聲波接收探頭接收到超聲波后,輸出脈沖,由所述FPGA芯片接收;所述FPGA芯片通過(guò)計(jì)算超聲波在液體中的傳播時(shí)間并通過(guò)ADT7420測(cè)量的溫度得出液體的密度;所述FPGA通過(guò)串行接口(RS232)將液體密度信息傳輸給上位機(jī),上位機(jī)顯示液體密度。
硬件及主要信號(hào)線連接示意圖如圖1所示。
FPGA內(nèi)部功能模塊連接示意圖如圖2所示。
鎖相環(huán)電路,通過(guò)調(diào)用FPGA自帶的鎖相環(huán)IP核實(shí)現(xiàn)。輸入20MHz時(shí)鐘,輸出80MHz鐘。輸出的時(shí)鐘作為其它所有電路的主時(shí)鐘。
I2C電路與溫度傳感器ADT7420的I2C接口按照I2C協(xié)議棧進(jìn)行交互,讀取ADT7420采集的環(huán)境溫度,溫度傳遞給溫度補(bǔ)償電路。
溫度補(bǔ)償電路接收I 2C電路接收的溫度,按照每變化1攝氏度將影響超聲波2%的傳播速度進(jìn)行溫度補(bǔ)償。
脈沖發(fā)生電路在接收主控電路的啟動(dòng)信號(hào)后產(chǎn)生400KHz的方波,激勵(lì)超聲波發(fā)射模塊發(fā)射超聲波。
脈沖采集電路通過(guò)四級(jí)D觸發(fā)器消除異步信號(hào)的亞穩(wěn)態(tài)干擾。當(dāng)采集到第四個(gè)D觸發(fā)器的輸出為低電平,第三個(gè)D觸發(fā)器為高電平時(shí),判定采集到脈沖的上升沿并通知主控電路。
RS232電路與上位機(jī)進(jìn)行交互。當(dāng)上位機(jī)發(fā)出啟動(dòng)信號(hào)后,RS232電路解析上位機(jī)的命令并將啟動(dòng)信息傳遞給主控電路。
主控電路接收到上位機(jī)發(fā)出的啟動(dòng)信息后,啟動(dòng)脈沖發(fā)生電路并同時(shí)啟動(dòng)計(jì)數(shù)器電路。計(jì)數(shù)器電路調(diào)用FPGA內(nèi)部的I P核實(shí)現(xiàn),開(kāi)始計(jì)數(shù)。當(dāng)主控電路接收到脈沖采集電路的上升沿信號(hào)時(shí)停止計(jì)時(shí)器電路計(jì)數(shù)并讀取當(dāng)前計(jì)數(shù)值,計(jì)數(shù)值輸出到運(yùn)算電路并啟動(dòng)運(yùn)算電路開(kāi)始工作。
運(yùn)算電路調(diào)用FPGA的乘法器和除法器實(shí)現(xiàn),將計(jì)數(shù)值的平方除以液體的壓縮系數(shù)和光速的乘積,最終得到液體的密度并反饋給主控電路。
主控電路接收液體密度的值并通過(guò)RS232電路發(fā)送給上位機(jī),完成整個(gè)液體密度測(cè)定流程。
以上所述僅是本實(shí)用新型的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在不脫離本實(shí)用新型原理的前提下,還可以做出若干改進(jìn)和潤(rùn)飾,這些改進(jìn)和潤(rùn)飾也應(yīng)視為本實(shí)用新型的保護(hù)范圍。