1 引言

机器人操作的定义是指通过某种机构使零件和工具在空间运动。这自然就需要表达零件、工具以及机构本身的位置和姿态。为了定义和运用表达位置和姿态的数学量,我们必须定义坐标系并给出表示规则。我们这里提出了许多关于位置和姿态的描述,这些描述作为我们以后表达线速度和角速度、力和力矩的基础。

我们采用这样一个体系,即存在着一个世界坐标系,我们讨论任何问题都能够参照这个坐标系。我们定义的位置和姿态都是参照世界坐标系或者由世界坐标系定义(或能够定义)的笛卡儿坐标系。 

2 描述:位置、姿态与位姿

描述可用来确定一个操作系统处理的各种对象的特性。这些对象包括零件、工具和操作臂本身。在这部分,我们将讨论位置和姿态的描述以及包含这两个描述的统一体:位姿。

位置描述

一旦建立了坐标系,我们就能用一个3X1的位置矢量给世界坐标系中的任何点定位。

因为我们常在世界坐标系中定义许多坐标系,{A}因此必须在矢量上附加一信息,表明矢量定义在哪一个坐标系。在本书中,矢量用一个左上标来表明其坐标系(除非上下文已明确说明)——例如,是指AP的元素数值是在坐标系{A}的轴线方向的距离。沿着坐标轴的每个距离可被认为是矢量在相应坐标轴上的投影。

图2-1用三个相互正交的带有箭头的单位矢量来表示一个坐标系(A}。用一个矢量来表示一个点^P,并且可等价地被认为是空间图2-1 相对于坐标系的矢量(示例)

的一个位置,或者简单地用一组有序的三个数字来表示。矢量的各个元素用下标z、y和x来标明

image.png

姿态描述

我们发现不仅经常需要表示空间中的点,还经常需要描述空间中物体的姿态。例如,如果在图2-2中矢量^P 直接确定了在操作臂手指尖之间的某点,只有当手的姿态已知后,手的位置才能完全被确定下来。假定操作臂有足够数量的关节©,手可有任意的姿态,而该点在手指尖之间的位置可保持不变。为了描述物体的姿态,我们将在物体上固定一个坐标系并且给出此坐标系相对于参考坐标系的描述。在图2-2中,已知坐标系{B)固定在物体上。{B}相对于(A}中的描述就足以表示出物体的姿态。因此,点的位置可用矢量描述,物体的姿态可用固定在物体上的坐标系来描述。描述连体坐标系〈B}的一种方法是利用坐标系{A}的三个主轴単位矢量来表示。

image.png

图2-2 确定物体位置和姿态我们用文B、Y日和之日来表示坐标系{B}主轴方向的单位矢量。当用坐标系{A)作参考坐标系时,它们被写成AXB、AY』和A之日。我们很容易将这三个单位矢量按照A日、A立日、A之日的顺序排列组成一个3X3的矩阵。我们称这个矩阵为旋转矩阵,并且由于这个特殊旋转矩阵是{B}相对于{A}的表达,所以我们用符号AR来表示(下一节将进一步说明旋转矩阵中左上标和左下标的选择方法):

总之,一组三个矢量可以用来确定一个姿态。为简单起见,我们用三个矢量作为矩阵的列来构造一个3×3的矩阵。于是,点的位置可用一个矢量来表示,物体的姿态可用一个矩阵来表示。在2.8节,我们将考虑另外一些只需要三个参数的姿态描述方法。

在式(2.2)中,标量r;可用每个矢量在其参考坐标系中轴线方向上投影的分量来表示。于是,式(2.2)中的合R 的各个分量可用一对单位矢量的点积来表示

位姿描述

完整描述图2-2中的操作臂位姿所需的信息为位置和姿态。我们将在物体上任选一点描述其位置,为方便起见,将其作为连体坐标系的原点。在机器人学中,位置和姿态经常成对出现,于是我们将此组合称作位姿,4个矢量成一组,表示了位置和姿态信息。例如,在图2-2中,一个矢量表示指尖位置,而另3个矢量表示姿态。一个位姿可以等价地用一个位置矢量和一个旋转矩阵来描述。注意到位姿是坐标系,除了姿态,还给了一个位置矢量用以确定其原点相对于其他位姿的位置。例如,用含R 和^P BORG来描述位姿(B),其中APRORG是确定位姿(B}的原点的位置矢量:

{B}= {R,AP IORG}

在世界坐标系中有三个位姿。已知位姿{A}和{B}相对于世界坐标系的关系以及位姿{C}相对于位姿{A}的关系。

在图2-3中,我们引人位姿的图解表示法,以便于用图示说明位姿。位姿可用三个标有箭头的单位矢量来描述,定义位姿的三根主轴。从原点到另一点的箭头表示了一个矢量。表示矢量的箭头从一个位姿的原点到另外一个位姿的原点。这个矢量表示箭头处原点相对于箭尾处原点的位置。例如在图2-3中,箭头方向告诉我们{C}相对于{A}的关系而不是{A}相对于{C}。

总之,位姿可用两个坐标系的相对关系来描述。位姿包括了位置和姿态两个概念,大多数情况下被认为是这两个概念的概括。位置可用一个特殊的位姿来表示,它的旋转矩阵是单位阵,并且这个位置矢量的分量确定了被描述点的位置。同样,如果位姿的位置矢量是零矢量,那么它表示的就是姿态

image.png