本系列教程作者:小鱼
公众号:鱼香ROS
QQ交流群:139707339
教学视频地址:小鱼的B站
完整文档地址:鱼香ROS官网
版权声明:如非允许禁止转载与商业用途。

6.2时光记录仪之rosbag2

本节我们来介绍ROS2中常用的一个CLI工具——rosbag2,这个工具用于记录话题的数据(就像小鱼录视频一样)。

比如前面的章节中李四写《艳娘传奇》的话题数据,我们就可以使用这个指令将其存储为文件 ,后续我们无需启动李四,直接可以将bag文件里的话题数据发布出来。

这个工具在我们做一个真实机器人的时候非常有用,比如我们可以录制一段机器人发生问题的话题数据,录制完成后可以多次发布出来进行测试和实验,也可以将话题数据分享给别人用于验证算法等。

我们尝试使用bag工具来记录sexy_girl话题数据,并二次重放。

一、安装

当我们安装ROS2的时候,这个命令行工具已经为我们自动安装了,这里我们就不需要再次安装。

但是如果你需要一些新的功能:则可以用过源码获取:https://github.com/ros2/rosbag2/tree/foxy-future

二、记录

2.1 常用指令

2.1.1 记录某一个话题

/sexy_girl 为话题名字

ros2 bag record /sexy_girl

2.1.2 记录多个话题的数据

ros2 bag record topic-name1  topic-name2

2.1.3 记录所有话题

ros2 bag record -a

2.1.4其他选项

-o name 自定义输出文件的名字
ros2 bag record -o file-name topic-name
-s 存储格式

目前仅支持sqllite3,其他还带拓展,后续更新小鱼再更新。

2.2 录制小说

2.2.1 启动李四

进入我们的town_ws,运行李四节点

cd  town_ws/
source install/setup.bash
ros2 run village_li li4_node

2.2.2 录制

接着使用像下面的指令就可以进行话题数据的录制了

ros2 bag record /sexy_girl

如何停止录制呢?我们直接在终端中使用Ctrl+C指令打断录制即可

接着你会在终端中发现多处一个文件夹,名字叫做rosbag2_xxxxxx.db3

打开文件夹,可以看到内容

这样我们就完成了录制。

三、查看录制出话题的信息

我们在播放一个视频前,可以通过文件信息查看视频的相关信息,比如话题记录的时间,大小,类型,数量

ros2 bag info bag-file

四、播放

4.1 播放话题数据

接着我们就可以重新的播放数据,使用下面的指令可以播放数据

ros2 bag play xxx.db3

接着我们关闭李四,使用ros2的topic的指令来查看数据

ros2 topic echo /sexy_girl

4.2 播放选项

4.2.1 倍速播放 -r

-r选项可以修改播放速率,比如 -r 值,比如 -r 10,就是10倍速,十倍速播放话题

ros2 bag play rosbag2_2021_10_03-15_31_41_0.db3 -r 10

4.2.2 -l 循环播放

单曲循环就是它了

ros2 bag play rosbag2_2021_10_03-15_31_41_0.db3  -l

4.2.3 播放单个话题

ros2 bag play rosbag2_2021_10_03-15_31_41_0.db3 --topics /sexy_girl

五、总结

相信你已经掌握了ROS2的bag工具,下一节我们来学习下,如何ROS2的RQT工具~

作者介绍:

我是小鱼,机器人领域资深玩家,现深圳某独脚兽机器人算法工程师一枚
初中学习编程,高中开始接触机器人,大学期间打机器人相关比赛实现月入2W+(比赛奖金)
目前在输出机器人学习指南、论文注解、工作经验,欢迎大家关注小智,一起交流技术,学习机器人

《动手学ROS2》6.2时光记录仪之rosbag2相关推荐

  1. 《动手学ROS2》第十章章节介绍 机器人导航NAV2

    本系列教程作者:小鱼 公众号:鱼香ROS QQ交流群:139707339 教学视频地址:小鱼的B站 完整文档地址:鱼香ROS官网 版权声明:如非允许禁止转载与商业用途. 第十章 机器人导航NAV2 千 ...

  2. 《动手学ROS2》10.4 Cartographer介绍与安装

    <动手学ROS2>10.4 Cartographer介绍与安装 本系列教程作者:小鱼 公众号:鱼香ROS QQ交流群:139707339 教学视频地址:小鱼的B站 完整文档地址:鱼香ROS ...

  3. 《动手学ROS2》10.6导航地图概述

    <动手学ROS2>10.6导航地图概述 本系列教程作者:小鱼 公众号:鱼香ROS QQ交流群:139707339 教学视频地址:小鱼的B站 完整文档地址:鱼香ROS官网 版权声明:如非允许 ...

  4. 《动手学ROS2》10.7 Nav2导航框架介绍与安装

    <动手学ROS2>10.7 Nav2导航框架介绍与安装 本系列教程作者:小鱼 公众号:鱼香ROS QQ交流群:139707339 教学视频地址:小鱼的B站 完整文档地址:鱼香ROS官网 版 ...

  5. 《动手学ROS2》9.5为FishBot添加添加激光雷达传感器

    <动手学ROS2>9.5为FishBot添加添加激光雷达传感器 本系列教程作者:小鱼 公众号:鱼香ROS QQ交流群:139707339 教学视频地址:小鱼的B站 完整文档地址:鱼香ROS ...

  6. 《动手学ROS2》4.7ROS2服务介绍

    本系列教程作者:小鱼 公众号:鱼香ROS QQ交流群:139707339 教学视频地址:小鱼的B站 完整文档地址:鱼香ROS官网 版权声明:如非允许禁止转载与商业用途. 4.4 ROS2服务介绍 大家 ...

  7. 《动手学ROS2》4.6ROS2自定义话题接口

    本系列教程作者:小鱼 公众号:鱼香ROS QQ交流群:139707339 教学视频地址:小鱼的B站 完整文档地址:鱼香ROS官网 版权声明:如非允许禁止转载与商业用途. 4.3.2 自定义话题接口 本 ...

  8. 《动手学ROS2》4.3ROS2话题通信(C++)

    本系列教程作者:小鱼 公众号:鱼香ROS QQ交流群:139707339 教学视频地址:小鱼的B站 完整文档地址:鱼香ROS官网 版权声明:如非允许禁止转载与商业用途. 4.2.2 ROS2话题通信( ...

  9. 《动手学ROS2》4.4话题小练习-李三借钱吃麻辣烫

    本系列教程作者:小鱼 公众号:鱼香ROS QQ交流群:139707339 教学视频地址:小鱼的B站 完整文档地址:鱼香ROS官网 版权声明:如非允许禁止转载与商业用途. 4.2.3 话题通信小练习之李 ...

最新文章

  1. opencv 霍夫线变换
  2. 四旋翼姿态解算——互补滤波算法及理论推导
  3. U3D sorting layer, sort order, order in layer, layer深入辨析
  4. struts2 去掉或修改后缀名
  5. Windows 系统版本判断
  6. jax-rs jax-ws_极端懒惰:使用Spring Boot开发JAX-RS服务
  7. JUnit4单元测试、JUnit4使用详解、assertThat用法
  8. python自动处理下载的英文字幕
  9. ucint核心边缘分析_ucinet社会网络分析笔记(一)网络密度、中心度、凝聚子群、核心-边缘...
  10. 10款常用的Linux音乐播放器,10款常用的Linux音乐播放器
  11. 计算机软件绘制思维导图步奏,常见的思维导图有哪几种画法
  12. k2p 登录路由器shell失败_斐讯p.to打不开_p.to进不去怎么办?-192路由网
  13. GOP之M和N值介绍
  14. Hello, CTF WP
  15. git 记住账号密码、忽略部分文件、合并分支、将远程分支拉取到本地
  16. Mysql的分组函数
  17. oracle10如何扩asm磁盘组,在Oracle10g 新增ASM磁盘组
  18. python的pyaudio教程入门_Python PyAudio 安装使用
  19. oracle 表空间 Managing Tablespace Data Files
  20. Unity封装MemoryStream进行内存读写

热门文章

  1. swagger Could not render e,see the console
  2. Retina Display Support for Myeclipse 10.x at RMBP MAC OS
  3. 数字化工厂有哪些关键技术
  4. 如何做好产品经理面试工作
  5. 美术集网校和美术加网校是什么关系?
  6. 大数据日知录理解(1)
  7. 2013年7月微软MVP申请开始啦!
  8. ping 命令出错 network is unreachable
  9. css字与字之间的间距
  10. java 0x80000000_如何在java中将0x80000000等同于-2147483648?