一、通过bag文件记录话题消息
当发布话题的节点运行后,可以通过rostopic list 列出当前运行的话题,然后记录:
mkdir bagfile
cd bagfile
rosbag record -a #记录所有的话题
当消息记录完成后,结束ctrl+c终止record的命令行,在新建的bagfile文件中会生成年-月-日-时-分-秒.bag文件。
二、数据重现
我们使用rosbag命令将数据记录在bag文件之后,还可以利用里面的数据重现我们节点的运行状态。
cd bagfile
rosbag info <file_name>
会显示此bag文件的一些详细信息(如下图):

回放
cd bagfile
rosbag play <bagfile_name>
默认情况下,rosbag play命令会等待0.2秒之后才开始发布信息,这是为了在发布信息之前通知所有订阅信息的节点,以使它们能够及时地接收到rosbag play发布的信息。这个等待时间可以用-d选项指定。
因为rosbag record记录数据是有延迟的,所以在执行rosbag play最初的一小段时间里消息不会发布,使用-s选项后跟秒数可以跳过bag文件记录的前几秒。
-r,它可以改变信息发布的速度:
rosbag play -r 2 <bagfile_name> #以两倍的速度发布记录的消息
<

rostopic消息记录、回放、转.txt&spm=1001.2101.3001.5002&articleId=81513517&d=1&t=3&u=45be2121d8b74e7bb93220263a15e272)
1503

被折叠的 条评论
为什么被折叠?



