Rosbag play系列指令

Rosbag play bagFile01.bag bagFile02.bag …

播放多个录制文件:

由于我们的bag录制文件并不是同一时间录制,因此bag录制文件会因录制顺序不同播放顺序也不同,同时两个录制文件播放的时间间隔等于两个录制文件录制的时间间隔。

Rosbag play --bags=bagFile01.bag bagFile02.bag …

和上面那个指令作用一样:

Rosbag play -p prefix_name bagFile01.bag

给被发布的话题添加前缀,相当于给话题添加命名空间,但是改变话题也就意味着“原topic通信双方将断开联系“:

Rosbag play -q bagFile01.bag

停止在工作台上打印播放的信息(不显示播放完成的进度):

Rosbag play -i bagFile01.bag

立即播放录制文件,不再等待0.2s了:

Rosbag play --pause bagFile01.bag

暂停播放,等待按空格开启播放:

Rosbag play --queue length bagFile01.bag

设定输出缓冲区大小(输出缓冲区队列长度,单位byte):

有输入输出缓冲区用以暂时存放读写期间的文件数据而在内存区预留的一定空间。 即利用主存的存储空间来暂存从磁盘中输入输出的信息。 目的是缓和CPU 与 I/O 设备间速度不匹配的矛盾。 减少对 CPU 的中断频率,放宽对 CPU 中断响应时间的限制。 提高 CPU和 I/O 设备之间的并行性。 输入输出缓冲区通过磁盘缓存来实现,磁盘缓存本身并不是一种实际存在的存储介质,它依托于固定磁盘,提供对主存储器存储空间的扩充。

Rosbag play --clock bagFile01.bag

播放录制文件时顺带显示录制文件的时间戳:

时间戳指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数。

Rosbag play --clock --hz=freq_value bagFile01.bag

以freq_value频率显示时间戳:

但是说实在话,添加了--clock和--hz之后感觉没啥变化。

Rosbag play --delay delaytimevalue bagFile01.bag

延迟delaytimevalue秒,然后公布时间:

Rosbag play -r mulispeedvalue bagFile01.bag

以mulispeedvalue倍数倍速播放录制信息:

Rosbag play -s start_time bagFile01.bag

从start_time时刻开始播放录制消息:

Rosbag play --duration=Duration bagFile01.bag

录制文件持续播放Duration秒:

Rosbag play --skip-empty=Duration bagFile01.bag

在超过Duration秒的时间内,没有任何消息,那就跳过他们:

我们看到总播放时长从6.99变为了6.48,这就说明文件中空消息持续长达0.1秒的总时长为6.99-6.48=0.5秒。

Rosbag play --loop bagFile01.bag

重复播放录制文件直至人为的结束:

Rosbag play -k bagFile01.bag

播放录制文件结束之后,负责播放录制信息的节点并未结束进程:

播放的时长已经超过了bag文件录制的总时长,负责播放录制信息的节点仍未结束进程:

Rosbag play bagFile01.bag --topics topic01 topic02 …

播放录制文件中指定话题的消息:

播放时长为3.35秒左右,说明/turtle1/cmd_vel这个话题发布消息的时长为3.35秒左右。

Rosbag play bagFile01.bag --pause-topics topic01 topic02 …

等到播放到topic01、topic02…话题相关消息的时候暂停播放,等待在命令行输入空格后再继续播放录制的消息文件:

Rosbag play --wait-for-subscribers bagFile01.bag

如果我们录制的消息都是publisher发布的消息,那么我们在使用rosbag play进行播放时,一定要等到subscribers准备好之后,再进行消息的发送:

一定要将话题名称与话题类型分清楚,话题名称就像我们的变量名称一样有a,b,c…等无限多个,但是变量的类型的个数不是无穷的,变量的类型有int、float…等。

ROS:rosbag play系列指令(详解)相关推荐

  1. USS-INT指令详解

    USS-INT指令详解 EN: 初始化程序 USS_INIT 只需在程序中执行一个周期就能改变通信口的功能,以及进行其他一些必要的初始设置,因此可以使用 SM0.1 或者沿触发的接点调用 USS_IN ...

  2. arm-linux-ld中的参数,arm-linux-ld指令详解

    arm-linux-ld指令详解 我们对每个c或者汇编文件进行单独编译,但是不去连接,生成很多.o 的文件,这些.o文件首先是分散的,我们首先要考虑的如何组合起来:其次,这些.o文件存在相互调用的关系 ...

  3. 九爷带你了解 nginx 日志配置指令详解

    nginx日志配置指令详解 日志对于统计排错来说非常有利的. 本文总结了nginx日志相关的配置如 access_log.log_format.open_log_file_cache.log_not_ ...

  4. Windows 网络服务架构系列课程详解(六) ---利用NLB群集实现WEB服务器的可靠性...

    Windows 网络服务架构系列课程详解(六) -----利用NLB群集实现WEB服务器的可靠性   实验背景: 在大型网络环境中存在这样一种情景,公司内部的FTP服务器出现故障或脱机了,而且不能快速 ...

  5. 革命性存储:易安ESATA系列产品详解

    革命性存储:易安ESATA系列产品详解<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office& ...

  6. 大型企业网络配置系列课程详解(五) --Frame-Relay配置与相关概念的理解

    大型企业网络配置系列课程详解(五)             --Frame-Relay配置与相关概念的理解   实验原理: Frame-Relay(帧中继)简称FR,是国际电信联盟通信标准化组(ITU ...

  7. movsb movsw movsd 指令详解

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/u013490896/article/d ...

  8. 大型企业网络配置系列课程详解(三)--OSPF高级配置与相关概念的理解

    大型企业网络配置系列课程详解(三)<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office&qu ...

  9. java中Freemarker list指令详解

    java Freemarker中list指令主要是进行迭代服务器端传递过来的List集合. 定义 <#list nameList as names> ${names} </#list ...

最新文章

  1. 八、pyqt5按钮类控件——QPushButton、QRadioButton、QCheckBox
  2. Tomcat中web.xml文件的详细说明
  3. 使用注解配置声明式事务控制
  4. PHPExcel+phalcon+yii批量导入
  5. html 甘特图_工具项目管理工具详解——甘特图
  6. VMware-vRealize-Log-Insight-8.2.0.0安装部署指南
  7. SQL Server 2008 数据库快照
  8. PAT 乙级 1016. 部分A+B (15) Java版
  9. stl算法:next_permutation剖析
  10. 用UltraEdit软件替换回车换行的窍门
  11. 微信小程序之摇骰子源代码分享
  12. GoLang 插件化开发
  13. Web前端开发技术第三版课后练习答案
  14. 哥德巴赫猜想C++实现
  15. 二分查找的左右逼近法
  16. 游戏防外挂、破解解决方案
  17. docker命令--k8s的日志
  18. p95、p99、p999 什么意思
  19. 油耗笔记OilNote-记油耗App
  20. sin cos 信号相加计算

热门文章

  1. Dell 笔记本电脑BIOS详细解读
  2. R语言使用Predict函数计算指定连续变量和风险比HR值的关系、基于限制性立方样条分析方法、限制性立方样条cox回归模型
  3. 利用VSPD建立虚拟串口
  4. 前端大屏展示框架搭建(一)
  5. 苹果CMS海螺模板V16魔改版2.0修复bug分享给大家
  6. 解决Python打包exe控制台无法粘贴问题
  7. WWDC22:“花里胡哨”的苹果又会给我们带来什么惊喜呢?
  8. 微信健身房小程序开发源码设计方案
  9. 学习使用html2canvas生成渐变色背景图片
  10. mysql中in的参数有限制_数据库 in 可以包含的参数个数