GBH_Ability/Arm.md
2025-09-26 03:34:24 +00:00

4.6 KiB
Raw Permalink Blame History

手臂轨迹控制能力接口

接口列表

task_type

task_type 任务说明
0 手臂轨迹控制任务

手臂轨迹控制任务启动

请求地址

POST /api/task/start_task

请求参数

字段名 类型 必填 默认值 说明 示例值
task_type int64 任务类型id 0
payload object 任务输入参数
├─ label string 轨迹名称 “track1”

label值说明

轨迹名称 描述
track1 起手式
track2 去传送带抓
track3 抓起检测
track4 放成品框
track5 回起手式
track6 放废品框
track7 回起手式
track8 落手

响应参数

字段名 类型 说明 示例值
task_id string 任务id "e5672a6e-0bc2-4646-a019-dd914034e3ed"

示例请求

{
    "task_type": 0,
    "payload": {
      "label": “track1
    }
}

示例返回

{
    "task_id": "e5672a6e-0bc2-4646-a019-dd914034e3ed"
}

需要根据task_id向能力框架查询任务执行情况。 如果执行成功或执行中在向能力框架查询到的任务执行情况payload字段如下status字段为running或finished

// 执行成功payload
{
  "end_time": "2025-09-16 21:41:46.834",
  "executor_id": "12034fd5-86e0-402b-bb0d-30fad009d56a",
  "executor_type": "ability",
  "id": "61072e7b-5f2c-41f5-b7ba-65d7b7e264bc",
  "start_time": "2025-09-16 21:41:46.808",
  "state": "finished",
  "timeout": 0
  "payload": {
    "result": [
                      {
                "status": "success",
                "full_path": "/control/PR2_ROBOT1/play",
                "method": "POST",
                "sent_payload": {
                  "action": "play",
                  "params": {
                    "goal_arm": "right",        
                    "left_cur_pos": [
                      0.55,
                      0.167,
                      0.966
                    ],
                    "right_cur_pos": [
                      0.55,
                      -0.167,
                      0.966
                    ],
                    "left_angle": [
                      1.57,
                      0,
                      0
                    ],
                    "right_angle": [
                      0,
                      0,
                      1.57
                    ]
                  },
                  "robot_name": "PR2_ROBOT1"
                }
              }

    ]
  },
  "message": ""  
}

如果执行失败在向能力框架查询到的任务执行情况payload字段status字段为error

// 执行失败
{
  "end_time": "2025-09-16 21:41:46.834",
  "executor_id": "12034fd5-86e0-402b-bb0d-30fad009d56a",
  "executor_type": "ability",
  "id": "61072e7b-5f2c-41f5-b7ba-65d7b7e264bc",
  "start_time": "2025-09-16 21:41:46.808",
  "state": "error",
  "timeout": 0
  "payload": {
    "result": [
                        {
                "status": "error",
                "full_path": "/control/PR2_ROBOT1/play",
                "method": "POST",
                "sent_payload": {
                  "action": "play",
                  "params": {
                    "goal_arm": "right",        
                    "left_cur_pos": [
                      0.55,
                      0.167,
                      0.966
                    ],
                    "right_cur_pos": [
                      0.55,
                      -0.167,
                      0.966
                    ],
                    "left_angle": [
                      1.57,
                      0,
                      0
                    ],
                    "right_angle": [
                      0,
                      0,
                      1.57
                    ]
                  },
                  "robot_name": "PR2_ROBOT1"
                }
              }

    ]
  },
  "message": "sendArmCrtlObjectCmd failed !!!"  
}