跳到主要内容

15.4.9 运动记录指令

15.4.9.1 PathRecStart

说明

开始记录机器人的路径。是一个停前瞻指令。
执行 PathRecStart 开启路径记录后,支持记录的运动类型有 MoveL、MoveJ、MoveAbsJ、MoveC、TrigL、TrigC、TrigJ。路径记录时 MoveC、TrigC 指令执行时不能被中断打断,否则将无法记录目标点。MoveC、TrigC 指令被中断打断时将报错停止。

定义

PathRecStart();

示例

MoveL(p1, v1000, z50, tool0, wobj0);
PathRecStart();
MoveL(p2, v1000, z50, tool0, wobj0);
前瞻到PathRecStart,停止前瞻,待PathRecStart前的运动结束后再执行PathRecStart,在此指令之后的运动指令将被记录。

15.4.9.2 PathRecStop

说明

停止记录机器人的路径,并将记录的路径信息清空。是一个停前瞻指令。

定义

PathRecStop();

示例

MoveL(p1, v1000, z50, tool0, wobj0);
PathRecStop();
MoveL(p2, v1000, z50, tool0, wobj0);
前瞻到PathRecStop,停止前瞻,待PathRecStop前的运动结束后再执行PathRecStop,在此指令之后 将不会再记录路径并且记录的路径将被清空。

15.4.9.3 PathRecBwd

说明

使机器人沿所记录的路径后退。是一个停前瞻的运动指令,PathRecBwd 的运动不会被记录。
如果运动指令之间有打断前瞻的指令,则执行记录的路径时,打断前瞻指令前的轨迹的转弯区会被设置为 z0。
执行PathRecStart 开启路径记录后,触发中断,中断中PathRecBwd 指令必须在其他运动指令之前,否则将报错停止。
PathRecBwd 无法被中断,当执行 PathRecBwd 时触发中断将报错停止。

定义

PathRecBwd();

示例

MoveAbsJ(j1, v1000, z50, tool_weld);
PathRecStart();
MoveL(p1, v1000, z50, tool0, wobj0);
MoveAbsJ(j2, v1000, z50, tool_weld);
PathRecBwd();
MoveL(p2, v1000, z50, tool0, wobj0);
PathRecStart之后记录了两条运动指令。当执行到PathRecBwd时,机器人将进行轨迹回退,从j2→p1→PathRecBwd执行时机器人的位置(j1)

15.4.9.4 PathRecFwd

说明

使机器人后退至执行 PathRecBwd 处。停前瞻的运动指令,PathRecFwd 的运动不会被记录。
如果运动指令之间有打断前瞻的指令,则执行记录的路径时,打断前瞻指令前的轨迹的转弯区会被设置为z0。
执行PathRecStart 开启路径记录后,触发中断,中断中PathRecFwd 后不可以有运动指令,否则将报错停止。
PathRecFwd 无法被中断,当执行 PathRecFwd 时触发中断将报错停止。

定义

PathRecFwd();

示例

MoveAbsJ(j1, v1000, z50, tool_weld);
PathRecStart();
MoveL(p1, v1000, z50, tool0, wobj0);
MoveAbsJ(j2, v1000, z50, tool_weld);
PathRecBwd();
PathRecFwd();
执行到PathRecBwd时,机器人进行路径回退【j2→p1→PathRecBwd执行时机器人的位置(j1)】,此时机器人在j1的位置,当执行PathRecFwd,机器人将从j1→p1→j2 回到j2位置。

15.4.9.5 GetRecStartStatus

说明

获取记录路径是否开启。

定义

bool 类型,true 表示开启,false 表示未开启。
bool GetRecStartStatus();

示例

bool b1 = GetRecStartStatus();
获取是否开启路径记录。返回true 表示开启,false则表示未开启。