3. 机器人运动学与姿态配置

离线仿真中,机器人能不能“动得像真机”,取决于运动学模型是否与控制器一致。仿真软件里拖出来的轨迹再漂亮,如果DH参数、工具坐标系(TCP)或关节限位与现场机器人不匹配,导出的程序上机后就会出现位置偏差、姿态翻转甚至碰撞。本节围绕仿真环境中的运动学配置展开,重点讲清楚DH参数怎么填、正逆解在仿真里如何被调用、奇异点与关节限位如何影响可达性,以及工具坐标系如何设定并验证。

一、DH参数:仿真运动学模型的骨架

DH(Denavit-Hartenberg)参数用四个量描述相邻连杆坐标系之间的变换:连杆长度 a、连杆扭角 α、关节偏置 d、关节角 θ。标准DH把坐标系固定在连杆远端,改进DH(Modified DH)把坐标系固定在近端,两者变换顺序不同,仿真软件通常会在机器人模型属性里明确标注使用哪一种。以常见的六轴工业机器人为例,其标准DH参数示例(数值为教学假设,非某型号实测值)如下:

关节 iai-1 /mmαi-1 /°di /mmθi 范围 /°
100400-170 ~ 170
2150-900-110 ~ 110
360000-90 ~ 70
4120-90620-180 ~ 180
50900-120 ~ 120
60-90100-360 ~ 360

在仿真软件中配置时,需要逐关节核对:a 与 d 的单位(mm 还是 m)、α 的正负号、零位姿态下各关节角的定义。很多“仿真位置对、上机偏几十毫米”的问题,根源就是 d 的符号或单位填错。配置完成后,可用一组已知关节角做正解验证:把六个关节角代入变换矩阵连乘,得到法兰位姿,再与仿真软件中“示教到该关节角”后读出的法兰位姿对比,误差应在 0.1 mm 量级以内。

二、正解与逆解在仿真中的调用方式

正解(FK)是给定关节角求末端位姿,计算唯一、稳定,仿真中用于显示机器人姿态、碰撞检测和轨迹采样。逆解(IK)是给定末端位姿求关节角,六轴机器人通常存在多组解(肩前/肩后、肘上/肘下、腕翻转),仿真软件需要根据配置标志(如 shoulder=front, elbow=up, wrist=flip)选出一组。实操中常见的做法是:先示教几个关键点,记录其关节角与笛卡尔位姿,再让仿真沿直线或圆弧插补,观察逆解是否连续。

如果相邻两个插补点的关节角发生大幅跳变(例如 J4 从 +170° 跳到 -170°),说明逆解在两组解之间切换,实际机器人会突然翻转。处理方式是固定配置标志,或在轨迹规划时限制关节角变化率。仿真软件一般提供“关节空间插补”和“笛卡尔空间插补”两种模式:前者直接对关节角插值,不会出现逆解跳变,但末端轨迹不是直线;后者末端走直线,但需要逆解连续。选择哪种,取决于工艺要求。

仿真运动学配置与验证链路 DH参数表 a / α / d / θ 标准DH 或 改进DH 正解 FK 关节角 → 法兰位姿 唯一解,用于显示 逆解 IK 位姿 → 关节角(多解) 需配置标志选解 配置标志 肩前/后 肘上/下 腕翻转 轨迹插补:关节空间 vs 笛卡尔空间 关节插补不跳变 / 笛卡尔插补末端走直线但需逆解连续 奇异点 腕部奇异:J5 ≈ 0° 肩部奇异:腕心在J1轴线上 肘部奇异:臂完全伸展 关节限位 软限位:软件设定范围 硬限位:机械挡块 超限 → 仿真报错/停机 工具坐标系 TCP 相对法兰的 x/y/z/rx/ry/rz 四点法/六点法标定 仿真中验证TCP轨迹 验证:正解对比法兰位姿 / 逆解连续性 / 限位与奇异点检查

三、奇异点:仿真中必须提前识别

奇异点是雅可比矩阵降秩的位姿,此时某些方向上的末端速度无法由关节速度合成,逆解会趋于无穷大或突然跳变。六轴机器人常见三类奇异:

  • 腕部奇异:J5 接近 0°,J4 与 J6 轴线共线,末端绕该轴的姿态无法独立控制。仿真中表现为 J4、J6 角度剧烈变化。
  • 肩部奇异:腕心落在 J1 轴线上,J1 的旋转不改变腕心位置,逆解出现无穷多组。
  • 肘部奇异:手臂完全伸展,J3 接近 0°,末端沿臂方向无法继续外伸。

在仿真中识别奇异点,可以观察关节角速度曲线:当末端以恒定速度走直线经过奇异区域时,某个关节的速度会突然飙升。处理办法包括:调整路径绕开奇异区、改用关节空间插补、或在奇异点附近降低末端速度。仿真软件通常提供“奇异点检测”开关,超过阈值时高亮报警。

四、关节限位与可达性判断

关节限位分软限位和硬限位。软限位是控制器参数中设定的角度范围,硬限位是机械挡块。仿真配置时应把软限位填入机器人模型,让仿真在规划阶段就拒绝超限姿态。判断一个目标点是否可达,需要同时满足:逆解存在、解在软限位内、不处于奇异点附近、且不与周围设备碰撞。实操中可让仿真软件对轨迹逐点做逆解,输出每个点的关节角,再检查是否越界。若某段轨迹 J2 达到 -110° 下限,说明机器人需要重新摆放底座或调整工件位置。

五、工具坐标系设定与验证

工具坐标系(TCP)描述工具末端相对于法兰的位置和姿态,通常用六个参数表示:x, y, z, rx, ry, rz。仿真中设定TCP有两种方式:一是直接输入标定得到的数值;二是用四点法或六点法在仿真里“虚拟标定”——让工具尖端对准一个固定参考点,记录四个不同姿态下的法兰位姿,反算出TCP。设定完成后,必须验证:让机器人绕TCP做姿态变化,观察工具尖端是否始终停在同一点。如果尖端画出一个圆弧,说明TCP的 x/y/z 有偏差;如果尖端位置对但工具方向不对,说明 rx/ry/rz 有偏差。

实操建议:在仿真中建立“运动学检查”例行程序——用一组已知关节角做正解,与CAD模型中的法兰位姿对比;再让机器人走一条包含姿态变化的短轨迹,检查逆解连续性和限位。这两步通过后,再开始正式轨迹规划,可以避免后期大量返工。
常见错误:把标准DH参数直接填入要求改进DH的仿真软件,或把 α 的符号写反。这类错误在单关节测试时不易发现,一旦走多关节联动轨迹,末端位置会明显偏离。建议配置完成后,先用三个不同姿态做正解对比,确认模型正确再继续。

运动学配置是离线仿真的地基。DH参数决定模型是否与真机一致,正逆解决定轨迹能否被正确执行,奇异点和关节限位决定轨迹是否可走,TCP决定工具末端是否按预期运动。这五项在仿真中逐一配置并验证后,后续的节拍验证和碰撞检测才有意义。