ROS学习04.ROS中的常用组件( 七 )


接下来使用抓取这些话题的消息 , 并且打包成一个文件放置到指定文件夹中:
mkdir ~/bagfilescd ~/bagfilesrosbag record -a
就是数据记录的命令 , -a(all)参数意为记录所有发表的消息 。现在 , 消息记录已经开始 , 我们可以在终端中控制小乌龟移动一段时间 , 然后在数据记录运行的终端中按下“Ctrl+C” , 即可终止数据记录 。新生成的数据记录文件保存在新建的~/文件夹中 。
4.6.2 回放数据
数据记录完成后 , 可以使用该数据记录文件进行数据回放 。功能包提供了info命令 , 可以查看数据记录文件的详细信息 , 命令的使用格式如下:
rosbag info
使用该info命令来查看之前生成的数据记录文件 。
从以上信息中可以看到 , 数据记录包中包含的所有话题、消息类型、消息数量等信息 。终止之前打开的控制节点并重启 , 使用如下命令回放所记录的话题数据:
rosbag play
在短暂的等待时间后 , 数据开始回放 , 小乌龟的运动规矩应该与之前数据记录的状态完全相同 。
4.7 本章小结
提问如下:
【ROS学习04.ROS中的常用组件】如果我们希望一次性启动并配置多个ROS节点 , 应该使用什么方法?ROS中的TF是如何管理系统中繁杂的坐标系的 , 我们又该如果使用TF广播、监听系统中的坐标变化的?Qt工具箱为我们提供了哪些可视化工具?rviz是什么 , 它又可以实现哪些功能?如果我们没有真实机器人 , 那么有没有办法在ROS中通过仿真的方式来学习ROS开发呢?需要用到什么工具?机器人往往涉及重复性调试工作 , 我们有没有办法使用ROS记录调试过程中的数据 , 并进行离线分析呢?