Skip to content

在线编程配置指令集

文件传输

下发前准备(第二代控制器)run_project

  • 输入参数
参数类型说明
project_namestring文件名称。
file_sizeint文件大小。
plan_speedint轨迹运行速度。
  • 输出参数
参数类型说明
run_projectboolture:设置成功;false:设置失败。
  • 代码示例

输入

实现:文件 xxx,大小是 2048,速度是 50%。

json
{"command":"run_project","project_name":"XXX","file_size":2048,"plan_speed":50}

输出

json
{
    "command": "run_project",
    "project_state": true
}

下发前准备(第三代控制器)run_project

  • 输入参数
参数类型说明
project_namestring文件名称。
file_sizeint文件大小。
plan_speedint轨迹运行速度。
only_saveint仅保存文件,不运行。
save_idint保存到控制器中的编号,支持 1-100。
step_flagint设置单步运行方式模式 1-设置单步模式 0-设置正常运动模式。
  • 输出参数
参数类型说明
run_projectboolture:设置成功;false:设置失败
  • 代码示例

输入

实现:文件 xxx,大小是 2048,速度是 50%。

json
{"command":"run_project","project_name":"XXX","file_size":2048,"plan_speed":50,"step_flag":0,"only_save":0,"save_id":0}

输出

json
{
    "command": "run_project",
    "project_state": true
}

发送过程中conduct_project

注意

从第二次开始

  • 输入参数

机械臂每收到 2K 的数据,返回一帧该指令,示教器收到后,继续发送剩余数据。

  • 输出参数
参数类型说明
project_conductboolture:接收成功;false:接收失败。
  • 代码示例

输出

json
{"command":"conduct_project","project_conduct":true}

发送校验返回download_project

  • 输入参数
参数类型说明
download_projectstring发送校验返回。
project_statestring校验结果。
err_linebool错误行数。
  • 输出参数
参数类型说明
project_stateboolture:设置成功;false:设置失败。
  • 输出参数
参数类型说明
project_stateboolture:设置成功;false:设置失败
err_lineint校验失败,err_line 为有问题的工程行数,示教器弹框提示,并将该行轨迹标红。若 err_line 为 0,则代表校验数据长度不对。
  • 代码示例

输出

校验成功,示教器弹框提示。

json
{
    "command": "download_project",
    "project_state": true
}

输出

校验失败,err_line 为有问题的工程行数,示教器弹框提示,并将该行轨迹标红。
若 err_line 为 0,则代表校验数据长度不对。

json
{
    "command": "download_project",
    "project_state": false,
    "err_line": 60
}

规划过程中改变速度系数plan_speed

  • 输入参数
参数类型说明
plan_speedstring规划过程中改变速度系数。
speedint速度。
  • 输出参数
参数类型说明
plan_stateboolture:设置成功;false:设置失败
  • 代码示例

输入

实现:设置速度比例系数为 50%。

json
{"command":"plan_speed","speed":50}

输出

json
{
    "command": "plan_speed",
    "plan_state": true
}

提示框

弹窗提示content

文件树弹窗提醒。本指令是控制器发送给示教器,返回值是示教器发送给控制器

  • 输入参数
参数类型说明
contentint弹窗提示指令所在文件树的位置。
  • 输出参数
参数类型说明
popup_resultboolture:继续执行;flase:停止执行;
  • 代码示例

输入

实现:执行文件树第一条弹窗。

json
{"state":"popup","content":1}

输出

继续执行。

json
{
    "command": "popup",
    "popup_result": true
}

在线编程文件管理(第三代控制器)

注意

适用第三代控制器。

查询在线编程程序列表get_program_trajectory_list

  • 输入参数
参数类型说明
page_numint页码(全部查询时不传此参数)。
page_sizeint每页大小(全部查询时不传此参数)。
vague_searchstring模糊搜索 (传递此参数可进行模糊查询)。
  • 输出参数
参数类型说明
page_numint页序列号。
page_sizeint每页大小。
total_sizeint总大小。
vague_searchstring模糊搜索 (传递此参数可进行模糊查询)。
listlist轨迹列表信息。
  • 代码示例

输入

查询已存储的轨迹列表,支持可分页查询和模糊查询。

json
{"command":"get_program_trajectory_list","page_num":1,"page_size":10,"vague_search":"file"}

输出

json
{
    "command": "get_program_trajectory_list",
    "page_num": 1,
    "page_size": 2,
    "total_size": 2,
    "vague_search": "file",
    "list": [
        {
            "id": 1,
            "size": 2580,
            "speed": 50,
            "trajectory_name": "1_file1.txt"
        },
        {
            "id": 2,
            "size": 2580,
            "speed": 50,
            "trajectory_name": "2_file2.txt"
        }
    ]
}

查询在线编程状态get_program_run_state

  • 输入参数
参数类型说明
get_program_run_statestring查询当前在线编程文件的运行状态
  • 输出参数
参数类型说明
run_stateint0 未开始 1 运行中 2 暂停中。
idint运行轨迹编号,已存储轨迹的 id,没有存储则为 0,未运行则不返回。
plan_numint运行到的行数,未运行则不返回。
loop_numint存在循环指令的行数,未运行则不返回。
loop_contint循环指令行数对应的运行次数,未运行则不返回。
step_modeint单步模式,1 为单步模式,0 为非单步模式。
plan_speedint全局规划速度比例 1-100。
edit_idint上次编辑的在线编程编号 id。
  • 代码示例

输入

查询已存储的轨迹列表,支持可分页查询和模糊查询。

json
{ "command": "get_program_run_state" }

输出

json
{
    "command": "get_program_run_state",
    "run_state": 1,
    "id": 1,
    "plan_num": 1,
    "loop_num": [
        1
    ],
    "loop_cont": [
        3
    ],
    "step_mode": 0,
    "plan_speed": 50,
    "edit_id": 1
}

开始运行指定编号在线编程文件set_program_id_start

  • 输入参数
参数类型说明
set_program_id_startstring开始运行编号轨迹。
idint运行指定的 ID,1-100,存在轨迹可运行。
speedint1-100,需要运行轨迹的速度,可不提供速度比例,按照存储的速度运行。
  • 输出参数
参数类型说明
start_statebooltrue:开始运行 false:运行失败。
  • 输出参数
参数类型说明
finish_idint运行到位的轨迹 ID
  • 代码示例

输入

开始运行轨迹 2,速度 50%。

json
{"command":"set_program_id_start","id":2,"speed":50}

输出

开始运行成功。

json
{
    "command": "set_program_id_run",
    "start_state": true
}

在线编程程序结束后,会主动上报结束的 ID。

json
{
    "state": "program_run_finish",
    "finish_id": 4
}

删除指定编号在线编程文件delete_program_trajectory

  • 输入参数
参数类型说明
delete_program_trajectorystring删除指定 ID 的轨迹
idint指定的 ID,删除的 ID 号
  • 输出参数
参数类型说明
delete_statebooltrue:成功 false:失败
  • 代码示例

输入

开始运行轨迹 2,速度 50%

json
{"command":"delete_program_trajectory","id":2}

输出

json
{
    "command": "delete_program_trajectory",
    "delete_state": true
}

修改指定编号的在线编程文件

  • 输入参数
参数类型说明
update_program_trajectorystring修改指定编号轨迹的信息
idint指定在线编程轨迹编号
plan_speedint更新后的规划速度比例 1-100 (可选配置)
project_namestring更新后的文件名称(最大 10 个字节) (可选配置)
  • 输出参数
参数类型说明
update_statebooltrue:成功 false:失败
  • 代码示例

输入

修改指定编号轨迹的信息

json
{"command":"update_program_trajectory","id":1,"plan_speed":66,"p roject_name":"file"}

输出

json
{
    "command": "update_program_trajectory",
    "update_state": true
}

设置IO默认运行编号

  • 输入参数
参数类型说明
set_default_run_programstring设置IO默认运行的在线编程文件编号。
  • 输出参数
参数类型说明
set_default_run_programbooltrue:成功 false:失败
  • 代码示例

输入

设置 IO 默认运行的在线编程文件编号,支持 0-100,0 代表取消设置。

json
{"command":"set_default_run_program","id":1}

输出

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

获取 IO 默认运行编号

  • 输入参数
参数类型说明
get_default_run_programstring获取 IO 默认运行的在线编程文件编号。
  • 输出参数
参数类型说明
idintIO 默认运行的在线编程文件编号。
  • 代码示例

输入

获取 IO 默认运行编号

json
{ "command": "get_default_run_program" }

输出

json
{
    "command": "get_default_run_program",
    "id": 1
}

全局路点

注意

适用第三代控制器

新增全局路点add_global_waypoint

  • 输入参数
参数类型说明
add_global_waypointstring新增全局路点
point_namestring全局路点的名称
jointint新增全局路点的关节角度,单位 0.001°
poseobject新增全局路点的位置,位置:x:0.1m,y:0.2m,z:0.03m,姿态:rx:0.4rad,ry:0.5rad,rz:0.6rad
work_frameobject工作坐标系名称
tool_framestring工具坐标系名称
timestring新增全局路点时间
  • 输出参数
参数类型说明
add_statebooltrue 成功 false 失败
  • 代码示例

输入

新增全局路点

json
{"command":"add_global_waypoint","point_name":"abc","joint":[10,20,30,40,50,60,40],"pose":[100000,200000,30000,400,500,600],"work_frame":"World","tool_frame":"Arm_Tip","time":"2023-2-22 15:23:00"}

输出

json
{
    "command": "add_global_waypoint",
    "add_state": true
}

更新全局路点update_global_waypoint

  • 输入参数
参数类型说明
update_global_waypointstring更新全局路点指令。
point_namestring全局路点的名称。
jointint更新全局路点的关节角度,单位 0.001°。
poseobject更新全局路点的位置,位置:x:0.1m,y:0.2m,z:0.03m,姿态:rx:0.4rad,ry:0.5rad,rz:0.6rad。
work_frameobject工作坐标系名称。
tool_framestring工具坐标系名称。
timestring更新全局路点时间。
  • 输出参数
参数类型说明
update_statebooltrue 成功 false 失败
  • 代码示例

输入

更新全局路点

json
{"command":"update_global_waypoint","point_name":"abc","joint ":[10,20,30,40,50,60,40],"pose":[100000,200000,30000,400,500,600],"work_frame":"World","tool_frame":"Arm_Tip","time":"2023-2-22 15:23:00"}

输出

json
{
    "command": "update_global_waypoint",
    "update_state": true
}

删除全局路点delete_global_waypoint

  • 输入参数
参数类型说明
delete_global_waypointstring删除全局路点指令。
point_namestring全局路点的名称。
  • 输出参数
参数类型说明
delete_statebooltrue 成功 false 失败
  • 代码示例

输入

删除全局路点

json
{"command":"delete_global_waypoint","point_name":"abc"}

输出

json
{
    "command": "delete_global_waypoint",
    "delete_state": true
}

查询指定全局路点given_global_waypoint

  • 输入参数
参数类型说明
given_global_waypointstring查询指定全局路点
point_namestring全局路点的名称
  • 输出参数
参数类型说明
delete_statebooltrue 成功 false 失败
  • 代码示例

输入

查询指定全局路点

json
{"command":"given_global_waypoint","point_name":"abc"}

输出

json
{
    "command": "given_global_waypoint",
    "point_name": "abc",
    "joint": [
        10,
        20,
        30,
        40,
        50,
        60,
        40
    ],
    "pose": [
        100000,
        200000,
        30000,
        400,
        500,
        600
    ],
    "work_frame": "World",
    "tool_frame": "Arm_Tip",
    "time": "2022-12-22 15:23:00"
}

查询多个全局路点get_global_waypoints_list

  • 输入参数
参数类型说明
get_global_waypoints_liststring查询多个全局路点
page_numint页码(全部查询时不传此参数)
page_sizeint每页大小(全部查询时不传此参数)
vague_searchstring模糊搜索 (传递此参数可进行模糊查询)
  • 输出参数
参数类型说明
get_global_waypoints_liststring查询全局路点。
total_sizeint路点总数。
listobject路点详细信息。
  • 代码示例

输入

查询多个全局路点.

json
{"command":"get_global_waypoints_list","page_num":1,"page_size":10,"vague_search":"file"}

输出

json
{
    "command": "get_global_waypoints_list",
    "total_size": 50,
    "list": [
        {
            "point_name": "abcd",
            "joint": [
                10,
                20,
                30,
                40,
                50,
                60,
                40
            ],
            "pose": [
                100000,
                200000,
                30000,
                400,
                500,
                600
            ],
            "work_frame": "World",
            "tool_frame": "Arm_Tip",
            "time": "2022-12-22 15:23:00"
        },
        {
            "point_name": "1abc",
            "joint": [
                10,
                20,
                30,
                40,
                50,
                60,
                40
            ],
            "pose": [
                100000,
                200000,
                30000,
                400,
                500,
                600
            ],
            "work_frame": "World",
            "tool_frame": "Arm_Tip",
            "time": "2022-12-22 15:23:00"
        }
    ]
}