【技术实现步骤摘要】
一种基于STM32的低功耗气体超声波流量计系统
本专利技术涉及流量测量领域,为一种气体超声流量计,特别是一种基于STM32的低功耗、单声道设计的气体超声波流量计,针对STM32系列芯片中的STM32L476芯片(以下简称STM32或者STM32芯片)内部的PWM模块输出的激励产生的超声回波信号,采用动态阈值与过零检测方法来确定回波信号特征点的气体超声流量计。
技术介绍
在一些小型气体贸易交接计量场合中,如城市燃气、地暖用气、小商户用气、煤改气用气等场合,国内多采用膜式燃气表进行交接计量。虽然膜式燃气表价格较低,但其仅能达到2级或3级测量精度,且量程比较窄;同时,测量精度会随着使用时间的增长而降低。为此,国外研制低功耗、单声道气体超声波流量计,以替代膜式燃气表,并在国内销售。而此类国产仪表不能达到相应的技术指标。小型气体贸易交接计量场合管道压力互不相同,一些为低压管道、一些为中高压管道。国内厂家生产的仪表多针对在低压或中压管道中气体的测量。单声道的超声换能器布局使得流量计只能通过提取一个声道的线速度来拟合管道横 ...
【技术保护点】
1.一种基于STM32的低功耗气体超声流量计的控制方法,其特征在于:由主监控程序和各个程序模块实现;所述主监控程序为总调度程序,所述各个程序模块为初始化模块、中断模块、激励产生模块、USART模块、激励和回波选通模块、ADC数据采集模块、算法模块;主监控程序通过调动各个程序模块实行所述低功耗气体超声流量计的各项功能;/n主监控程序的具体工作步骤如下:/n(1)电路系统初始化/n电路系统上电后,STM32芯片完成各个部分的初始化,包括系统时钟初始化、ADC初始化、GPIO初始化、USART初始化、激励产生模块初始化、仪表参数初始化,并且建立2个队列,每个队列由50个数据空位组 ...
【技术特征摘要】
1.一种基于STM32的低功耗气体超声流量计的控制方法,其特征在于:由主监控程序和各个程序模块实现;所述主监控程序为总调度程序,所述各个程序模块为初始化模块、中断模块、激励产生模块、USART模块、激励和回波选通模块、ADC数据采集模块、算法模块;主监控程序通过调动各个程序模块实行所述低功耗气体超声流量计的各项功能;
主监控程序的具体工作步骤如下:
(1)电路系统初始化
电路系统上电后,STM32芯片完成各个部分的初始化,包括系统时钟初始化、ADC初始化、GPIO初始化、USART初始化、激励产生模块初始化、仪表参数初始化,并且建立2个队列,每个队列由50个数据空位组成,用于存放2个换能器接收到的超声波的传播时间(以下简称传播时间);每当有一个新的传播时间数据进入时,每个队列首位的数据会被丢弃,新的传播时间数据加在队列尾部。在后面的测量过程中,将根据这2个队列的数据,实时计算出低功耗气体超声波流量计的顺流和逆流的平均传播时间;
(2)进入流量检测循环
主监控程序完成系统初始化后,便开始循环计算流量;低功耗气体超声波流量计共有2个换能器,分别为换能器A、换能器B,分别安装在管道的对侧;同时,将STM32芯片的4个GPIO引脚配置为普通I/O(输入/输出)口,分别定义为OC1、OC2和IC1、IC2;其中,OC1、OC2分别为换能器A、换能器B的发射激励选通引脚,IC1、IC2分别为换能器A、换能器B的接收回波选通引脚;开始时,系统选通OC1引脚和IC2引脚,换能器A发射激励信号,换能器B接收回波信号(A发B收);接着,换能器B发射激励信号,换能器A接收回波信号(B发A收);然后,上述过程不断循环,完成激励信号的发射和回波信号的接收;
(3)激励信号的发送与回波信号的采集
STM32芯片控制内部的PWM模块产生两路带死区的单极性PWM方波,并传输至MOSFET驱动电路、MOSFET升压电路进行电压放大并转换成双极性方波作为激励信号,再经过由STM32芯片控制的激励选通电路输出至直射式单声道结构的换能器A、或者换能器B;超声波经过一段渡越时间(传播时间)后,到达对应的接收换能器;由换能器B、或者换能器A接收,形成回波信号;相应换能器接收的回波信号先经过由STM32芯片控制的回波选通电路,再经过一级放大电路、带通滤波电路和二级放大电路进行放大和滤波,当程序中设置的延迟时间到达后,被STM32内部的12位ADC以5MHz的采样频率连续采集2048点,并存储到相应的寄存器中;
(4)调用算法处理数据,计算超声波传播时间
首先,在2048点数据中截取包括有用信号在内的1024点,具体实现方法为:首先寻找2048点数据中数值最大的点,以该点为基准,向前取511点数据,向后取512点数据,加上最大值点就是需要截取的1024点;若最大值点之前的数据点数少于511点,则截取2048点数据中的前1024点;若最大值点之后的数据点数小于512点,则截取2048点数据中的后1024点;截取完成后,对数据进行零相位滤波处理,然后,使用动态阈值与过零检测的数字信号处理方法来处理滤波后的数据,从而得到回波信号的特征点,进而计算出超声波的传播时间;
(5)计算瞬时流量
进行一次步骤(2)~(4)的循环,就可以得到一次超声波从一个换能器到另外一个换能器之间的传播时间;
在步骤(2)中切换不同的发射换能器和接收换能器,这样就可以依次测量出该声道顺流和逆流情况下超声波信号的传播时间;这样循环2次,就完成了单声道顺流和逆流传播时间的测量,并将这2个传播时间分别放入步骤(1)中所建立的2个队列中;
执行10次这样的测量,计算出单声道顺流和逆流的平均传播时间,并根据这个平均传播时间计算出瞬时流量;
瞬时流量的计算公式为:
式中,S2为缩径后流量管截面积;a为流量修正系数,其值与声道数、雷诺数、声道分布情况有关;D为流量管直径;L为声道长度;θ为流量管轴线与声道夹角;ts、tn、Δt分别为顺流传播时间、逆流传播时间以及两者的时间差;
(6)进入低功耗模式并计算累积流量
主程序计算得到瞬时流量后,并不直接更新液晶中的流量显示和脉冲上传频率,而是进入低功耗模式;在低功耗模式下,由于系统时钟控制的普通定时器和高级定时器是无法工作的;因此,选用实时时钟RTC对中断时间进行控制,其周期为1秒;系统进入中断服务程序后,首先读取此时主监控程序计算的瞬时流量值,并更新累积流量;同时,将瞬时流量值与脉冲当量相乘得到需要上传的脉冲个数,完成脉冲频率的更新;此外,采用累积上传脉冲和最佳分频系数判定的方法有效地解决了低功耗定时器时钟频率低而造成脉冲上传误差大的问题;定时器时间标志位用来控制液晶更新,即当定时器时间标志位为1时,更新一次液晶显示,并将定时器时间标志位置0,从而实现液晶1秒刷新1次。
2.根据权利要求1所述的一种基于STM32的低功耗气体超声流量计的控制方法,其特征在于:所述的动态阈值与过零检测的数字信号处理方法,具体实施方法是:
(1)采集各个流量下50组回波信号数据;
(2)将各流量下的回波信号数据先进行零相位滤波、归一化处理,以每组回波信号数据的最大值为基准,向前找出所有峰值点;
(3)选择在各流量下峰值点集的幅值区分度较大的区间来确定一条动态阈值线;
(4)找出0m3/h流量下第二个峰值点集中的幅值最大值点和0m3/h流量下第三个峰值点集中的幅值最小值点,并求出两点的中点;
(5)找出400m3/h流量下第二个峰值点集中的幅值最大值点和400m3/h流量下第三个峰值点集中的幅值最小值点,并求出两点的中点;
(6)通过两个中点确定一条直线,求得直线的方程为Y=Kx+b;
在得出了动态阈值线方程后,动态阈值与过零检测的信号处理方法确定特征点的具体实施方法是:
(1)对回波信号中有用信号的截取后,回波信号数据共有1024点,从第一点(x0,y0)开始,将该点的横坐标x0带入动态阈值线的方程式Y=Kx+...
【专利技术属性】
技术研发人员:徐科军,马杰,江圳,徐浩然,张伦,
申请(专利权)人:合肥工业大学,
类型:发明
国别省市:安徽;34
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。