第二章:仿真环境搭建——Ubuntu系统安装、ROS2环境配置、Autoware源码编译与安装
说实话,搭建Autoware的仿真环境,是很多人入门时最头疼的一步。我当年第一次搞的时候,光编译就折腾了两天。但你别怕,只要按我说的来,基本能一次过。
这一章,咱们就一步步把环境搭起来。说白了,就是三件事:装系统、配ROS2、编译Autoware。嗯,顺序不能乱。
2.1 Ubuntu系统安装——选对版本很重要
Autoware官方推荐的是Ubuntu 22.04 LTS。我个人习惯用这个版本,因为它的软件源最全,社区支持也最好。你想想看,如果选了太新的版本,很多依赖包还没跟上,反而会踩坑。
系统要求:
- CPU:建议i7或以上,至少4核
- 内存:16GB起步,32GB更稳
- 硬盘:至少100GB空闲空间
- 显卡:NVIDIA显卡(用于CUDA加速)
安装步骤其实不复杂:
- 去Ubuntu官网下载22.04 LTS的ISO镜像
- 用Rufus或balenaEtcher制作启动U盘
- BIOS里设置U盘启动,开始安装
- 分区时建议:
/分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 知识体系总览
下面这张图,帮你理清整个环境搭建的逻辑关系:
2.5 常见问题与解决方案
| 问题 | 原因 | 解决方法 |
|---|---|---|
| 编译时内存不足 | 并行编译占用太多内存 | 加 --parallel-workers 2 |
| rosdep update失败 | 网络问题或源配置错误 | 使用代理或更换国内源 |
| vcs命令找不到 | 未安装vcstool | sudo apt install python3-vcstool |
| CUDA相关错误 | NVIDIA驱动未安装 | 安装NVIDIA驱动和CUDA Toolkit |
我的经验:如果你用的是笔记本,编译时记得插电源。我有一回没插电,编译到一半电池耗尽,直接关机。嗯,血的教训。
好了,环境搭建就到这里。你按照这个流程走,基本不会出大问题。如果卡在哪一步,回头看看上面的表格,大部分问题都能解决。