0. Bridge 指南

autonomy/bridge 在机载导航栈与场外客户端(移动端、云平台、调度)之间提供 gRPC / MQTT 桥接,对标 rosbridge_suite、Nav2 gRPC 封装。

定位:外部接口层,翻译 Command、推送状态,不参与规划与控制 → §2 架构 · §3 RPC

0.1 文档地图

角色

建议顺序

新手

本页 §0.2 快速开始§2 架构

集成 / 调 API

rpcs/01 接入rpcs/13 测试用例

机载部署 / 改配置

§1 参数配置§0.3 配置入口

gRPC 开发

§2§4 gRPCgrpc/

MQTT 开发

§5 MQTTmqtt/

选型

§6 综述

侧边栏 §0–§6 为模块主干;§1bridge.lua 详表(不列入 toctree);rpcs/grpc/mqtt/ 为 §3–§5 专题。


0.2 快速开始

  1. 编辑 config/bridge/bridge.lua§0.3 · §1

  2. LoadOptionsBridgeServerStart()

  3. 调 API — rpcs/01 接入与验证

auto options = autonomy::bridge::common::LoadOptions(bridge_dict);
auto server = std::make_shared<autonomy::bridge::BridgeServer>(options);
server->Start();
server->WaitForShutdown();
AUTONOMY_BRIDGE = {
    use_grpc = true, use_mqtt = false,
    grpc = { host = "127.0.0.1", port = 5005, num_grpc_threads = 5 },
}
grpcurl -plaintext -d '{"header":{"cmd_id":"demo"},"command":2}' 127.0.0.1:5005 \
  autonomy.bridge.proto.AutonomyService/SendNavigationCommand
grpcurl 探测 AutonomyService

0.3 配置入口

config/bridge/bridge.luacommon::LoadOptions()proto::BridgeOptions。字段详表 → §1 参数配置


导航§2 架构 → · §3 RPC →