旋转三维向量
图中为单位向量,表示转轴。将绕逆时针旋转角度得到。可将分解为沿转轴的分量和垂直转轴的分量。在转动时不变,在平面上旋转角度得到,可得
有
其中
为反对称矩阵。
那么式可写成:
因此旋转作用可用一个矩阵表示。
旋转群
旋转是线性变换,将变为。其保持:
- 向量长度
- 两向量的内积
- 相对方向
1和2是等价的。1推2可由得到,2推1可由得到。
因此可定义旋转群:
旋转矩阵
算符是线性的,可用矩阵表示,
由
,即
可得:
即旋转矩阵是正交矩阵。
由旋转性质3,对于向量组成的六面体,旋转前后的有向体积应该相等,即
得
。
这就构成了群(Special Orthogonal group),其中的special就是指。
欧拉定理
是说存在向量,使得旋转前后不变:
就是转轴方向。
证明:
只要证明有为1的特征值即可。
指数映射
得:
即
是反对称矩阵。三维的反对称矩阵集合用
表示,称为
的李代数。
那么有
得到:
当
时,
,即李代数是在幺元处的切空间。
如果为常数,上述方程解得:
其中矩阵的指数按泰勒级数定义。
这称为指数映射:
还可以定义"大写的"指数映射:
如果绕转轴
转了角度
,那么旋转矩阵:
上式按泰勒展开后得:
这就是Rodrigues旋转公式。推导过程用到了
根据这个式子,又可写成:
这就是式。
从得到和
由可得:
即:
又有
因此
其中
是
的逆,即
.
如果,分两种情况:
- ,这时候,转轴未定义
- ,这时,这个矩阵的每一列都平行于,只要对非0的一列归一化即可。这时候也满足条件,但是不影响,因为绕转180度效果是一样的。
四元数
四元数.md
旋转公式为:
旋转要求
因此
,即
是单位四元数:
这与
的条件类似。
还可以看到,自动保持了相对方向:
其中第2和第5个等号是因为:
指数映射
得:
即
是虚四元数。令:
两边左乘
,得到:
当
时,
,可见虚四元数构成了单位四元数球
的切空间。
如果为常数,上式解得(可代回验证),这就引出了指数映射。
如果绕转轴转了角度,定义“大写的”指数映射:
旋转作用
将式代入式, 推导可得式,这就验证了的正确性。
在证明中有一步用到了
四元数到旋转矩阵的转换
由
可以得到:
旋转合成
假设旋转2作用于旋转1之后。
对于旋转矩阵,
对于四元数,
因此,后旋转的都是乘在左边。
坐标系变换
方向余弦矩阵(DCM)
用G表示global,或者n系;L表示local,或者b系。
分别为向量在坐标系中的坐标,由
得:
表示从
到
的坐标变换。
由的定义还可得基变换:
对于一个与系固连的向量,经过主动旋转,得到,那么:
而
,因此
而按定义:
因此坐标变换矩阵与主动旋转矩阵
的关系是:
欧拉角
intrinsic rotation是指绕当前坐标系(而不是某个固定坐标系)的轴转动。
绕某轴逆时针旋转,得到。对于,根据定义得出如下结果:
绕轴旋转
绕
轴旋转
绕
轴旋转
如果按
的顺序转动,
可得欧拉角和DCM的转换关系:
若是小角度转动,
可见小角度转动与转动顺序无关(即只与绕XYZ各轴转过的角度有关。如果只有俩轴,比如Z->X->Z,那么未出现的轴角度为0,出现两次的轴的角度相加),等效于一次转动:角度为
,转轴为
,也可以从Rodrigues旋转公式做小角近似看出来:
Extrinsic rotation
设固定坐标系为。坐标系绕的轴转动角度,这个转动用表示,得坐标系。求。
首先
其中
为
绕
轴转动角度
得到。这个结论对于二维转动很直观,对于三维其实也容易看出。按定义,只要证明两对坐标系的基的内积相等即可。把基分解到平行于转轴和垂直于转轴。平行部分的内积显然不变,垂直部分由二维情况可知也不变,且平行于垂直部分内积为0。因此得证。
因此得到结论,绕固定坐标系的轴转动,
是乘在右边的。
四元数
和DCM类比有
其中等于主动旋转。
运动方程
推导的要点是从当前系做扰动得到新的系,而陀螺仪的测量值刚好是在角速度在系的值。
四元数
由可得,,即扰动是乘在右边的(L表示local):
方向余弦矩阵
由得:
因此
由
,推导可得:
参考资料
Quaternion kinematics for the error-state Kalman filter