Arduino跨平台开发——滤波通用库-一叶遮天的博客
Arduino跨平台开发——滤波通用库
此内容为付费资源,请付费后查看
会员专属资源
您暂无购买权限,请先开通会员
开通会员
付费资源

Arduino跨平台开发——滤波通用库

1、文件资料获取方式

开通【普通VIP会员】或【尊贵SVIP会员】后,在文章内容顶部点击【百度网盘】按钮即可自动跳转到下载页面

2、开发环境搭建方式

关于如何搭建ArduinoIDE/Platformio跨平台开发环境,请详看下面的文章:
自制Arduino Package离线安装,100%成功!
Arduino ESP32和ESP8266开发板安装教程
Arduino-VScode-Platformio离线安装,99%成功!

3、库文件添加方式

关于库文件如何添加到ArduinoIDE中使用,请详看下面的文章:
Arduino Library库文件安装教程

4、库功能

结合有效值滤波+限幅滤波+先进先出平均值滤波,对传感器批量化滤波处理,如温度、湿度、光照度、距离值、气压值、重量值等都可以采用这种滤波思路。
程序原理:
1、首先是有效值滤波:目的是去掉不合理的原始值。假设一个传感器有效值是100-300,如果读出来是小于100或者大于300,那么显然是有问题的,因此要直接舍弃。
2、然后是前后两次数值的变化幅度滤波:一般来说在100ms内,传感器的值不会发生显著变化。如果连续多次(如3次)则可以以当前读取的值作为新的值。
3、最后是先进先出的原则,进行取平均滤波。一般取5到10次。
注意事项:
1、本滤波方法没有采用递推平均滤波,也就是没有for,因此效率更高。
2、本程序没有在库里面实现滤波的采样时间,是因为在外部实现更加高效,比如超声波之类的,如果一直读取会影响程序效率。

5、使用示例

1、AVR平台

ArduinoUno开发板和电位器接线示意图:
图片[1]-Arduino跨平台开发——滤波通用库-一叶遮天的博客

2、ESP32平台

ESP32开发板和电位器接线示意图:
图片[2]-Arduino跨平台开发——滤波通用库-一叶遮天的博客

3、ESP8266平台

NodeMcu开发板和电位器接线示意图:
图片[3]-Arduino跨平台开发——滤波通用库-一叶遮天的博客

4、RP2040平台

树莓派Pico开发板和电位器接线示意图:
图片[4]-Arduino跨平台开发——滤波通用库-一叶遮天的博客

5、STM32平台

STM32F103C8T6开发板和电位器接线示意图:
图片[5]-Arduino跨平台开发——滤波通用库-一叶遮天的博客

6、库版本

  • v0.0

    1.第1版发布。

© 版权声明
THE END
喜欢就支持一下吧
分享