15.4.8 高级规划指令
15.4.8.1 RelTool
说明 |
在当前指令指定的工具坐标系下对空间位置进行平移或者旋转。 |
定义 |
返回值,数据类型 |
示例 |
例 1 |
注意 |
xMate CR 系列的 5 轴机型,由于一个姿态自由度的缺失,在使用 RelTool 命令时会有较多点位不可达情况,需要结合可达姿态特点确定偏移(如在法兰平行基座的情况下点位的平移通常都可达)。 |
15.4.8.2 Offs
说明 |
位置偏移函数,用于把某个点在当前指令中指定的工件坐标系下偏移一段距离并返回新点的位置值,平移偏移量由 x、y、z 三个量来表示,姿态旋转偏移量由 Rx、Ry、Rz 表示。 |
定义 |
返回值,数据类型 |
示例 |
例 1 |
注意 |
该指令暂时不支持辅助编程。 |
15.4.8.3 ConfL
说明 |
该指令开启后进行两个方面的检查: |
示例 |
例 1 |
注意 |
1. ConfL 指令对应 MoveL、MoveC 等笛卡尔运动指令,不对 MoveJ、MoveAbsJ 指令产生影响,也不会对「点位运动至」的 conf 设定产生影响。 |
15.4.8.4 ConfJ
说明 |
笛卡尔坐标对应一组 conf 参数(cf1~7, cfx),用户手动更改或写入的笛卡尔坐标点对应的 conf 数据可能是错误的,导致控制器无法解析出目标点的路径,但是存在部分场景,用户只关心机器人 TCP 点的位置而不关心姿态,此时可以使用 ConfJ Off 解除点位求解的 conf 限制,让控制器尝试计算出离路径起点最(较)近的逆解(可能算不出来,导致运动指令失败)。可以阅读 confdata 的介绍,了解更多 conf 相关的知识。 |
示例 |
例 1 |
注意 |
ConfJ 指令对应 MoveJ 指令,不对其他运动指令产生影响,也不会对「点位运动至」的 conf 设定产生影响。 |
15.4.8.5 Conf
说明 |
ConfL 和 ConfJ 的统一开启、关闭指令。具体效果为: |
示例 |
例 1 |
15.4.8.6 VelSet
说明 |
当机器人搬运易碎物品时,可使用 VelSet 指令调节最大运动速度以达到更加平顺的运动效果。机器人在实际运动路径下,每个关节的最大速度能力往往并非恒定值,而是会随着负载状态、本体姿态等因素始终处于变化中,VelSet 指令是对特定任务路径下的最大速度能力曲线进行的缩放,缩放后的最大速度能力曲线同样也是一条变化的曲线。 |
定义 |
|
示例 |
例 1 |
注意 |
1.VelSet 指令只影响所在的 RL 工程的运动指令,对非工程的 JOG 功能、运动至功能、快速移动功能等均不生效。
|
15.4.8.7 AccSet
说明 |
当机器人搬运易碎物品时,可使用 AccSet 指令调节加速度以达到更加平顺的运动效果。 |
定义 |
|
示例 |
例 1 |
注意 |
发生以下操作时,加速度自动恢复为默认大小(100%):
|
15.4.8.8 BreakLookAhead
说明 |
该指令通知控制系统取消前瞻,强制取消上一条运动指令和下一条运动指令之间的转弯区。机器人 TCP 将运行至上一条运动指令的目标点后,再向下一个点位运动,不衔接转弯区。程序指针也将等待 TCP 运行至上一条运动指令的目标点后,再继续往下前瞻扫描。 |
定义 |
指令无参数和返回值。 |
示例 |
例 1 |
15.4.8.9 GetRobotMaxLoad
说明 |
获取当前型号机器人的最大负载值。 |
定义 |
|
示例 |
例 1 |
15.4.8.10 GetRobotState
说明 |
获取控制系统当前的运行状态。用 4 个字节的 bit 信息来表示控制系统的状态,包括故障、紧急停止、安全门、操作模式、伺服模式、运动状态等信息。具体如下表。 |
定义 |
|
示例 |
例 1 |
| 序号 | 状态位 | 含义 |
|---|---|---|
1 |
Byte[1].bit[1] |
1:控制系统未授权 |
2 |
Byte[1].bit[2] |
1:控制系统可恢复故障 |
3 |
Byte[1].bit[3] |
1:控制系统致命错误 |
4 |
Byte[1].bit[4] |
1:伺服系统故障 |
5 |
Byte[1].bit[5] |
1:伺服系统致命故障 |
6 |
Byte[1].bit[6] |
1:紧急停止 |
7 |
Byte[1].bit[7] |
1:安全门停止 |
8 |
Byte[1].bit[8] |
保留 |
9 |
Byte[2].bit[1] |
上电状态,0:电机未上电;1:电机已上电 |
10 |
Byte[2].bit[2] |
机器人运动状态,0:空闲;1:运动中 |
11 |
Byte[2].bit[3] |
操作模式,0:手动模式;1:自动模式 |
12 |
Byte[2].bit[4] |
伺服模式,0:位置模式;1:力矩模式 |
13 |
Byte[2].bit[5] |
保留 |
14 |
Byte[2].bit[6] |
保留 |
15 |
Byte[2].bit[7] |
保留 |
16 |
Byte[2].bit[8] |
保留 |
17 |
Byte[3] |
保留 |
18 |
Byte[4] |
保留 |
15.4.8.11 AutoIgnoreZone
说明 |
用于指定是否允许控制系统自动忽略转弯区。 |
定义 |
如上图所示:机器人运行两条 MoveL 指令,中间含有 z50 的转弯区。机器人在运动的过程中,为了运动的柔顺性和安全性,需要从当前位置,向前前瞻一段距离。例如,机器人运动到 P0 点时,前瞻到了 P1 点。在此过程中,控制系统会对 p0 到 p1 点间的信息进行预处理。 两条运动指令间加入了非常多的打印指令,控制系统处理完第一条运动指令后,经过很长时间才能收到第二条运动指令。 |
示例 |
例 1 例 2 |
15.4.8.12 MotionWaitAtFinePoint true/false
说明 |
机器人静止状态时,点击启动,控制系统会依据前瞻参数,前瞻一段距离后再启动机器人。该指令用于设定,当前瞻遇到 fine 点时,机器人是否立即启动运动。 |
定义 |
|
示例 |
例 1 例 2 |
15.4.8.13 IgnoreOverride
说明 |
焊接、涂胶等对沿路径的运动速度有严格要求的场景,希望工艺段的运动速度不受全局速率影响。可以通过该指令,暂时屏蔽速率滑块对运动指令的影响,使指定某段运动指令、轨迹不受全局速率影响。 |
定义 |
|
示例 |
例 1 例 2(手动模式) 例 3(自动模式) |
注意 |
受影响的运动指令:MoveAbsJ、MoveJ、MoveL、MoveC、MoveCF、MoveT、SearchL、SearchC、TrigL、TrigC、TrigJ。 |
15.4.8.14 SpeedRefresh
说明 |
用于覆盖当前运动程序任务中的速度值。 |
定义 |
|
示例 |
例 1 |
注意 |
|
15.4.8.15 CSpeedOverride
说明 |
用户读取当前速度覆盖值。 |
定义 |
|
示例 |
例 1 |
15.4.8.16 SetRobotJointsMaxAcc
说明 |
用于动态修改机器人轴的最大加速度值,当需要机器人放大轴的最大加速度值,提升节拍,增加机器人运行速度时,可使用该指令对每个轴设置最大加速度。指令的效果与通过 HMI 设置运动参数下的「最大轴加速度」是一致的,该指令可以针对特定的运动指令设置该效果。 |
定义 |
|
示例 |
例 1 |
注意 |
当两段轨迹存在转弯区时,转弯区按照最大轴加速度小的约束生成。 |
15.4.8.17 SetRobotJointsMaxJerk
说明 |
用于动态修改机器人轴的最大加加速度值,当需要机器人放大轴的最大加加速度值,提升节拍,增加机器人运行速度时,可使用该指令对每个轴设置最大加加速度。指令的效果与通过 HMI 设置运动参数下的「最大轴加加速度」是一致的,该指令可以针对特定的运动指令设置该效果。 |
定义 |
|
示例 |
例 1 |
注意 |
当两段轨迹存在转弯区时,转弯区按照最大轴加加速度小的约束生成。 |
15.4.8.18 ResetRobotJointsMaxAcc
说明 |
用于恢复轴最大加速度为默认的值,配合 SetRobotJointsMaxAcc 指令使用;生效后以上指令的效果被清除。 |
定义 |
|
示例 |
例 1 |
15.4.8.19 ResetRobotJointsMaxJerk
说明 |
用于恢复轴最大加加速度为默认的值,配合 SetRobotJointsMaxJerk 指令使用;生效后以上指令的效果被清除。 |
定义 |
|
示例 |
例 1 |
15.4.8.20 SetTransmissionOverloadParams
说明 |
用于动态修改机器人的传动过载系数,当需要机器人适当放大轴的传动过载系数,提升节拍,增加机器人运行速度时,可使用该指令对每个轴设置传动过载系数。指令的效果与通过 HMI 设置本体参数下的过载系数中的「传动过载系数」是一致的,但可以针对特定的运动指令设置该效果。 |
定义 |
|
示例 |
例 1 |
注意 |
当两段轨迹存在转弯区时,转弯区按照传动过载系数小的约束生成。 |
15.4.8.21 ResetTransmissionOverloadParams
说明 |
用于恢复机器人的传动过载系数为原来的值,配合 SetTransmissionOverloadParams 指令使用;生效后该指令的效果被清除。 |
定义 |
|
示例 |
例 1 |
15.4.8.22 SetAccRampTime
说明 |
用于设置加速度上升时间,机器人加速度从最小值增加到最大值所消耗的时间。数值越小,机器人加速越快;数值越大,机器人加速越平缓。 |
定义 |
|
示例 |
例 1 |
15.4.8.23 ResetAccRampTime
说明 |
用于恢复默认的加速度上升时间,配合 SetAccRampTime 指令使用。 |
定义 |
|
示例 |
例 1 |
15.4.8.24 SetVarValue
说明 |
实现在转弯区进行变量赋值,并且前瞻时不触发赋值操作。 |
定义 |
|
示例 |
例 1 |
注意 |
赋值过程中会发生隐式转换,如: |
15.4.8.25 SetStopAccRampTime
说明 |
用于设置到位停止阶段加速度上升时间,即针对无转弯区目标点,机器人停止阶段的加速度从最小值增加到 0 的时间。数值越小,机器人停止越快;数值越大,机器人停止越平缓。若加速度上升时间大于到位停止阶段加速度上升时间,按照较大的加速度上升时间停止。 |
定义 |
|
示例 |
例 1 |
15.4.8.26 ResetStopAccRampTime
说明 |
用于恢复默认的到位停止阶段加速度上升时间,配合 SetStopAccRampTime 指令使用。 |
定义 |
|
示例 |
例 1 |
15.4.8.27 MotionSupJointTrq
说明 |
运动监控用于在 RL 程序中随时调整机器人各关节最大出力阈值。 |
定义 |
|
示例 |
例 1 |
15.4.8.28 SetMaxMotionJerk
说明 |
设置机器人底层 otgc jerk 的数值,默认值为 300,可以通过增大此值以实现快速启停的效果,pptomain 后恢复默认值。 |
定义 |
|
示例 |
例 1 |
15.4.8.29 VibSuppression
说明 |
设置振动抑制功能开关的指令。Pptomain 时,振动抑制功能恢复 HMI 界面设置的状态(见 9.8 章中动力学设置模块的振动抑制功能)。 |
定义 |
|
示例 |
例 1 执行到 VibSuppression(on) 指令时,控制器开启振动抑制功能。后续 p1~p3 点的运动受到振动抑制功能的影响,启停时机器人的振动得到抑制,机器人的轨迹精度得到提高。执行到 VibSuppression(off) 指令时,控制器关闭振动抑制功能。 |
15.4.8.30 MotionSup
说明 |
用于打开、关闭碰撞检测功能。 |
定义 |
|
示例 |
例 1 例 2 |
15.4.8.31 MotionSupPlus
说明 |
MotionSupPlus(Motion Supervision Plus)运动监控用于在 RL 程序中随时调整机器人各关节碰撞检测灵敏度参数。 |
定义 |
|
示例 |
例 1 |
15.4.8.32 MotionSupJointTrq
说明 |
MotionSupJointTrq(Motion Supervision Joint Torque)运动监控用于在 RL 程序中随时调整机器人各关节传动力限制参数。 |
定义 |
|
示例 |
例 1 |