机器人学数学基础
由 August Ferdinand Möbius 提出的齐次坐标(Homogeneous coordinates)让我们能够在投影空间里进行图像和几何处理, 齐次坐标用 N + 1个分量来描述 N 维坐标。比如,2D 齐次坐标 是在笛卡尔坐标(X, Y)的基础上增加一个新分量 w,变成(x, y, w),其中笛卡尔坐标系中的大X,Y 与齐次坐标中的小x,y有如 下对应关系: X = x/w Y = y/w 笛卡尔坐标中的点 (1, 2) 在齐次坐标中就是 (1, 2, 1) 。如果这 点移动到无限远(∞,∞)处,在齐次坐标中就是 (1, 2, 0) ,这样我 们就避免了用没意义的"∞" 来描述无限远处的点。
z
W'
w
V' O'
0 1 ix iu 0 cos 0 sin
sin cos 0
方向余弦阵
o
U'
v
y
u x
图2-5
z
三个基本旋转矩阵:
W'
w
0 1 R(x, ) 0 cos 0 sin
sin cos 0
i
运动学研究的问题
Where is my hand?
运动学正问题
Direct Kinematics HERE!
How do I put my hand here?
运动学逆问题
Inverse Kinematics: Choose these angles!
研究的两类问题:
运动学正问题 --- 已知杆件几何参数和关节角矢量,求操 作机末端执行器相对于固定参考作标的位置和姿态(齐 次变换问题)。 运动学逆问题 --- 已知操作机杆件的几何参数,给定操作 机末端执行器相对于参考坐标系的期望位置和姿态(位 置),操作机能否使其末端执行器达到这个预期的位姿? 如能达到,那么操作机有几种不同形态可以满足同样的 条件?
由刚体的等距变换可知:
p pxyz p
T xyz
T uvw uvw
p
将上式代入,可得: RT R I R为正交矩阵。
R为R的伴随矩阵, det R为R的行列式,由于 R是正交矩阵, 因此R 1 R T
由图可知,jv 在y轴上的投影为
k z cos
j y cos
, jv 在z轴上的投影
为 k z sin , kw 在y轴上的投影为 j y sin , kw 在z轴上的投影为 ,所以有:
i x i R(x, ) j y i k i z
i x jv j y jv k z jv
ix k w jy k w k z kw
[ 例] :
V 3i 4 j 5k
可以表示为: V=[3 或 V=[6 4 8 5 10 1]T 2]T
或
V=[-12 -16
-20
-4]T
齐次坐标与三维直角坐标的区别
• V点在ΣOXYZ坐标系中表 示是唯一的(x、y、z) • 而在齐次坐标中表示可 以是多值的。不同的表 示方法代表的V点在空间 位置上不变。
2.2.3
解2:用分步计算的方法 ① R(x, 90°)
1 0 P' 0 0 0 0 0 -1 1 0 0 0 0 1 1 2 3 0 0 3 2 1 1 1
(2-14)
Px Puvw ix ix ( Pu iu Pv jv Pw kw )
Py Puvw j y j y ( Pu iu Pv jv Pw k w )
x
Pw
P o Pv
(O')
v y
Pu
Pz Puvw jz jz ( Pu iu Pv jv Pw k w )
通常用一个(n + 1)维列矩阵表示,即除 x、 y、z 三个方向上的分量外,再加一个比例因子 w , 即 v = [ x y z w ]T 其中 a = x/w, b = y/w, c = z/w。
•
x H
y
图2.1 点向量的描述
已知两个向量
a = ax i + ay j + az k b = bx i + by j + bz k (2.1)
用齐次坐标变换来表示式旋转变换:
Px P R y Pz 1 0 0 0
0 P u P 0 v 0 Pw 1 1
Pu P R 1 v Pw 1 0 0 0
iu 、 jv 、 kw
为坐标系ΣO´uvw的单位矢
w o u x
P
v
(O')
量,则P点在Σoxyz中可表示为:
y
Pxyz Px i x Py i y Pz i z
Puvw Pxyz
② 当动坐标系ΣO´uvw绕O点回转时,求P点在固定坐标系 Σoxyz中的位置 z
w
已知: Puvw Pu iu Pv ju Pw k w P点在ΣO´uvw中是不变的仍然 成立,由于ΣO´uvw回转,则:
点 (1, 2, 3), (2, 4, 6) 和 (4, 8, 12) 对应笛卡尔坐标中的同一点 (1/3, 2/3)。 任意数量积的(1a, 2a, 3a) 始终对应于笛卡尔坐标中的同一 点 (1/3, 2/3)。因此这些点是“齐 次”的,因为他们始终对应于笛 卡尔坐标中的同一点。换句话说 ,齐次坐标描述缩放不变性( scale invariant)。
– 并联机器人:刚性好,负载大,误差不积累,工作空间 小,姿态范围不大。
–本章讲解以串联机器人为主。
D-H方法基本思想
• 给每个关节指定一个参考坐 标系,然后,确定从一个关 节到下一个关节(一个坐标 系到下一个坐标系)来进行 变换的步骤。如果将从基座 到第一个关节,再从第一个 关节到第二个关节直至到最 后一个关节的所有变换结合 起来,就得到了机器人的总 变换矩阵。 • D-H模型表示了对机器人连 杆和关节进行建模的一种非 常简单的方法,可用于任何 机器人构型,而不管机器人 的结构顺序和复杂程度如何。 它也可用于表示已经讨论过 的在任何坐标中的变换,例 如直角坐标、圆柱坐标、球 坐标、欧拉角坐标及RPY坐 标等。另外,它也可以用于 表示全旋转的链式机器人、 SCARA机器人或任何可能的 关节和连杆组合。
为什么引入齐次坐标?
在欧几里得几何空间 里,两条平行线永远 都不会相交。但是在 投影空间中,如右图 中的两条铁轨在地平 线处却是会相交的, 因为在无限远处它们 看起来相交于一点。
在欧几里得(或称笛卡尔)空间里描 述2D/3D 几何物体是很理想的,但在投 影空间里面却并不见得。 我们用 (x, y) 表示笛卡尔空间中的一 个 2D 点,而处于无限远处的点 (∞,∞) 在 笛卡尔空间里是没有意义的。投影空间 里的两条平行线会在无限远处相交于一 点,但笛卡尔空间里面无法搞定这个问 题(因为无限远处的点在笛卡尔空间里 是没有意义的),因此数学家想出齐次 坐标这个点子来了。
② R(z, 90°)
0 - 1 1 0 P '' 0 0 0 0
0 0 P ''' - 1 0 0 1 0 0
列矩阵
式中i, j, k为x, y, z 轴上的单位矢量,
x T V y x y z w 显然,齐次坐标表达并不是唯一的,随 z w值的不同而不同。在计算机图学中,w w 作为通用比例因子,它可取任意正值,但 在机器人的运动分析中,总是取w=1 。
y z x a= , b= , c= ,w为比例系数 w w w
向量的叉积是一个垂直于由叉积的两个向量构成的平面的向量。用“×”
2.2 点齐次坐标
2.2.1 点的齐次坐标
• 一般来说,n维空间的齐次坐标表示是一个(n+1)维空间 实体。有一个特定的投影附加于n维空间,也可以把它看作 一个附加于每个矢量的特定坐标—比例系数。
v ai bj ck
杆件参数 关节角 运动学正问题 杆件参数 关节角 运动学正问题 末端执行器
研究的对象
• 机器人从机构形式上分为两种,一种是关节式 串联机器人,另外一种是并联机器人。
PUMA560
Fanuc manipulator
Hexapod
这两种机器人有所不同:
– 串联机器人:工作空间大,灵活,刚度差,负载小,误 差累积并放大。
x
z
z o x
标系直角坐标为ΣOxyz,动坐标系为ΣO´uvw, 研究旋转变换情况。
① 初始位置时,动静坐标系重合,O、O´ 重合,如图。各轴 对应重合,设P点是动坐标系ΣO´uvw中的一点,且固定不变。 则P点在ΣO´uvw中可表示为: z
Puvw Pu iu Pv ju Pw k w
数学基础 — 齐次坐标和齐次变换
点向量(Point vectors)
点向量描述空间的一个点在某个坐标系的空
z c E 0 a x z u 0 v b y p
间位置。同一个点在不同坐标系的描述及位置向 量的值也不同。如图 2.1中,点 p在 E坐标系上表示 为 Ev,在H坐标系上表示为 Hu,且v ≠ u。一个点 向量可表示为 v = ai + bj + ck
向量的点积是标量。用“ · ”来定义向量点积,即
a· b = ax bx + ay by + az bz 表示叉积,即 a × b = ( ay bz ¯az by ) i + ( az bx ¯ax bz ) j + ( ax by ¯ay by ) k 可用行列式表示为 a×b = i j k ax ay az bx by bz (2.4) ( 2.3) (2.2 )