ROS与激光雷达入门教程-RS-lidar-16雷达的rosbag包制作
ROS与激光雷达入门教程-RS-lidar-16雷达的rosbag包制作
说明:
- 介绍如何制作和播放多线雷达rosbag包
- 测试环境:Turbot-DL + 多线雷达
准备:
安装rslidar驱动,参考:https://www.ncnynl.com/archives/201807/2552.html
安装pointcloud_to_laserscan包,参考:https://www.ncnynl.com/archives/201807/2554.html
更改ros_rslidar/rslidar_pointcloud/launch下的rs_lidar_16.launch
我们不启动rviz,屏蔽rviz,注释如下行:
<!--<node name="rviz" pkg="rviz" type="rviz" args="-d $(find rslidar_pointcloud)/rviz_cfg/rslidar.rviz" />-->
- 新增加turtlebot_rslidar.launch
roscd pointcloud_to_laserscan/launch
vim turtlebot_rslidar.launch
- 内容如下:
<?xml version="1.0"?>
<launch>
<!-- run pointcloud_to_laserscan node -->
<node pkg="pointcloud_to_laserscan" type="pointcloud_to_laserscan_node" name="pointcloud_to_laserscan">
<remap from="cloud_in" to="/rslidar_points"/>
<remap from="scan" to="/scan"/>
<rosparam>
# target_frame: rslidar # Leave disabled to output scan in pointcloud frame
transform_tolerance: 0.01
min_height: -0.4
max_height: 1.0
angle_min: -3.1415926 # -M_PI
angle_max: 3.1415926 # M_PI
angle_increment: 0.003 # 0.17degree
scan_time: 0.1
range_min: 0.2
range_max: 100
use_inf: true
inf_epsilon: 1.0
# Concurrency level, affects number of pointclouds queued for processing and number of threads used
# 0 : Detect number of cores
# 1 : Single threaded
# 2->inf : Parallelism level
concurrency_level: 1
</rosparam>
</node>
</launch>
rosbag包录制:
- 新终端,启动turlebot2底盘
roslaunch turtlebot_bringup minimal.launch
- 新终端,启动rslidar雷达
roslaunch rslidar_pointcloud rs_lidar_16.launch
- 新终端,启动点云转换
roslaunch pointcloud_to_laserscan turtlebot_rslidar.launch
- 新终端,启动键盘控制
roslaunch turtlebot_teleop keyboard_teleop.launch
- 开始录制ros包
cd ~
rosbag record /scan /rslidar_points /mobile_base/sensors/imu_data /odom
- 执行后显示
rosbag record /scan /rslidar_points /mobile_base/sensors/imu_data /odom
[ WARN] [1539683153.404219091]: --max-splits is ignored without --split
[ INFO] [1539683153.415072121]: Subscribing to /mobile_base/sensors/imu_data
[ INFO] [1539683153.423859370]: Subscribing to /odom
[ INFO] [1539683153.430501735]: Subscribing to /scan
[ INFO] [1539683153.438030846]: Subscribing to /rslidar_points
[ INFO] [1539683153.445980372]: Recording to 2018-10-16-17-45-53.bag.
执行之后通过键盘控制小车运动,收集相关数据
话题说明:
/scan 对应雷达的2d数据
/rslidar_points 对应雷达的3d数据
/mobile_base/sensors/imu_data turtlebot2小车对应的IMU数据
/odom turtlebot2小车的底盘里程计
- 数据收集差不多了,关闭rosbag录制线程后,按ctrl+c
- 在home目录会自动生成一个2018-10-16-17-45-53.bag
- 录制中,这个包会增加非常快,需要保证你的主机有足够的空间。
rosbag包回放
- 关闭所有启动的终端
- 新终端,启动roscore
roscore
- 新终端,启动回放
rosbag play 2018-10-16-17-45-53.bag
- 新终端,列出话题:
$rostopic list
/clock
/mobile_base/sensors/imu_data
/odom
/rosout
/rosout_agg
/rslidar/scan
/rslidar_points
- 新终端,显示话题内容:
rostopic echo /rslidar/scan
获取最新文章: 扫一扫右上角的二维码加入“创客智造”公众号