欲使用移动平均过滤加速计值,这是怎么办? 感谢

有帮助吗?

解决方案

一个简单的,单极,低通,递归IIR滤波器是快速和容易实现,e.g。

xf = k * xf + (1.0 - k) * x;
yf = k * yf + (1.0 - k) * y;

其中x,y是原始(未过滤)X / Y加速度计信号,XF,YF是经滤波的输出信号,并且k确定滤波器的时间常数(通常为0.9和0.9999 ...,其中之间的值一个更大的k表示一个较长的时间常数)。

您可以凭经验确定k,或者如果你知道你需要的截止频率,Fc,那么你可以使用公式:

k = 1 - exp(-2.0 * PI * Fc / Fs)

其中Fs是采样率。

请注意XF,YF是在RHS的输出信号的上面的表达式。

的LHS上的先前值,并且新的输出值

还请注意,我们假设在这里,你将在规则的时间间隔被采样加速度计信号,例如每隔10毫秒。时间常数将两者的k和该采样间隔的函数。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top