6 步装好 Autoware 自动驾驶软件栈:从零到跑通 Demo 的完整配置指南
【免费下载链接】autowareAutoware - the world's leading open-source software project for autonomous driving项目地址: https://gitcode.com/GitHub_Trending/au/autoware
Autoware 是开源自动驾驶软件栈,一套代码覆盖定位、感知、规划、控制全链路。本文带你完成 Autoware 安装配置:装好开发环境、拉取全部源码、启动容器并跑通官方 demo,每步都有检查点,确认环境真的可用。
开始之前:核对系统与前置条件
操作系统
- Ubuntu 22.04 或 24.04 桌面版:Autoware 只支持这两个版本,分别对应 ROS 2 Humble 和 Jazzy 发行版(ROS 2 是机器人操作系统,Autoware 所有功能模块都运行在它上面)。
硬件
- 16 GB 以上内存、至少 40 GB 空闲磁盘:源码树、地图数据和深度学习模型加起来体积不小。
- NVIDIA GPU 为可选项:跑 GPU 加速的感知模块需要它;没有 GPU 也能装,只是 rviz2 点云渲染会明显变慢。
依赖与版本
| 工具 | 版本 | 为什么需要 |
|---|---|---|
| Docker + Compose v2 | 最新版 | Autoware 标准运行方式是容器,镜像里预装好了 ROS 2 和全部编译产物 |
| Ansible | 10.x | 宿主机环境(ROS 2、构建工具、GPU 依赖)全靠仓库自带的 playbook 自动装,避免手动装包装漏 |
| vcs | 任意 | ROS 社区的标准源码管理工具,一条命令按清单拉取 Autoware 的全部源码仓库 |
先确认版本没装错:
lsb_release -rs # 预期输出 22.04 或 24.04 docker compose version # 预期输出 Docker Compose version v2.x安装步骤
第 1 步:克隆 Autoware 仓库
git clone https://gitcode.com/GitHub_Trending/au/autoware.git ~/autoware检查点:ls ~/autoware能看到ansible/、docker/、repositories/三个目录。
第 2 步:用 pipx 安装正确版本的 Ansible
Ubuntu 22.04 仓库自带的 Ansible 版本过老,直接装会报错,所以先用 pipx(一个隔离安装 Python 工具的小工具)装上 10.x:
sudo apt-get purge -y ansible sudo apt-get update sudo apt-get install -y pipx python3 -m pipx ensurepath source ~/.bashrc pipx install --include-deps --force "ansible==10.*"检查点:ansible --version输出版本号以10.开头。
第 3 步:安装仓库声明的 Ansible 插件
playbook 引用了几个 Ansible collection(可复用的自动化任务包),需要从仓库内的清单文件安装:
cd ~/autoware ansible-galaxy collection install -f -r ansible-galaxy-requirements.yaml检查点:命令正常结束,无ERROR!输出。
第 4 步:一键执行环境配置 playbook
这是最耗时的一步。playbook 会自动安装 ROS 2、colcon 等构建工具、RMW 通信实现(ROS 2 内部节点间消息传递的底层库),以及 CUDA、TensorRT 等 GPU 依赖(无 NVIDIA GPU 时对应任务自动跳过):
ansible-playbook ansible/playbooks/install_dev_env.yaml想连 demo 用的示例地图、模型、rosbag 数据一起下载,追加标签参数:
ansible-playbook ansible/playbooks/install_dev_env.yaml --tags demo_artifacts检查点:结尾打印PLAY RECAP ... failed=0。跑完后~/autoware_data/maps和~/autoware_data/ml_models两个目录应已存在(demo 数据需要时)。
第 5 步:加载 ROS 环境变量并检查
配置结果写进了 shell 配置文件,重新加载后验证:
source ~/.bashrc echo $ROS_DISTRO检查点:输出humble或jazzy,与你的 Ubuntu 版本对应(22.04→humble,24.04→jazzy);colcon --version和ros2 --help也能正常执行。
第 6 步:按清单拉取全部源码
repositories/autoware.repos是 Autoware 各模块的仓库清单,vcs 一条命令全部克隆到src/:
cd ~/autoware vcs import src < repositories/autoware.repos检查点:ls src下出现autoware_core/、autoware_universe/等目录。
第 7 步:获取容器镜像
官方预构建镜像同时支持 amd64 和 arm64,直接拉取最省事:
docker pull ghcr.io/autowarefoundation/autoware:universe-devel-jazzy有 NVIDIA GPU 的话改拉 CUDA 版:docker pull ghcr.io/autowarefoundation/autoware:universe-devel-cuda-jazzy。检查点:docker images | grep autoware能看到对应标签的镜像。
如果要从源码自建镜像(比如想改包版本),在仓库根目录执行docker buildx bake -f docker/docker-bake.hcl universe,细节见 docker/README.md。
第 8 步:启动开发容器
以无 GPU 的 CPU 版为例(NVIDIA 用户把$COMPOSE换成dev-nvidia.compose.yaml即可):
xhost +local:docker # 允许容器访问本机显示服务,rviz2 图形窗口才有地方画 COMPOSE=docker/examples/basic/dev-cpu.compose.yaml cd ~/autoware HOST_UID=$(id -u) HOST_GID=$(id -g) docker compose -f "$COMPOSE" run --rm autoware检查点:提示符变成aw@...开头的容器内 bash,没有bind source path does not exist报错。
第 9 步:容器内初始化环境并自检
source /opt/autoware/setup.bash ros2 doctor检查点:ros2 doctor输出末尾是Summary: no problems found,说明 RMW、节点发现等核心机制全部正常。
验证安装:两条命令确认跑通
宿主机上:
ros2 doctor成功时最后几行形如:
Checks passed: ... Summary: no problems found容器内再确认 ROS 2 接口可用:
ros2 topic list此时还没有节点运行,输出No topics是预期结果;能正常返回就说明工具链完整。真正的功能验证直接跑 demo:cd docker/examples/demos/planning-simulator后按 docker/examples/demos/ 里的说明docker compose up,rviz2 里看到车辆在示例地图上规划行驶,就代表整个 Autoware 软件栈装好了。
常见问题
报错现象:Only Ubuntu 22.04 and 24.04 are supported原因:playbook 开头会校验系统版本,其他 Ubuntu 版本或衍生版会直接失败。 解决命令:升级到 Ubuntu 22.04 或 24.04 桌面版后重跑第 2~4 步;lsb_release -rs复查版本号。
报错现象:容器内执行ros2提示command not found原因:没有加载环境,容器启动后 ROS 的 setup 脚本不在当前 shell 里。 解决命令:source /opt/autoware/setup.bash,然后echo $ROS_DISTRO应输出jazzy或humble。
报错现象:compose 启动时报bind source path does not exist原因:~/autoware_data/maps、~/autoware_data/ml_models目录不存在,而 Compose 被配置为不自动创建(自动创建出来的目录归 root,容器内用户写不进去)。 解决命令:mkdir -p ~/autoware_data/{maps,ml_models},重跑第 4 步并加--tags demo_artifacts补全示例数据,再重新启动容器。
报错现象:rviz2 能开但渲染卡顿,glxinfo显示llvmpipe原因:GPU 没透传进容器,回退到了软件渲染。 解决命令:NVIDIA 卡改用dev-nvidia.compose.yaml启动,进容器后glxinfo -B | grep -E "OpenGL (vendor|renderer)",应看到NVIDIA Corporation而非llvmpipe。
下一步
装到这一步,环境已完整可用。建议直接按 docker/examples/demos/ 里的 README 跑一遍 planning-simulator 或 scenario-simulator demo,确认 Autoware 在示例地图上能完成定位、感知、规划全流程,再开始改自己的代码。
【免费下载链接】autowareAutoware - the world's leading open-source software project for autonomous driving项目地址: https://gitcode.com/GitHub_Trending/au/autoware
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考