Apollo 自动驾驶平台搭建与使用教程
1. 项目目录结构及介绍
Apollo 的源码仓库包含了多个子目录,下面是主要目录的一个概述:
.
├── apollo.sh # 主要的脚本,用于编译和运行 Apollo
├── cyber # Cyber RT 框架,负责消息通信和组件管理
├── modules # 各个自动驾驶功能模块,如感知、规划、控制等
│ ├── common # 公共库和工具
│ └── ... # 更多模块,如定位、仿真等
├── third_party # 第三方依赖库
└── ... # 其他辅助文件和脚本
apollo.sh
: 该项目的主要入口脚本,用来编译 Apollo 代码并执行不同任务。cyber
: 包含了 Cyber RT 框架,这是 Apollo 中的消息传递和组件管理系统。modules
: 存放所有自动驾驶的核心模块,包括但不限于感知(perception)、路径规划(planning)和车辆控制(control)等。third_party
: 这里存放 Apollo 所依赖的第三方库,如 protobuf、gflags 等。
2. 项目的启动文件介绍
启动 Apollo 平台通常涉及以下几个步骤,它们通过调用 apollo.sh
脚本来完成:
2.1 配置环境
source ./scripts/bootstrap.sh
这个命令初始化工作环境,设置必要的环境变量,并加载依赖项。
2.2 编译 Apollo
bash apollo.sh build
这将编译整个 Apollo 项目,生成可执行文件和动态库。
2.3 启动 Dreamview
Dreamview 是 Apollo 的可视化界面,可以监控系统状态并进行调试:
bash scripts/run_devboard.sh
然后在浏览器中访问 http://localhost:8888
来打开 Dreamview。
3. 项目的配置文件介绍
Apollo 使用配置文件来定制其行为和参数。配置文件通常位于各个模块的 conf
目录下,例如:
modules/control/conf/*.conf
: 控制模块的配置modules/perception/conf/*.config
: 感知模块的配置modules/localization/conf/*.yaml
: 定位模块的配置
配置文件可能包含各种参数,如传感器校准、算法阈值以及网络模型的配置等。例如,modules/calibration/data/bag_conf/delphi_esr_calib.config
文件包含了 Delphi ESR 传感器的校准数据。
为了修改配置,直接编辑相应的 .conf
或 .yaml
文件,然后重启相关服务以应用更改。某些情况下,您可以通过 Dreamview 的界面来进行实时调整。
请注意,实际的目录结构和启动过程可能会因 Apollo 版本的不同而有所变化。务必参考官方网站或最新版本的 README 文档获取最准确的信息。