运行 Autoware 基本 demo

引言

在安装了 Autoware 之后,首先可以尝试运行一下官方 demo,熟悉 Autoware 的 runtime manager 操作界面。

关于 Autoware 的安装,可以参考官方教程。官网给出两种安装方式: 源码编译 和 Docker 方式。为了减少麻烦,推荐用 Docker 方式安装。可以参考本博客另一篇文章 中介绍的 Docker 安装 Autoware 的方法。不管哪种方式安装的 Autoware,运行 demo 的方式都是一样的。

以下操作来自 Autoware 官方提供的 QuickStart 。

下载 demo 数据文件

运行 Autoware 基本 demo 需要用到 2 个文件

  • rosbag : 保存了实车行驶中记录的数据,主要是 /nmea_sentence 和 /points_raw,前者来自 GPS,可以提供定位信息,后者来自 LiDAR,可以提供环境感知和定位信息。
  • data: 包含了点云地图 (pcd map),向量地图 (vector map),TF 坐标转换等。

把这 2 个文件存放在特定的位置,方便后续的调用。这里创建 .autoware 隐藏文件夹,下载文件并解压缩

$ mkdir ~/.autoware
$ cd ~/.autoware
$ wget http://db3.ertl.jp/autoware/sample_data/sample_moriyama_data.tar.gz  # data 
$ wget http://db3.ertl.jp/autoware/sample_data/sample_moriyama_150324.tar.gz  # rosbag
$ tar xf sample_moriyama_data.tar.gz
$ tar xf sample_moriyama_150324.tar.gz

Quick Start 中还提到 my_launch.sh 文件,这里不需要下载,因为新版本的 Autoware 已经自带了所需要的 launch 文件,存放在了 ~/Autoware/docs/quick_start 中。

运行 Autoware demo

  1. 打开 Autoware runtime manager
./Autoware/ros/run

这个命令的主要作用是运行 roscore 和 ~/Autoware/ros/src/util/packages/runtime_manager/scripts 路径下的 runtime_manager_dialog.py 文件,将出现如下界面。


运行 Autoware 基本 demo_第1张图片
Screenshot from 2019-02-09 14-51-41.png

可以看到 runtime manager 包含了很多 Tab: Quick Start, Setup, Map, Sensing, ...
在运行官方 demo 的过程中,我们主要用到 Quick Start 和 Simulation,以及右下角的 RViz.

  1. 运行 rosbag
    选择 Simulation Tab, 通过 Ref 选择刚才下载的 bag 文件,如下所示
运行 Autoware 基本 demo_第2张图片
Screenshot from 2019-02-09 15-23-40.png

Play 1s ~ 2s 之后再 Pause。

  1. 启动 RViz
    RViz 是数据可视化的工具,可以将接收到的 rostopic 中的数据显示出来,方便我们直观的检查 data 。
    点击右下角的 RViz,出现如下界面:


    运行 Autoware 基本 demo_第3张图片
    Screenshot from 2019-02-09 15-50-58.png

这是 RViz 的默认初始界面,为了配合 demo,需要做一些设置,官方已经给了配置文件,即 ~/Autoware/ros/src/.config/rviz/default.rviz。 路径中有隐藏文件夹,查看时需要设置隐藏可见。
在 RViz 中通过 File -- Open Config 打开这个配置文件,界面如下:


运行 Autoware 基本 demo_第4张图片
Screenshot from 2019-02-09 15-57-41.png

可以看到左侧栏已经添加了很多设置,基本上每一项都可以接收一个 rostopic,将其显示出来。由于现在 rosbag 在暂停中,所以中间的显示界面没有任何东西。

  1. 加载 map ,开启定位
    回到 runtime manager 界面的 Quick Start Tab
  • 在 Map 那一行加载 my_map.launch 文件,文件所在路径是:~/Autoware/docs/quick_start,后续用到的 launch 文件也都在这里。
  • 在 Localization 那一行加载 my_localization.launch 文件,也在上述路径中
  1. 继续 play
    在 Simulation Tab,再次点击 Pause,恢复播放 rosbag。
    此时在 RViz 中应该可以看到地图和车的模型,如下图


    运行 Autoware 基本 demo_第5张图片
    Screenshot from 2019-02-09 16-15-09.png

其中的地图包括 pcd map 和 vector map,可以通过选择和取消左侧栏的 Points Map 和 Vector Map 分别查看。

  1. 设置 RViz
    为了便于观察,可以将 RViz 中右边栏的 Target Frame 设置为 base_link,就是车身,顶部的 Type 设置为 TopDownOrtho,然后点 Zero。这样设置可以令车身始终处于屏幕显示的中心位置,并且是 top-down 视角。也可以尝试其他视角,比如 ThirdPersonFollower。

按照官方说法,车辆定位初始的时候抖动比较厉害,到了大概 2 分钟之后稳定下来。

  1. 开启 mission planning
    目前在 Quick Start 中只开启了 map 和 localization。
    继续开启 mission planning,launch 文件还是在之前的文件夹中。这一部分主要是加载 waypoints,就是在全局层面汽车需要跟踪的路线。这一全局规划的路径在 182s 左右才会出现。
    如下所示


    运行 Autoware 基本 demo_第6张图片
    Screenshot from 2019-02-09 16-30-55.png

可以看到 waypoints 附带的期望速度和方向。

  1. 开启 motion planning
    继续在Quick Start 中开启 motion planning,如下图所示


    运行 Autoware 基本 demo_第7张图片
    Screenshot from 2019-02-09 16-33-10.png

这里显示的汽车在跟踪每一个 waypoint 时的动作规划,白色的弧线对应了由 pure_pursuit 计算出来的转角曲率,绿色区域对应了 detection_range.

总结

这里的 demo 本质上是回放之前实车运行时记录的数据 (大概是2015年3月24日在名古屋市下辖的守山区街道上录制的),信息传输是单向的:只能从实车数据到 Autoware。尽管 Autoware 能够实现完整的自动驾驶功能,包括感知、定位、规划决策和车辆控制,但是很显然 Autoware 最后产生的车辆控制信号不可能影响已经记录好的过去的数据。这个 demo 演示的是一个开环系统,不存在从 Autoware 到实车的反馈。

后续文章中会提到如何搭建一个闭环的自动驾驶仿真系统,这样仿真车辆和 Autoware 之间就有互动,可以验证自己的自动驾驶算法了。

最后,对比一下 守山区的真实街道场景。


运行 Autoware 基本 demo_第8张图片
View in RViz
Real world

看来车子是从右边那个 Aeon Mall 停车场开出来的。

你可能感兴趣的:(运行 Autoware 基本 demo)