2. 机器人基础
手眼标定的本质,是求解机器人末端执行器(工具)坐标系与视觉传感器(相机)坐标系之间的空间变换关系。要完成这一求解,必须先透彻理解工业机器人的运动学模型与坐标系体系。机器人运动学描述了关节空间与笛卡尔空间之间的映射关系,而坐标系则是描述机器人位姿(位置与姿态)的基准框架。齐次变换矩阵则是将旋转与平移统一表达的数学工具,是连接各坐标系、完成手眼标定矩阵运算的基石。本章将系统梳理这三个核心概念,为后续标定方法的学习打下坚实的理论基础。
2.1 工业机器人运动学基础
工业机器人运动学研究的是机器人各关节变量与末端执行器位姿之间的数学关系。它分为正运动学与逆运动学两个方向。正运动学(Forward Kinematics)已知各关节角度(或位移),求解末端执行器在基座坐标系下的位姿;逆运动学(Inverse Kinematics)则相反,已知末端目标位姿,反解各关节变量。在手眼标定中,正运动学是核心——我们需要通过读取机器人控制器中的各关节角度,利用正运动学模型计算出工具坐标系(末端)在基座坐标系下的精确位姿,作为标定方程中的已知量。
机器人运动学建模通常采用Denavit-Hartenberg(D-H)参数法。该方法在每个关节处建立坐标系,通过四个参数(连杆长度 a、连杆转角 α、关节偏距 d、关节角 θ)描述相邻关节坐标系之间的变换关系。对于六轴串联工业机器人,其正运动学方程可表示为:
T_base_to_tool = T₁(θ₁) × T₂(θ₂) × T₃(θ₃) × T₄(θ₄) × T₅(θ₅) × T₆(θ₆)
其中每个 Tᵢ 是 4×4 齐次变换矩阵,θᵢ 为第 i 个关节的关节角。该连乘结果即为工具坐标系相对于基座坐标系的位姿矩阵。在实际工程中,机器人控制器会实时计算并输出该矩阵,通常以欧拉角或四元数加位置坐标的形式呈现。
2.2 机器人坐标系体系
工业机器人定义了多个坐标系,用于描述不同参考基准下的位置与姿态。理解这些坐标系的定义与相互关系,是正确进行手眼标定方程推导的前提。
| 坐标系名称 | 定义位置 | 用途 | 在手眼标定中的作用 |
|---|---|---|---|
| 基座坐标系 {B} | 机器人安装底座中心 | 机器人全局参考基准,所有运动学计算的基础 | 作为世界坐标系,标定结果的最终参考 |
| 关节坐标系 {J} | 各关节轴处 | 描述各关节的运动状态 | 通过关节角计算正运动学 |
| 工具坐标系 {E} | 末端法兰盘中心(或工具中心点 TCP) | 描述末端执行器的位姿 | 手眼标定方程中的关键已知量(机器人侧) |
| 用户坐标系 {U} | 用户自定义(工件台、夹具等) | 简化编程,使轨迹定义更直观 | 可替代基座坐标系作为参考,需明确变换关系 |
工具坐标系(Tool Coordinate System)是手眼标定中最重要的坐标系之一。机器人出厂时,默认工具坐标系位于法兰盘中心(法兰坐标系),当安装不同的末端工具(如夹爪、吸盘、焊枪)后,需要重新标定工具坐标系,使 TCP(Tool Center Point)与实际工具末端重合。工具坐标系标定通常采用四点法或六点法,通过机器人控制器完成。
2.3 齐次变换矩阵
齐次变换矩阵(Homogeneous Transformation Matrix)是机器人学中描述坐标系之间位姿关系的标准数学工具。它将旋转矩阵和平移向量组合成一个 4×4 矩阵,使得坐标变换可以通过矩阵乘法连续进行。其形式为:
T = | R₃ₓ₃ t₃ₓ₁ |
| 0 0 0 1 |
其中 R 为 3×3 旋转矩阵,满足正交性(RᵀR = I)且行列式为 +1;t 为 3×1 平移向量。齐次变换矩阵具有以下重要性质:
- 复合变换:连续变换可通过矩阵乘法实现,T₁₃ = T₁₂ × T₂₃
- 逆变换:T⁻¹ 表示反向变换,可通过转置旋转矩阵并计算 -Rᵀt 获得
- 封闭性:齐次变换矩阵的乘积仍为齐次变换矩阵
旋转矩阵 R 的列向量分别表示被变换坐标系各轴在参考坐标系中的方向余弦。例如,R 的第一列表示被变换坐标系 X 轴在参考坐标系中的方向。旋转矩阵的九个元素并非独立,它们满足六个约束条件(三个正交约束 + 三个单位长度约束),因此实际上只有三个独立参数(如欧拉角、四元数等)。
2.4 坐标系变换链与手眼标定方程
在机器人视觉引导系统中,各坐标系之间构成了一个完整的变换链。以典型的"眼在手外"(Eye-to-Hand)布局为例,变换链为:
基座 {B} → 工具 {E} → 标定板 {G} → 相机 {C} → 基座 {B}
对应的齐次变换矩阵方程为:
T_BE × T_EG = T_BC × T_CG
其中 T_BE 由机器人正运动学提供(已知),T_CG 由相机标定获得(已知),T_BC 为相机相对于基座的变换(待求),T_EG 为标定板相对于工具的变换(待求)。通过移动机器人至多个不同位姿,采集多组数据,即可构建方程组求解 T_BC(或 T_EG,取决于手眼标定的具体形式)。
对于"眼在手上"(Eye-in-Hand)布局,变换链变为:
基座 {B} → 工具 {E} → 相机 {C} → 标定板 {G} → 基座 {B}
对应的方程为:
T_BE × T_EC = T_BG × T_GC
其中 T_EC 为相机相对于工具的变换(待求),T_BG 为标定板相对于基座的变换(可通过机器人示教获得)。
2.5 案例拆解:六轴机器人坐标系验证实验
为加深对坐标系与齐次变换矩阵的理解,我们设计一个验证实验。某品牌六轴机器人(如 FANUC M-20iA),安装有吸盘工具,工具坐标系已标定。实验目标:验证正运动学输出与实测位姿的一致性。
实验步骤:
- 在机器人工作空间内固定一个尖点(锥形针尖),记录其在基座坐标系下的理论位置 P_base = (500, 200, 300) mm。
- 手动示教机器人,使工具 TCP 精确对准尖点,记录此时控制器显示的位姿数据(欧拉角形式):X=500.2, Y=199.8, Z=300.1, Rx=180.0°, Ry=0.0°, Rz=45.0°。
- 将欧拉角转换为旋转矩阵 R,结合平移向量 t,构造齐次变换矩阵 T_BE。
- 利用 T_BE 将 TCP 在工具坐标系下的坐标(0,0,0)变换到基座坐标系:P_base = T_BE × [0,0,0,1]ᵀ。
- 比较计算结果与理论位置,误差应小于 0.5mm(机器人定位精度范围内)。
结果分析:若误差在允许范围内,说明正运动学模型与工具坐标系标定正确。若误差较大,需检查:①工具坐标系 TCP 是否准确;②机器人 D-H 参数是否与出厂一致;③是否进行了正确的负载设置。
2.6 常见误区与总结
在机器人运动学与坐标系的学习中,以下误区值得特别注意:
- 混淆工具坐标系与法兰坐标系:法兰坐标系是机器人出厂默认的末端坐标系,工具坐标系是用户自定义的。手眼标定中应使用工具坐标系(含 TCP 偏移),而非法兰坐标系。
- 忽略旋转顺序:欧拉角有多种约定(如 ZYX、ZYZ、XYZ),不同机器人厂商使用的约定可能不同。在将欧拉角转换为旋转矩阵时,必须确认机器人控制器的旋转顺序约定。
- 齐次变换矩阵的逆用错:T⁻¹ 表示反向变换,但 T 的逆不是简单地取转置或取负,必须按照公式 T⁻¹ = [Rᵀ, -Rᵀt; 0, 1] 计算。
- 坐标系方向约定不一致:机器人坐标系通常遵循右手定则,但相机坐标系(图像坐标系)的 Z 轴方向可能与机器人不同,需在标定前统一约定。