4. 运动指令基础
KRL 的运动指令决定机器人 TCP 在空间中的移动方式。KUKA 提供三类基本运动指令:PTP(Point-to-Point,点到点)、LIN(Linear,直线)和 CIRC(Circular,圆弧)。它们不仅语法不同,更关键的是轨迹形状、速度定义方式和逼近行为各不相同。理解这三者的差异,是后续编写可靠运动程序的基础。
一、三类运动指令的语法结构
三条指令的基本语法形式如下:
PTP XP1 CONT Vel=100% PDAT1 Tool[1] Base[0]
LIN XP2 C_DIS Vel=0.5 m/s CPDAT2 Tool[1] Base[0]
CIRC XP3, XP4 C_DIS Vel=0.3 m/s CPDAT3 Tool[1] Base[0]
每条指令由目标点、逼近模式、速度参数、数据组(PDAT/CPDAT)以及工具和基坐标系组成。PTP 只需一个目标点;LIN 也只需一个目标点;CIRC 需要两个点——中间辅助点和终点,机器人从当前点出发,经过辅助点,再到达终点,三点确定一段圆弧。
数据组 PDAT/CPDAT 中保存了加速度、减速度、加加速度(Jerk)等动态参数。速度参数在指令中直接给出,而动态特性由数据组控制,两者配合决定运动的平滑程度。
二、速度参数的含义与差异
PTP 的速度以百分比表示,如 Vel=100%。这个百分比是相对于机器人各轴最大速度的百分比,并非 TCP 在空间中的实际线速度。因此 PTP 运动时 TCP 的实际速度是变化的,各轴同时以各自允许的速度运行,TCP 轨迹通常不是直线。
LIN 和 CIRC 的速度以实际物理单位表示,如 Vel=0.5 m/s。这是 TCP 沿直线或圆弧的实际线速度,速度大小在整个运动过程中基本恒定(加减速段除外)。这一点非常重要:如果工艺要求恒定线速度(如涂胶、焊接),必须使用 LIN 或 CIRC,而不能用 PTP。
三、逼近模式:精确到位与连续过渡
逼近模式决定机器人是否精确到达目标点。KRL 提供两种基本模式:
- 精确到位(无逼近):指令中不写逼近参数,机器人精确到达目标点后停止,再执行下一条指令。适合需要精确定位的场合,如抓取、放置。
- CONT:用于 PTP,机器人不精确停在目标点,而是以连续轨迹过渡到下一条指令。适合路径中间点,不需要精确到位。
- C_DIS:用于 LIN 和 CIRC,机器人不精确到达目标点,而是在距离目标点一定范围内开始过渡。C_DIS 后面可跟距离值,如
C_DIS 50mm,表示在距目标点 50mm 处开始过渡。
逼近模式的选择直接影响节拍时间和轨迹精度。使用 CONT 或 C_DIS 可以显著减少加减速次数,缩短循环时间,但会牺牲目标点附近的轨迹精度。工程中需要根据工艺要求权衡。
四、轨迹规划初步:从指令到实际路径
KRL 运动指令的执行过程可以理解为:指令给出目标点和约束条件,控制器根据当前位姿、目标位姿、速度参数和逼近模式,规划出各轴的位移曲线,再通过伺服驱动实现。PTP 规划的是各轴的关节空间轨迹,LIN 和 CIRC 规划的是笛卡尔空间轨迹,再通过逆运动学转换为关节角度。
下面这张图展示了三类运动指令从起点到终点的轨迹形状、速度定义方式和逼近行为的对比关系:
从图中可以直观看出:PTP 的 TCP 轨迹是曲线,速度以百分比定义;LIN 的 TCP 轨迹是直线,速度以 m/s 定义;CIRC 的 TCP 轨迹是圆弧,需要辅助点和终点两个点,速度同样以 m/s 定义。三者的逼近模式都支持精确停止或连续过渡,但 PTP 用 CONT,LIN/CIRC 用 C_DIS。
五、工程选择建议
在实际编程中,选择哪种运动指令取决于工艺需求:
- 需要快速移动、对路径形状无要求时,用 PTP,速度百分比可设高一些,中间点用 CONT 过渡。
- 需要 TCP 沿直线运动、要求恒定线速度时,用 LIN,如涂胶、切割、焊接。
- 需要 TCP 沿圆弧运动时,用 CIRC,如圆弧焊缝、圆弧涂胶。
- 需要精确定位时,不使用逼近模式,让机器人精确到达目标点。