0. Bridge 指南
autonomy/bridge 在机载导航栈与场外客户端(移动端、云平台、调度)之间提供 gRPC / MQTT 桥接,对标 rosbridge_suite、Nav2 gRPC 封装。
定位:外部接口层,翻译 Command、推送状态,不参与规划与控制 → §2 架构 · §3 RPC
0.1 文档地图
角色 |
建议顺序 |
|---|---|
新手 |
|
集成 / 调 API |
|
机载部署 / 改配置 |
|
gRPC 开发 |
|
MQTT 开发 |
|
选型 |
侧边栏 §0–§6 为模块主干;§1 为 bridge.lua 详表(不列入 toctree);rpcs/、grpc/、mqtt/ 为 §3–§5 专题。
0.2 快速开始
LoadOptions→BridgeServer→Start()调 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
0.3 配置入口
config/bridge/bridge.lua → common::LoadOptions() → proto::BridgeOptions。字段详表 → §1 参数配置。