Autoxing REST API Book
  • English
  • zh-CN
GitHub
  • English
  • zh-CN
GitHub
  • 入门指南

    • 入门指南
    • 开始移动
    • WebSocket 入门指南
    • Robot Admin (单机版)
  • 参考手册

    • REST API 设计原则
    • 地图 (Map) API
    • 移动 (Move) API
    • 当前地图与位姿 API
    • 叠加层 (Overlays)
    • 建图 (Mapping) API
    • 物联网 (IoT) 设备
    • 设备信息 API
    • 机器人参数 (Robot Parameters) API
    • 系统设置 (System Settings)
    • 应用商店 API
    • 主机名 (Hostname) API
    • Lidar 陆标 (Landmarks)
    • 子图 (Submaps)
  • 服务

    • 服务 API (Service API)
    • 运动与底盘控制 (Motion & Chassis Control)
    • 定位 (Localization)
    • 建图 (Mapping)
    • 货物搬运 (Cargo Handling)
    • 感知与传感器 (Perception & Sensors)
    • 标定 (Calibration)
    • 网络 (Network)
    • 系统与维护 (System & Maintenance)
  • WebSocket 话题

    • WebSocket 参考 (WebSocket Reference)
    • 定位 (Localization)
    • 建图 (Mapping)
    • 导航与规划 (Navigation & Planning)
    • 底盘与安全 (Chassis & Safety)
    • 货物与设备 (Cargo & Equipment)
    • 感知与摄像头 (Perception & Cameras)
    • 环境与连接 (Environment & Connectivity)
    • 系统与电源 (System & Power)
  • 其他

    • 弃用说明
    • 更新日志

服务 API (Service API)

服务是触发机器人动作的 HTTP 接口。除非下文的参数块另有说明,请求体留空。

接口使用两种 URL 前缀:

  • /services/... —— 机器人服务。通常为 POST,返回 JSON。
  • /ros/... —— 从 ROS 转发的服务。默认返回二进制 protobuf;请求头带 Accept: application/json 时返回 proto3 JSON。少数接口(地图叠加层、动态交通信息)为原始 JSON。

参考手册按功能分组:

  • 运动与底盘控制 —— 驱动模式、急停、车轮与底盘错误。
  • 定位 —— 全局定位,以及充电桩、托盘、挂车、货架的位姿查询。
  • 建图 —— 自动建图、地标、叠加层、交通信息、子图与 SLAM 地图图片。
  • 货物搬运 —— 顶升、辊道、牵引钩、货物装卸与货架尺寸检测。
  • 感知与传感器 —— 激光雷达与深度摄像头电源、RGB 图像、导航缩略图与 V2X 信标。
  • 标定 —— IMU、陀螺仪刻度、深度摄像头、双激光雷达与顶升桅杆标定。
  • 网络 —— Wi-Fi 模式与路由优先级。
  • 系统与维护 —— 电源、时间、重启、错误恢复与 ROS 主题内省。

约定 (Conventions)

内容类型与响应格式 (Content-type & response format)

/services/ 下的接口使用 JSON。/ros/ 下转发的服务默认返回 application/x-protobuf;当请求包含 Accept: application/json 时返回 application/json。JSON 响应体由同一个 protobuf 消息经 google::protobuf::util::MessageToJsonString 序列化生成(proto3 JSON 映射 —— 字段名为 snake_case)。

请求头 Accept响应 Content-Type响应体
(缺省)application/x-protobuf二进制 protobuf
application/x-protobufapplication/x-protobuf二进制 protobuf
application/jsonapplication/jsonproto3 JSON
(其他任意值)text/plain415 Unsupported Media Type

原始 JSON 接口(地图叠加层与动态交通信息)会忽略 Accept,始终返回 application/json。

Protobuf 定义 (Protobuf definitions)

Protobuf 消息定义随 @kingsimba/axbot-sdk TypeScript SDK 一同发布到 npm。.proto 源文件位于 axbot-ts-sdk 仓库。每个接口都会引用自己的响应消息。

服务索引 (Service index)

运动与底盘控制 (Motion & Chassis Control)

接口方法说明
/services/wheel_control/set_control_modePOST在 auto、manual、remote 之间切换控制模式。
/services/wheel_control/set_emergency_stopPOST触发或释放软件急停。
/services/confirm_estopPOST急停按下后,在坡道上释放车轮。
/services/wheel_control/clear_errorsPOST清除车轮控制器报告的错误。
/services/monitor/clear_flip_errorPOST检查确认倾翻后清除错误 8004。
/services/monitor/clear_slipping_errorPOST检查确认剧烈碰撞后清除错误 2008(实验性)。

定位 (Localization)

接口方法说明
/services/start_global_positioningPOST使用条码和基础地图匹配进行全局定位。
/services/query_pose/<poi>GET查询充电桩、托盘、挂车或货架边缘的地图位姿。

建图 (Mapping)

接口方法说明
/services/enable_auto_mappingPOST让机器人自主探索并建图(实验性)。
/services/start_collecting_landmarksPOST为当前地图采集地标。
/services/stop_collecting_landmarksPOST停止采集地标。
/ros/map/overlaysGET/PUT以 GeoJSON 读取或替换动态地图叠加层。
/ros/map/traffic_infoGET/PUT读取或替换动态禁行区域。
/ros/slam/submaps/{uuid}/{trajectory_id}/{submap_index}GET获取单个 Cartographer 子图。
/ros/slam/map_imageGET获取当前 SLAM 地图(protobuf 编码的 PNG)。

货物搬运 (Cargo Handling)

接口方法说明
/services/jack_upPOST升高顶升。
/services/jack_downPOST降低顶升。
/services/jack_self_checkPOST顶升自检。
/services/clear_jack_errorsPOST清除顶升过载错误。
/services/roller_loadPOST用辊道装货。
/services/roller_unloadPOST用辊道卸货。
/services/load_cargoPOST用举升机构装货。
/services/unload_cargoPOST用举升机构卸货。
/services/towing_hook_lockPOST锁定牵引钩。
/services/towing_hook_releasePOST释放牵引钩。
/services/clear_towing_hook_errorPOST清除牵引钩设备错误。
/services/start_rack_size_detectionPOST用激光扫描仪测量货架宽度和深度。
/services/stop_rack_size_detectionPOST停止货架尺寸测量。

感知与传感器 (Perception & Sensors)

接口方法说明
/services/baseboard/power_on_lidarPOST开启或关闭激光雷达电源。
/services/depth_camera/enable_camerasPOST启用或禁用深度摄像头。
/services/get_rgb_imagePOST获取最新的 RGB 摄像头图像。
/services/get_nav_thumbnailPOST获取机器人及周边环境的 200×200 快照。
/services/probe_v2x_beaconsPOST激活 V2X 信标数秒以测试连通性。

标定 (Calibration)

接口方法说明
/services/imu/recalibratePOST机器人静止时重新校准 IMU。
/services/imu/calibrate_gyro_scalePOST校准陀螺仪刻度。
/ros/imu/clear_gyro_scalePOST清除已保存的陀螺仪刻度标定。
/services/calibrate_depth_camerasPOST将深度摄像头点云与激光雷达对齐。
/services/calibrate_depth_camera_masksPOST遮罩深度摄像头拍到的机器人自身部分。
/services/calibrate_duo_lidar_posesPOST校准左前、右后双激光雷达的位姿。
/ros/jack_mast/calibrate_mast_tick_basePOST校准顶升桅杆的刻度基准。

网络 (Network)

接口方法说明
/services/setup_wifiPOST在 AP 和 station 模式之间切换 Wi-Fi。
/services/set_route_modePOST选择默认路由使用的网络接口。

系统与维护 (System & Maintenance)

接口方法说明
/services/wake_up_devicePOST将机器人从休眠中唤醒。
/services/restart_servicePOST重启所有机器人软件。
/services/baseboard/shutdownPOST重启或关闭主控计算机或整机。
/services/step_timeGET/POST检查时间偏差(GET)或校准时钟(POST)。
/services/monitor_recheck_errorsPOST重新执行错误检查。
/services/reset_usb_devicesPOST按 bus/dev 复位指定的 USB 设备。
/services/clear_system_down_unexpectedlyPOST清除“系统异常关闭”报警。
/services/clear_range_data_all_zero_errorPOST清除“距离数据全为零”的激光雷达错误。
/services/clear_fall_risk_warningPOST清除跌落风险警告。
/ros/rosmaster/topicsGET列出已发布的 ROS 主题及其类型和数量。
/ros/rosmaster/topics/published_namesGET列出已发布 ROS 主题的名称。
Edit this page
最后更新: 2026/10/30 19:15
Contributors: FengZhaolin
Next
运动与底盘控制 (Motion & Chassis Control)