8.4 KiB
8.4 KiB
机器人调度接口文档
机器人通用动作 (CAgvOperationBp)
本接口用于执行机器人的通用动作操作,包括移动、取放货等。
描述
本块用于执行机器人的通用动作,提供了丰富的参数来满足各种场景下的动作需求,如移动到特定位置、携带货物等。
输入参数
参数名 | 中文名称 | 是否必填 | 类型 | 描述 |
---|---|---|---|---|
targetSiteLabel | 目标站点名 | 必填 | String | 目标站点的名称或标识 |
spin | 允许随动 | 非必填 | Boolean | 是否允许机器人在移动中同时进行旋转 |
adjustInfo | 调整 | 非必填 | JSONArray | 机器人精细调整的参数信息 |
task | 指令 | 非必填 | JSONArray | 机器人执行的动作 |
输出参数
参数名 | 中文名称 | 类型 | 描述 |
---|---|---|---|
success | 成功标志 | Boolean | 操作是否成功 |
message | 消息 | String | 操作结果消息 |
code | 返回代码 | Number | 操作结果代码 |
data | 数据 | Object | 返回数据对象 |
data.taskId | 任务ID | String | 生成的任务ID |
调用示例
// 输入参数示例
{
"targetSiteLabel": "storage_B",
"postAction": "load",
"goodsId": "box456",
"isEndAction": false,
"max_speed": 1.2,
"max_wspeed": 0.5,
"spin": true,
"adjustInfo": [
{"type": "position", "x": 0.05, "y": 0.02, "theta": 0.1}
]
}
// 成功响应示例
{
"success": true,
"message": "机器人移动成功,目标站点: storage_B, 货物ID: box456, 任务ID: TASK20230501002",
"code": 200,
"data": {
"taskId": "TASK20230501002"
}
}
// 失败响应示例
{
"success": false,
"message": "机器人通用动作失败: 机器人当前不可用",
"code": 503
}
选择执行机器人 (CSelectAgvBp)
本接口用于从可用机器人中选择一个适合执行任务的机器人。
描述
本块用于根据指定条件(优先级、标签、机器人组等)从可用机器人中选择一个最合适的执行任务。
输入参数
参数名 | 中文名称 | 是否必填 | 类型 | 描述 |
---|---|---|---|---|
priority | 优先级 | 非必填 | Long | 任务优先级,数值越大优先级越高 |
vehicle | 指定机器人 | 非必填 | String | 指定使用的机器人ID |
group | 指定机器人组 | 非必填 | String | 指定从哪个机器人组中选择 |
keyRoute | 关键路径 | 必填 | String | 机器人需要执行的关键路径 |
输出参数
参数名 | 中文名称 | 类型 | 描述 |
---|---|---|---|
success | 成功标志 | Boolean | 操作是否成功 |
message | 消息 | String | 操作结果消息 |
code | 返回代码 | Number | 操作结果代码 |
data | 数据 | Object | 返回数据对象 |
data.agvId | 选出的机器人 | String | 选择的机器人ID |
调用示例
// 输入参数示例
{
"priority": 10,
"tag": "heavy_load",
"group": "warehouse_robots",
"keyRoute": "warehouse_to_shipping",
"keyGoodsId": "pallet123",
"mapfPriority": 2
}
// 成功响应示例
{
"success": true,
"message": "从机器人组 warehouse_robots 选择机器人成功: AGV001",
"code": 200,
"data": {
"agvId": "AGV001"
}
}
// 失败响应示例
{
"success": false,
"message": "选择执行机器人失败: 没有符合条件的可用机器人",
"code": 404
}
获取机器人位置 (VehicleStationBp)
本接口用于获取指定机器人的当前位置和上一个位置信息。
描述
本块用于查询指定机器人ID的当前位置和上一个位置,可用于监控机器人状态或位置变化。
输入参数
参数名 | 中文名称 | 是否必填 | 类型 | 描述 |
---|---|---|---|---|
vehicle | 指定机器人 | 必填 | String | 要查询的机器人ID |
输出参数
参数名 | 中文名称 | 类型 | 描述 |
---|---|---|---|
success | 成功标志 | Boolean | 操作是否成功 |
message | 消息 | String | 操作结果消息 |
code | 返回代码 | Number | 操作结果代码 |
data | 数据 | Object | 返回数据对象 |
data.station | 当前位置 | String | 机器人当前所在位置 |
data.lastStation | 上次位置 | String | 机器人上一个所在位置 |
调用示例
// 输入参数示例
{
"vehicle": "AGV001"
}
// 成功响应示例
{
"success": true,
"message": "获取机器人 AGV001 位置成功,当前位置: station_C, 上次位置: station_A",
"code": 200,
"data": {
"station": "station_C",
"lastStation": "station_A"
}
}
// 失败响应示例
{
"success": false,
"message": "获取机器人位置失败: 机器人ID不存在",
"code": 404
}
获取机器人电量 (GetBatteryLevelBp)
本接口用于获取指定机器人的当前电量水平。
描述
本块用于查询指定机器人ID的当前电量水平,可用于监控机器人的电量状态,以便及时充电或调度管理。
输入参数
参数名 | 中文名称 | 是否必填 | 类型 | 描述 |
---|---|---|---|---|
vehicle | 机器人ID | 必填 | String | 要查询的机器人ID |
输出参数
参数名 | 中文名称 | 类型 | 描述 |
---|---|---|---|
success | 成功标志 | Boolean | 操作是否成功 |
message | 消息 | String | 操作结果消息 |
code | 返回代码 | Number | 操作结果代码 |
data | 数据 | Object | 返回数据对象 |
data.batteryLevel | 电量 | Double | 机器人当前电量水平,范围0-1,表示0-100% |
调用示例
// 输入参数示例
{
"vehicle": "AGV002"
}
// 成功响应示例
{
"success": true,
"message": "获取机器人 AGV002 电量成功,当前电量: 85.5%",
"code": 200,
"data": {
"batteryLevel": 0.855
}
}
// 失败响应示例
{
"success": false,
"message": "获取机器人电量失败: 机器人ID不存在",
"code": 404
}
获取机器人PGV码 (GetPGVCodeBp)
本接口用于获取机器人的PGV码信息,用于定位和导航。
描述
本块用于获取指定机器人ID的PGV码信息,PGV码用于机器人的精确定位和导航,通过查询可以确定机器人是否正确识别到二维码信息。
输入参数
参数名 | 中文名称 | 是否必填 | 类型 | 描述 |
---|---|---|---|---|
vehicle | 机器人ID | 必填 | String | 要查询的机器人ID |
输出参数
参数名 | 中文名称 | 类型 | 描述 |
---|---|---|---|
success | 成功标志 | Boolean | 操作是否成功 |
message | 消息 | String | 操作结果消息 |
code | 返回代码 | Number | 操作结果代码 |
data | 数据 | Object | 返回数据对象 |
data.codeInfo | 二维码信息 | Boolean | 机器人是否识别到有效的PGV码 |
调用示例
// 输入参数示例
{
"vehicle": "AGV003"
}
// 成功响应示例
{
"success": true,
"message": "获取机器人 AGV003 PGV码成功,二维码信息: 有效",
"code": 200,
"data": {
"codeInfo": true
}
}
// 失败响应示例
{
"success": false,
"message": "获取机器人PGV码失败: 无法连接到机器人",
"code": 503
}