计算机系统应用教程网站

网站首页 > 技术文章 正文

一阶滤波_200 Smart

btikc 2025-01-05 15:59:58 技术文章 16 ℃ 0 评论

一阶滤波,又叫一阶低通滤波,是一个能够过滤掉高频信号使数据变平滑的算法。

公式为:Y(n)=k*X(n) +(1-k)*Y(n-1)

即:本次输出值 = 滤波系数 x 本次采样值 +(1 - 滤波系数)x 上次输出值

本次输出值是本次采样值和上次输出值的加权求和,且权重和为1。滤波系数k取值0-1,k越大,本次采样值的权重越大,本次输出值对本次采样值的变化就越灵敏。

基本程序:

不同k值的滤波结果:

可以看出,k值越大,滤波结果灵敏度越高,越不稳定。当然,以上只是对数据稳定波动情况下的分析,不具普遍性。

实际应用:

实际使用中,对于不同的数据变化趋势,需要取不同的滤波系数:

数据有偶然干扰时,k值取0,忽略干扰期间的采样值;

数据稳定波动时,k值取小,减小波动的权重,使滤波结果平滑稳定;

数据持续的真实地变化时,一方面,滤波结果要迅速趋近于新采样数据,且数据变化越快,趋近速度越快;另一方面,数据重新稳定时,滤波结果要迅速趋于稳定。

应用到程序中,主要就是判断采样数据是否持续地增加或减少:是的话,累计该持续性变化的频次,当该频次超过设定的阈值,加大滤波系数并重新累计该频次(特别地,当变化幅度超过设定的阈值1,加快频次的累计);否的话,设小滤波系数并复位频次。

变滤波系数的程序如下(未测试,水平有限仅供参考):

相关资料:【滤波器学习笔记】一阶RC低通滤波_Jim勉的博客-CSDN博客_一阶rc滤波

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表