要描述机器人,第一步是学会描述一个刚体。刚体在空间中的完整描述 = 位置(参考点坐标)+ 姿态(固连坐标系三根轴的指向),二者合称位姿。本节给出这两半的数学写法——其中姿态那一半,正是 2.2 节旋转矩阵的定义来源。录播对应第 1 周 1:56–2:01(幻灯片 07016 / 07208)。
图解读图:左侧是参考系 O–xyz,右侧刚体上固连一个本体坐标系 O′–x′y′z′。位置只给出 O′ 的三个坐标;姿态由三根本体轴在参考系里的 9 个方向余弦给出——单位模长与两两正交把 9 个数压到 3 个独立角,所以「位置 3 + 姿态 3 = 6」。
定义 2.1.1 · 位姿(pose)
刚体(rigid body)可由其在空间中相对参考坐标系 O-xyz 的位置与方向(orientation,又称姿态)完整描述,二者合称位姿(position and orientation)。位置占 3 个数、姿态需要 3 个独立角度,合起来正是「6 个数」——这一直觉在 1.2.1 的六自由度判据里已经见过。
令 O-xyz 为标准正交参考坐标系,x,y,z 为三轴单位向量。刚体上取一点 O′ 作为参考点(图 2.1),其位置可沿三轴分解:
o′=ox′x+oy′y+oz′z,o′=ox′oy′oz′∈R3(原书式 2.1)
为什么 o′ 是「有界向量」
它自带作用点与作用线(从原点 O 指向 O′),因此不同于自由向量——后者只有方向与模长。原书特别点出了这一区别;后续做「向量的坐标变换」时,点与自由向量的区别就体现在要不要叠加平移(这正是 2.7 引入齐次变换的动机)。
只有位置还不够——刚体绕该点还能任意转向。为描述指向,在刚体上固连一个标准正交坐标系 O′-x′y′z′(原点取在 O′),再把它的三根轴单位向量 x′,y′,z′ 用参考系的三轴展开:
x′y′z′=xx′x+xy′y+xz′z=yx′x+yy′y+yz′z=zx′x+zy′y+zz′z(原书式 2.2)
原理 2.1.A · 9 个系数即方向余弦
式 2.2 中的每个系数都是方向余弦:例如 xy′=x′⋅y=cos∠(x′,y),就是固连系某根轴与参考系某根轴夹角的余弦(录播:「它就是两个单位向量做点积」)。
又因单位向量模长为 1、三轴两两垂直,这 9 个方向余弦并不独立——只有 3 个独立(9 个量、6 个约束、3 个独立参数 的账本,下一节展开)。
看下图,两图对照着看:左图把位置向量 o′ 沿三根参考轴拆成 3 个系数;右图对固连系的一根轴 x′ 做同样的事——每个系数都是它在某根参考轴上的投影,这正是「方向余弦」的几何来源。
方向余弦的几何来源(本教程绘):固连系每根轴在参考系三轴上的投影给出三个系数,三根轴共 9 个——单位模长与两两垂直把这 9 个数的独立自由度压到 3 个(原理 2.1.A)。
于是,把这 9 个数按列排成(3×3)矩阵,就得到下一节的旋转矩阵 R(原书式 2.3)——本节只立概念,矩阵的性质与运算全部留给 2.2。
默写点 · 合上书再写(主动回忆)
不看正文与速查卡,先写出下面几条,再展开核对。写不出来就说明这一节还没「拿走」。
- 位姿由哪两半组成?各几个独立变量?
- 9 个方向余弦为什么只有 3 个独立?
- 给出刚体上一点的位置,是否就确定了它的位姿?
核对
位置(3)+ 姿态(3)。
R 的 9 个元素受正交条件 RTR=I(6 个独立约束),剩 3 个。
不能。绕该点还剩三个转动自由度,姿态必须另外描述。
- 一条主线:位姿 = 位置(参考点 3 个坐标,式 2.1)+ 姿态(固连系三轴在参考系中的 9 个方向余弦,式 2.2);后者只有 3 个独立量。
- 一个区分:o′ 是有界向量(点),不是自由向量——涉及不同原点时必须补平移。
常见错误清单 · 自查两条
- 以为给出原点位置就等于确定了刚体——绕该点还剩三个转动自由度,姿态必须另外描述;
- 把方向余弦说成「夹角」——它是夹角的余弦,取值 [−1,1],符号携带朝向信息。