VWED_server/docs/sc/机器人相关.md

7.1 KiB
Raw Blame History

机器人相关模块文档 (Python版本)

机器人相关

校验机器人是否存在

  • 方法说明

    校验机器人是否存在。

async def is_robot_exist(robot_name: str) -> bool
  • 输入参数

    robot_name: string 类型,机器人名称。

  • 输出参数

    • True: 存在。
    • False: 不存在。
  • 异常

    本方法不抛出异常。

获取机器人基本信息

  • 方法说明

    获取所有机器人的详细信息,包含完整的字段信息,使用蛇形命名规范。

async def get_lite_robots_status() -> str
  • 输入参数

    无。

  • 输出参数

[
  {
    "id": "1930612644818161666",
    "tenant_id": "1000",
    "brand_id": "1900149312550977537",
    "type_id": "1900154046275993602",
    "ip_address": "192.168.1.106",
    "name": "ZKG-1",
    "scene_id": "",
    "group_id": "",
    "online_station_id": "",
    "is_online": 1,
    "is_simulation": 0,
    "is_available": 1,
    "is_accept_task": 1,
    "length": 1.51,
    "width": 0.88,
    "min_power": 30,
    "max_power": 100,
    "charge_power": 30,
    "task_power": 10,
    "exchange_power": 60,
    "amr_status": 0,
    "create_by": "admin",
    "create_time": "2025-06-05 21:08:18"
  }
]
  • 异常

    本方法不抛出异常,失败时返回空数组。

根据ID获取机器人基本信息

  • 方法说明

    根据ID或名称获取指定机器人的详细信息使用蛇形命名规范。

async def get_lite_robots_status_by_id(agv_id: str) -> str
  • 输入参数

    agv_id: string 类型机器人ID或名称。

  • 输出参数

{
  "id": "1930612644818161666",
  "tenant_id": "1000",
  "brand_id": "1900149312550977537",
  "type_id": "1900154046275993602",
  "ip_address": "192.168.1.106",
  "name": "ZKG-1",
  "scene_id": "",
  "group_id": "",
  "online_station_id": "",
  "is_online": 1,
  "is_simulation": 0,
  "is_available": 1,
  "is_accept_task": 1,
  "length": 1.51,
  "width": 0.88,
  "min_power": 30,
  "max_power": 100,
  "charge_power": 30,
  "task_power": 10,
  "exchange_power": 60,
  "amr_status": 0,
  "create_by": "admin",
  "create_time": "2025-06-05 21:08:18"
}

如果未找到机器人,返回空对象 {}

  • 异常

    本方法不抛出异常。

根据ID获取机器人位置

  • 方法说明

    根据机器人ID或名称获取机器人的位置信息使用蛇形命名规范。

async def get_vehicle_station(agv_id: str) -> str
  • 输入参数

    agv_id: string 类型机器人ID或名称。

  • 输出参数

{
  "last_station": "LM32",
  "station": "AP25"
}

如果与调度断连或未找到机器人返回空对象 {}

  • 异常

    本方法不抛出异常。

获取Core报错信息 ⚠️ 未实现

  • 方法说明

    获取Core报错信息。当前版本暂未实现此功能。

async def get_core_alarms() -> Optional[str]
  • 输入参数

    无。

  • 输出参数

    当前返回 None

  • 异常

    本方法不会抛出异常。

根据ID获取Core报错信息 ⚠️ 未实现

  • 方法说明

    根据ID获取Core报错信息。当前版本暂未实现此功能。

async def get_core_alarms_by_id(code: int) -> Optional[str]
  • 输入参数

    code: int类型错误码。

  • 输出参数

    当前返回 None

  • 异常

    本方法不会抛出异常。

获取Rbk报错信息 ⚠️ 未实现

  • 方法说明

    获取Rbk报错信息。当前版本暂未实现此功能。

async def get_rbk_alarms() -> Optional[str]
  • 输入参数

    无。

  • 输出参数

    当前返回 None

  • 异常

    本方法不会抛出异常。

根据ID获取Rbk报错信息 ⚠️ 未实现

  • 方法说明

    根据ID获取Rbk报错信息。当前版本暂未实现此功能。

async def get_rbk_alarms_by_id(code: int) -> Optional[str]
  • 输入参数

    code: int类型错误码。

  • 输出参数

    当前返回 None

  • 异常

    本方法不会抛出异常。

设置机器人软急停 ⚠️ 未实现

  • 方法说明

    设置机器人软急停。当前版本暂未实现此功能。

async def set_soft_stop(vehicle_id: str, status: bool) -> bool
  • 输入参数

    vehicle_id: string 类型,机器人名称。 status: boolean类型True: 设置机器人软急停,False: 取消机器人软急停。

  • 输出参数

    当前返回 False

  • 异常

    本方法不抛出异常。

获取机器人所有信息 ⚠️ 未实现

  • 方法说明

    获取机器人所有信息。当前版本暂未实现此功能。

async def get_robots_status() -> Optional[str]
  • 输入参数

    无。

  • 输出参数

    当前返回 None

  • 异常

    本方法不抛出异常。

查询所有机器人充电阈值

  • 方法说明

    获取所有机器人充电阈值信息,使用蛇形命名规范。

async def query_charge_param() -> Optional[str]
  • 输入参数

    无。

  • 输出参数

[
  {
    "id": "1930612644818161666",
    "name": "ZKG-1",
    "exchange_power": 60,
    "task_power": 10,
    "charge_power": 30,
    "min_power": 30,
    "max_power": 100
  }
]

当与调度断连时,本方法会返回 None;失败时返回空数组。

  • 异常

    本方法不抛出异常。

查询指定机器人充电阈值

  • 方法说明

    根据机器人名称列表获取指定机器人充电阈值信息,使用蛇形命名规范。

async def query_charge_param_by_vehicles(vehicles: str) -> Optional[str]
  • 输入参数

    vehicles: JSON 格式的字符串(数组转成字符串格式),包含要查询的机器人名称列表。

  • 输出参数

[
  {
    "id": "1930612644818161666",
    "name": "ZKG-1",
    "exchange_power": 60,
    "task_power": 10,
    "charge_power": 30,
    "min_power": 30,
    "max_power": 100
  }
]

当与调度断连时,本方法会返回 None;失败时返回空数组。

  • 异常

    本方法不抛出异常。

修改机器人充电阈值

  • 方法说明

    根据机器人ID修改机器人充电阈值信息使用蛇形命名规范。

async def modify_charge_param(param: str) -> bool
  • 输入参数

    param: JSON 格式的字符串包含机器人ID和要修改的充电参数使用蛇形命名

  • 输出参数

    • True: 修改成功。
    • False: 修改失败。
  • 异常

    本方法不抛出异常。

  • 支持的参数字段(蛇形命名):

    • exchange_power: 换货电量阈值
    • task_power: 任务电量阈值
    • charge_power: 充电电量阈值
    • min_power: 最小电量
    • max_power: 最大电量
  • 示例:

async def test_modify_charge():
    # 指定要修改的机器人ID和充电参数
    req = {
        "id": "1930612644818161666",
        "exchange_power": 65,
        "task_power": 15,
        "charge_power": 35
    }
    
    # 使用 modify_charge_param 修改阈值
    success = await robot.modify_charge_param(json.dumps(req))
    
    if success:
        print("修改充电阈值成功")
    else:
        print("修改充电阈值失败")