DEMO
Created 2021.06.01 by Cong Yu; Last modified: 2021.06.01-v1.0.2
Contact: windmillyucong@163.com
Copyleft! 2022 Cong Yu. Some rights reserved.
三维刚体运动基础
References
符号约定
未经特殊说明,本博客内的所有的文章里的符号,都按照如下约定:
- 坐标系:
- 世界坐标系 W 或者 G
- 导航坐标系 N
- 机体坐标系 Body
- IMU坐标系 I
- 相机坐标系 C
- 坐标系之间的变换关系由SE(3)给出。如:
- $T_{WI}$ 或者 $T_I^W$ 表示 从I系到W系的变换矩阵
- 或者理解为W系下 I 系的位姿
- $T_{WI}$ 的平移部分可直接视作 IMU 在世界坐标系中的坐标。通俗易懂!
- $T_I^W$右乘一个I系下的(齐次)坐标$p_I$,得到在W系下的坐标 $p_W$。$p_W = T_I^W p_I$
- $T_{WI}$ 或者 $T_I^W$ 表示 从I系到W系的变换矩阵
- T的形式: \(T_I^W = \begin{bmatrix} R_I^W & t_I^W\\ o^T & 1 \end{bmatrix} \in \Bbb{R}^{4×4}\)
- robot坐标系 front x, left y, up z
- 欧拉角顺序 (zyx, ypr, z->y->x, yaw->pitch->roll)
- $\psi$ 航向或偏航 (heading or yaw)
- $\theta$ 升降或俯仰 (elevation or pitch)
- $\phi$ 倾斜或横滚 (bank or roll)
三维姿态与位置
2D 姿态只有一个自由度,自身无法有横滚的变化。
可以使用
- 极坐标下的$\theta$ 一个参数表达方向,
- 或者使用 xy 单位圆 两个参数表达方向,但是xy参数间有约束。
3D姿态有三个自由度,
使用
- phi rho 球极坐标,2个参数
- 或者xyz,3个参数只能确定方向,
自身的横滚还需要一个参数。
注意理解:三维姿态需要三个参数,三维指向只需要两个参数
姿态表达
- 欧拉角 2021-06-02-EulerAngles
- 旋转矩阵 2021-06-03-RotateMatrix
- 四元数 2021-06-05-Quaternion
- 轴角 2021-06-04-AngleAxis
- SO3 todo(congyu)
基本概念
刚体运动表达的两个目的:
- 表达姿态:$\xi$
- 表达转动:$\Delta \xi$, 是描述从$\xi_1$到$\xi_2$之间的运动过程
第1条,表达姿态,也可以理解为等同于:第2条,从坐标系原点$W$ 旋转到姿态 $\xi$ 的这个运动过程。
Contact
Feel free to contact me windmillyucong@163.com anytime for anything.