1 / 34
文档名称:

卡尔曼滤波那点事---Android 9DOF算法.docx

格式:docx   大小:520KB   页数:34页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

卡尔曼滤波那点事---Android 9DOF算法.docx

上传人:63229029 2017/1/3 文件大小:520 KB

下载得到文件列表

卡尔曼滤波那点事---Android 9DOF算法.docx

相关文档

文档介绍

文档介绍:卡尔曼滤波那点事---Android 9DOF 算法卡尔曼滤波那点事---Android 9DOF 算法....................................................................................... 1 1. 前言............................................................................................................................................. 1 2. Kalman Filter theory ................................................................................................................... 1 . General ........................................................................................................................ 1 . 非线性的卡尔曼滤波方程........................................................................................ 5 . 9DOF 算法一:严格的非线性 KalmanFilter ........................................................... 7 . Indirect Kalman Filter for 3D Attitude Estimation ..................................................... 9 3. Scilab 代码................................................................................................................................ 11 . 卡尔曼滤波修正 gyro bias 和计算方向余弦......................................................... 11 . Kalman 滤波计算线性加速度................................................................................. 23 1. 前言卡尔曼滤波其实是用测量量来对系统状态参数进行修正的一种方式。对于刚接触的人而言, 最需要的是一个实际使用的实例分析。本文以 android 代码中的 9DOF 算法为例, 从卡尔曼的基本原理,到非线性卡尔曼滤波方程,最后到 android 实际使用的 Indirect Kalman filter 。让大家能够看明白卡尔曼滤波是如何在实际工程中使用的。整文分两部分。第一部分为理论。重点把结果罗列了一下。本文不是教材, 所以推导过程都省略了。第二部分是代码。代码有些奇怪,用 scilab 写的,而不是 matlab 。 scilab 是开源的类 matlab 的工具,对业余爱好者足够。语法也基本类似。文中的公式都标明了出处。我尽可能避免公式写错。如果有怀疑,可以和后面的代码对照。最后,如果有问题需要探讨,可以联系: bigstone1998@ 。不过回复可能很不及时。 2. Kalman Filter theory . General Kalman filter 首先是离散线性系统的 kalman filter 。下面就有。接下去是连续线性系统的 kalman filter 。这个把系统离散化就可以。下面公式来自 Wiki 。大家从教材或网上都可以查到。物理意义: 特别说明一下 P。P是 covariance ofX 。例如,如果 X是2 维矢量,那么 P 就是一个 2*2 矩阵。含义是协方差。启动 Kalman 算法的时候,需要初始值。初始值应该理解为。因为它们都是非修正值。以 g=1 的星球上的自由落体为例, 来说明 Kalman Filter 的物理意义。这个问题可以描述为: 我们大致知道在 g=1 的星球上,一个物体在 100 米左右,可能有初速度 1 以内的位置开始下落。每 1 秒钟我们有机会对这个物体进

最近更新