[MCU] 互补滤波算法(双轮平衡车)

[复制链接]
1508|19
 楼主| laocuo1142 发表于 2020-10-26 09:10 | 显示全部楼层 |阅读模式
本人菜鸟,最近在调融合互补滤波算法。我对算法的理解大概如下。陀螺仪的短期测得的值比较准,但是由于存在温漂,进过积分,长期就不能用了。所以要通过加速度计进行修正角度,但是加速度计的短期不行,噪声比较大,所以要将陀螺仪高通,加速度计低通后进行一定比列的融合。才能比较准确的反应角度的变化。
我是这样做的:陀螺仪和加速度计分别进行了递推和一阶滤波,得到的滤波结果再按一定的比例进行拟合,采样周期为0.3ms。但是出来的效果不理想。最终直立控制量=P*(融合滤波后的角度)+D*(角速度(即陀螺仪的值))
angle=(int)(0.99*(angle+(gyro-2940)*0.008)+0.01*(y_acc-3150))
int PIDCalc( unsigned int NextPoint )
{
  int PID;
  Error = standard - NextPoint;       // 偏差E(t)
  iError+=Error;                    //E(t)+E(t-1)+...+E(1)
  dError=Error-LastError;         //E(t)-E(t-1)
  PID=(int)(Proportion * Error        //比例
        +Integral*iError        //积分
            + Derivative * dError);          // 微分项
  PrevError = LastError;
  LastError = Error;
  return (
            PID
                        );  
}
void PIDBEGIN()
{
  Proportion = 6; // Set PID Coefficients 10
  Integral=0.002;
  Derivative = 120;         // 4
}
我用的传感器是mma-7361,enc-03
小车现象是抖动,站立不了多久,总是往一边倒去,不知道是不是陀螺仪温漂
然后传感器采的是AD值,不知道和角度的具体关系,所以不知道怎么调
kkzz 发表于 2020-11-2 14:40 | 显示全部楼层
怎么不试用mpu6050呢?   
hudi008 发表于 2020-11-2 14:40 | 显示全部楼层
这个的积累误差有多大呢?  
lzmm 发表于 2020-11-2 14:41 | 显示全部楼层
通过加速度计进行修正角度吧   
selongli 发表于 2020-11-2 14:42 | 显示全部楼层
融合的频率是多大的呢?   
fentianyou 发表于 2020-11-2 14:42 | 显示全部楼层
需要调整什么参数呢   
xiaoyaodz 发表于 2020-11-2 14:42 | 显示全部楼层
融合互补滤波算法         
febgxu 发表于 2020-11-2 14:43 | 显示全部楼层
这个参考四旋翼的飞机的算法。   
sdlls 发表于 2020-11-2 14:43 | 显示全部楼层
陀螺仪和加速度能够实现。   
pixhw 发表于 2020-11-2 14:44 | 显示全部楼层
其他的融合算法有吗   
selongli 发表于 2020-11-2 14:44 | 显示全部楼层
能够到达50Hz的频率吗?   
minzisc 发表于 2020-11-2 14:44 | 显示全部楼层
使用卡尔曼滤波算法      
fentianyou 发表于 2020-11-2 14:44 | 显示全部楼层
是PID的调整吗?     
lzmm 发表于 2020-11-2 14:44 | 显示全部楼层
单一的传感器误差太大了。   
xiaoyaodz 发表于 2020-11-2 14:44 | 显示全部楼层
IMU的融合算法很多呢。   
hudi008 发表于 2020-11-2 14:44 | 显示全部楼层
效果如何呢?           
febgxu 发表于 2020-11-2 14:44 | 显示全部楼层
网上的算法有很多可以参考。   
kkzz 发表于 2020-11-2 14:44 | 显示全部楼层
加速度和陀螺仪融合的。     
pixhw 发表于 2020-11-2 14:44 | 显示全部楼层
PID的输出量怎么计算的呢?   
sdlls 发表于 2020-11-2 14:44 | 显示全部楼层
递推和一阶滤波的效果怎么样   
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1296

主题

6239

帖子

15

粉丝
快速回复 在线客服 返回列表 返回顶部