Skip to content

拖动示教指令集

拖动示教

睿尔曼机械臂在拖动示教过程中,可记录拖动的轨迹点,并根据用户的指令对轨迹进行复现。

拖动示教开始start_drag_teach

  • 输入参数
功能描述类型说明
start_drag_teachstring拖动示教开始。
trajectory_recordint拖动示教时记录轨迹,0-不记录,1-记录轨迹。
  • 代码示例

输入

json
{"command":"start_drag_teach","trajectory_record":1}

输出

设置成功(true-设置成功,false-设置失败)。

json
{
    "command": "start_drag_teach",
    "drag_teach": true
}

拖动示教结束stop_drag_teach

  • 输入参数
功能描述类型说明
stop_drag_teachstring拖动示教结束。
json
{"command":"stop_drag_teach"}

输出 设置成功(true-设置成功,false-设置失败)。

json
{
    "command": "stop_drag_teach",
    "drag_teach": true
}

开始复合模式拖动示教start_multi_drag_teach

  • 输入参数
功能描述类型说明
start_multi_drag_teachstring开始复合模式拖动示教。
frameint拖参考坐标系,0-工作坐标系 1-工具坐标系。
free_axesint自由驱动方向,前三个元素表示TCP将按照参考坐标系的x、y、z方向平移拖动,后三个元素表示TCP将按照参考坐标系的rx、ry、rz方向旋转拖动。
singular_wallint可选参数,仅在六维力模式拖动示教中生效,用于指定是否开启拖动奇异墙,0表示关闭拖动奇异墙,1表示开启拖动奇异墙,若无配置参数,默认启动拖动奇异墙。
  • 代码示例

输入

json
{"command":"start_multi_drag_teach","free_axes":[0,1,1,0,1,0],"frame":0,"singular_wall":0}

输出

设置成功:

json
{
    "command": "start_multi_drag_teach",
    "set_state": true
}

设置失败:

json
{
    "command": "start_multi_drag_teach",
    "set_state": false
}

注意

失败的可能原因:

  • 当前机械臂非六维力版本(六维力拖动示教)
  • 机械臂当前处于IO急停状态
  • 机械臂当前处于仿真模式
  • 输入参数有误
  • 使用六维力模式拖动示教时,当前已处于奇异区

轨迹复现开始run_drag_trajectory

  • 输入参数
功能描述类型说明
run_drag_trajectorystring轨迹复现开始。
  • 代码示例

输入

json
{"command":"run_drag_trajectory"}

输出 复现成功:

json
{
    "command": "run_drag_trajectory",
    "run_state": true
}

复现失败:

json
{
    "command": "run_drag_trajectory",
    "run_state": false
}

轨迹复现暂停pause_drag_trajectory

轨迹复现过程中暂停。

  • 输入参数
功能描述类型说明
pause_drag_trajectorystring轨迹复现暂停。
  • 代码示例

输入

json
{"command":"pause_drag_trajectory"}

输出 暂停成功:

json
{
    "command": "pause_drag_trajectory",
    "pause_state": true
}

暂停失败:

json
{
    "command": "pause_drag_trajectory",
    "pause_state": false
}

轨迹复现继续continue_drag_trajectory

轨迹复现过程中暂停后继续。

  • 输入参数
功能描述类型说明
continue_drag_trajectorystring轨迹复现继续。
  • 代码示例

输入

json
{"command":"continue_drag_trajectory"}

输出 继续成功:

json
{
    "command": "continue_drag_trajectory",
    "continue_state": true
}

继续失败:

json
{
    "command": "continue_drag_trajectory",
    "continue_state": false
}

轨迹复现停止stop_drag_trajectory

  • 输入参数
功能描述类型说明
stop_drag_trajectorystring轨迹复现停止。
  • 代码示例

输入

json
{"command":"stop_drag_trajectory"}

输出 停止成功:

json
{
    "command": "stop_drag_trajectory",
    "stop_state": true
}

停止失败:

json
{
    "command": "stop_drag_trajectory",
    "stop_state": false
}

运动到轨迹起点drag_trajectory_origin

轨迹复现前,必须控制机械臂运动到轨迹起点,如果设置正确,机械臂将以20%的速度运动到轨迹起点。

  • 输入参数
功能描述类型说明
drag_trajectory_originstring轨迹复现起点。
  • 代码示例

输入

json
{"command":"drag_trajectory_origin"}

输出

json
{
    "device": 0,
    "state": "current_trajectory_state",
    "trajectory_connect": 0,
    "trajectory_state": true
}

获取拖动示教轨迹save_trajectory

  • 输入参数
参数类型说明
save_trajectorystring保存轨迹。
trajectory_nameint轨迹要保存的名称。
  • 输出参数
参数类型说明
pointlist部拖动示教点位。
  • 代码示例

输入

实现:获取刚拖动过的轨迹,在拖动示教后调用。

json
{"command":"save_trajectory","trajectory_name":"XXX"}

输出

json
{
    "point": [
        30971,
        56885,
        -3416,
        76201,
        47121,
        -4845
    ]
}

设置电流环拖动示教灵敏度set_drag_teach_sensitivity

  • 输入参数
参数类型说明
set_drag_teach_sensitivitystring设置电流环拖动示教灵敏度
  • 代码示例

输入

说明:grade百分比,取值范围0~100%

json
{"command":"set_drag_teach_sensitivity","grade":0}

输出

设置成功:

json
{
    "command": "set_drag_teach_sensitivity",
    "set_state": true
}

设置失败:

json
{
    "command": "set_drag_teach_sensitivity",
    "set_state": false
}

备注

灵敏度取0-100, 数值越小越沉,当设置为100时保持原本拖动灵敏度。

获取电流环拖动示教灵敏度get_drag_teach_sensitivity

  • 输入参数
参数类型说明
get_drag_teach_sensitivitystring获取电流环拖动示教灵敏度
  • 代码示例

输入

说明:grade百分比,取值范围0~100%

json
{"command":"get_drag_teach_sensitivity"}

输出

查询成功:

json
{
    "command": "get_drag_teach_sensitivity",
    "grade": 0
}

备注

灵敏度取0-100, 数值越小越沉,当设置为100时保持原本拖动灵敏度。