将涡轮流量计输入的一串数字序列通过一定的运算,转换成另一组数字序列的输出装置称为数字滤波器.在具体的程序设计中可以使用各种语言实现数字滤波器功能.以下是几种常用数字滤波子程序,这些子程序可作为一个模块,使用时直接调用即可.
(1)算术平均滤波法.该方法是连续采样N个值然后进行算术平均.在一般随机信号干扰的情况下,该方法比较有效.该随机信号的特点是在某一数值范围上下波动并且有一个平均值.使用该滤波法时,如果N值较大则信号的平滑度高但灵敏度低;如果N值较小则平滑度低但灵敏度高.应用时应该根据实际情况选取N以便使得节约时间和有较好滤波效果.对于一般流量测量,通常取N=12.
(2)从上面的分析可以知道,每一次计算需要测量N次.在实际当中如果对测量要求实时性很高则以上算术平均滤波法就难以取得理想的效果.下面介绍一种,只需测量一次就可以得到当前算术平均值的方法即递推平均滤波法.
递推平均滤波法是把N个测量数据看成一个长度为N的队列.每进行一次新的测量就将测量结果放入队尾并且丢掉原来队首的一次数据使得这样在队列中始终有N个最新的数据.在计算平均滤波值时只需要把队列中的N个数据进行平均就能够得到新的滤波值.该种形式的算法就称之为递推平均滤波法.
此方法可以较好的抑制周期性干扰并且具有平滑度高和灵敏度低的特性;但是此方法无法消除偶然出现的电脉冲性干扰.所以该方法适用于高频振荡系统,而不适用于脉冲干扰比较严重的场合.使用时流量的参数,通常取N为12.
在涡轮流量计脉冲干扰比较严重的情况下如果采用一般的平均值法则会将干扰“平均”到结果中去.所以一般平均值法不易消除由于脉冲干扰而引起的误差.为了避免错误的平均,可以采取先删掉N个数据中的可信度最低的最大值数据和最小值数据,再计算其余的(N-2)个数据的算术平均值.为了加快测量速度,一般N取4.
|