2. 仿真环境搭建

说实话,搭建Autoware的仿真环境,是很多人入门时最头疼的一步。我当年第一次搞的时候,光编译就折腾了两天。但你别怕,只要按我说的来,基本能一次过。

这一章,咱们就一步步把环境搭起来。说白了,就是三件事:装系统、配ROS2、编译Autoware。嗯,顺序不能乱。

2.1 Ubuntu系统安装——选对版本很重要

Autoware官方推荐的是Ubuntu 22.04 LTS。我个人习惯用这个版本,因为它的软件源最全,社区支持也最好。你想想看,如果选了太新的版本,很多依赖包还没跟上,反而会踩坑。

系统要求:

  • CPU:建议i7或以上,至少4核
  • 内存:16GB起步,32GB更稳
  • 硬盘:至少100GB空闲空间
  • 显卡:NVIDIA显卡(用于CUDA加速)

安装步骤其实不复杂:

  1. 去Ubuntu官网下载22.04 LTS的ISO镜像
  2. 用Rufus或balenaEtcher制作启动U盘
  3. BIOS里设置U盘启动,开始安装
  4. 分区时建议:/ 分50GB,/home 分剩余空间,swap给16GB

小技巧:安装时选择「最小安装」,能省不少时间。后面缺什么包再补就行。

2.2 ROS2环境配置——Humble是首选

ROS2的版本要和Ubuntu匹配。Ubuntu 22.04对应的是ROS2 Humble。我之前试过用别的版本,结果依赖冲突搞得头大。所以,老老实实用Humble吧。

配置过程分几步:

2.2.1 设置软件源

sudo apt update && sudo apt install curl gnupg lsb-release
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null

2.2.2 安装ROS2 Humble

sudo apt update
sudo apt install ros-humble-desktop
sudo apt install ros-humble-rmw-fastrtps-cpp  # 推荐使用Fast DDS

注意:安装过程中如果提示依赖缺失,别慌。运行 sudo apt --fix-broken install 就能解决。我遇到过好几次,都是网络问题导致包没下全。

2.2.3 配置环境变量

echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc
source ~/.bashrc

验证一下:

ros2 run demo_nodes_cpp talker

如果能看到消息在发,说明ROS2装好了。

2.3 Autoware源码编译与安装——最耗时的一步

Autoware的编译,说白了就是拉代码、装依赖、然后编译。我建议你用vcs工具来管理多个仓库,不然手动一个个clone会疯掉。

2.3.1 创建工作空间

mkdir -p ~/autoware_ws/src
cd ~/autoware_ws

2.3.2 拉取Autoware源码

wget -P src https://raw.githubusercontent.com/autowarefoundation/autoware/main/autoware.repos
vcs import src < src/autoware.repos

这一步会下载几十个包,网速慢的话可能要等半小时。我记得第一次拉的时候,中间断了好几次,后来用代理才搞定。

2.3.3 安装依赖

sudo apt install python3-pip
pip3 install -r requirements.txt
rosdep update
rosdep install -y --from-paths src --ignore-src --rosdistro humble

避坑指南:我曾经因为没装 python3-vcstool 导致vcs命令找不到。提前装好:sudo apt install python3-vcstool

2.3.4 编译Autoware

colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release

编译时间取决于你的机器配置。我用的i7-12700 + 32GB内存,大概跑了40分钟。如果你用笔记本,可能得1-2小时。嗯,这时候可以去喝杯咖啡。

常见编译错误:

  • 内存不足:编译时加上 --parallel-workers 2 限制并行数
  • CUDA找不到:确保安装了NVIDIA驱动和CUDA Toolkit
  • 某个包编译失败:试试单独编译那个包,看具体报错

2.3.5 验证安装

source install/setup.bash
autoware_launch --help

如果能看到帮助信息,恭喜你,环境搭好了!

2.4 知识体系总览

下面这张图,帮你理清整个环境搭建的逻辑关系:

仿真环境搭建知识体系 Ubuntu 22.04 LTS ROS2 Humble Autoware源码 系统安装 驱动配置 网络设置 软件源 核心包 环境变量 源码拉取 依赖安装 编译验证 三者缺一不可,顺序不能乱

2.5 常见问题与解决方案

问题 原因 解决方法
编译时内存不足 并行编译占用太多内存 加 --parallel-workers 2
rosdep update失败 网络问题或源配置错误 使用代理或更换国内源
vcs命令找不到 未安装vcstool sudo apt install python3-vcstool
CUDA相关错误 NVIDIA驱动未安装 安装NVIDIA驱动和CUDA Toolkit

我的经验:如果你用的是笔记本,编译时记得插电源。我有一回没插电,编译到一半电池耗尽,直接关机。嗯,血的教训。

好了,环境搭建就到这里。你按照这个流程走,基本不会出大问题。如果卡在哪一步,回头看看上面的表格,大部分问题都能解决。