圆点博士小四轴之加速度滑动平均滤波
圆点博士小四轴之加速度滑动平均滤波圆点博士小四轴之加速度滑动平均滤波:所谓滑动平均滤波就是开辟N个数据暂存区来存放获取的最新N个数据,然后对其进行平均。 一种实现方法就是:s16 acc_x_data;s16 acc_data_index=0;s16 acc_data_x_sum=0;s16 bs004_acc_filter(){ acc_x_data=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个数据。
函数结束之后是不是要把sum清零,否则一直在累加,越加越大,变成积分的功能,就不是滤波了。。 不错,不错,新手来学习学习
支持博士,多谢分享! 支持博士,多谢分享!
页:
[1]