本实用新型涉及液体密度计技术领域,尤其涉及一种基于FPGA的超声波液体密度计。
背景技术:
随着测量技术的发展,对液体密度测算的需求越来越多。传统的测量技术已经不能满足需求。因此,超声波测量技术被越来越多的液体密度测量设备采用。传统的超声波液体密度计受限于专用芯片的功能与时钟频率,功能单一,测试精度较低,不能满足用户多样化的需求。而且伴随着用户需求多样性的日益增多,专用芯片灵活性较差的缺点愈发显露,增加了产品的成本和开发周期。
技术实现要素:
本实用新型的目的在于克服上述技术的不足,而提供一种基于FPGA的超声波液体密度计,简化结构,节省成本。
本实用新型为实现上述目的,采用以下技术方案:
一种基于FPGA的超声波液体密度计,其特征在于:包括FPGA芯片、超声波发射模块、超声波接收模块、超声波发射探头、超声波接收探头、温度传感器ADT7420以及上位机;
所述FPGA芯片的输出端通过所述超声波发射模块与所述超声波发射探头连接;
所述FPGA芯片的输入端通过所述超声波接收模块与所述超声波接收探头连接;
所述温度传感器ADT7420将测量的液体传送给所述FPGA芯片;
所述FPGA通过串行接口将液体密度信息传输给上位机,上位机显示液体密度。
优选地,所述FPGA芯片采用Xilinx公司的XC6VLX75T-FFG484。
优选地,所述FPGA芯片通过RS232接口与上位机连接。
优选地,所述FPGA芯片内部划分为锁相环电路、温度补偿电路、主控电路、脉冲发生电路、脉冲采集电路、RS232电路、运算电路、计数器电路以及I2C电路。
锁相环电路,输入20MHz时钟,输出80MHz的时钟。输出的时钟作为其它所有电路的主时钟。
I2C电路的输入信号是温度传感器ADT7420的输出,I2C电路的输出连接到温度补偿电路。
温度补偿电路的输入信号是I2C电路的输出,温度补偿电路的输出连接到主控电路。
脉冲发生电路的输入信号是主控电路的输出,脉冲发生电路的输出连接到超声波发射电路的输入。
脉冲采集电路的输入信号是超声波接收电路的输出,脉冲采集电路的输出连接到主控电路。
RS232电路的输入信号来自主控电路和上位机,RS232电路的输出连接到主控电路和上位机。
运算电路的输入、输出均连接到主控电路。
计数器电路的输入、输出均连接到主控电路。
本实用新型的有益效果是:相对于现有技术,通过调用FPGA芯片内的高速计数电路,可以在FPGA中实现传统分立器件才能实现的高速计数电路的各种功能。运行稳定、可靠、操作简单、维护方便,达到了设计要求。
附图说明
图1为本实用新型的硬件及主要信号线连接示意图;
图2为本实用新型中FPGA内部功能模块连接示意图;
图3为本实用新型中运算电路的电路图。
具体实施方式
下面结合附图及较佳实施例详细说明本实用新型的具体实施方式。如图1和图2和图3所示,一种基于FPGA的超声波液体密度计,包括:
1)晶振:对FPGA提供20MHz高精度低抖动的时钟信号;
2)FPGA:主要完成超声波液体密度计的计算功能;
3)上位机:主要完成超声波液体密度计的控制功能和人机交互功能;
4)超声波发射模块和超声波发射探头:主要完成超声波的发送功能;
5)超声波接收模块和超声波接收探头:主要完成超声波的接收功能;
6)ADT7420:主要完成温度采集功能。
所述FPGA芯片控制所述超声波发射模块通过超声波发射探头发射超声波,同时启动所述FPGA芯片内部的计数器开始计数;所述超声波接收模块通过超声波接收探头接收到超声波后,输出脉冲,由所述FPGA芯片接收;所述FPGA芯片通过计算超声波在液体中的传播时间并通过ADT7420测量的温度得出液体的密度;所述FPGA通过串行接口(RS232)将液体密度信息传输给上位机,上位机显示液体密度。
硬件及主要信号线连接示意图如图1所示。
FPGA内部功能模块连接示意图如图2所示。
锁相环电路,通过调用FPGA自带的锁相环IP核实现。输入20MHz时钟,输出80MHz钟。输出的时钟作为其它所有电路的主时钟。
I2C电路与温度传感器ADT7420的I2C接口按照I2C协议栈进行交互,读取ADT7420采集的环境温度,温度传递给温度补偿电路。
温度补偿电路接收I 2C电路接收的温度,按照每变化1摄氏度将影响超声波2%的传播速度进行温度补偿。
脉冲发生电路在接收主控电路的启动信号后产生400KHz的方波,激励超声波发射模块发射超声波。
脉冲采集电路通过四级D触发器消除异步信号的亚稳态干扰。当采集到第四个D触发器的输出为低电平,第三个D触发器为高电平时,判定采集到脉冲的上升沿并通知主控电路。
RS232电路与上位机进行交互。当上位机发出启动信号后,RS232电路解析上位机的命令并将启动信息传递给主控电路。
主控电路接收到上位机发出的启动信息后,启动脉冲发生电路并同时启动计数器电路。计数器电路调用FPGA内部的I P核实现,开始计数。当主控电路接收到脉冲采集电路的上升沿信号时停止计时器电路计数并读取当前计数值,计数值输出到运算电路并启动运算电路开始工作。
运算电路调用FPGA的乘法器和除法器实现,将计数值的平方除以液体的压缩系数和光速的乘积,最终得到液体的密度并反馈给主控电路。
主控电路接收液体密度的值并通过RS232电路发送给上位机,完成整个液体密度测定流程。
以上所述仅是本实用新型的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本实用新型原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本实用新型的保护范围。