ubuntu20.04系统安装apollo10.0系统

文章目录


前言

这次使用公司电脑安装apollo10.0发生了挺多问题的,搞得我快自闭了,特意整理以来近期以来发生的问题以及安装过程来给大家看

安装apollo操作系统,参考百度官方文档为主

apollo官方安装说明


一、安装基础软件

1、更新相关软件

bash 复制代码
sudo apt-get update
sudo apt-get upgrade

2 安装 Docker Engine

Apollo 依赖于 Docker 19.03+。安装 Docker 引擎,您可以根据官方文档进行安装:
Install Docker Engine on Ubuntu

还可以使用apollo提供的脚本安装

bash 复制代码
wget http://apollo-pkg-beta.bj.bcebos.com/docker_install.sh
bash docker_install.sh

重要事情说三遍说三遍说三遍,最后一定要验证下docker是否能正常拉取。

如果不能正常拉取,请参考我写的这个文章
docker run hello-world失败解决办法

二、获取 GPU 支持

1、安装显卡驱动

安装显卡驱动可以参考我写的这篇文档
安装英伟达显卡驱动

2、安装 Nvidia container toolkit

为了在容器内获得 GPU 支持,在安装完 docker 后需要安装 NVIDIA Container Toolkit。 运行以下指令安装 NVIDIA Container Toolkit:

bash 复制代码
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
sudo apt-get -y update
sudo apt-get install -y nvidia-docker2

如果直接再githu上拉取失败,可以尝试下用国内的源下载,csdn比较多

安装完成,重启后docker

bash 复制代码
sudo systemctl restart docker

三、安装 Apollo 环境管理工具

Apollo 环境管理工具是一个帮忙管理和启动 Apollo 环境容器的命令行工具。

1、安装依赖软件

bash 复制代码
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg

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

bash 复制代码
# 添加 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

3、安装aem

bash 复制代码
sudo apt install apollo-neo-env-manager-dev --reinstall

百度 Apollo 自动驾驶开源平台里,AEM(Apollo Environment Manager)即 Apollo 环境管理工具。它是用于简化和管理 Apollo 开发环境的实用工具,能为开发者提供便捷的环境搭建、配置和使用体验。

四、安装示例工程

1、选择示例工程

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

application-core , 包含 Apollo 所有开源软件包,可以基于此工程搭建自己的应用

application-pnc , 仅包含规划控制相关的软件包,适合仅关注规划控制方向的用户

application-perception , 仅包含感知相关的软件包,适合仅关注感知方向的用户

2、克隆工程

以 x86 架构的 application-core 为例

bash 复制代码
git clone https://github.com/ApolloAuto/application-core.git application-core

3、启动 Apollo 环境容器

bash 复制代码
# 先进入工程目录
cd application-core
# 环境设置:识别主机系统是x86_64还是aarch64, 并修改对应的.env和.workspace.json配置
bash setup.sh
# 启动容器
aem start

4、进入 Apollo 环境容器

bash 复制代码
# 先进入工程目录
cd application-core
# 进入容器
aem enter

5、安装软件包

示例工程中包含一个名为 core 目录,其中 core/cyberfile.xml 文件中描述了工程所依赖软件包,可以通过 buildtool 工具进行依赖包的安装

bash 复制代码
buildtool build -p core

6、选择车型配置

示例工程中profiles/sample目录是官方提供的基于一个雷达两个摄像头的车型配置,您可以参考profiles目录下的sample编写自己的车型配置,生效车型配置的方法如下:

bash 复制代码
# 以sample为例
aem profile use sample

7、播放数据包

1、拉取数据包

bash 复制代码
wget https://apollo-system.cdn.bcebos.com/dataset/6.0_edu/demo_3.5.record -P $HOME/.apollo/resources/records/

2、获取数据包对应的地图

bash 复制代码
buildtool map get sunnyvale

3、 启动Dreamview+

bash 复制代码
aem bootstrap start --plus

4、在 Dreamview+ 中播放数据包

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

选择 Default Mode

勾选 Accept the User Agreement and Privacy Policy/接受用户协议和隐私政策 ,并单击 Enter this Mode 进入 Mode Settings/模式设置 页面。

在 Mode Settings/模式设置 页面,设置播包参数。

在 Operations/操作 中选择 Record 。

Environment Resources /环境资源 中,单击 Records/数据包 ,并选择具体想要播放的数据包。

在 **Environment Resources/**环境资源 中,单击 HDMap/高精地图 ,并选择 Sunnyvale Big Loop 。

单击底部区域播放按钮。

相关问题以及解决方法

相关推荐
地平线开发者5 小时前
征程 6|工具链量化简介与代码实操
算法·自动驾驶
阿维同学7 小时前
自动驾驶关键算法深度研究
人工智能·算法·自动驾驶
mit6.8241 天前
[vroom] docs | 输入与问题定义 | 任务与运输工具 | json
c++·自动驾驶
Zhichao_971 天前
【ROS2 自动驾驶学习】02-安装ROS2及其配套工具
自动驾驶·ros2
Mr.Winter`1 天前
轨迹优化 | 基于激光雷达的欧氏距离场ESDF地图构建(附ROS C++仿真)
c++·人工智能·机器人·自动驾驶·ros·ros2·具身智能
LCG元2 天前
自动驾驶感知模块的多模态数据融合:时序同步与空间对齐的框架解析
人工智能·机器学习·自动驾驶
Mr.Winter`4 天前
障碍感知 | 基于3D激光雷达的三维膨胀栅格地图构建(附ROS C++仿真)
人工智能·机器人·自动驾驶·ros·具身智能·环境感知
数字芯片实验室16 天前
特斯拉HW5要上3nm工艺,自动驾驶芯片的军备竞赛
人工智能·机器学习·自动驾驶
小虎卫远程打卡app16 天前
自动驾驶避障思考
人工智能·chatgpt·自动驾驶
点云SLAM16 天前
PyTorch 中torch.clamp函数使用详解和实战示例
人工智能·pytorch·python·自动驾驶·slam·3d深度学习·张量操作