(五)planning模块的安装和调试
本文档介绍如何学习和调整 planning 模块,对planning模块进行编译和调试,帮助开发者迅速学习并上手 Apollo。
前提条件
本文档假设您按照 安装 Apollo EDU 发行版, 并且 Apollo docker容器已经正常运行。
步骤一:进入 Apollo Docker 环境
- 输入以下命令进入 Apollo Docker环境
bash scripts/edu_launcher.sh enter
步骤二:对planning源码包进行编译
$ bash scripts/edu_launcher.sh build planning
该命令指定了build tool需要引入planning的源码并进行编译,除了planning模块外,目前还引入dreamview,routing,task_manager和monitor等模块,具体可以输入以下命令进行查看:
$ bash scripts/edu_launcher.sh build -h
*调用脚本编译命令时,当前所在目录即为工作空间目录,请务必在工作空间下使用脚本编译命令。
*注:
- 调用脚本编译命令时,当前所在目录即为工作空间目录,请务必在工作空间下使用脚本编译命令。
- 如果您使用的是windows wsl2,有可能会在编译过程中遇到缺少/run/shm文件夹导致的编译失败,手动创建该文件,然后重新编译即可。
Apollo的编译工具会自动分析所有所需要的依赖,自动下载并生成必要的依赖信息文件,首次编译需要从网上拉取部分依赖包,因此受网速与电脑配置影响大概需要40分钟左右,请耐心等待编译完成,编译完成样式如图所示:
编译完成后需要手动刷新环境变量:
$ source ~/.bashrc
步骤三:对planning进行调试
运行dreamview:
$ bash scripts/apollo_neo.sh bootstrap
*如果您已经启动过了dreamview,可以restart dreamview进程:
$ bash scripts/apollo_neo.sh bootstrap restart
此时dreamview和monitor会被自动启动,可以在浏览器输入localhost:8888打开dreamview:
步骤四: 进入sim control仿真模式进行调试
(1)在上方菜单栏选择 MKz Standard Debug > 车辆型号选择 MkzExample > 地图选择Sunnyvale Big Loop > 点击 Tasks > 选择 Sim Control,即可进入仿真模拟控制,如下图所示:
(2)点击左侧 Module Control 栏,启动需要调试的模块进程,如下图图所示,我们选择Planing、Routing 模块:
(3)设置车辆仿真行驶路径,点击左侧 Routing Editing,拖动、点击鼠标可以在地图中设置车辆行驶路径,如下图所示
(4)当点位设置完成后,点击 Send Routing Request。等待出现如下图所示,红线是routing模块在地图中搜索出的路径,浅蓝色的轨迹是 planning 模块实时规划的局部路径。
(5)此时如果想对planning模块进行调试,直接修改工作空间中的planning源码即可,源码位于工作空间中的:
modules/planning
修改完毕后重新运行编译脚本:
$ bash scripts/edu_launcher.sh build planning
(6)重新运行dreamview中的planning模块即可。