赞
踩
IMU测量的是本体系在惯性系下的角速度在本体系下的分量,其测量的是绝对角速度 ω \omega ω。测量原理[[陀螺仪测量角速度原理|详见]]。
首先回答不等于。
先给出否定的例子:
我们仅用陀螺仪测量的角速度积分作为姿态角度,第一张图,本体系处于水平,此时三轴姿态角为0°,
第一次旋转,绕俯仰轴旋转45度,此时姿态角为:俯仰角45° 滚转角0° 偏航角0°;
第二次旋转,绕偏航轴旋转90度,此时姿态角为:俯仰角0° 滚转角45° 偏航角90°;
显然,上述过程,如果用陀螺仪测得的角速度作为积分计算姿态,则得到,俯仰角45° 滚转角0° 偏航角90°;而实际上,旋转过后,俯仰角0° 滚转角45° 偏航角90°,与实际情况不符。
俯仰角 | 滚转角 | 偏航角 | |
---|---|---|---|
陀螺仪测得 | 45 | 0 | 90 |
实际上 | 0 | 45 | 90 |
原因在于,角速度积分不等于姿态角,而欧拉角速度积分才等于姿态角,角速度、欧拉角、欧拉角速度三者之间存在一定的关系,即欧拉运动学方程
下面给出欧拉角运动学方程的推导过程。
欧拉角的定义
我们把坐标系旋转中的“3-2-1”旋转(Z-Y-X旋转)中的三个角度定义为偏航角 ϕ \phi ϕ、俯仰角 θ \theta θ和滚转角 ψ \psi ψ。
对应的旋转矩阵分别为:
R 3 ( ϕ ) = [ cos ϕ sin ϕ 0 − sin ϕ cos ϕ 0 0 0 1 ] , R 2 ( θ ) = [ cos θ 0 − sin θ 0 1 0 s i n θ 0 cos θ ] , R 1 ( ψ ) = [ 1 0 0 0 c o s ψ sin ψ 0 − sin ψ cos ψ ] R_{3}(\phi)=, R_{2}(\theta)=⎡⎣⎢cosϕ−sinϕ0sinϕcosϕ0001⎤⎦⎥ , R_{1}(\psi)=⎡⎣⎢cosθ0sinθ010−sinθ0cosθ⎤⎦⎥ R3(ϕ)= cosϕ−sinϕ0sinϕcosϕ0001 ,R2(θ)= cosθ0sinθ010−sinθ0cosθ ,R1(ψ)= 1000cosψ−sinψ0sinψcosψ ⎡⎣⎢1000cosψ−sinψ0sinψcosψ⎤⎦⎥
旋转方向为从惯性系到本体系的旋转即:
[ x y z ] = R 1 ( ψ ) R 2 ( θ ) R 3 ( ϕ ) [ X Y Z ]= R_1(\psi)R_2(\theta)R_3(\phi)⎡⎣⎢xyz⎤⎦⎥ xyz =R1(ψ)R2(θ)R3(ϕ) XYZ ⎡⎣⎢XYZ⎤⎦⎥
我们最后要得出的是
[
ω
x
,
ω
y
,
ω
z
]
′
[\omega_x,\omega_y,\omega_z]'
[ωx,ωy,ωz]′与
[
ϕ
˙
,
θ
˙
,
ψ
˙
]
′
[\dot{\phi},\dot{\theta},\dot{\psi}]'
[ϕ˙,θ˙,ψ˙]′,之间的关系,由于
ω
\omega
ω通常是陀螺仪测得的,其在本体系下分解,因此将其全部转换至本体系,
[
ω
x
ω
y
ω
z
]
=
A
i
⃗
+
B
j
⃗
+
C
k
⃗
因此,将每一步旋转过程中出现的欧拉角速度向量,都要转化为最终在本体系下的分量。
假设,惯性系为 ( I ⃗ , J ⃗ , K ⃗ ) (\vec{I},\vec{J},\vec{K}) (I ,J ,K ),第一次旋转产生的新坐标系为 ( I ⃗ ′ , J ⃗ ′ , K ⃗ ′ ) (\vec{I}',\vec{J}',\vec{K}') (I ′,J ′,K ′),第二次旋转产生的新坐标系为 ( I ⃗ ′ ′ , J ⃗ ′ ′ , K ⃗ ′ ′ ) (\vec{I}'',\vec{J}'',\vec{K}'') (I ′′,J ′′,K ′′),第三次旋转产生的新坐标系为 ( i ⃗ , j ⃗ , k ⃗ ) (\vec{i},\vec{j},\vec{k}) (i ,j ,k )。
从第三次旋转开始看,第三次旋转了
ψ
\psi
ψ角度,产生的角速度向量为
[
i
⃗
j
⃗
k
⃗
]
[
ψ
˙
0
0
]
第二次旋转了
θ
\theta
θ角度,产生的角速度向量为
[
I
⃗
′
′
J
⃗
′
′
K
⃗
′
′
]
[
0
θ
˙
0
]
=
[
i
⃗
j
⃗
k
⃗
]
R
1
(
ψ
)
[
0
θ
˙
0
]
第一次旋转了
ϕ
\phi
ϕ角度,产生的角速度向量为
[
I
⃗
′
J
⃗
′
K
⃗
′
]
[
0
0
ϕ
˙
]
=
[
i
⃗
j
⃗
k
⃗
]
R
1
(
ψ
)
R
2
(
θ
)
[
0
0
ϕ
˙
]
把上述三个式子相加,可得到
[
ω
x
ω
y
ω
z
]
在
i
j
k
中表示
=
R
1
(
ψ
)
R
2
(
θ
)
[
0
0
ϕ
˙
]
+
R
1
(
ψ
)
[
0
θ
˙
0
]
+
[
ψ
˙
0
0
]
展开后,可得:
[
ω
x
ω
y
ω
z
]
=
[
1
0
0
0
c
o
s
ψ
sin
ψ
0
−
sin
ψ
cos
ψ
]
[
cos
θ
0
−
sin
θ
0
1
0
s
i
n
θ
0
cos
θ
]
[
0
0
ϕ
˙
]
+
[
1
0
0
0
c
o
s
ψ
sin
ψ
0
−
sin
ψ
cos
ψ
]
[
0
θ
˙
0
]
+
[
1
0
0
0
1
0
0
0
1
]
[
ψ
˙
0
0
]
最终得到
[
ω
x
ω
y
ω
z
]
=
[
1
0
−
sin
θ
0
c
o
s
ψ
cos
θ
sin
ψ
0
−
sin
ψ
cos
θ
cos
ψ
]
[
ψ
˙
θ
˙
ϕ
˙
]
姿态角,可以从上式解出,值得注意的是,小角度下,上式可以进一步简化为:
[
ω
x
ω
y
ω
z
]
=
[
1
0
0
0
1
0
0
0
1
]
[
ψ
˙
θ
˙
ϕ
˙
]
此时角速度积分近似等于欧拉角速度积分等于欧拉角。
上式解方程过于困难,因此后续引入了四元数运动学方程来进行姿态解算。
无伤理解欧拉角中的“万向死锁”现象_哔哩哔哩_bilibili
把一个问题想清楚并讲清楚不容易,感谢各位看官点赞!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。