四元数转化成欧拉?/p>
笔者:奋斗
修改时间?/p>
2015.11.23
一?/p>
姿态解算(以匿名版程序为例?/p>
首先,程序中一般用了两种求解姿态的方法,一种为欧拉角法,一种为四元数法。由
四元数法?/p>
MPU6050
的值融合成四元,再由欧拉角法把四元转换成欧拉角送入串级
PID
控制器?/p>
?/p>
1
)欧拉角法静止状态,或者总加速度只是稍微大于
g
时,由加计算出的值比较准
确。使用欧拉角表示姿态,令?/p>
,
θ和Φ代?/p>
ZYX
欧拉角,分别称为偏航角、俯仰角和横?/p>
角。载体坐标系下的
?/p>
?/p>
?/p>
(a
x
B,a
y
B,a
z
B)
和参考坐标系下的加速度
(a
x
N, a
y
N, a
z
N)
之间
的关系可表示?/p>
(1)
。其?/p>
c
?/p>
s
分别代表
cos
?/p>
sin
?/p>
axB,ayB,azB
就是
mpu
读出?/p>
的三个值?/p>
这个矩阵就是三个旋转矩阵相乘得到的,因为矩阵的乘法可以表示旋转?/p>
axB
c
c
c
s
s
axN
ayB
c
s
s
s
c
c
c
s
s
s
s
c
ayN
azB
s
s
c
s
c
s
c
c
s
s
c
c
azN
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?
?/p>
?/p>
?/p>
?/p>
?
?/p>
?/p>
?/p>
?/p>
?/p>
?
?/p>
?/p>
?
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?
(1)
飞行器处于静止状态,此时参考系下的加速度等于重力加速度,即
0
0
xN
yN
zN
a
a
g
a
?/p>
?/p>
?/p>
?
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?/p>
?
?/p>
?/p>
?/p>
?/p>
?/p>
2
?/p>