我知道互补滤波器具有LPF和HPF的功能。但我认为我对其背后原理的理解仍然不清楚。
我对数字信号处理还很陌生,也许一些非常基本的解释会有很大帮助。
假设我有一个互补过滤器,如下所示:
y = a * y + (1 - a) * x
那么我的参数a
可以通过
a = time_constant/(time_constant + Sample_period)
,
其中sample_period
只是sampling_Frequency
的倒数。
time_constant
似乎是我自己的选择。
我的问题:
- 此计算背后的理论是什么?
- 我们如何正确选择
time_constant
?
注意:我也posted this question on robotics ,因为答案的侧重点可能略有不同。
最佳答案
What is the theory behind this calculation?
对于人类可读的介绍,我建议:
The Balance Filter: A Simple Solution for Integrating Accelerometer and Gyroscope Measurements for a Balancing Platform .
How do we choose the time_constant properly?
直观上,time_constant
是信任高通和低通滤波器部分之间的边界。对于比 time_constant
更短的时间,您更信任高通滤波器部分,而对于更长的时间,您更信任低通部分。
通常,您对所处理的物理过程有一定的经验,并且您至少可以猜测 time_constant
的数量级。例如,如果您正在融合加速度计和陀螺仪数据(我假设您是根据其他问题进行的),则 0.5-1 秒之间的时间是合理的初步猜测。然后,您可以通过分析过滤器在实际数据上的性能并相应地调整 a
来开始调整过滤器。
关于filter - 如何确定互补滤波器的参数alpha?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18095785/