DSP在HK-CMF科氏质量流量计中的应用
摘 要:介绍了将DSP用于HK-CMF科氏质量流量计信号处理、解算的全新的设计思路。利用高速并行A/D将信号完整取样,借助DSP芯片的较强运算能力对信号进行深入地分析与处理,精确计算两路信号的相位差,进而解算出流体的质量流量和密度,辅以单片机实现系统的控制与显示。文中给出了系统的硬件电路结构和关键软件的设计流程。实验结果表明:该系统有效提高了系统的零点稳定性和测量精度,缩短了系统的响应时间。
关键字:DSP HK-CMF科氏质量流量计 信号处理
HK-CMF科里奥利质量流量计(简称为质量流量计,即CMF)由传感器和二次仪表组成。其中,传感器敏感被测质量流量,输出与流量相关的振动信号;二次仪表根据传感器输出的振动信号确定被测流体的质量流量和密度。相对于其他质量流量测量方式或通过测量体积流量和密度来间接测量流体质量流量的方法,其具有许多突出优点:
① 测量范围大、精度高,一般CMF产品的量程比为10~100,典型流量测量精度为±0.2%R±零点稳定度,高者可达±0.1%R±零点稳定度,重复性一般为±(0.05%~0.1%);
② 测量管内无零部件,稳定性好,不会因管内零部件的磨损而降低测量精度,且可测量高粘度流体、含固体颗粒的流体;
③ 对流场不敏感,对被测流体的温度、压力、粘度等参数不敏感,受流场和流体参数的影响小;
④ 是一种多功能的测量仪表,可同时测量流体密度、两种液体组成的混合流体的比例等。
但由于其工作机理和传统信号处理方式的限制,目前此类流量计在现场应用中存在种种实际问题:
① 对环境噪声敏感,安装在现场的质量流量计会受到各种振动噪声的影响,传统利用模拟电路检测两路信号相位差的方法在实际应用中不能很好抑制这些噪声影响。
② 现场流体情况复杂,现有的流量计不能很好地对流体状态加以诊断。
③ 信号处理大多采用模拟电路将两路正弦信号的相位差转变为相应的电压信号,由积分式A/D实现信号的数字化转换,并由单片机对质量流量进行解算的原理。模拟电路稳定性较差,积分式A/D采样速度低等,因此在使用中存在着零点稳定性差,响应时间长,运算精度低等缺点。
本文介绍一种全新的以数字信号处理器(以下简称DSP)TMS320VC33为核心、高速高精度并行A/D为手段的高速信号处理系统,实时处理流量计中两个敏感元件输出的两路信号,辅以现代信号处理算法,精确计算两路信号的频率和相位差,从而得到被测流体的质量流量和密度等信息。而且利用DSP的强大运算能力,辅以人工智能算法对流量计实时进行检测和故障诊断,提高了HKC科氏质量流量计的使用可靠性和精度。
1 系统综述
该系统由激、拾振电路,信号放大滤波电路,A/D转换电路,信号处理电路,单片机,LCD显示电路,键盘输入电路,报警电路,通信电路(包括RS-232、485串口,4~20mA电流输出,1~5V电压输出和0~10kHz频率输出)以及相应的处理软件组成,其具体硬件框图如图1所示。
激、拾振电路由89C2051单片机、AD和DA及相应的控制电路组成,实现传感器的闭环自激振荡,自动跟踪传感器的一阶固有频率,并且保持传感器的振幅稳定。信号放大滤波电路完成对微弱信号的放大和带通滤波,为了减小此部分模拟电路对两路信号相位的影响,低通滤波的截止频率远远高于传感器的一阶固有频率,而高通滤波器的截止频率远远低于传感器的一阶固有频率。A/D转换电路由采样时钟控制电路、A/D转换芯片及数据锁存器组成。完成对信号的不间断采样和数据的传输处理。LCD显示电路由专门的单片机控制,完成实时数据的显示和各种诊断信息的报告显示。键盘输入完成对系统参数的设置、显示单位选择、时间校准等功能。报警电路由蜂鸣器及其控制电路组成,完成对各种异常情况的报警。通信电路用于与PC机的通信与控制,以及与其他智能仪表通信。系统软件分为单片机和DSP软件两类,单片机软件包括监控程序、系统白检程序、瞬时质量流量计算程序、流体密度计算程序、温度补偿程序、数据传输程序、LCD显示控制程序、键盘输入程序、通信程序等子程序。DSP软件包括监控程序、实时数据采集预处理程序、频率计算程序、相位差计算程序、累计量计算程序、系统故障诊断程序、数据传输程序。具体结构关系如图2所示。
2 系统硬件设计
2.1 信号放大滤波电路及A/D转换电路
信号放大滤波电路主要对闭环系统输出的微弱信号进行放大及滤波处理,满足后续处理电路对信号的要求。该电路采用低噪声放大器OPA604,辅以精密电阻和高精度电容,对闭环系统的拾振器拾取的两路振动信号进行幅度放大及低通滤波。为了减小滤波电路对两路信号相位的影响,该低通滤波器的截止频率远远高于信号频率。
A/D转换电路采用两片16位100kHz采样率的AD676进行模/数转换。该芯片内部集成了采样/保持电路,输出采用并行16位方式,片内具有输出锁存器,各逻辑控制和输出接口适合大部分微处理器,可以方便地实现与DSP的数据通信。两片AD676工作在连续采样模式,采样时钟由晶振经过分频后提供,两个由两片AD676产生的BUSY售信号经过或门后输出给DSP,产生INTO中断,由DSP实时将两路共32位数据采集到DSP的RAM中进行数据处理。
2.2 DSP及其控制电路
信号处理电路以TI公司的TMS320VC33-120浮点运算高速信号处理器为核心,辅以2Mbit Flash构成最小信号处理系统。由于TMS320VC33工作在3.3V,而A/D转换电路工作在5V电平,因此在地址、数据总线及控制信号都利用SN74LVTH16245作为平转换。TMS320VC33与两路AD676进行数据传输时采用中断方式,当两片AD676均采样完毕时,BUSY信号转变为低电平,向DSP申请INTO中断,DSP响应中断后利用地址译码选中AD676进行数据读取。两路信号的采样值在DSP中断服务程序中实现实时数字滤波处理,由DSP主程序完成两路信号相位差和频率的计算。
2.3 液晶显示及键盘输入电路
测量结果包括瞬时质量流量、累积质量、温度、瞬时体积流量、累积体积、密度、组分甲的百分含量,组分甲的密度要通过液晶实时显示给用户,而且用户设置的相关信息也要通过液晶显示。选用MGLS-19264作为测试系统的显示设备。结果的显示采用很友好的图形界面,使用者可以很方便地读取相关的测量和记录的信息。液晶显示器由单独的一颗8051单片机控制,实现实时测量结果的显示与处理,这也是模块化结构设计的一种体现。
为了提供用户一个良好的操作环境,方便用户对测量仪表的控制与管理,键盘设计中采用组合键的方式,在不同的选用模式下,每个键盘的功能不同,这样可以大大减少键盘的使用数量,简化了面板设计。
3 软件设计
软件设计中由于涉及到DSP和多个单片机的开发,因此程序结构有所差异,下文着重介绍DSP软件的结构、计算相位差和频率的计算方法。
3.1 DSP系统软件结构
DSP系统软件的程序流程如图3所示。
DSP系统主要由系统监控程序完成各组成部分的协调管理。监控程序主要完成对各个标志位的检查,判断各种状态是否有效,若为有效则调用相应的子程序完成指定功能。数据采集及预处理程序主要针对AD采样数据更新后对其进行读取、带通数字滤波及数据的存储。频率、相位差、累积量等计算程序主要负责对缓冲区内的数据进行相应算法的计算,完成对频率、相位差和累积量的解算。数据传输程序完成DSP与单片机的实时数据通信,当计算结果更新后,DSP将数据按指定地址写到相应的锁存器中,并向单片机申请中断,完成数据的传输。由于在此系统中,DSP与单片机的数据交换是单方向的,始终是DSP将计算结果传输给单片机,因此锁存器也是单方向。系统故障诊断程序完成系统各种故障信息的判断,如谐振管在测量过程中突然停止振动、出现较强的气液两项流等现象时,故障诊断程序会根据各种相关信息给以准确的判断,并将相应的判断信息通过数据传输程序传输给单片机进行相应的显示和报警处理。
3.2 频率和相位差算法
计算频率和相位差的算法采用过零点提取的办法来实现。虽然此种算法没有复杂的理论作为依据,但在此系统中也是比较有效而且代码效率较高的算法之一。
对于标准的正弦波y=Asint而言,过零点即y=0在一个周期[0,2π]中存在3个:t0=0,t1=π,t2=2π,则正弦波的频率为
这样只要利用算法提取正弦波的过零点信息,即可计算出正弦波的频率f。由于两路正弦信号进行同时采样,即时间轴是统一的,所以相位差也采用过零点的方法来进行计算,对于另一路正弦信号y′=A′sin(t+θ),则在t0′=-θ,t1′=π-θ,t2′=2π-θ三个点,y′=0,所以y和y′的相位差为Δφ=t0-t0′。
首先在计算前,将原始数据进行带通滤波处理(这项工作由数据采集及预处理程序完成),以滤除各种干扰信号对算法精度的影响。本设计采用8阶FIR带通滤波器,利用布莱克曼窗对原始信号进行处理,即利用8个存储单元存储原始数据,当采集的新数据读入DSP后,首先将8个存储单元中的第一个数据丢弃,然后将其他7个地址单元中的数据依次向前移动一个地址单元,然后将新数据存放到这8个存储单元的最后一个地址单元,紧接着对这8个数据进行滤波处理,结果存入指定的地址单元,以便计算频率和相位差使用。其次,计算两路信号的过零点,提取信号的频率和相位差信息。通过程序对滤波后的数据进行判断,寻找过零点的初步位置,即过零点一定在数据由正转为负或者是由负转为正的时刻之间。然后提取粗测过零点附近前后20个数据进行2次曲线拟合,利用牛顿法对拟合曲线进行方程求解,即可得出正弦信号的过零点。在利用过零点进行计算频率和相位差时,采用4个信号周期平均的方式,得到最后的频率和两路信号的相位差。
4 实验结果
利用HF33210A数字信号发生器给出正弦信号,同时输出到两路放大滤波电路中,由于两路输入信号来自同一个信号发生器的输入,所以理论的相位差为零。测量结果如表1所示。
表1 测量结果
输入信号频率/Hz |
计算的频率/Hz |
计算的相位差/μs |
70 |
70.012 |
5.023 |
80 |
79.994 |
4.634 |
90 |
90.008 |
4.012 |
100 |
100.023 |
3.571 |
110 |
109.994 |
3.022 |
120 |
119.988 |
2.612 |
从测量结果中可以看出,频率测量的最大相对误差为0.023%,满足预期的设计要求。零相位差的测量结果表明,由于信号放大部分存在有高通滤波器的影响,频率较低时,模拟电路本身造成了两路信号的相位差较大;而频率较高时,影响较小。
为了初步验证实验系统对相位差的测量,设计了一个简单的低通滤波电路(R=50kΩ,C=1μs),将一路信号经过此低通电路后,利用其产生一个微小的相移(Δφ=1.82378°)来模拟传感器在有流量时的输出信号,利用示波器初步检验电路的相位测量误差。实际的测量结果初步表明检测电路能够实现对相位差的高精度检测。为了达到实用化的目的,笔者正在利用实际的流量标定装置对此套测量系统进行全面的标定,进一步确定传感器参数。
5 结束语
将DSP和现代信号处理技术应用于HK-CMF科里奥利质量流量计中,充分利用了DSP强大的运算能力,实现了信号的带通滤波、频率、相位差及累积量的计算,并在测量精度和实时性方面超过以往的模拟系统。而且数字系统可以很好地抑制使用现场存在的流体、管道振动和其他各种干扰对测量精度的影响。下一步将针对实际样机进行测试研究。
- 上一篇:不同压力下零校准对科里奥利质量流量计测量结果的影响 2016/4/25
- 下一篇:水平放置的HK-CMF质量流量计中油水两相流滑脱特性研究 2016/4/14