坐标系变换方程
如果有n个未知变换和n个变换方程,这个变换可由变换方程解出。例如:图1中变换了操作臂指向的坐标系{T},它是相对于操作臂基座的坐标系{B}的,又已知工作台相对于操作臂基座的空间位置并且已知工作台上螺栓的坐标系相对于工作台坐标系的位置,即,计算螺栓相对于操作手的位置,
由公式推导,得到相对于操作手坐标系的螺栓坐标系为:
基坐标系{B}
基坐标系{B}位于操作臂的基座上。它仅是赋予坐标系{0}的另一个名称。
工具坐标系{T}
工具坐标系{T}附于机器人所夹持的工具末端。
工具坐标系6点法标定:
机器人末端坐标系 {E}相对于机器人基坐标系{B}的变换关系为 工具坐标系 {T}相对于末端坐标系 {E}的变换关系为工具坐标系 {T}相对于基坐标 {B}的变换关系为; 三者的转换关系为:
采用四点法标定TCP如图所示,标定 TCP的4个位置,4 点之间各差90度且不能在一个平上。 分别为机器人末端坐标系 4 个点的旋转矩阵;分别为机器人末端坐标系 4 个点的位置矢量; 为工具的旋转矩阵;为工具的位置矢量;分别为工具坐标系末端4个点的旋转矩阵;为工具坐标系末端的位置矢量。因 4 个不同位姿下工具坐标系在基坐标系的位置不变,即为定值;各个参数不变也为定值。
可以得到:
式中包含 3个未知量,系数为9×3的矩阵。因为系数矩阵不是方阵,不可直接求逆,因此使用广义逆矩阵,采用高斯消元求解。
计算出工具坐标系的位置后,还需要标定计算TCP的姿态。TCP姿态采用 z/x 方向标定,此过程保持TCP的姿态不变。将位置标定点 P 4作为第 1个 TCP姿态标定点,示教机器人沿+X 方向至少移动250mm后作为第 2个标定点P 5 ; 然后回到第 1个标定点示教机器人沿 +Z方向移动至少250mm作为第3个标定点P 6 。
因为3个标定点的姿态保持不变,可得 都相等。因为第1个姿态标定点与第2 个标定点( 沿 +X 方向) 之间的向量关系也就是工具坐标系沿+X 方向的向量,因此得到工具坐标系 T 的 X 轴轴向向量:
相似地,根据第1个姿态标定点与第 3个标定点( 沿+Z 方向) 之间的向量关系,由此可以得到工具坐标系T 的 Z 轴轴向向量:
同理Y轴轴向向量由右手定则可得:Y=Z×X再对Z=X×Y 进行计算,以保证坐标系矢量的正交性。
得到每个轴的轴向向量之后,对其进行单位化操作,得到工具坐标 T 相对于基坐标 B 的姿态,左乘末端坐标系 E 旋转矩阵的逆,求出工具坐标系的旋转矩阵
用户坐标系{U}
用户坐标系{U}即,用户自定义坐标系;机器人可以和不同的工作台或夹具配合工作, 在每个工作台上建立一个用户坐标系。
用户坐标系有原点三点标定:
(1)示教第一个点为用户坐标系原点O
(2)在xyz任意轴上示教一点,例如X轴示教一点P x
,则用户坐标系x轴单位向量为n=(P x -O)/norm(P x -O)
(3)在剩余两轴上示教一点,例如Y轴示教一点P y,则用户坐标系y轴单位向量为o=(P y -O)/norm(P y -O)
(4)计算得到则用户坐标系z轴单位向量a=n×o
即,建立好的用户坐标系为(在基坐标系下的描述):
这样我们就在基坐标系{B}下,建立了一个用户坐标系{U},在用户坐标系下测量工作空间内各点位置,更方便记录描述参数,符合人的直观。在基坐标系下的点与用户坐标系下的点关系为: