3. 机器人运动学与姿态配置
离线仿真中,机器人能不能“动得像真机”,取决于运动学模型是否与控制器一致。仿真软件里拖出来的轨迹再漂亮,如果DH参数、工具坐标系(TCP)或关节限位与现场机器人不匹配,导出的程序上机后就会出现位置偏差、姿态翻转甚至碰撞。本节围绕仿真环境中的运动学配置展开,重点讲清楚DH参数怎么填、正逆解在仿真里如何被调用、奇异点与关节限位如何影响可达性,以及工具坐标系如何设定并验证。
一、DH参数:仿真运动学模型的骨架
DH(Denavit-Hartenberg)参数用四个量描述相邻连杆坐标系之间的变换:连杆长度 a、连杆扭角 α、关节偏置 d、关节角 θ。标准DH把坐标系固定在连杆远端,改进DH(Modified DH)把坐标系固定在近端,两者变换顺序不同,仿真软件通常会在机器人模型属性里明确标注使用哪一种。以常见的六轴工业机器人为例,其标准DH参数示例(数值为教学假设,非某型号实测值)如下:
| 关节 i | ai-1 /mm | αi-1 /° | di /mm | θi 范围 /° |
|---|---|---|---|---|
| 1 | 0 | 0 | 400 | -170 ~ 170 |
| 2 | 150 | -90 | 0 | -110 ~ 110 |
| 3 | 600 | 0 | 0 | -90 ~ 70 |
| 4 | 120 | -90 | 620 | -180 ~ 180 |
| 5 | 0 | 90 | 0 | -120 ~ 120 |
| 6 | 0 | -90 | 100 | -360 ~ 360 |
在仿真软件中配置时,需要逐关节核对:a 与 d 的单位(mm 还是 m)、α 的正负号、零位姿态下各关节角的定义。很多“仿真位置对、上机偏几十毫米”的问题,根源就是 d 的符号或单位填错。配置完成后,可用一组已知关节角做正解验证:把六个关节角代入变换矩阵连乘,得到法兰位姿,再与仿真软件中“示教到该关节角”后读出的法兰位姿对比,误差应在 0.1 mm 量级以内。
二、正解与逆解在仿真中的调用方式
正解(FK)是给定关节角求末端位姿,计算唯一、稳定,仿真中用于显示机器人姿态、碰撞检测和轨迹采样。逆解(IK)是给定末端位姿求关节角,六轴机器人通常存在多组解(肩前/肩后、肘上/肘下、腕翻转),仿真软件需要根据配置标志(如 shoulder=front, elbow=up, wrist=flip)选出一组。实操中常见的做法是:先示教几个关键点,记录其关节角与笛卡尔位姿,再让仿真沿直线或圆弧插补,观察逆解是否连续。
如果相邻两个插补点的关节角发生大幅跳变(例如 J4 从 +170° 跳到 -170°),说明逆解在两组解之间切换,实际机器人会突然翻转。处理方式是固定配置标志,或在轨迹规划时限制关节角变化率。仿真软件一般提供“关节空间插补”和“笛卡尔空间插补”两种模式:前者直接对关节角插值,不会出现逆解跳变,但末端轨迹不是直线;后者末端走直线,但需要逆解连续。选择哪种,取决于工艺要求。
三、奇异点:仿真中必须提前识别
奇异点是雅可比矩阵降秩的位姿,此时某些方向上的末端速度无法由关节速度合成,逆解会趋于无穷大或突然跳变。六轴机器人常见三类奇异:
- 腕部奇异: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 有偏差。
α 的符号写反。这类错误在单关节测试时不易发现,一旦走多关节联动轨迹,末端位置会明显偏离。建议配置完成后,先用三个不同姿态做正解对比,确认模型正确再继续。
运动学配置是离线仿真的地基。DH参数决定模型是否与真机一致,正逆解决定轨迹能否被正确执行,奇异点和关节限位决定轨迹是否可走,TCP决定工具末端是否按预期运动。这五项在仿真中逐一配置并验证后,后续的节拍验证和碰撞检测才有意义。