机械手臂一--刚体的运动状态


本系列文章是以林沛群老师在coursera上的课程机器人学一为参考,进行归纳整理。

导读

刚体在空间中的运动方式有两种,一种是移动,一种是转动,它们各有3个DOF。对于移动来说,它可以沿着$\hat{X}$轴,$\hat{Y}$轴和$\hat{Z}$轴移动, 同样的,转动也可以沿着$\hat{X}$轴,$\hat{Y}$轴和$\hat{Z}$轴进行转动。为了描述刚体在空间中的运动状态,我们通常会在它的质心位置建立一个坐标系(frame), 通过得到这个坐标系与世界坐标系之间的关系,我们可以知道这个刚体在空间中的姿态。

移动

刚体的移动可以用向量$\vec{P}$来描述,它即明确了移动的方向,又说明了移动的大小。如下图:

因为位置是相对的,为了表明$\vec{P}$是以A frame为基坐标上B frame的位置,我们通常写为$^AP_B org$,其中org指的是B frame的原点,即刚体的质心。

转动

刚体的转动需要用三个向量来描述,因此我们将它写成矩阵的形式,并将这个矩阵称之为旋转矩阵(Rotation Matrix),用$^A_BR$来表示(B frame相对于A frame)。$^A_BR$的三个columns其实是B frame的$\hat{X}$轴,$\hat{Y}$轴以及$\hat{Z}$轴方向的单位向量在A frame下的投影,因此旋转矩阵的三个cloumns的长度都为1。如图:

旋转矩阵的特性

旋转矩阵有如下特性:

  • $^A_BR$=$^B_AR^T\to$ B对A的旋转矩阵就相当于A对B的旋转矩阵的转置
  • $^A_BR^T$=$^A_BR^{-1}$=$^B_AR\to$ 旋转矩阵的逆矩阵等于它的转置。这个特性非常有用,因为逆矩阵的计算往往需要很大的计算量,有了这个特性,我们就可以很容易的得到旋转矩阵的逆矩阵。

旋转矩阵的使用

旋转矩阵除了可以描述B frame相对于A frame的姿态以外,也可以计算向量在不同frame下的坐标。比如有一个在B frame下的向量$^BP$,那么它在A frame下的坐标就可以这样得到: $^AP$=$^A_BR$$^BP$
以上的应用都是在已知两个frame的旋转矩阵下进行的,当有一个向量要在同一个frame下沿某个轴转动某个角度时,我们就需要计算出旋转矩阵,计算方式如下:
$$
R_{ {\hat{X} }_A}(\theta)=
\begin{bmatrix}
1 & 0 & 0 \\
0 & cos\theta & -sin\theta \\
0 & sin\theta & cos\theta
\end{bmatrix}
$$$$
R_{ {\hat{Y} }_A}(\theta) =
\begin{bmatrix}
cos\theta & 0 & sin\theta \\
0 & 1 & 0 \\
-sin\theta & 0 & cos\theta
\end{bmatrix}
$$$$
R_{ {\hat{Z} }_A}(\theta) =
\begin{bmatrix}
cos\theta & -sin\theta & 0 \\
sin\theta & cos\theta & 0 \\
0 & 0 & 1
\end{bmatrix}
$$
例如有点$^AP$对$\hat{X}_A$轴转动$\theta$角度后得到了点$^AP’$,那么点$^AP’$的坐标就是:$$
^AP’=R_{ {\hat{X} }_A}(\theta)^AP
$$注意:点$^AP’$的坐标是基于{A}的,而不是旋转后的坐标{A’}的。


文章作者: Xiao Bai
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Xiao Bai !
评论
  目录