Ubuntu 20.04 安装 Autoware.universe自动驾驶仿真工具

本文介绍了作者在探索自动驾驶仿真平台时,对Autoware进行安装与使用的经历,包括依赖安装、docker镜像拉取、仿真测试和使用感受,特别提到了Autoware的架构特点和与主流方案的区别。

(1)背景

        在入门自动驾驶领域的时候,笔者主要使用的工具是QT+ROS+Gazebo,在该行业工作一段时间之后,发现各家都有自己的仿真平台,只能在公司平台使用,但是如果个人要做城区的仿真,前面所说的工具链(QT+ROS+Gazebo)显然是不够便捷的。目前主要调研了两个开源的平台,第一个是 Autoware.universe,第二个就是国内Apollo平台,matlab适用于高校仿真环境,但不适用于量产(量产还是以c++为主),所以就不重点介绍matlab平台了,这次先说说Autoware平台。

        首先介绍Autoware的安装及使用,后面会大概说一下自己使用的感受。

(2)Autoware安装

        个人电脑系统是Ubunt20.04,安装目前主要的参考是官方文档(比较靠谱,很友好,还会列举可能会遇到的问题):https://autowarefoundation.github.io/autoware-documentation/main/installation/autoware/docker-installation-devel/。

       第一步: 克隆仓库

git clone https://github.com/autowarefoundation/autoware.git

        第二步:安装依赖项

  1. cuda稍微好一点的电脑会自带,但是此项不是必须项
  2. docker的安装参考官方文档即可
    https://docs.docker.com/engine/install/ubuntu/
    https://docs.docker.com/engine/install/linux-postinstall/
  3. 安装nvidia的 container
    https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html#setting-up-nvidia-container-toolkit
  4. 安装rocker
    https://github.com/osrf/rocker#installation

         到此,所有依赖安装完毕。

(3)Autoware仿真

         3.1 下载官方的image:

docker pull ghcr.io/autowarefoundation/autoware-universe:latest-cuda

       3.2 创建autoware_map文件目录,用于存储地图demo文件:

mkdir autoware_map

        3.3 以gpu加速的形式启动docker:(注意:如果没有成功安装nvidia cuda,无法使用)

rocker --nvidia --x11 --user --volume $HOME/autoware --volume $HOME/autoware_map -- ghcr.io/autowarefoundation/autoware-universe:latest-cuda

        3.4 如果没有安装nvidia cuda,可以使用下面的命令进入docker:

rocker -e LIBGL_ALWAYS_SOFTWARE=1 --x11 --user --volume $HOME/autoware --volume $HOME/autoware_map -- ghcr.io/autowarefoundation/autoware-universe:latest-cuda

        3.5 进入autoware空间,导入源码:

cd autoware
mkdir src
vcs import src < autoware.repos

        3.6 在docker中,安装ros依赖(需要多次尝试,由于网络不好,所以经常会更新失败):

sudo apt update
rosdep update
rosdep install -y --from-paths src --ignore-src --rosdistro $ROS_DISTRO

        3.7 源码编译:(如果需要加速编译,使用第二行命令即可;此处时间也比较长,大概半小时左右)

colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release
MAKEFLAGS="-j4" colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release

        因为后期使用,不需要重新编译所有模块,只需要编译自己所在业务的package,使用如下这行命令即可:

colcon build --packages-select autoware_launch

        3.8 测试使用

        下载官方的地图,之后解压即可

gdown -O ~/autoware_map/ 'https://docs.google.com/uc?export=download&id=1499_nsbUbIeturZaDj7jhUownh5fvXHd'

         运行测试case

source ~/autoware/install/setup.bash
ros2 launch autoware_launch planning_simulator.launch.xml map_path:=$HOME/autoware_map/sample-map-planning vehicle_model:=sample_vehicle sensor_model:=sample_sensor_kit

        此时,我的电脑提示下面的错误,后来仔细检查是因为autoware_launch模块并没有被编译,所以重新对该模块进行了编译,后续能在autoware/install文件夹中找到“autoware_launch”文件:

Package 'autoware_launch' not found: "package 'autoware_launch' not found, searching:

        再次运行上面的两条命令,出现了期待的画面。

        在顶栏中选择合适的起点和终点即可规划出路径,点击“OperationMode”下的“Auto”按钮,车辆即可按照规划出来的路径行驶。(如果起点或终点在车道中逆行是无法规划出轨迹的)    

(4)使用感受

        整个autoware的框架图如下所示(图片来自官网):

        看下来整体架构是和市场上的自驾公司差不多的,但是内部所使用的算法和目前国内主流的方案差别较大,主要体现在决策和优化部分,在绕行避障的case中,autoware使用的是模型预测方法来规避障碍物,而不是QP方法,包括变道也是。作为额外的研究工作,大家可以去看看官方文档和源码,也许能给自己带来一些启发。

<think>好的,我现在需要帮助用户在Ubuntu 20.04虚拟机上安装Autoware.Universe镜像。首先,我得回顾一下用户提供的引用内容,看看有哪些步骤和资源可用。用户提到了四个引用,其中引用[1]和[2]是关于Ubuntu 20.04安装,引用[3]和[4]是关于Autoware和开发环境的配置。 首先,用户已经在虚拟机上安装Ubuntu 20.04,所以可能不需要再指导安装Ubuntu,但可能需要确认版本是否正确。根据引用[1],用户应该使用Ubuntu 20.04.6桌面版的ISO镜像。接下来,引用[4]提到了安装开发工具和ROS工具,这应该是安装Autoware的前提条件。 安装Autoware.Universe可能需要克隆仓库、安装依赖、配置环境等步骤。引用[3]提到了修改路径中的用户名,说明安装路径需要注意。引用[4]中的命令包括更新系统、安装build-essential、cmake、git等工具,以及Python相关的包,这些都是必须的。 接下来,我需要将这些步骤整理成清晰的流程。可能需要先确保系统更新,然后安装依赖,接着克隆Autoware的仓库,配置环境,最后构建和安装。同时,需要注意用户是在虚拟机中,可能需要调整资源分配,比如内存和处理器核心数,避免编译时资源不足。 此外,用户可能遇到的问题包括依赖项缺失、网络问题导致git克隆失败、构建过程中的错误等。需要提醒用户按照步骤操作,遇到错误时检查日志,可能需要安装额外的包或者调整配置。引用[3]中的路径修改也是一个关键点,用户需要正确设置自己的用户路径,否则环境变量可能无法正确加载。 最后,生成相关问题需要考虑用户在安装过程中可能遇到的后续问题,比如如何验证安装是否成功,如何进行开发,如何集成其他工具如CARLA,以及常见错误的解决方法。这可以帮助用户进一步解决问题,或者深入使用Autoware.Universe。</think>### 分步指南:在 Ubuntu 20.04 虚拟机中安装 Autoware.Universe #### 1. 准备工作 - **验证 Ubuntu 版本** 终端输入 `lsb_release -a`,确保系统版本为 `Ubuntu 20.04.6 LTS`(需与引用[1]一致)[^1]。 - **分配虚拟机资源** 建议至少分配 **8GB 内存**、**4核CPU** 和 **50GB 硬盘空间**,避免编译时资源不足。 #### 2. 安装系统依赖 ```bash sudo apt update && sudo apt upgrade -y sudo apt install -y build-essential cmake git python3-pip python3-rosdep python3-vcstool wget ``` 此步骤参考引用[4],安装基础编译工具链和 Python 工具[^4]。 #### 3. 配置 ROS 环境 Autoware.Universe 依赖 ROS 系统,需先安装 ROS Noetic: ```bash sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list' sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654 sudo apt update sudo apt install -y ros-noetic-desktop-full echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc source ~/.bashrc ``` #### 4. 克隆 Autoware.Universe 仓库 ```bash mkdir -p ~/autoware.universe/src cd ~/autoware.universe git clone https://github.com/autowarefoundation/autoware.git src ``` 需确保网络稳定,仓库大小约 5GB,下载时间较长。 #### 5. 安装 Python 依赖与 ROS 包 ```bash sudo rosdep init rosdep update rosdep install -y --from-paths src --ignore-src --rosdistro noetic pip3 install -r src/tools/requirements.txt ``` 此步骤解决 ROS 包依赖问题,若报错可尝试重复执行 `rosdep install`[^4]。 #### 6. 构建 Autoware.Universe ```bash colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release ``` - `--symlink-install` 可减少硬盘占用 - 编译时间可能长达 **3-6 小时**(取决于虚拟机性能) #### 7. 配置环境变量 修改 `~/.bashrc`,添加: ```bash source ~/autoware.universe/install/setup.bash ``` 需替换路径中的用户名(如引用[3]所述)[^3]。 #### 8. 验证安装 ```bash ros2 launch autoware_auto_launch autoware.launch.xml ``` 若成功启动,显示 ROS 节点信息即表示安装完成。 --- ###
评论 19
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

智能汽车人

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

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

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

打赏作者

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

抵扣说明:

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

余额充值