试验目标
使用autoware在实车环境实现全局规划、局部规划、自动避障功能
试验环境及设备
- 环境:ubuntu18.04+autoware.ai1.4
- 设备:
激光雷达VLP-16
工控机
pix四轮驱动底盘
注意:
- 本文默认系统环境已经配置完毕,包括激光雷达的驱动
- 实验设备激光雷达型号也可以是其他品牌,只要提前安装驱动配置完毕正常使用即可
- 没有工控机也可以使用pc代替
- 本文采用设备的底盘为pix,其已经将驱动节点集成到autoware中,采用其他底盘需要自己编写相应的驱动节点
建图
构建pcd点云地图
采集数据
直接利用autoware录制激光雷达数据
1.激光雷达上电并通过网口连接后,启动autoware
### 在终端依次输入
cd autoware.ai
source install/setup.bash
roslaunch runtime_manager runtime_manager.launch
2.在sensing中点击Velodyne VLP-16后的config,点击ref选择VLP16db.yaml文件所在的路径,(该文件在安装激光雷达驱动时已经默认配置),而后勾选Velodyne VLP-16
3.点击右下角[ROSBAG]按钮,在弹出的对话框中点击下方[Refresh]按钮刷新话题列表
4.在话题列表中找到话题/points_raw并勾选
5.点击右上⻆[Ref]按钮更改文件名并修改保存路径
6.点击[Start]按钮开始记录数据
7.当完成数据记录之后点击[Stop]按钮,文件将保存到指定文件夹中
生成pcd点云地图
直接使用autoware的ndt_mapping生成点云地图
1.启动autoware确保sensing中的velodyne VLP-16没有被勾选,点击setup,点击TF按钮
2.点击Map,点击ref,选择如下所示的路径,点击TF按钮
autoware.ai/src/autoware/documentation/autoware_quickstart_examples/launch/tf_local.launch
3.点击Simulation页面,点击页面右上方的ref按钮,加载之前录制的bag文件,点击Play按钮播放,然后在右方playing后面有数字显示时点击Pause暂停,在这里可以通过点击右下方的Rviz按钮,将Fixed Frame改为velodyne,查看bag包播放
4.在Compulting菜单中找到lidar_localizer下的ndt_mapping选项,点击后面的app进行设置,将Method_Type选为pcl_generic,如果成功配置了GPU也可以选择pcl_anh_gpu,使用gpu
5.勾选sensing页面中的下面两个选项
6.回到simulation页面点击pause,继续播放,直到bag包播放完毕
7.点击computing页面,点击ndt_mapping后的app,点击页面下方的ref选择想要的保存路径,而后点击PCD OUTPUT,在对应路径下查找保存的pcd点云地图
8.生成pcd地图后,可以通过终端命令查看
pcl_viewer xxxx.pcd
也可以通过autoware查看,点击map页面,点击Point Cloud后的ref选择自己储存点云地图的路径,而后点击Point Map按钮,直到地图加载完成;点击下方的TF按钮,TF加载文件的路径与上文建图的路径相同;点击setup页面,点击TF按钮;最后点击页面下方的Rviz按钮即可查看
一些说明
- 除了使用autoware直接录制激光雷达的数据之外,还可以直接roalaunch激光雷达的驱动,通过ros命令直接录制;通过这种方法录制的激光雷达数据在使用autoware直接建图时,需要将bag包的话题修改为/points_raw
#运行激光雷达驱动
roslaunch velodyne_pointcloud VLP16_points.launch
rostopic list #查看当前所有主题,查看要录的主题的名字
cd ~/ #(cd到要保存数据包的位置)
#录制指定的/velodyne_points主题的数据
rosbag record -o bag_name /velodyne_points
- 除了使用autoware的ndt_mapping直接建图外,还可以采用别的效果更好的slam算法进行建图,比如LIO-SAM(需要imu数据)等,因为ndt_mapping建图效果一般,特别是当存在回环时,往往起点终点无法重合,累计误差很大,这样生成的地图在后续点云匹配进行定位时会出现偏差
绘制矢量地图
生成点云地图后,需要在点云地图的基础上绘制矢量地图,主要是在点云地图上绘制车道关系,道路边沿,停止线等,这是后续进行全局规划的基础
安装Autoware Maptool插件
绘制矢量地图需要使用unity和Autoware Maptool,安装教程以及使用教程如下(在win系统)
参考链接
https://blog.csdn.net/qq_33971022/article/details/109013661