使用rosbag录制和回放3d激光雷达数据和小强ROS开发平台的里程计IMU数据
原链接: https://community.bwbot.org/topic/522
用激光雷达进行大范围建图时,为了方便调整建图算法的参数,可以先录制数据包,然后离线回放数据包方式建图。安装有速腾聚创3d激光雷达的小强xq5开发平台,能同时输出3d雷达点云、2d雷达点云、IMU、里程计、图像等数据,结合小车主机配置的高速、高容量固态硬盘,可以录制高质量的数据包,满足各种场景的3d、2d建图。
1.安装无线路由,架设随车wifi网络
小车底盘的“kinect供电”dc头,是通用的直流12v输出电源,可以用来给常用的9V、12V无线路由供电。在小车上固定一个无线路由,我们就可以架设一个随车移动的wifi网络。利用这个wifi网络,我们可以远程控制录制过程和遥控小车移动。
2.在windows笔记本上安装小强开发平台的《伽利略导航客户端安装程序》和ssh客户端
伽利略导航客户端用来方便的遥控小强开发平台,ssh客户端则用于ssh登录小车主机,ssh客户端可以用putty。
3.启动3d激光雷达的ros驱动和pointcloud_to_laserscan包
使用wifi网络,在windows笔记本电脑上ssh登录小车主机。小车的IMU、里程计、图像等数据默认是开机自动启动的。
#新开一个ssh连接启动ros驱动
ssh xiaoqiang@192.168.x.x #小车密码为xiaoqiang,请将192.168.x,x换成实际的ip地址
roslaunch rslidar_pointcloud xiaoqiang_lungu.launch
#新开一个ssh连接启动pointcloud_to_laserscan包
ssh xiaoqiang@192.168.x.x #小车密码为xiaoqiang,请将192.168.x,x换成实际的ip地址
roslaunch pointcloud_to_laserscan xiaoqiang_rslidar.launch
4.开始录制数据
#新开一个ssh连接启动rosbag录制线程
ssh xiaoqiang@192.168.x.x #小车密码为xiaoqiang,请将192.168.x,x换成实际的ip地址
roslaunch pointcloud_to_laserscan xiaoqiang_rslidar.launch
rosbag record /rslidar/scan /rslidar_points /xqserial_server/IMU /xqserial_server/Odom
rosbag的使用方法,[请参考wiki](http://wiki.ros.org/rosbag/Commandline)
/rslidar/scan 对应雷达的2d数据
/rslidar_points 对应雷达的3d数据
/xqserial_server/IMU 对应小车的IMU数据
/xqserial_server/Odom 小车的底盘里程计
5.使用windows伽利略导航客户端,遥控小车对待建图场景进行扫描。完成后,手动关闭rosbag录制线程
小车的遥控移动轨迹,最好要有多个闭合回路,因为现在的激光雷达slam算法通常都可以使用回环检测技术进一步消除误差。
ctrl+c关闭rosbag录制线程后,在小车home目录会自动生成一个2018-xxx-xxx.bag文件,这个文件就是录制的数据包。
6.用rosbag回放录制的数据包
#先关闭小车上启动的所有的ros驱动节点,因为回放数据包发布的传感器数据会和小车当前数据冲突,因此需要关闭现有的ros驱动节点
#在小车主机上新开一个命令终端
sudo service startup stop
roscore
#用rosbag回放数据包
#在小车主机上新开一个命令终端
sudo service startup stop
rosbag play 2018-08-11-13-20-34.bag #请将 2018-08-11-13-20-34.bag替换成实际bag包名字
一切正常的话,数据包里录制的话题数据就已经在ros中发布了,可以使用rostopic工具查看,也可以用rviz订阅。
还可以使用rqt_bag可视化工具打开bag数据包,rqt_bag可以方便的浏览、可视化bag包内容。
上一篇: VS2017配置EGE图形库
下一篇: 第四次作业-树