智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 24790|回复: 52
打印 上一主题 下一主题

[咨询] 卡尔曼滤波参数

  [复制链接]

200

主题

2621

帖子

1

精华

杰出人士

蜗牛

Rank: 12Rank: 12Rank: 12

积分
12488

优秀会员奖章活跃会员奖章论坛骨干奖章论坛元老奖章在线王奖章资源大师奖章

QQ
威望
5973
贡献
3101
兑换币
1999
注册时间
2011-10-21
在线时间
1707 小时
跳转到指定楼层
1#
发表于 2012-2-18 08:59:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
卡尔曼滤波参数到底咋调啊,我快崩溃了求高手指点一二。

19

主题

259

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2859

论坛骨干奖章推广达人奖章特殊贡献奖章优秀版主奖章热心会员奖章

威望
847
贡献
1700
兑换币
2
注册时间
2011-10-16
在线时间
156 小时
2#
发表于 2012-2-18 09:17:20 | 只看该作者
我也很想知道
回复 支持 反对

使用道具 举报

7

主题

119

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
4603

优秀会员奖章

威望
1226
贡献
2163
兑换币
110
注册时间
2010-8-2
在线时间
607 小时
3#
发表于 2012-2-18 11:22:52 | 只看该作者
首先,保证你输入到程序的角度和角速度是正确的
其次,保证你的卡尔曼滤波程序是正确的
再次,才是卡尔曼滤波参数的调整,其参数有三个,p0是初始化最优角度估计的协方差(初始化最优角度估计可设为零),它是一个初值。Q是预测值的协方差,R是测量值的协方差。对Q和R的设定只需记住,Q/(Q+R)的值就是卡尔曼增益的收敛值,比如其值为0.2,那么卡尔曼增益会向0.2收敛(对于0.2的含义解释一下,比如预测角度值是5度,角度测量值是10度,那么最优化角度为:5+0.2*(10-5)=6。从这里可以看出,卡尔曼增益越大,说明测量值越可靠,最优化角度越接近测量值;卡尔曼增益越小,说明预测值越可靠,最优化角度越接近预测值)。p0/(Q+R)反映收敛的快慢程度,该值设定越小,收敛越快,该值越大,收敛越慢。因为卡尔曼增益收敛总的来说是很快的,所以该值设定大一点或小一点都没什么关系。
回复 支持 反对

使用道具 举报

22

主题

276

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
4309
威望
2101
贡献
1034
兑换币
502
注册时间
2012-2-3
在线时间
587 小时
毕业学校
农大
4#
发表于 2012-2-18 11:38:22 | 只看该作者
可以用matlab仿真调参数.不过卡尔曼比清华的方案复杂点,清华的容易调
回复 支持 反对

使用道具 举报

29

主题

700

帖子

0

精华

跨届大侠

Rank: 10Rank: 10Rank: 10

积分
6749

论坛元老奖章热心会员奖章在线王奖章优秀会员奖章活跃会员奖章

QQ
威望
2529
贡献
1556
兑换币
665
注册时间
2011-1-10
在线时间
1332 小时
5#
发表于 2012-2-18 14:49:30 | 只看该作者
清华的滤波我试过,抖动太大角度值就偏了,不知道你遇到过这种情况没
回复 支持 反对

使用道具 举报

4

主题

400

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1646
QQ
威望
989
贡献
361
兑换币
162
注册时间
2012-1-31
在线时间
148 小时
6#
发表于 2012-2-18 16:19:48 | 只看该作者
清华的我也放弃了
回复 支持 反对

使用道具 举报

2

主题

52

帖子

0

精华

高级会员

Rank: 4

积分
638
威望
400
贡献
86
兑换币
4
注册时间
2011-8-29
在线时间
76 小时
7#
发表于 2012-2-18 16:51:31 | 只看该作者
十八龙潭 发表于 2012-2-18 11:22
首先,保证你输入到程序的角度和角速度是正确的
其次,保证你的卡尔曼滤波程序是正确的
再次,才是卡尔曼 ...

顶一下
回复 支持 反对

使用道具 举报

17

主题

170

帖子

0

精华

高级会员

Rank: 4

积分
927
威望
625
贡献
152
兑换币
0
注册时间
2012-2-9
在线时间
75 小时
8#
发表于 2012-2-20 19:28:24 | 只看该作者
十八龙潭 发表于 2012-2-18 11:22
首先,保证你输入到程序的角度和角速度是正确的
其次,保证你的卡尔曼滤波程序是正确的
再次,才是卡尔曼 ...

我看别人的程序Q_angle = 0.001,Q_gyro  = 0.0015,R_angle = 0.001,Q/(R+Q)应该怎么算啊?
回复 支持 反对

使用道具 举报

200

主题

2621

帖子

1

精华

杰出人士

蜗牛

Rank: 12Rank: 12Rank: 12

积分
12488

优秀会员奖章活跃会员奖章论坛骨干奖章论坛元老奖章在线王奖章资源大师奖章

QQ
威望
5973
贡献
3101
兑换币
1999
注册时间
2011-10-21
在线时间
1707 小时
9#
 楼主| 发表于 2012-2-20 19:51:27 | 只看该作者
xinhuaH 发表于 2012-2-20 19:28
我看别人的程序Q_angle = 0.001,Q_gyro  = 0.0015,R_angle = 0.001,Q/(R+Q)应该怎么算啊?

这不是我给的参数吗
回复 支持 反对

使用道具 举报

7

主题

119

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
4603

优秀会员奖章

威望
1226
贡献
2163
兑换币
110
注册时间
2010-8-2
在线时间
607 小时
10#
发表于 2012-2-20 20:12:51 | 只看该作者
xinhuaH 发表于 2012-2-20 19:28
我看别人的程序Q_angle = 0.001,Q_gyro  = 0.0015,R_angle = 0.001,Q/(R+Q)应该怎么算啊?

那个程序我看过,感觉有错。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-12-27 06:47 , Processed in 0.047772 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表