台大机器人学——林沛群,学习笔记1

1.导论

  • 如何描述一个刚体(Rigid Body)的运动状态?

① 平面:移动2DOFs, 转动1DOF (Degree of Freedom)

② 空间:移动3DOFs, 转动3DOFs;

  • 如何整合表达刚体的状态?
    • 在刚体上建立Frame,一般建立在质心上...
    • 移动:由body frame的原点位置判定... (刚体动到哪里,坐标动到哪里)
    • 转动:由body frame的姿态位置判定...(看body frame的坐标相对于world frame的姿态来确定)
  • 一个刚体(Rigid Body)的运动状态如何描述?
    • 利用各个DOF的微分,将位移displacement姿态orientation转换速度(velocity)和加速度(acceleration)等运动状态
对轨迹微分,得到速度状态,再次微分,得到加速度状态
    • 只要确实掌握刚体本身几何状态(3个 自由度的移动和3个自由度的转动),就可以确认整个刚体的运动状态。

2. 移动

以向量vector

 [公式] 来描述{B}的原点相对于{W}的状态:以

[公式]为例子:

  • 向量可表示空间关系的两个方式:
    • 描述一个空间中绝对的位置: [公式]
    • 描述转动:{B}的三个方向,以此方式表达body frame上principal axes的方向:

3.转动(后面世界坐标系都是{A})

描述{B}相对于{A}至姿态——Rotation Matrix ( B relative to A)

3X3 Rotation Matrix 旋转矩阵——B相对于A的状态

进一步,可以将此视为

[公式] 

[公式],

[公式]在A上的投影的分量:

  • EX {B}相对于{A}的姿态旋转矩阵为多少?
X_A与X_B反向,其他重合,所以很简单
  • EX2 {B}相对于{A}的姿态旋转矩阵为多少?
三个组合在一起即为旋转矩阵

4.旋转矩阵的进一步说明——描述两个坐标系之间的相对关系

内积是一个常量,前后互换不改变:

[公式]

旋转矩阵每一个列向量代表{B}的X,Y,Z投在{A}上,同时,由于内积的特性,也可以看为{A}的X,Y,Z的三个分类投在{B}上。

上式也可表达为

即,A对B的旋转矩阵的转置即为B对A的旋转矩阵

进一步,我们可以发现:

旋转矩阵与其自身转置矩阵相乘得到单位矩阵

所以,通过这个定义我们可以轻松发现:

 [公式] ,即旋转矩阵的逆等于其自身转置矩阵。

正交矩阵定义:

5.旋转矩阵的进一步说明——用于转换向量坐标(从一个frame转到另外一个frame)

P在{B}上的表达:

P在{A}上的表达:

又:框住部分表示——AP_x可以看成BP向量在{A}X上的投影。

所以,有:

P点在{B}上的表达法×{B}相对于{A}的旋转矩阵=P点在{A}上的表达法

EX1:

6.旋转矩阵的进一步说明——进一步描述物体【转动】的状态

  • 以对三个主轴转动的matrix为基础:(逆时针为正,以正方向→负方向的视角看
针对Z轴旋转:把{A}frame转到{B}frame
针对X轴旋转:把{A}frame转到{B}frame
针对Y轴旋转:把{A}frame转到{B}frame

EX1: 一个向量,相对于{A}的X轴逆时针旋转30°,求向量坐标:

注意时左乘旋转矩阵

总结:Rotation Matrix的三种用法:

  • 描述一个 frame相对于另一个frame的姿态
  • 将point由某一个frame的表达转换到另一个和此frame仅有相对转动frame来表达
  • 把一个向量vector(或point)在一个frame进行转动