果ben的兔子 发表于 2013-10-22 21:55:03

kalman滤波器的传递函数怎么求?

如下面程序所示的一个kalman滤波器
void Kalman_Filter(float gyro_m,float acc_m)
//double P = {{ 1, 0 },{ 0, 1 }};   double Pdot ={ 0,0,0,0};   static const double Q_angle=0.001, Q_gyro=0.003, R_angle=0.5,dtt=0.007,C_0 = 1;
//double q_bias, angle_err, PCt_0, PCt_1, E, K_0, K_1, t_0, t_1;   double angle, angle_dot;   // aaxdot,aax;double position_dot,position_dot_filter,positiono;
      {
            omega +=(acc_m-q_bias1) * dtt;   
            Pdot=Q_angle - P - P;//
            Pdot=- P;
            Pdot=- P;
            Pdot=Q_gyro;
            P += Pdot * dtt;
            P += Pdot * dtt;
            P += Pdot * dtt;
            P += Pdot * dtt;
            omega_err = gyro_m - omega;
            PCt_0 = C_0 * P;
            PCt_1 = C_0 * P;
            E = R_angle + C_0 * PCt_0;
            K_0 = PCt_0 / E;
            K_1 = PCt_1 / E;
            t_0 = PCt_0;
            t_1 = C_0 * P;
            P -= K_0 * t_0;
            P -= K_0 * t_1;
            P -= K_1 * t_0;
            P -= K_1 * t_1;
            omega +=K_0 * omega_err;
            q_bias1 += K_1 * omega_err;   
      }

它的传递函数怎么求?!伯德图怎么画?(最好是用matlab)
页: [1]
查看完整版本: kalman滤波器的传递函数怎么求?