二阶互补滤波器原理是什么啊??
飛饵 2018-11-13 10:23:26 最近在做平衡小车,角度融合我试了下一阶互补滤波,效果一般般,参数没调好的话有很大的滞后,而且不够平滑。
然后网上找了二阶互补的代码,没看明白,能不能通俗点解释下?
float K2 =0.2; // 对加速度计取值的权重
float x1,x2,y1; //运算中间变量
float angle ;//滤波角度输出
void Erjielvbo(float angle_m,float gyro_m)
{
x1 = (angle_m - angle) * (1 - K2) * (1 - K2);
y1 = y1 + x1 * dt;
x2 = y1 + 2 * (1 - K2) * (angle_m - angle2) + gyro_m;
angle = angle + x2 * dt;
}
angle_m:加速度求出的角度
gyro_m:角速度
dt:积分时间
卡尔曼滤波太复杂了,先不考虑。