当前位置:首页 > 嵌入式 > 嵌入式教程
[导读]嵌入式测控系统中数字滤波算法的实现

  0  引言

  模拟信号都必须经过A/D转换才能被嵌入式控制器接收。但在干扰作用于模拟信号之后,其A/D转换结果往往会偏离真实值。因此,仅采样一次是无法确定该结果是否可信的,而必须多次采样,才能得到一个A/D转换的数据系列,然后通过某种处理,才能得到一个可信度较高的结果。这种从数据系列中提取逼近真值的软件算法,通常称为数字滤波算法。相对于硬件滤波,数字滤波的优越性在于其无需硬件且可靠性高,尤其对频率很高或很低的信号进行滤波。此外,由于对多输入通道可共用一个滤波程序,故可大大降低产品成本。

  1  嵌入式测控系统中常见的数字滤波算法

  1.1  限幅滤波

  首先根据被测对象确定相邻两次采样所允许的最大差值△Y,然后在每次采样后和上次有效采样值进行比较,如果变化幅度不超过△Y,则本次采样有效;否则,本次采样值被视为干扰而放弃,而以上次采样值为准。其原理可用如下公式表示:

  其中,yn为第n次采样值,yn-1为第(n-1)次采样值。

  实现上述过程的参考程序(返回有效的采样值)如下:

  限幅滤波主要用于处理变化比较缓慢的数据,如温度、湿度、液位等。该方法使用的关键是要选取合适的门限△Y。△Y通常可根据经验数据获得,必要时也可由实验得到。

  1.2中值滤波

  这种滤波方式一般对目标参数连续采样N次(N一般为奇数),然后把N次采样值进行排序,再取中间值作为有效值。对于变化很慢的参数,也可以增加采样次数。而对于变化较为剧烈的参数,此法不宜采用。其参考程序如下:

  1.3算术平均滤波

  该算法对目标参数先进行连续采样,然后求其算术平均值作为有效采样值。该算法适用于对具有随机干扰的信号进行滤波。这种信号的特点是有一个平均值。信号在某一数值附近上下波动。信号的平滑程度完全取决于采样次数N,采样次数越多,平滑效果越好,但系统的灵敏度也会下降。为方便求平均值,N一般取4、8、16之类的2的整数次幂,以便系统用移位法来代替除法。其参考程序如下:

  1.4去极值平均滤波

  算术平均滤波不能消除明显的脉冲干扰,而只是将其影响削弱。由于明显干扰会使采样值远离其真实值,因此可以比较容易地将其剔除,而不参加平均值计算,从而使平均滤波的输出值更接近真实值,这就是去极值算法,又称为防脉冲干扰平均值滤波算法。该方法的原理是连续采样N次,并将其累加求和,同时找出其中的最大值和最小值,再从累加和中减去最大值和最小值,再按N-2个采样值求平均,即可获得有效采样值。为方便求平均值,N-2应为2、4、8、16,故N常取4、6、10、18。其参考程序如下:

[!--empirenews.page--]

  1.5加权平均滤波

  算术平均滤波和去极值平均滤波均存在平滑性和灵敏性的矛盾。因为,采样次数太少,平滑效果差;采样次数太多,灵敏度下降,对参数的变化趋势不敏感。为协调两者的关系,可采用加权平均滤波。即对连续N次采样值分别乘上不同的加权系数之后再求累加和。加权系数一般先小后大,以突出后面若干采样的效果,来加强系统对参数变化趋势的辨识。各个加权系数均应是小于1的小数,且应满足总和等于1的约束条件。这样,加权运算之后的累加和即为有效采样值。为方便计算,可取各加权系数均为整数,且总和为256,加权运算之后的累加和再除以256后便是有效采样值。其参考程序如下:

 1.6滑动平均滤波

  以上介绍的各种平均滤波算法具有一个共同点,即每取得一个有效采样值都必须连续进行若干次采样,这些方法在采样速度较慢(如双积分型A/D转换)或目标参数变化较快时,系统的实时性往往不能得到保证。而滑动平均滤波算法只采样一次,它将这一次采样值和过去的若干次采样值一起求平均,然后所得到的有效采样值即可投入使用。这样,如果取N个采样值求平均,则RAM中必须开辟N个数据的暂存区。每新采集一个数据便存入暂存区,同时去掉一个最老的数据,以保持这N个数据始终是最近的数据。这种数据存放方式可以用环形队列数据结构来实现。其参考程序如下:

  1.7低通滤波

  将普通硬件RC低通滤波器的微分方程用差分方程来表示,便可用软件算法来模拟硬件滤波功能。经推导,对于低通滤波算法有:

  式中Xn为本次采样值;Yn-1为上次的滤波输出值;α为滤波系数,其值<<1;Yn为本次滤波输出值。这种算法对变化缓慢的物理量是很有效的。但应注意一点,它不能滤除高于二分之一采样频率的干扰信号。比如采样频率为2 Hz,则对1 Hz以上的干扰信号通常应配合硬件滤波电路来滤除。该方法的参考程序如下:

  2各种数字滤波方法对比

  数字滤波的方法多种多样,表1给出了几种数字滤波算法的优缺点和适用对象。

  3  结束语

  基于嵌入式测控系统的数字滤波方法多种多样,因此,在选择滤波方法时,首先要考虑微控制器的存储量、运算时间、运算能力以及实时性是否满足实际要求。然后再根据主要的干扰源(对系统的测试精度影响最大的干扰源)和测试对象的特点来选择合适的滤波方法。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

经过几十年发展,嵌入式技术已经用在了我们生活中的方方面面,但是嵌入式始终都带有小众,专业性强的属性,让很多非嵌入式领域的同学望而却步。近十几年的发展,物联网覆盖了越来越多领域,包括了家居,商业,工业,农业等领域,不仅吸引...

关键字: 嵌入式 物联网 技术

随着IT技术飞速发展,互联网已经进入了“物联网”时代。物联网中需要的大量设备不在依赖人与人之间的交互产生联系,更多通过协议、通信、程序设计等方式连接到一处。即 “物联网”的目的则是让所有的物品都具有计算机的智能但并不以通...

关键字: 嵌入式 物联网 计算机

最近看到APP上,给我推送了很多类似的回答,借此机会,也想着重新审视一下自己的学习历程,以及结合自身和大牛,分享一些学习经验,希望对大家有所启发和帮助。

关键字: APP 嵌入式 C语言

万物智联时代,嵌入式技术及其应用的形态将更加丰富和多元,同时也将日益呈现深度物理融合、混合架构共存、群体智能协同、网络安全攸关等诸多新的计算特性。显然,经典的嵌入式系统体系结构、软硬件技术和开发方法都已很难应对新趋势下的...

关键字: 嵌入式 物联网 计算机

物联网是新一代信息技术的重要组成部分,是互联网与嵌入式系统发展到高级阶段的融合。通用计算机经历了从智慧平台到互联网的独立发展道路;嵌入式系统则经历了智慧物联到局域智慧物联的独立发展道路。

关键字: 嵌入式 物联网 计算机

今天,小编将在这篇文章中为大家带来工控主板的有关报道,通过阅读这篇文章,大家可以对工控主板具备清晰的认识,主要内容如下。

关键字: 工控主板 嵌入式 主板

随着工业4.0、医疗电子、智能家居、物流管理和电力控制等快速的发展和推进,嵌入式系统利用自身的技术特点,逐渐成为众多行业的标配产品。嵌入式系统具有可控制、可编程、成本低等,它在未来的工业和生活中有着广阔的应用前景。在现在...

关键字: 嵌入式 物联网 人工智能

长久来看,嵌入式只会越来越火,随着人工智能时代的发展,嵌入式必定又将迎来一次浪潮和技术的巨大变革。人工智能越是想要表达智能水平,就越要依靠嵌入式技术,嵌入式技术将朝着自动化控制和人机交互发展。嵌入式因其体积小、可靠性高、...

关键字: 嵌入式 物联网 人工智能

嵌入式软件技术到目前为止己经在很多领域起到了中流砥柱的作用,例如在电子消费、移动通讯方面,这种技术为我国的很多行业提供了更多的可能性。未来,嵌入式软件技术会为人类做出更大的贡献。伴随着计算机技术与电子技术的成熟发展,电子...

关键字: 嵌入式 软件 人工智能

esim卡的全名为Embedded-SIM,意思就是嵌入式的SIM卡。esim卡的原理简单来说,就是将手机传统插入到手机里的SIM卡直接嵌入进设备芯片中,这样大家就不必再手动物理插入SIM卡,减少了麻烦的同时也降低了si...

关键字: 嵌入式 esim卡 手机

嵌入式教程

6897 篇文章

关注

发布文章

编辑精选

技术子站

关闭