话题录制:
录制所有发布出来的话题,此时默认将话题保存在一个以当时时间戳命名的文件夹中:
$ rosbag record -a
录制指定话题:
$ rosbag record /topic1 /topic12
话题回放:
基本功能:
$ rosbag play <your bagfile name>
等待一定时间之后发布bag文件中的内容
$ rosbag play <your bagfile name> -d <delay time>
按一定频率回放,-r选项用来设定消息发布速率,如下面命令则表示以3倍原始速率发布话题
$ rosbag play -r 3 <your bagfile name>
回放指定话题:
$ rosbag play <your bagfile name> --topics <topics>
其他指令:
展示bag文件中所包含话题的名称、类型和消息数量:
$ rosbag info <your bagfile name>
更加灵活的回放方式,例如回放除了某个话题以外的所有话题:
lanuch文件录制和播放话题
录制指定话题
<node pkg="rosbag" type="record" name="logger" output="screen"
args="-o $(find velocity_estimator)/logdata/log --split --size=2000
/m100/scan
/lab_gps
/dji_sdk/imu
/dji_sdk/gps_position
/dji_sdk/velocity
/dji_sdk/flight_control_setpoint_generic
/dji_sdk/gps_health
/dji_sdk/rc
/dji_sdk/attitude
/rosout
/rosout_agg"/>
播放话题
<node pkg="rosbag" type="play" name="rosbagplay" args="-r 2 $(find fusion_position)/log/logbag/0610/13.bag "/>
ros:恢复bag.active
一 问题:
由于先关掉了roscore节点,导致rosbag生成了bag.active
二 解决方案:
rosbag reindex xxx.bag.active
rosbag fix xxx.bag.active XXX.bag
参考:https://answers.ros.org/question/228676/exclude-some-topics-from-rosbag-play/