您好,欢迎访问上海升隆电子科技有限公司网站!咨询热线:021-39152202 51078419

基于CORTEX-M3的超声波液体流量计的设计

时间:2017-04-14 15:17 来源:http://www.shslgs.com 点击数:

为解决工业生产中的液体流量计量问题,设计了一款基于 Cortex-M3 运算内核的 STM32F103 处理器的高精度超声波流量计,根据超声波流量测量原理设计了硬件电路,并通过使用高精度 TDC-GP22 时间数字转换芯片实现高精度的计时功能,提高了超声波时间测量的精确性。为降低系统噪声对测量结果的影响,在超声波流量计的软件设计中引入了卡尔曼滤波算法对噪声进行抑制,达到了实验要求。实验结果表明超声波流量计具有较高的测量精度,而且经济可靠,具有实用意义。

0.引言

液体流量测量在现代工业生产体系和日常生活中具有非常重要的地位,小到水表计费,大到石油运输、航天器燃料控制,都需要依靠液体流量的精确测量。现有的液体流量计根据不同的测量方式分为容积式、叶轮式、差压式、电磁式和超声波等不同的种类,其中超声波流量计是一种非接触式流量计,具有通用性好、安装维修方便和经济实用等优点。根据不同的测量原理,超声波流量计又可以分为时差法、多普勒法、波束偏移法等,时差法具有低功耗、低成本和高精度的特点,在纯净无杂质的液体流量测量中应用最为广泛。

 

为得到高精度的流量测量结果,本文基于以 ARM  Cor-tex-M3 为核心的 STM32F103 单片机设计了超声波流量计的硬件电路,并通过卡尔曼滤波算法降低测量噪声对流量计输出结果的影响,在软件上进一步提高超声波流量计的测量精度和稳定性。

 

1.时差法测量原理

 

超声波测量的时差法是利用液体流动对超声波在发射端和接收端传播时间的影响,计算液体流动速度的一种方法。超声波在液体中的传播速度与液体的流动速度有关,在同等条件下,当液体的流动速度在超声波传播方向的分量与超声波的传播方向一致时,超声波在液体中的传播速度增大,反之,则超声波在液体中的传播速度减小 [3]。利用超声波在液体流动的顺流方向和逆流方向的传播时间差,可以实现对液体流动速度测量。

 

超声波流量计的液体流速测量原理如图所示。

测量时,先由超声波探头发送超声波,接收,并记录超声波顺流传播时间 tup,然后由超声波探头发送超声波, A 接收,记录超声波逆流传播时间 tdown,根据 tup  tdown 计算液体在管道中的流速 vm,进而利用管道截面积可以求得流量 Q

 超人1.jpg

根据图所示,超声波在管道中的顺流传播时间和逆流传播时间为:


 超人2.jpg

2.硬件电路设计

 超人3.jpg

超声波流量计系统采用低功耗的 ARM 处理器作为控制计算核心,其硬件电路的总体结构方案框图如图所示。超声波流量计系统主要由具有 ARM Cortec-M3 运算内核的STM32F103 处理器、德国 ACAM 的高精度超低功耗超声波时间数字转换芯片 TDC-GP22、高效能收发一体超声波换能器、可编程增益电路和液晶显示电路以及接口电路组成。

2.1 ARM 处理器

STM32F103 单片机是意法半导体公司采用 ARM 公司的Cortex-M3 内核开发的 32 位单片机,Cortex-M3 内核专门设计于高性能低功耗和低成本应用的内核。STM32F103 的主频最高可以达到 72MHz,支持单周期乘法和硬件除法,片内存储空间最高可达 512Kb,并集成了 64Kb  SRAMSTM32F103同时具有睡眠、待机和停机等三种低功耗模式。

2.2 高精度时间数字转换芯片

STM32F103 具有较强的数据处理能力和较低的功耗,但其时钟分辨率最高为 1/72  s,而由式(3)可知  t  ns 级的数值,为了提高  t 的计算精度,在超声波流量计的硬件电路中采用 TDC-GP22 作为高精度计时模块,最高定时精度达到 22psTDC-GP22  TDC-GP21[6] 的升级产品,后者在超声波测量系统中得到广泛的应用。除了保持 TDC-GP21 的高精度计时性能外,TDC-GP22 还增加了三个重要的功能,即能够实现智能第一回波检测、第一脉冲宽度测量以及简化的多脉冲计算功能,自动处理计算个脉冲结果并给出平均值,从而大大降低了 STM32F103 的负载,达到了快速和节能的目的。

2.3 超声波收发电路设计

超声波流量计在检测过程中需要实现超声波的双向发送和接收,所以系统中选择收发一体的超声波环能器。系统中设计的换能器发射驱动电路采用由 TDC-GP22 芯片控制的方式,由TDC-GP22 芯片在初始化之后产生 1MHz 的矩形脉冲信号进行触发,在一次测量中,需要产生个脉冲信号对换能器进行驱动.

超声波的回波检测电路包括换能器的接收电路、前端放大电路、可编程增益放大电路和主放大电路组成。由于工业应用中管道的直径不同,超声波回波信号在不同介质中的衰减情况不同,换能器所能接收到的回波信号强度也有所不同,若声路太长或超声波衰减太大,可能造成回波信号幅值较弱,信噪比较小,影响测量结果。为了满足超声波流量计对不同管径和不同介质的流量测量,在硬件设计中选择了可编程增益的放大器环节,根据用户和现场的需求对回波信号的放大增益进行调整,增加流量测量的精确性。

由于时间数字转换芯片 TDC-GP22 可以实现回波信号的检测,主放大电路输出的回波信号直接连接到 TDC-GP22 的回波检测引脚。

2.4 液晶显示电路和接口电路

液晶显示电路采用的是段式的液晶显示屏,可以显示时间、流速、流量、电量以及运行时间等信息,同时可以显示超声波流量计的设计参数,如可编程增益放大器的放大倍数等.超声波流量计具有多种通信接口电路,系统包含 CAN 总线以及 RS485 通信接口,方便进行远程数据读取和建立分布式监控系统。除此之外,系统电路还继承了了 4-20mA 以及0-5V 的标准信号输出接口,灵活易用。

3.软件设计

超声波流量计的软件设计包括硬件电路和 TDC-GP22 的初始化、系统参数的读取、TDC-GP22 的控制与数据读取、测量结果的数字滤波、流速和流量的计算以及显示等。

 

3.1 主程序设计

超声波流量计的系统上电后,STM32F103 先进行初始化,配置寄存器和初始化 I/O 端口,然后读取存储器的设置参数,完成软件参数的初始化任务。完成后,控制器对 TDC-GP22进行初始化设置及时钟进行校准。在所有初始化程序完成后,STM32F103 开启按键中断和定时器中断响应功能,随后进入低功耗模式,等待唤醒信号。

超声波流量计系统在检测中处于运行状态,其它时间均处于低功耗模型,极大地降低了系统的功耗.

3.2定时器中断服务程序

超声波流量计主程序的任务是进行初始化设置和开启中断服务,流量测量和计算均在中断服务程序中完成。当测量周期到来时,定时器触发 STM32F103 的中断服务,将其从低功耗模式中唤醒进入到工作状态。

中断服务程序中,首先由 STM32F103  TDC-GP22 发送控制指令,发射超声波信号并开启 TDC-GP22 的时间测量功能,等待回波检测中断信号。在获得回波检测中断信号后,将TDC-GP22 的时间测量结果读取到 STM32F103 控制器进行处理,同理,进行逆流时间的测量。如果设置了多次测量,则需要循环计算直到完成测量次数再进行处理.

超声波流量计在工作中会受到外部和自身干扰因素的影响,测量结果会在一定程度上受到噪声影响,准确性受损,为进一步提高流速的测量精度,需要对测量结果进行滤波处理.所以在中断服务程序中,完成每次测量后需要经过卡尔曼滤波处理后才能获得最后结果,并在液晶显示屏中输出.

4.结语

本文基于 STM32F103 处理器设计了带有高精度时间数字转换芯片 TDC-GP22 的超声波流量计,将 ARM  Cortex-M3运算内核应用于超声波流量测量系统中。根据超声波测量液体流速的原理,设计了系统的超声波发射电路和回波信号接收电路,利用两个收发一体的超声波换能器实现超声波信号的顺流传播和逆流传播,并通过时间差计算液体流速,可行性高为降低测量噪声对测量结果的影响,在超声波流量计的软件设计中加入了卡尔曼滤波环节对测量结果进行滤波处理,降低了噪声的干扰,保证了测量结果的精度,具有实用意义