news 2026/10/7 9:44:52

6 步装好 Autoware 自动驾驶软件栈:从零到跑通 Demo 的完整配置指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
6 步装好 Autoware 自动驾驶软件栈:从零到跑通 Demo 的完整配置指南

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 和全部编译产物
Ansible10.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),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/7 9:43:57

Slidev:用 Markdown 快速做出可交互的开发者幻灯片

Slidev:用 Markdown 快速做出可交互的开发者幻灯片 【免费下载链接】slidev Presentation Slides for Developers 项目地址: https://gitcode.com/GitHub_Trending/sl/slidev 技术分享前最常见的两个麻烦:代码贴在 PPT 里又丑又难改,演讲时既没有备注也没有计时,全靠硬撑…

作者头像 李华
网站建设 2026/10/7 9:42:12

同城跑腿系统开发实战:Fastadmin+ThinkPHP与Uniapp三端搭建与避坑指南

简介&#xff1a;基于Fastadmin后台框架、ThinkPHP开发框架与Uniapp跨端工具开发的优创同城跑腿系统&#xff0c;是一套面向跑腿团队、可私有化部署的全栈源码&#xff0c;完整覆盖用户端、骑手端和运营后台&#xff0c;适配帮取、帮送与同城配送场景。系统内置按距离、重量分类…

作者头像 李华
网站建设 2026/10/7 9:42:01

汽车电子电气架构演进:从分布式ECU到中央计算

这两年参加技术交流&#xff0c;只要聊到智能汽车&#xff0c;耳朵里全是“汽车电子电气架构”“域融合”“中央计算”这几个词。我经手过好几款量产项目&#xff0c;从早期的分布式车身控制器&#xff0c;一路做到区域控制器和中央网关&#xff0c;最大的感受是&#xff1a;这…

作者头像 李华
网站建设 2026/10/7 9:40:39

Java垃圾分类回收管理系统源码部署与二次开发指南

简介&#xff1a;Java城市垃圾分类回收管理系统源码与数据库打包资源&#xff0c;面向计算机专业毕业生及在校生&#xff0c;适用毕业设计、期末大作业、课程设计等场景&#xff0c;解决缺少完整可运行项目、不知如何实现垃圾分类业务的问题。压缩包共218个文件、大小约2.43MB&…

作者头像 李华