`

软件抗干扰经验之五:10种软件滤波方法

 
阅读更多

匠人博客网址:http://blog.ednchina.com/cxjr/

下面奉献——
匠人呕心沥血搜肠刮肚冥思苦想东拼西凑整理出来的10种软件滤波方法

1、限幅滤波法(又称程序判断滤波法)
A、方法:
根据经验判断,确定两次采样允许的最大偏差值(设为A)
每次检测到新值时判断:
如果本次值与上次值之差<=A,则本次值有效
如果本次值与上次值之差>A,则本次值无效,放弃本次值,用上次值代替本次值
B、优点:
能有效克服因偶然因素引起的脉冲干扰
C、缺点
无法抑制那种周期性的干扰
平滑度差

2、中位值滤波法
A、方法:
连续采样N次(N取奇数)
把N次采样值按大小排列
取中间值为本次有效值
B、优点:
能有效克服因偶然因素引起的波动干扰
对温度、液位的变化缓慢的被测参数有良好的滤波效果
C、缺点:
对流量、速度等快速变化的参数不宜

3、算术平均滤波法
A、方法:
连续取N个采样值进行算术平均运算
N值较大时:信号平滑度较高,但灵敏度较低
N值较小时:信号平滑度较低,但灵敏度较高
N值的选取:一般流量,N=12;压力:N=4
B、优点:
适用于对一般具有随机干扰的信号进行滤波
这样信号的特点是有一个平均值,信号在某一数值范围附近上下波动
C、缺点:
对于测量速度较慢或要求数据计算速度较快的实时控制不适用
比较浪费RAM

4、递推平均滤波法(又称滑动平均滤波法)
A、方法:
把连续取N个采样值看成一个队列
队列的长度固定为N
每次采样到一个新数据放入队尾,并扔掉原来队首的一次数据.(先进先出原则)
把队列中的N个数据进行算术平均运算,就可获得新的滤波结果
N值的选取:流量,N=12;压力:N=4;液面,N=4~12;温度,N=1~4
B、优点:
对周期性干扰有良好的抑制作用,平滑度高
适用于高频振荡的系统
C、缺点:
灵敏度低
对偶然出现的脉冲性干扰的抑制作用较差
不易消除由于脉冲干扰所引起的采样值偏差
不适用于脉冲干扰比较严重的场合
比较浪费RAM

5、中位值平均滤波法(又称防脉冲干扰平均滤波法)
A、方法:
相当于“中位值滤波法”+“算术平均滤波法”
连续采样N个数据,去掉一个最大值和一个最小值
然后计算N-2个数据的算术平均值
N值的选取:3~14
B、优点:
融合了两种滤波法的优点
对于偶然出现的脉冲性干扰,可消除由于脉冲干扰所引起的采样值偏差
C、缺点:
测量速度较慢,和算术平均滤波法一样
比较浪费RAM


6、限幅平均滤波法
A、方法:
相当于“限幅滤波法”+“递推平均滤波法”
每次采样到的新数据先进行限幅处理,
再送入队列进行递推平均滤波处理
B、优点:
融合了两种滤波法的优点
对于偶然出现的脉冲性干扰,可消除由于脉冲干扰所引起的采样值偏差
C、缺点:
比较浪费RAM

7、一阶滞后滤波法
A、方法:
取a=0~1
本次滤波结果=(1-a)*本次采样值+a*上次滤波结果
B、优点:
对周期性干扰具有良好的抑制作用
适用于波动频率较高的场合
C、缺点:
相位滞后,灵敏度低
滞后程度取决于a值大小
不能消除滤波频率高于采样频率的1/2的干扰信号

8、加权递推平均滤波法
A、方法:
是对递推平均滤波法的改进,即不同时刻的数据加以不同的权
通常是,越接近现时刻的数据,权取得越大。
给予新采样值的权系数越大,则灵敏度越高,但信号平滑度越低
B、优点:
适用于有较大纯滞后时间常数的对象
和采样周期较短的系统
C、缺点:
对于纯滞后时间常数较小,采样周期较长,变化缓慢的信号
不能迅速反应系统当前所受干扰的严重程度,滤波效果差

9、消抖滤波法
A、方法:
设置一个滤波计数器
将每次采样值与当前有效值比较:
如果采样值=当前有效值,则计数器清零
如果采样值<>当前有效值,则计数器+1,并判断计数器是否>=上限N(溢出)
如果计数器溢出,则将本次值替换当前有效值,并清计数器
B、优点:
对于变化缓慢的被测参数有较好的滤波效果,
可避免在临界值附近控制器的反复开/关跳动或显示器上数值抖动
C、缺点:
对于快速变化的参数不宜
如果在计数器溢出的那一次采样到的值恰好是干扰值,则会将干扰值当作有效值导入系统

10、限幅消抖滤波法
A、方法:
相当于“限幅滤波法”+“消抖滤波法”
先限幅,后消抖
B、优点:
继承了“限幅”和“消抖”的优点
改进了“消抖滤波法”中的某些缺陷,避免将干扰值导入系统
C、缺点:
对于快速变化的参数不宜

分享到:
评论

相关推荐

    51抗电磁干扰,软件滤波方法

    51抗电磁干扰,软件滤波方法,超实用,在工作中因为外围环境因素,单片机容易跑飞,本文介绍了10种软件处理方法,提高看干扰,抗电磁能力

    十种常用软件滤波方法

    10种常用软件滤波方法,消除毛刺提高接口抗干扰能力。

    用C语言编写多种软件滤波算法

    对信号进行采样后,除硬件采取抗干扰措施外,还要采取软件抗干扰措施,这10种滤波很实用。

    基于单片机控制系统的抗干扰设计资料.doc

    分析了单片机干扰的主要来源,并从硬件和软件抗干扰设计中总结了一些取得良好抗干扰性的方法。 关键词:单片机;抗干扰;屏蔽技术;数字滤波 基于单片机控制系统的抗干扰设计资料.doc 基于单片机控制系统的抗干扰...

    软件陷阱和软件开门的设计

    下面以MCS-51单片机系统为例,对微机系统软件抗干扰方法进行研 究。 1 软件抗干扰方法的研究 在工程实践中,软件抗干扰研究的内容主要是: 一、消除模拟输入信号的嗓声(如数 字滤波技术);二、程序运行...

    单片机软件滤波

    10种经典的单片机滤波程序 包括均值,滑动平均,高低通等等

    单片机软件抗干扰介绍

    这里所谓的软件抗干扰是针对以单片机为核心的应用系统而言的。根据单片机系统的特点,我们一般采用的方法有:数字滤波、软件陷阱、软件“看门狗”、指令冗余等等。

    单片机利用软件进行抗干扰的几种滤波方法

    本文介绍单片机抗干扰的几种滤波方法,希望对大家有所帮助。

    基于多域联合处理的MIMO抗干扰技术.pdf

    通过建立该系统软件平台,仿真验证系统对宽带干扰、部分频带干扰以及跟踪干扰的抗干扰性能,仿真结果证明该系统具有良好的抗干扰效果,获得跳频增益约10 dB,分集复用增益约18 dB,抗干扰性能得到明显提升。

    MCS-51单片机,软件抗干扰方法

    本文针对后者提出了几种有效的软件抗干扰方法。 (1) 指令冗余 CPU取指令过程是先取操作码,再取操作数。当PC受干扰出现错误,程序便脱离正常轨道“乱飞”,当乱飞到某双字节指令,若取指令时刻落在操作数上,误将...

    EDA/PLD中的CPLD在信号滤波和抗干扰中的应用

    摘 要: 滤波和抗干扰是任何智能仪器系统都必须考虑的问题。在传统的应用系统中,滤波部分往往要占用较多的软件资源和硬件资源。复杂可编程逻辑器件(CPLD)的出现,为解决这一问题开辟了新的途径,采用CPLD实现滤波是...

    单片机系统软件抗干扰方法的探讨

    本文针对后者提出了几种有效的软件抗干扰方法。  1.1 指令冗余  CPU取指令过程是先取操作码,再取操作数。当PC受干扰出现错误,程序便脱离正常轨道“乱飞”,当乱飞到某双字节指令,若取指令时刻落在操作数上,...

    利用CPLD实现数字滤波及抗干扰

    所谓数字滤波,就是通过一定的计算或判断程序来减少干扰信号在有用信号中的比重,故实际上它是一种软件滤波。硬件滤波具有效率高的优点,但要增加系统的投资和设备的体积,当干扰的性质改变时我们往往不得不重新搭接...

    基础电子中的单片机系统软件抗干扰方法的探讨

    本文针对后者提出了几种有效的软件抗干扰方法。  1.1 指令冗余  CPU取指令过程是先取操作码,再取操作数。当PC受干扰出现错误,程序便脱离正常轨道“乱飞”,当乱飞到某双字节指令,若取指令时刻落在操作数上,...

    单片机系统软件如何抗干扰的方法

    本文针对后者提出了几种有效的软件抗干扰方法。  1.1 指令冗余  CPU取指令过程是先取操作码,再取操作数。当PC受干扰出现错误,程序便脱离正常轨道“乱飞”,当乱飞到某双字节指令,若取指令时刻落在操作数上,...

    嵌入式系统/ARM技术中的基于微控制器的抗干扰软件编程的方法

    本文针对后者提出了几种有效的软件抗干扰方法。  在嵌入式微控制器内部,对于内部产生的电磁发射,采用软件措施的效果并不明显。因为发射主要是由CPU中的内部时钟和噪声引起,而且高速开关电流是由微控制器中的多种...

    心电检测系统中单片机的抗干扰设计.pdf

    指出了心电检测系统中单片机抗干扰的重要性,给出了该系统中单片机的硬件抗干扰和软件抗干扰措施,如电源抗干扰、滤波电路、数字滤

    单片机与DSP中的单片机系统软件如何抗干扰的方法

    本文针对后者提出了几种有效的软件抗干扰方法。  1.1 指令冗余  CPU取指令过程是先取操作码,再取操作数。当PC受干扰出现错误,程序便脱离正常轨道“乱飞”,当乱飞到某双字节指令,若取指令时刻落在操作数上,...

    矿用压力变送器抗干扰软件设计

    针对矿用压力变送器采集值易受环境影响而产生异常值,设计了一种抗干扰能力强的软件方案,介绍了软件设计流程。把采集到的压力信号转换为电信号,通过A/D采样电路,将采样模拟信号通过选定的定斜率直线分段分割,再通过...

    外部中断的按键,软件滤波实现方法

    本人刚毕业,原先在实验室也待了几年,搞点比赛什么的,所以现在也从事相关的一些电子工作,对于按键到是有一点心得。

Global site tag (gtag.js) - Google Analytics