3. 运动指令编程
FANUC机器人的TP程序里,运动指令是出现频率最高的一类指令。它决定了机器人“从哪里出发、经过什么路径、以多快速度、到达什么姿态”。如果只记住指令名字而不理解路径约束和速度参数的含义,程序往往能跑通却不可用:要么轨迹偏离工艺要求,要么节拍过长,要么在奇异点附近报警停机。本节围绕三条核心运动指令——关节运动 J、直线运动 L、圆弧运动 C——讲清它们的格式、适用场景以及速度参数的设定方法。
一、三种运动指令的路径本质
三条指令最根本的区别在于路径是否受控。关节运动 J 只保证起点和终点位姿正确,中间路径由各轴独立插补决定,因此路径不可预测,但速度最快、不易出现奇异点问题。直线运动 L 保证工具中心点(TCP)沿两点之间的直线移动,姿态按线性插值变化,路径可预测。圆弧运动 C 则通过“起点—中间点—终点”三点确定一段圆弧,TCP 沿圆弧移动,用于焊接、涂胶、打磨等需要曲线轨迹的场合。
理解这一点后,选择指令就有了依据:只关心到达位置、不关心中间怎么走,用 J;需要走直线、需要控制姿态变化,用 L;需要走圆弧,用 C。实际程序中,J 常用于安全过渡和远距离移动,L 和 C 用于工艺段。
二、指令格式与关键字段
TP 程序中,运动指令的典型格式如下:
J P[2] 80% FINE
L P[3] 200mm/sec FINE
C P[4] P[5] 150mm/sec CNT50
每条指令由四部分组成:运动类型(J/L/C)、目标位置(P[n])、速度、定位方式(FINE 或 CNT)。圆弧指令 C 比较特殊,它需要两个位置:第一个是圆弧中间点,第二个是圆弧终点,而圆弧起点是上一条运动指令的终点。因此 C 指令不能作为程序的第一条运动指令,前面必须已经有一条运动指令确定了起点。
定位方式 FINE 表示机器人精确到达目标点后才执行下一条指令,适合需要精确定位的抓取、放置点;CNT 表示在接近目标点时提前圆滑过渡,不减速到零,适合连续轨迹的焊接、涂胶。CNT 后面的数字(0~100)表示过渡程度,数值越大过渡越圆滑,但轨迹偏离目标点也越远。
三、速度参数设定
速度参数的设定必须与运动类型匹配,这是初学者最容易出错的地方。
- J 指令使用百分比速度,如
80%,表示相对于各轴最大速度的百分比。注意这个百分比不是 TCP 的线速度,而是关节速度的参考值。 - L 和 C 指令使用绝对线速度,单位是
mm/sec,如200mm/sec。这个速度是 TCP 沿路径的实际移动速度。
速度设定还要考虑工艺要求。例如弧焊时,焊接速度通常由工艺参数决定,常见范围在 5~20mm/sec;搬运时可以用较高的速度,如 500~1500mm/sec。速度过高会导致轨迹跟踪误差增大,速度过低则影响节拍。实际调试时,建议先用较低速度验证路径,确认无误后再逐步提高。
SHIFT + 方向键快速调整速度倍率,但程序中的速度值不会因此改变,倍率只影响当前手动运行速度。
四、速度与定位方式的配合
速度参数和定位方式需要配合使用。以焊接为例,如果使用 L P[3] 10mm/sec FINE,机器人会在每个点精确停止再启动,焊缝会出现停顿痕迹;改用 L P[3] 10mm/sec CNT50,机器人会在接近终点时圆滑过渡,焊缝连续。但 CNT 值不能盲目加大,否则在拐角处会切角,导致焊缝偏离。一般建议在直线段用 CNT50~CNT80,在需要精确拐角的位置用 FINE 或较小的 CNT 值。
圆弧运动的速度设定与直线运动类似,但要注意圆弧的半径和速度的关系。半径越小,同样的线速度下角速度越大,对机器人各轴的动态响应要求越高。如果圆弧半径很小而速度设定过高,可能会出现轨迹误差或报警。此时应适当降低速度,或改用多个小直线段逼近圆弧。
五、实操示例:三点圆弧轨迹
假设需要机器人从 P[1] 出发,经过 P[2] 和 P[3] 画一段圆弧,然后回到 P[4]。程序可以这样写:
1: J P[1] 80% FINE
2: L P[2] 100mm/sec FINE
3: C P[3] P[4] 50mm/sec CNT30
4: L P[5] 200mm/sec FINE
第 1 行用 J 快速移动到起点 P[1],第 2 行用 L 直线移动到圆弧起点 P[2],第 3 行用 C 从 P[2] 经过 P[3] 到达 P[4],第 4 行用 L 离开。注意第 3 行的速度是 50mm/sec,比直线段低,这是因为圆弧段需要更平稳的轨迹控制。
L 指令。
六、常见问题与判断依据
调试运动指令时,可以通过以下现象判断问题所在:如果机器人路径明显偏离预期,检查是否误用了 J 指令代替 L;如果机器人到达目标点后有明显停顿,检查是否用了 FINE 而实际需要 CNT;如果圆弧段出现报警,检查三点是否共线或半径是否过小;如果速度达不到设定值,检查是否受到奇异点或关节限位影响。
掌握这三种运动指令的格式和速度设定,是编写可靠 TP 程序的基础。实际编程时,建议先在低速度下验证路径,确认无误后再逐步提高速度,并注意观察机器人运行状态和轨迹精度。