Autoware 开源项目安装与使用指南
目录结构及介绍
在克隆完https://github.com/autowarefoundation/autoware.git
仓库之后, 您将获得以下核心目录:
-
autoware_common\n\t这是库或工具类型存储库, 其中包含了自主驾驶中最常用的ROS软件包. 这些软件包已经从主存储库独立出来以减少持续集成(CI)执行时间.\n\n
-
autoware_core\n\t这是用于高品质稳定版本的ROS软件包的核心存储库, 基于Autoware Auto 和Autoware Universe开发.
-
autoware_universe\n\t这是实验性和前沿性的ROS软件包存放地. 目的是让研究者和开发者更容易地拓展Autoware Core功能.
-
autoware_launch\n\t这是发射配置存储库, 包含了节点配置及其参数.
-
autoware-github-actions\n\t它包含了可重复使用的GitHub工作流模板, 提供CI/CD自动化等支持.
启动文件介绍
当涉及到启动整个Autoware系统时, 使用autoware_launch
目录下的各种launch files是最常见的做法.
在autoware_launch
目录下, 您可以找到不同的launch文件, 如autoware.launch
, localization.launch
, perception.launch
等. 这些launch 文件配置并协调相关的ROS节点, 执行特定的功能, 比如定位(localization), 感知(perception), 规划(planning), 控制(control)等.
一个典型的例子是启动autoware.launch
. 此文件整合所有必要组件, 从而能够运行完整的自主驾驶堆栈:
roslaunch autoware_launch autoware.launch
这将自动启动所有的基础服务以及预置的组件, 让您能够在模拟环境或真实车辆上测试Autoware.
请注意, 在运行任何launch文件之前, 需要确保已正确配置ROS环境变量, 并且所有的依赖项都已经安装.
配置文件介绍
autoware_launch
中的每个launch文件都调用一系列的ROS节点, 而这些节点可能拥有许多可以调整的参数来满足您的具体需求. 参数通常存储在YAML格式的文件中, 这种文件清晰易读, 方便修改.
例如, 在autoware_launch/params
子目录里, 您会发现像sensor_fusion/lane_filter_list_publisher.param.yaml
或者 planning/scenario_planning/parking_planner/parking_search/parking_search.param.yaml
这样的配置文件. 每个文件都包含了一个特定节点的一组参数.
要改变某些节点的行为, 只需编辑相应的配置文件, 修改所需参数值即可.
比如您想要修改lane_filter_list_publisher
的发布频率, 您只需打开相应的.param.yaml
文件, 寻找类似publish_rate: 50.0
的行, 然后将其修改为您期望的值.
需要注意的是, 更改后的配置文件应始终保存在同一个位置以便launch文件能够读取到更新过的设置. 最后一步就是重新运行launch文件使新的配置生效.
这样通过灵活配置Autoware的各种参数, 您就能适应不同场景的需求, 实现高度定制化的自动驾驶解决方案.
以上所述是基本指导原则; 根据所用ROS发行版(ROS1还是ROS2)的不同, 具体操作步骤可能会有所差异. 总之, 在Autoware的框架内, launch文件和参数文件构成了整个系统的神经中枢, 能够轻松实现对复杂行为和高级特性的精细控制. 如果遇到更深层次的问题或者需要进一步了解如何使用这些工具进行高级配置和调试, 我建议参考Autoware Universe文档中的相关章节获取更多帮助信息.