Advertisement

apollo自动驾驶平台配置笔记

阅读量:

apollo自动驾驶平台配置

    • 前言
    • 配置要求
    • 本机环境
    • apollo安装配置
    • demo
    • 其他
      • cyber_visualizer 工具
      • 程序启动说明

前言

最近在开始研究百度apollo自动驾驶开源框架,研究的第一步当然是要先把代码编译成功并把demo跑起来。我在网上找了一些配置教程,个人感觉这个参考教程:<> 算是比较友好的,编译配置步骤简单,清晰明了。我下面针对这个教程里的步骤,根据我自己的配置经验,再做一些说明记录。

配置要求

根据apollo官网 https://github.com/ApolloAuto/apollo 上的说明,配置apollo的基本要求如下:

本机环境

  • 系统:Ubuntu 16.04.6 LTS 64 位
  • 系统内存:16GB
  • 关于显卡,我这里通过各种查看命令显示,我的主机应该是没有装NVIDIA驱动。(所以,配置apollo貌似也不是一定需要NVIDIA驱动?这样的话,就没法用GPU加速了)

apollo安装配置

下载apollo源码:https://github.com/ApolloAuto/apollo,下载完成后,将其放在home目录下(这里是apollo最新的版本,如果想要选择特定版本,可在Branch中选择apollo的特定版本)。
在这里插入图片描述

安装docker环境:https://docs.docker.com/engine/install/ubuntu/ ,在按照官网的安装命令安装完成后,在终端输入命令: sudo docker ps 。若打印出如下信息:“CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES” ,那说明docker安装应该没有问题。

编译前,一定记得给电脑留出足够大的内存空间(根据经验,最好空出 >=40GB的空间出来),这个编译过程会pull一大堆文件到电脑上,非常占用磁盘空间。

编译apollo,在apollo代码的编译阶段,如果电脑内存太小,编译的时候非常容易因内存占满而卡死,为了避免这种情况,强烈建议ctrl+alt+f1 ,进入没有界面的模式来编译 (我的电脑16GB的内存,编译的时候还经常出现内存占满卡死的情况)。

复制代码
    #输入密码进入root用户:
    sudo -i  
    
     # cd 到下载的apollo目录下面,然后
    bash docker/setup_host/setup_host.sh
     
     # 如下命令启动docker的release环境:(这一步,系统会下载 20GB 左右的文件到 /var/lib/docker/ 目录(下载完成以后再执行该命令不会重新下的))
    bash docker/scripts/dev_start.sh
     
    # 如下命令 进入docker的release环境(进入该环境后会发现:命令行中 “root@<主机名>” 会变成一个和docker有关的名称,此时说明进入了docker环境):
    bash docker/scripts/dev_into.sh
    
    # 编译,默认是有GPU的模式编译(编译过程会在 ~/.cache 目录生成几十GB的文件);如电脑没有GPU,可以: bash apollo.sh build_cpu 来编译。
    bash apollo.sh build  
    
    # 启动DreamView,这个时候去浏览器 localhost:8888 可以看到界面了。
    bash scripts/bootstrap.sh  
    
    启动apollo环境,这样才能使用相关程序以及 cyber_monitor, cyber_channel 等工具。
    source /apollo/scripts/apollo_base.sh
    
    
    
    
![](https://ad.itadn.com/c/weblog/blog-img/images/2025-07-12/pIf0k1vEYR7XatNP6iTgJOUxKBVb.png)

demo

在上面的步骤全部完成后,输入cyber_channel list 看命令是否正常,若没有报错,说明apollo编译成功。接下来开始把它的demo跑起来,首先是下载demo数据,在apollo工程目录中的 docs/demo_guide/ 路径下,有个rosbag_helper.py文件,可通过: python rosbag_helper.py 来下载demo数据包;或者,打开rosbag_helper.py文件,其中有关于demo包的网址,复制其中的网址,在浏览器中下载:

复制代码
    https://github.com/ApolloAuto/apollo/releases/download/v1.5.0/demo_1.5.bag
    https://github.com/ApolloAuto/apollo/releases/download/v2.0.0/demo_2.0.bag
    https://github.com/ApolloAuto/apollo/releases/download/v2.0.0/apollo_2.0_camera_sample.bag
    https://github.com/ApolloAuto/apollo/releases/download/v2.5.0/demo_2.5.bag
    https://github.com/ApolloAuto/apollo/releases/download/v1.0.0/demo_1.0.bag
    https://github.com/ApolloAuto/apollo/releases/download/v3.5.0/demo_3.5.record
    
    

对于 apollo3.0及以前的版本,利用 rosbag 播放数据包,发布数据,如(其中 -l 命令含义是循环重复播放该bag):
rosbag play -l demo_2.0.bag

对于 apollo3.5及以后版本,它们彻底脱离了ROS,改用自研的 Cyber 作为底层通讯与调度平台。为了帮助快速从ROS过渡到Cyber,在apollo3.5版本中,开发了一个名为 rosbag_to_record 的工具,用来讲demo中的rosbag转化为.record形式的文件。注意,官方称这个工具并不能对任意的bag转成record文件。record文件的播放形式为:
cyber_recorder play -f docs/demo_guide/demo_3.5.record --loop

其他

cyber_visualizer 工具

有些apollo版本默认情况下没有编译 cyber_visualizer 工具,如果想要编译出该工具,需要在编译文件 apollo.sh 中,找到如下所示的代码,

BUILD_TARGETS=bazel query //modules/... union //cyber/... except //modules/tools/visualizer/... except //modules/v2x/... except //modules/map/tools/map_datachecker/... $DISABLE_CYBER_MODULES

将 “except //modules/tools/visualizer/… ” 删除掉,然后重新编译即可。在编译cyber_visualizer时,若报错找不到 “\usr/lib/qt5/usi” 等库,则需要按照如下命令安装qt5的依赖库。

复制代码
    sudo apt update
    sudo apt -y install qt5-default
    
    

然后重新编译,在编译完成后,输入cyber_visualizer 应该就能打开可视化界面工具了。(如果后报缺少*.so.*的库文件,试试先 source /apollo/scripts/apollo_base.sh 再cyber_visualizer看看。)

程序启动说明

在以上步骤全部正常完成后,若重启电脑后想要在次进入apollo环境,在打开第一个终端后,需要执行:

复制代码
    sudo -i 
    bash docker/scripts/dev_start.sh
    bash docker/scripts/dev_into.sh
    bash scripts/bootstrap.sh  
    source /apollo/scripts/apollo_base.sh
    
    

上述步骤执行完成后,若想再开一个apollo环境的终端,只需要在新的终端执行如下两条命令即可:

复制代码
    进入docker环境:
    bash docker/scripts/dev_into.sh
    启动apollo环境:
    source /apollo/scripts/apollo_base.sh
    
    

全部评论 (0)

还没有任何评论哟~