新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于FPGA的超声波液体密度传感器的设计

基于FPGA的超声波液体密度传感器的设计

作者:时间:2010-01-26来源:网络收藏

  2.3 运算、补偿模块

  运算、补偿模块分为计算和补偿两个部分。其作用是根据计数器的计数结果和补偿电路对温度修正后的结果计算液体的密度。本中发射和接收探头之间的距离为2cm;声波在两探头之间传递的时间可由计数器的计数结果(cntvalue)得到,因为单位计数的时间是计数频率的倒数,所以有:

公式  (2-1)

  运算器结构如图3所示。输入c1和c2是计数值,经过并行乘法器运算后的结果送入并行除法器;因为压缩系数K是常数,但每一种液体的K都不相同,因此整个密度计需要有对液体进行选择的功能,图中的sel模块是实现这一功能的部分,输入信号用来选择待测液体,本中的密度计能够测量300种液体,因此选择信号为9位编码的二进制数,选择模块的实质是一个存储了各种液体压缩系数的存储器,根据选择信号寻找待测液体密度的系数,其结果也送入除法器。

运算

图3 运算、补偿模块结构

  图中的tem为温度补偿模块。温度对声速的影响很大,在液体中,温度每变化1℃将引起声速约为2%的变化,而在实际环境中,一般会有40℃以上的温度变化范围,由此造成的声速8%以上的变化就可能给实际测量引入8%以上的误差。在利用超声波声速对液体密度进行测量时,为了提高精度,势必就要对温度进行补偿[2]。

  2.4 控制和运算电路

  控制和运算电路的整体结构如图4所示。其中pulse为方脉冲产生模块;count为高速计数器;operate为运算和补偿模块;ADC为A/D转换控制模块。整个系统的工作过程为:pulse模块的使能端为高电平时,模块开始工作,产生方脉冲;因为计数器的使能端与pulse的使能端共用,所以计数器在产生方脉冲的同时开始计数;pulse 的输出pulse_out 经过处理后送入后续的模拟电路;计数器(count)在接收到rdreq端的高电平时停止计数,该信号来自于接收电路,此时计数结果送入运算补偿模块(operate)进行后续运算,同时,计数器的clr端清零,等待下一次计数;adc模块控制A/D转换器将温度补偿电路的信号转换成数字量并且送入到运算补偿模块的补偿部分进行查表运算。运算模块负责最后的运算输出。

基于FPGA的超声波液体密度传感器的设计

图4 控制、运算整体结构图



评论


相关推荐

技术专区

关闭