机器人运动学基础:正运动学与逆运动学、DH参数、指数积(POE)模型、齐次变换矩阵

运动学标定的本质,是建立机器人关节空间与笛卡尔空间之间精确的数学映射关系,并通过参数辨识修正理论模型与物理实机之间的偏差。在进入标定算法与误差补偿之前,必须先夯实运动学建模的数学地基。本章将系统梳理正运动学与逆运动学的基本概念、DH参数建模的完整流程、指数积(POE)模型的优势,以及齐次变换矩阵的运算规则,为后续的误差模型建立与参数辨识提供严格的数学语言。

运动学建模数学基础:从关节空间到笛卡尔空间 关节空间 q = [q₁, q₂, ..., qₙ]ᵀ 运动学建模方法 DH参数法 POE指数积 笛卡尔空间 T = [R | p; 0 1] 正运动学 逆运动学 T(q) 齐次变换矩阵 T = Rot(z,θ) · Trans(z,d) · Trans(x,a) · Rot(x,α) 旋转矩阵 R (3×3) 位置 p (3×1) 透视 0 比例 1 标定目标:修正 T 中的参数误差 使理论 T 逼近实际 T_meas 标定数学链路 名义DH参数 误差模型 参数辨识 误差补偿 精度验证

2.1 齐次变换矩阵:运动学描述的通用语言

齐次变换矩阵(Homogeneous Transformation Matrix)是机器人运动学中最核心的数学工具。它将旋转与平移统一在一个4×4矩阵中,使得复合变换可以通过矩阵乘法简洁表达。一个标准的齐次变换矩阵具有如下形式:

T = | R   p |
    | 0ᵀ  1 |

其中,R 为3×3旋转矩阵,描述坐标系姿态;p 为3×1位置向量,描述坐标系原点相对参考系的位置;底行为 [0 0 0 1],保证矩阵的齐次性质。旋转矩阵 R 必须是正交矩阵(RᵀR = I)且行列式为 +1,这保证了坐标变换的刚体性质。

核心原理:齐次变换矩阵的复合遵循“右乘”规则。若机器人基座坐标系为 {B},末端执行器坐标系为 {E},则从 {B} 到 {E} 的变换可分解为多个相邻关节坐标系的连续变换:
T_BE = T_B1 · T_12 · T_23 · ... · T_(n-1)E
这种链式乘法结构是后续所有运动学计算的基础。在标定中,我们关心的正是这些相邻变换矩阵中参数(DH参数或旋量坐标)的微小偏差如何传递到末端位姿误差。

2.2 DH参数建模:经典四参数法

Denavit-Hartenberg(DH)参数法通过四个参数描述相邻连杆坐标系之间的变换关系。对于标准DH(SDH)模型,四个参数定义为:

  • θᵢ(关节角):绕 Zᵢ₋₁ 轴从 Xᵢ₋₁ 旋转到 Xᵢ 的角度;
  • dᵢ(连杆偏距):沿 Zᵢ₋₁ 轴从 Xᵢ₋₁ 移动到 Xᵢ 的距离;
  • aᵢ(连杆长度):沿 Xᵢ 轴从 Zᵢ₋₁ 移动到 Zᵢ 的距离;
  • αᵢ(连杆扭角):绕 Xᵢ 轴从 Zᵢ₋₁ 旋转到 Zᵢ 的角度。

相邻坐标系的齐次变换矩阵为:

T_i = Rot(z, θᵢ) · Trans(z, dᵢ) · Trans(x, aᵢ) · Rot(x, αᵢ)

展开后得到:

T_i = | cosθᵢ  -sinθᵢ·cosαᵢ   sinθᵢ·sinαᵢ   aᵢ·cosθᵢ |
      | sinθᵢ   cosθᵢ·cosαᵢ  -cosθᵢ·sinαᵢ   aᵢ·sinθᵢ |
      | 0       sinαᵢ          cosαᵢ          dᵢ       |
      | 0       0              0              1        |
参数类型 符号 物理含义 标定中的角色
关节变量 θᵢ 旋转关节的转角 测量输入,含零位偏差
连杆偏距 dᵢ 相邻关节轴沿Z向距离 几何参数,需辨识
连杆长度 aᵢ 相邻关节轴沿X向距离 几何参数,需辨识
连杆扭角 αᵢ 相邻关节轴之间的夹角 几何参数,需辨识
实战经验:在标定实践中,DH参数中的 dᵢ 和 aᵢ 通常作为待辨识的几何误差源,而 θᵢ 的零位偏差(即关节编码器零点与理论零点的偏差)是标定中最常见也最需要优先修正的误差项。αᵢ 的误差往往较小,但在高精度标定中不可忽略。

2.3 指数积(POE)模型:现代标定的优选方案

虽然DH参数法在传统工业机器人中应用广泛,但它存在两个固有缺陷:一是当相邻关节轴平行时参数奇异(无法唯一确定坐标系原点);二是DH参数对坐标系的依赖性强,微小误差可能导致参数跳变。指数积(Product of Exponentials, POE)模型通过旋量理论(Screw Theory)从根本上解决了这些问题。

POE模型将每个关节的运动表示为绕某条空间固定轴的螺旋运动,其数学形式为:

T(q) = e^{[S₁]·q₁} · e^{[S₂]·q₂} · ... · e^{[Sₙ]·qₙ} · T_M(0)

其中,Sᵢ 为第 i 个关节的旋量坐标(6维向量),[Sᵢ] 为其4×4矩阵形式;qᵢ 为关节变量;T_M(0) 为机器人处于零位时末端坐标系相对基座坐标系的初始位姿。旋量坐标 Sᵢ = (ωᵢ, vᵢ) 中,ωᵢ 为关节轴方向的单位向量,vᵢ = -ωᵢ × rᵢ(rᵢ 为轴线上任意一点的位置向量)。

POE模型的优势:
  • 无奇异问题:即使相邻关节轴平行,POE模型依然保持数值稳定;
  • 全局坐标:所有旋量均定义在基座坐标系中,避免了DH参数中坐标系逐级传递的误差累积;
  • 标定友好:旋量坐标的误差可以直接映射到末端位姿误差,且误差模型为线性形式,便于最小二乘辨识。

2.4 正运动学与逆运动学:标定中的角色分工

正运动学(Forward Kinematics, FK)是已知关节变量 q,求解末端位姿 T 的过程。在标定中,正运动学用于根据名义参数计算理论末端位姿,并与实测位姿对比,从而构造误差方程。其计算路径为:

  1. 根据DH参数或POE模型建立各关节的变换矩阵;
  2. 按顺序连乘得到末端位姿矩阵 T(q);
  3. 从 T(q) 中提取位置向量 p 和旋转矩阵 R(或欧拉角/四元数)。

逆运动学(Inverse Kinematics, IK)是已知末端期望位姿 T_des,求解关节变量 q 的过程。在标定中,逆运动学主要用于:

  • 生成标定轨迹:规划一系列末端位姿点,反解出对应的关节角指令;
  • 误差补偿:在辨识出参数误差后,通过逆运动学修正关节指令,使末端实际位姿逼近目标。
常见误区:许多初学者误以为标定只需要正运动学。实际上,完整的标定闭环必须同时依赖正、逆运动学——正运动学用于误差建模与参数辨识,逆运动学用于误差补偿与精度验证。忽略逆运动学的标定方案往往只能“测量误差”而无法“修正误差”。

2.5 案例拆解:六轴机器人DH参数建模与误差传递分析

以一款典型的六轴串联工业机器人为例,其DH参数表如下(单位:mm/deg):

关节 i θᵢ (零位) dᵢ (mm) aᵢ (mm) αᵢ (deg)
1 0 400 150 -90
2 -90 0 600 0
3 0 0 120 90
4 0 620 0 -90
5 0 0 0 90
6 0 100 0 0

初始现象:该机器人在出厂后实测末端定位精度约为 ±2.5mm,无法满足 ±0.5mm 的工艺要求。初步排查发现,关节2的编码器零位存在约 0.08° 的偏差,同时连杆长度 a₂ 的实际加工误差约为 +0.35mm。

分析过程:利用正运动学模型,将名义参数代入计算末端位置。在关节角 q = [0°, -90°, 0°, 0°, 0°, 0°] 的位形下,名义末端位置为:

p_nominal = [150 + 600 + 120, 0, 400 + 620 + 100] = [870, 0, 1120] mm

考虑关节2零位偏差 δθ₂ = +0.08° 和连杆长度误差 δa₂ = +0.35mm,重新计算实际末端位置。由于 δθ₂ 的存在,连杆2和连杆3的末端会产生一个横向偏移:

δp_x ≈ a₂·cos(θ₂)·δθ₂ + δa₂·cos(θ₂) ≈ 600·cos(-90°)·0.08·π/180 + 0.35·cos(-90°) ≈ 0 + 0 ≈ 0
δp_z ≈ -a₂·sin(θ₂)·δθ₂ - δa₂·sin(θ₂) ≈ -600·sin(-90°)·0.001396 - 0.35·sin(-90°) ≈ +0.838 + 0.35 ≈ +1.19 mm

可见,仅这两项误差就导致末端在Z方向产生约 1.19mm 的偏差,加上其他关节的微小误差,最终累积到 ±2.5mm 是合理的。

操作步骤:

  1. 使用激光跟踪仪测量机器人末端在多个位形下的实际位置(至少30个采样点);
  2. 基于DH参数建立误差模型 δp = J·δξ,其中 J 为雅可比矩阵,δξ 为待辨识参数误差向量;
  3. 采用最小二乘法求解 δξ,得到关节2零位偏差 δθ₂ ≈ +0.079°、连杆长度误差 δa₂ ≈ +0.34mm 等辨识结果;
  4. 将辨识结果写入控制器参数,重新测量验证。

结果对比:补偿后末端定位精度提升至 ±0.3mm,满足工艺要求。值得注意的是,若仅修正零位偏差而不修正连杆长度误差,精度只能提升到 ±0.8mm,说明多参数联合辨识的必要性。

复盘经验:在标定实践中,建议优先辨识关节零位偏差和连杆长度误差,这两项通常贡献了80%以上的末端位置误差。同时,采样位形应尽量覆盖机器人工作空间的不同区域,避免雅可比矩阵病态导致辨识结果不稳定。

2.6 常见误区与总结

在运动学建模与标定准备阶段,工程师常犯以下错误:

  • 混淆SDH与MDH:标准DH(SDH)和改进DH(MDH)的坐标系定义不同,变换矩阵形式也有差异。在标定软件中必须明确使用哪一种,否则参数辨识结果将完全错误。
  • 忽略关节柔性:运动学模型假设连杆为刚体,但实际机器人关节减速器存在弹性变形。在高负载或高速运动下,柔性误差可能超过几何误差,此时需要引入额外的柔性误差模型。
  • 过度依赖名义参数:有些工程师直接使用CAD模型中的名义DH参数进行标定,而不考虑装配公差和磨损。实际上,出厂后的机器人参数与CAD名义值往往有显著差异。
  • 忽视坐标系定义:基座坐标系和末端工具坐标系的定义必须与实际测量基准一致。若激光跟踪仪的靶球安装位置与理论工具坐标系不重合,需要先进行工具坐标系标定(TCP标定)。
风险提示:在建立误差模型时,若DH参数中存在接近平行的相邻关节轴(如关节2和关节3),标准DH模型会出现参数耦合问题,导致辨识矩阵奇异。此时应改用POE模型或MDH模型,或者对DH参数进行重新参数化(如增加一个微小的β参数)。

本章所建立的运动学数学基础,是后续所有标定算法的理论基石。无论是基于DH参数的误差模型,还是基于POE的旋量误差模型,其核心都是通过齐次变换矩阵将关节空间的微小参数偏差映射到笛卡尔空间的末端位姿误差。下一阶段,我们将在此基础上引入误差模型的具体构建方法与参数辨识算法。