yyyyyy1224 发表于 2011-11-18 22:03:32

ENC-3和加速度传感器的零飘解决!!!

最经典、也最简单的有互补滤波法!
c程序:static float angle,angle_dot;//外部需要引用的变量
//-------------------------------------------------------
static float bias_cf;
static const float dt=0.01;
//-------------------------------------------------------
void complement_filter(float angle_m_cf,float gyro_m_cf)
{
bias_cf*=0.998; //陀螺仪零飘低通滤波;500次均值;
bias_cf+=gyro_m_cf*0.002;
angle_dot=gyro_m_cf-bias_cf;
angle=(angle+angle_dot*dt)*0.90+angle_m_cf*0.05;
//加速度低通滤波;20次均值;按100次每秒计算,低通5Hz;
}


更高深的是卡尔曼滤波!
但是本人研究了几天还是不太清楚!
建议使用互补滤波足够

200900207059 发表于 2011-11-27 10:59:28

看看~~~~
页: [1]
查看完整版本: ENC-3和加速度传感器的零飘解决!!!