查看: 3359|回复: 4

圆点博士小四轴之加速度滑动平均滤波

[复制链接]
  • TA的每日心情
    奋斗
    2013-7-4 23:49
  • 签到天数: 21 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    发表于 2014-6-24 20:38:03 | 显示全部楼层 |阅读模式
    分享到:
    圆点博士小四轴之加速度滑动平均滤波

    圆点博士小四轴之加速度滑动平均滤波:
    所谓滑动平均滤波就是开辟N个数据暂存区来存放获取的最新N个数据,然后对其进行平均。
    一种实现方法就是:
    s16 acc_x_data[10];
    s16 acc_data_index=0;
    s16 acc_data_x_sum=0;
    s16 bs004_acc_filter()
    {
       acc_x_data[acc_data_index]=mpu6050_acc_data;
       acc_data_index++;
       if(acc_data_index==10) acc_data_index=0;
       for(i=0;i<10;i++)  acc_data_x_sum+=acc_x_data;
       return acc_data_x_sum/10;
    }
    从上面的代码我们看到,每次滤波结果就是把10个数加起来,然后算平均。
    在数据暂存区,我们看到,
    首先,数据区保存了刚开始的0-9这10个数。所以前10次运行结果,数据区数据是:
    0 1 2 3 4 5 6 7 8 9
    第11次运行结果是:
    10 1 2 3 4 5 6 7 8 9
    第12次运行结果是
    10 11 2 3 4 5 6 7 8 9
    依次类推,我们可以按到数据区保存的总是最新的10个数据。

    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    2015-8-5 08:38
  • 签到天数: 12 天

    连续签到: 1 天

    [LV.3]偶尔看看II

    发表于 2014-8-6 23:14:39 | 显示全部楼层
    支持博士,多谢分享!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2015-8-17 12:50:20 | 显示全部楼层

    支持博士,多谢分享!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2015-8-31 09:14
  • 签到天数: 3 天

    连续签到: 1 天

    [LV.2]偶尔看看I

    发表于 2015-8-28 15:59:53 | 显示全部楼层
    不错,不错,新手来学习学习
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    难过
    2015-6-11 21:59
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    发表于 2015-12-29 15:24:55 | 显示全部楼层
    函数结束之后是不是要把sum清零,否则一直在累加,越加越大,变成积分的功能,就不是滤波了。。
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条



    手机版|小黑屋|与非网

    GMT+8, 2024-6-17 18:34 , Processed in 0.144654 second(s), 23 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.