Apollo Auto10.0安装教程(博主已将坑踩完)

最近在接触自动驾驶相关的功能,今天先带着大家把自动驾驶开放平台给搭建起来,由于百度开始较早,基建能力也比较完善,所以我们可以利用其开源的Apollo Auto来快速搭建一套属于我们自己的自动驾驶系统。
在这里插入图片描述

1.目标

部署Apollo Auto,并且能够成功启动它,要求如下:

  • 1.启动 Dreamview+,并在 Dreamview+ 中播放数据包,
  • 2.实现Cyber RT 与 ROS 通信

2.硬件资源要求

​​处理器(CPU)​​

​​最低要求​​:4核处理器(x86_64架构)
​​推荐配置​​:8核或更高(建议使用x86_64架构的Ubuntu 22.04操作系统或者aarch64架构的Ubuntu 20.04操作系统)
说明:多核性能直接影响编译速度和实时计算效率。

​​内存(RAM)​​

​​Apollo 3.5及以上版本​​:至少 ​​16GB​​(低于此容量编译可能失败)
​​运行要求​​:建议 ≥32GB(若启用感知模块或仿真需更高内存)
优化建议:无独立显卡时需配置大容量Swap空间(≥32GB)。

​​存储空间​​

​​系统盘​​:预留 ≥ ​​100GB​​(Ubuntu系统 + 基础依赖)
​​Apollo源码及编译​​:额外 ≥ ​​100GB​​(Docker镜像、中间文件、地图数据等)
总建议:≥200GB SSD(机械硬盘可能导致编译卡顿)。

3.部署

3.1 下载ApolloAuto安装包

git clone https://github.com/ApolloAuto/apollo.git

git clone https://github.com/ApolloAuto/application-core.git

需要保持这种目录结构:
在这里插入图片描述

注意如果你只是想尝试着玩,但是没有ubuntu系统的话,可以用docker拉一个ubuntu的镜像,由于国外的镜像源我们国内需要魔法才能获取,所以大家可以直接用我这个拉取

3.2 使用docker建立ubuntu系统

有ubuntu系统的兄弟们可以跳过该步骤

docker pull docker.m.daocloud.io/library/ubuntu:22.04 --platform linux/amd64

docker run -it --name apollo-ubuntu --platform linux/amd64 --privileged -v //Users/hb24795/soft/docker/ubuntu/apollo_data/apollo-master:/apollo_data docker.m.daocloud.io/library/ubuntu:22.04 /bin/bash

注意:-v /Users/hb24795/soft/docker/ubuntu/apollo_data/apollo:/apollo_data 这个目录地址就是我源代码下载后的地址,我们直接挂载上去就避免了资源的复制了
在这里插入图片描述

进入容器后先安装一些必要的包

apt-get update
apt-get install -y curl sudo lsb-release gnupg2

在这里插入图片描述

3.3 安装依赖

sudo apt-get update

sudo apt-get upgrade

很多在执行这一步时喜欢用阿里云、清华、华为等镜像,切记不要去改当前镜像源,否则后面的一些Apollo的必要依赖下载过程中会出现找到该软件的问题,博主已踩坑,切记!!!

3.4 安装docker

PS:如果系统本身已经有docker 可以跳过该步骤,可以通过docker ps 去尝试是否可以执行成功

你可以使用官方提供的安装方式

wget http://apollo-pkg-beta.bj.bcebos.com/docker_install.sh
bash docker_install.sh

注意:bash docker_install.sh 执行时间可能较长,中间可能会有中断之类的现象,建议多次执行,如果还是不行,可以按照下面这种安装方式

# 安装必要的依赖
apt-get install -y \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg \
    lsb-release

# 使用阿里云镜像源添加 Docker 的 GPG 密钥
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

# 设置阿里云 Docker 仓库
echo \
  "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu \
  $(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null

# 安装 Docker
apt-get update
apt-get install -y docker-ce docker-ce-cli containerd.iodocker

4.获取 GPU 支持

Apollo某些模块需要GPU的支持才能够编译、运行(例如感知模块),如果您需要使用此类模块,需要安装Nvidia显卡驱动以及Nvidia container toolkit以获取GPU支持。

从 Apollo 10.0 开始,CUDA 最低版本要求为 11.8 ,因此推荐使用 520.61.05 以上版本的驱动,CUDA 版本与 驱动版本的兼容信息可参考 Nvidia 官方文档 。 显卡驱动和CUDA版本兼容性,由于nvidia的硬件更新的很快,因此会遇到显卡驱动和CUDA版本不兼容的情况,下面是官方推荐的几款驱动以及对应的cuda版本

在这里插入图片描述

‍注意:本教程只适用于ubuntu系统,虚拟机无法安装显卡驱动,wsl请自行上网搜索 注意:如果您之前已经安装过Nvidia显卡驱动,即往终端输入nvidia-smi能够正常输出,可以跳过1.安装显卡驱动小节

MAC系统:苹果菜单中的"关于本机"→"系统报告"→"图形/显示器"
在这里插入图片描述

ubuntu系统:

lspci | grep -i vga   # 显示显卡型号(如 "NVIDIA Corporation GA104 [GeForce RTX 3070]")[5,6,7](@ref)

sudo lshw -C display  # 列出显卡型号、驱动、显存等[5,6](@ref)

在这里插入图片描述

我当前ubuntu系统的显卡​​无 CUDA 支持​​,且显存极低(未标注显存大小,通常≤8MB),无法满足 Apollo 的深度学习感知计算需求

由于我当前系统无显卡支持,所以后续步骤待我显卡到了之后实操完成在给大家更新,所以后面的步骤可以先基于CPU去计算

5.安装 Apollo 环境管理工具

5.1 安装依赖软件

sudo apt-get update
sudo apt-get install ca-certificates curl gnupg

5.2 在宿主机添加 Apollo 软件源的 gpg key,并设置好源和更新

# 添加 gpg key
sudo install -m 0755 -d /etc/apt/keyrings

curl -fsSL https://apollo-pkg-beta.cdn.bcebos.com/neo/beta/key/deb.gpg.key | 

sudo gpg --dearmor -o /etc/apt/keyrings/apolloauto.gpg

sudo chmod a+r /etc/apt/keyrings/apolloauto.gpg
 
# 设置源并更新
echo \
    "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/apolloauto.gpg] https://apollo-pkg-beta.cdn.bcebos.com/apollo/core"\
    $(. /etc/os-release && echo "$VERSION_CODENAME") "main" | \
    sudo tee /etc/apt/sources.list.d/apolloauto.list

sudo apt-get update

上面的指令一行行执行,执行成功后安装aem

5.3 安装aem

sudo apt install apollo-neo-env-manager-dev --reinstall

安装成功后即可使用

aem -h

给大家说几个常见的指令

# 查看aem列表
aem list

# 移除指定Apollo环境
aem remove --name

6.安装示例工程

Apollo 目前提供了3个示例工程,您可以根据需要选择其一

  • application-core , 包含 Apollo 所有开源软件包,可以基于此工程搭建自己的应用
  • application-pnc , 仅包含规划控制相关的软件包,适合仅关注规划控制方向的用户
  • application-perception , 仅包含感知相关的软件包,适合仅关注感知方向的用户

官方使用的是application-core作为demo,但是我下面带着大家直接用 Apollo 全量源码的工程 apollo来部署

首先进入我们的工程根目录
在这里插入图片描述

# 切换环境配置, 会自动识别您的宿主机环境切换.env和.workspace.json配置
# 如果您使用apollo源码方式,不需要执行此步骤,aem会自动识别起动环境
bash setup.sh

# 启动容器,
aem start --cpu or aem start --gpu

进入容器后你就会见到这样一个画面
在这里插入图片描述

7.安装软件包

执行

buildtool build --cpu or buildtool build

注意:该指令一次可能不会成功,需要执行多次,直至成功为止(PS:我执行了5次左右才完全成功)
如果你不小心退出了docker环境,可以通过

bash docker/scripts/dev_into.sh

在这里插入图片描述

8.播放数据包

# 获取数据包
wget https://apollo-system.cdn.bcebos.com/dataset/6.0_edu/demo_3.5.record -P $HOME/.apollo/resources/records/
# 获取数据包对应的地图
buildtool map get sunnyvale
# 启动 Dreamview+
aem bootstrap start --plus

在这里插入图片描述

在 Dreamview+ 中播放数据包

启动 Dreamview+ 之后,在浏览器输入 localhost:8888 进入 Dreamview+ 界面,您可以选择默认模式,也可以选择其他模式播放数据包。本小节以默认模式为例。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ZNineSun

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值