数字滤波技术是指在软件中对采集到的数据进行电磁兼容消除干扰的处理。一般来说,除了在硬件中对信号采取
抗干扰措施之外,还要在软件中进行数字滤波的处理,以进一步消除附加在数据中的各式各样的干扰,使采集到的数据能够真实的反映现场的工艺实际情况。这里介绍的是可以用于
工控软件中的一般的数字滤波技术,能够满足一般的数据处理需要,更为复杂的数字滤波这里不作进一步的介绍。
从工业现场采集到的信号往往会在一定的范围内不断的波动,或者说有频率较高、能量不大的干扰叠加在信号上,这种情况往往出现在应用共控
板卡的场合,此时采集到的数据有效值的最后一位不停的波动,难以稳定。这种情况可以采取死区处理,把波停波动的值进行死区处理,只有当变化超出某值时才认为该值发生了变化。比如
编程时可以先对数据除以10,然后取整,去掉波动项。
公式为YK =(X1+X2+X3+…+XN)/N,在一个周期内的不同时间点取样,然后求其平均值,这种方法可以有效的消除周期性的干扰。同样,这种方法还可以推广成为连续几个周期进行平均。
这种方法的原理是将采集到的若干个周期的变量值进行排序,然后取排好顺序的值得中间的值,这种方法可以有效的防止受到突发性脉冲干扰的数据进入。在实际使用时,排序的周期的数量要选择适当,如果选择过小,可能起不到去除干扰的作用,选择的数量过大,会造成
采样数据的时延过大,造成系统性能变差。
公式为YK =QXK+(1-Q)YK-1 截止频率为f=K/2πT。这种滤波方式相当于使采集到的数据通过一次
低通滤波器。来自线现场的的往往是4---20mA信号,它的变化一般比较缓慢,而干扰一般带有突发性的特点,变化频率较高,而低通滤波器就可以滤除这种干扰,这就是低通滤波的原理。实际使用时要选择合理的Q值,过高过低都不能达到目的。
滑动滤波法是从一阶低通滤波法推广过来的,原理是信号不会出现突变,这种方法也有其局限性,所有的信号的突变都看作干扰。但这种方式可以应用在一些比较特殊的场合,使用时相应的
数据处理过程也要做变化,比如PID的参数。滑动滤波法的公式是:Yn=Q1Xn+Q2Xn-1+Q3Xn-2,其中Q1 + Q2+ Q3 =1且Q1 >Q2> Q3。