关于陀螺仪和加速度计融合算法的不成熟的见解
本位直切核心,去掉枝枝蔓蔓的赘述。
分为三个重点:
1、用加速度计仅仅是计算角度用,理解的关键是:匀速直线运动或相对地球静止时,物体除重力(重力也是一种加速度,见狭义相对论)外其他方向加速度为0。重力的加速度为1g,也就是说,物体所受的加速度矢量和是1g。根据这个1g的矢量在被测物体的坐标系的x、y、z的投影矢量,就可以计算出被测物体关于重力矢量的方位了。重力矢量方向是固定的,垂直与地面指向地心,因而也就知道了物体相对于大地坐标系的位置。
2、现实世界中绝对静止,即使是相对于地球绝对静止,以及匀速直线运动是没有的,总是有各种形式的加速度影响物体运动,比如机械振动,抖动,等等。陀螺仪的作用就是消除这种影响,使被测物体似乎总是处于匀速直线运动或静止状态。这也就说明了为什么要以加速度计的计算为主,陀螺仪的计算作为辅助。
上面一段废话,下面是我要说的重点:
加速度测量的结果是角度值,可类比位移、速度中位移的定义;陀螺仪测量的是角速度的值,可类比位移、速度中的速度的定义。这两者之间就是这么个积分/导数关系。
最新角度值 = 上次角度值 + 角速度值 * 测量间隔时间。对于更普遍的情况,应该是最新角度值 = 上次角度值 + 【∫(t1)(t2) 角速度】这个积分公式。对,在我的理解中,这样就把加速度和陀螺仪以这样简洁的形式结合起来了。至于角度值、角速度值、时间间隔怎么得到,有很多方法,不是本文的重点。
3、数据处理,怎么通过数据滤波等等的算法,使数值更接近于真实值,这个跟九轴融合算法的原理没什么关系,但是也是极其重要的。方法多样,不赘述。