4. 离线导航测试
autonomy_nav_test 在不依赖 ROS 的环境下验证完整导航栈:Map → Planner → Controller → Task/BT。
源码:autonomy/system/tools/nav_test.cpp
4.1 与其它工具对比
工具 |
路径 |
覆盖范围 |
状态 |
|---|---|---|---|
|
|
完整栈 + 仿真 odom/TF |
✅ 有源码 |
|
|
仅全局规划 |
❌ 目录不存在 |
|
|
规划 + 控制闭环 |
❌ 目录不存在 |
Autonomy 主进程 |
|
Start + Configure,不发目标 |
✅ |
4.2 功能流程
CreateOptions+CreateAutonomy加载config/autonomy.luaStart()启动各 ServerConfigure()附着 BT(演进中)注入初始里程计与 TF
后台线程按
cmd_vel积分仿真位姿主线程调用
NavigateToPose()直至结束
4.3 常用参数
参数 |
说明 |
默认 |
|---|---|---|
|
配置根目录 |
必填 |
|
起始位姿 |
0 |
|
目标位姿 |
必填 |
|
BT 模式 |
true |
|
超时(秒) |
120 |
4.4 构建说明
文档中常见:
cmake .. -DBUILD_TOOLS=ON -DBUILD_TASKS=ON
ninja autonomy_nav_test
当前注意:根 CMakeLists.txt 可能未定义 BUILD_TOOLS,且 system/tools/CMakeLists.txt 未必被 add_subdirectory 引用。若目标未生成,需检查 CMake 是否接入 autonomy/system/tools/。
4.5 环境变量
变量 |
说明 |
|---|---|
|
BT 插件 |
|
建议开启,便于查看日志 |
4.6 运行示例
export AUTONOMY_BT_PLUGIN_PATH=build/lib
export GLOG_logtostderr=1
./build/bin/autonomy_nav_test \
--configuration_directory=config \
--start_x=1 --start_y=1 --start_yaw=0 \
--goal_x=5 --goal_y=5 --goal_yaw=0 \
--use_bt=false \
--timeout_sec=120
4.7 相关文档
源码 README:
autonomy/system/tools/README.md