智能车制作

标题: 这样的波形可以直立吗? [打印本页]

作者: 冷技    时间: 2015-3-24 14:19
标题: 这样的波形可以直立吗?
[attach]75426[/attach]红色加速度计,黄色陀螺仪,蓝色是融合的角度

作者: 冷技    时间: 2015-3-24 14:21
这个是屏蔽加速度计的,蓝色融合后的角度
作者: luckner    时间: 2015-3-24 14:21
可以试试看
作者: 砍死算了    时间: 2015-3-24 14:24
路过看下
作者: 【征程】    时间: 2015-3-24 15:04
可以试试看
作者: 自动化1202    时间: 2015-3-24 15:14
:lol:lol
作者: cjk_move    时间: 2015-4-6 21:11
楼主可以给分享下代码吗?最近也在调遇到问题
作者: If_I_lose_your_    时间: 2015-4-7 17:52
请问有没有调卡尔曼滤波四个参数的资料啊?

作者: 冷技    时间: 2015-4-9 19:31
If_I_lose_your_ 发表于 2015-4-7 17:52
请问有没有调卡尔曼滤波四个参数的资料啊?

这是我在其他地方看到的别人的理解:Q和R代表了对预测数据的信任度,
Q越大则越相信测量值,R越大则越相信预测值,
感觉就是Q太大的话杂波会增多,R太大就会有滞后


作者: 冷技    时间: 2015-4-9 19:31
cjk_move 发表于 2015-4-6 21:11
楼主可以给分享下代码吗?最近也在调遇到问题

#include "main.h"

/*******************************卡尔曼滤波用到的数据*******************************/
float g_fCarAngle =0;            //存放车的角度,即加速度计滤波后的值
float g_fCarAngleSpeed=0;
float C_0=1;
float Q_angle=0.001;  //0.001
float Q_gyro=0.003;   //0.003
float R_angle=0.6;    //0.5           
/*我自己的理解,Q和R代表了对预测数据的信任度,
Q越大则越相信测量值,R越大则越相信预测值,
感觉就是Q太大的话杂波会增多,R太大就会有滞后
*/
float dt=0.023;    //0.065    //0.02          //卡尔曼采样时间(只需调这个)
float P[2][2]={{1,0},{0,1}};
float Pdot[4]={0,0,0,0};
float q_bias=0,angle_err=0,PCt_0=0,PCt_1=0,E=0,K_0=0,K_1=0,t_0=0,t_1=0;

/******************************卡尔曼滤波******************************************/
void Kalman_Kilter(float angle_m,float gyro_m)
{
  g_fCarAngle += (gyro_m - q_bias) * dt;
  angle_err = angle_m - g_fCarAngle;
  Pdot[0] = Q_angle - P[0][1] - P[1][0];
  Pdot[1] = -P[1][1];
  Pdot[2] = -P[1][1];
  Pdot[3] = Q_gyro;
  P[0][0] += Pdot[0] * dt;
  P[0][1] += Pdot[1] * dt;
  P[1][0] += Pdot[2] * dt;
  P[1][1] += Pdot[3] * dt;
  PCt_0 = C_0*P[0][0];
  PCt_1 = C_0*P[1][0];
  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[0][1];
  P[0][0] -= K_0*t_0;
  P[0][1] -= K_0*t_1;
  P[1][0] -= K_1*t_0;
  P[1][1] -= K_1*t_1;
  g_fCarAngle += K_0 * angle_err;
  q_bias += K_1 * angle_err;
  g_fCarAngleSpeed = gyro_m - q_bias;



}


作者: 1016291799    时间: 2015-4-9 19:44
现在怎么样了?能直立不?
作者: 冷技    时间: 2015-4-9 21:37
1016291799 发表于 2015-4-9 19:44
现在怎么样了?能直立不?

可以 但是很软


作者: If_I_lose_your_    时间: 2015-4-10 21:45
冷技 发表于 2015-4-9 19:31
这是我在其他地方看到的别人的理解:Q和R代表了对预测数据的信任度,
Q越大则越相信测量值,R越大则越相信 ...

哦哦   谢谢了   我试试~~~





欢迎光临 智能车制作 (http://dns.znczz.com/) Powered by Discuz! X3.2