ROS二进制日志包 ROS binary logger package
原文网址:
1 http://www.ros.org/news/2017/02/ros-binary-logger-package.html
2 https://github.com/CNR-ITIA-IRAS/binary_logger
我们想宣布发布新的ROS二进制记录器包。该包装设计为rosbag的替代品,当下列情况时:
- 需要多个和长消息采集(二进制文件具有较小的尺寸)
- 仅需要离线数据分析,并且在ROS中不需要实验的重放(例如使用MATLAB的数据分析)
二进制文件的使用允许减少日志文件的大小,并允许加快这些文件的后处理(例如,MATLAB花费〜0.1s来解压缩300MB的二进制文件)。该软件包可以记录一些常见的ROS消息,如:传感器msgs/ IMU,传感器的msg / JointState,geometry_msgs / WrenchStamped,等等新信息类型可以很容易地添加和鼓励用户作出贡献。还提供了两个MATLAB脚本来解包二进制文件。
你可以在这里找到的代码:https://github.com/CNR-ITIA-IRAS/binary_logger 更多的信息和一个简短的描述可以在资源库中找到。
联系人:Manuel Beschi manuel.beschi@itia.cnr.it - Enrico Villagrossi enrico.villagrossi@itia.cnr.it
CNR-ITIA的二进制记录器包(www.itia.cnr.it)
存储库包含由意大利国家研究委员会(CNR-ITIA)的工业技术和自动化研究所开发的ROS二进制记录器的实现。
概述
该包提供了获取ROS主题的所有功能,并将数据存储到二进制文件中。
目标是减少存储文件的尺寸(如果与.bag文件相比),以便进行长时间数据采集,并加快日志文件分析(例如,MATLAB花费〜0.1s来解压300MB的二进制文件)。
可以记录的消息类型(目前)为:
'JointState'
'Imu'
'PoseStamped'
'扳手'
'Float64MultiArray'
安装和支持的ROS版本
下载并编译软件包(没有特定的依赖关系,只需要ROS标准安装)。
该软件包已经用ROS'Jade'和'Kinetic'测试。
用法
要获得一个新的主题,它需要:
1)定义主题特征(消息类型,持续时间,抽取)和二进制文件特性(二进制文件名,路径)到'cfg / binary_logger_cfg.yaml'(更多信息报告在文件内)。
2)启动文件“launch / binary_logger.launch”开始记录数据(注意:如果主题不可用,记录器将等待主题);
MATLAB
该软件包还提供了在MATLAB中解码二进制文件的脚本。更多详细信息在脚本(README)中报告。
添加新的记录器功能
包是一个开源项目,鼓励用户添加和共享新的功能,引入新的消息类型。
要添加新消息类型,需要:
1)为新消息类型添加一个新的头文件到“include / binary_logger /”文件夹(使用现有文件作为示例);
2)将对应的.cpp文件添加到'src / binary_logger /'foder(使用现有文件作为示例。需要做的主要更改是在处理回调的类方法中)。
注意:新的.cpp需要添加到CMakeLists.txt;
3)将新消息类型添加到'binary_logger_plugins.xml';
例
结果从联合状态消息的10分钟的日志提供为:
标题:
seq:16505
邮票:secs:1486559122 nsecs
:461230839frame_id:''
name:['joint_0','joint_1','joint_2','joint_3','joint_4','joint_5']
position:[ 0.0,0.0,0.0,0.0,0.0,0.0 ]
velocity:[ 0.0,0.0,0.0 ,0.0,0.0,0.0]
effort:[0.0,0.0,0.0,0.0,0.0,0.0]
提供以下结果:
1)录制文件的大小:
.bag文件的大小为180.0MB
91.0MB fot的.bin文件
2)在MATLAB中加载文件的时间:
8.215872 [s]为.bag文件
0.391143 [s]为.bin文件
开发人员联系人
作者:
- 曼努埃尔·贝斯基(manuel.beschi@itia.cnr.it)
- Enrico Villagrossi(enrico.villagrossi@itia.cnr.it)
软件许可协议(BSD许可证)版权所有(c)2016,意大利国家研究委员会,工业技术与自动化研究所。版权所有。
ROS二进制日志包 ROS binary logger package的更多相关文章
- MySQL 二进制日志(Binary Log)
同大多数关系型数据库一样,日志文件是MySQL数据库的重要组成部分. MySQL有几种不同的日志文件.通常包括错误日志文件,二进制日志,通用日志,慢查询日志,等等.这些日志能够帮助我们定位mysqld ...
- MySQL二进制日志
一.二进制日志(The Binary Log) 1.简介 包含所有更新了的数据或者已经潜在更新了的数据(比如一条没有匹配任何行的delete语句) 包含所有更新语句执行时间的信息 不记录没有修改数据的 ...
- mysql二进制日志详解
一.什么是二进制日志 二进制日志主要记录mysql数据库的变化,二进制日志包含所有更新了数据或者潜在更新了数据(如没有匹配到任何行的delete语句),语句以时间的形式保存,描述了数据的更改.二进制日 ...
- 创建ros的程序包--3
创建ros的程序包(原创博文,转载请标明出处--周学伟http://www.cnblogs.com/zxouxuewei/) 1.一个catkin程序包由什么组成? 一个程序包要想称为catkin程序 ...
- 涉及到复制和二进制日志中的选项和变量-Replication and Binary Logging Options and Variables
在搭建复制中,有些参数需要我们留意,在这里罗列出来,供大家参考一下,以GTID为基础 --server-id server-id:这是一个全局的可动态调整的变量,取值范围为0-4294967295,也 ...
- ROS Learning-005 beginner_Tutorials 创建ROS程序包(就是软件包)
ROS Indigo beginner_Tutorials-04 创建ROS程序包(就是软件包) 我使用的虚拟机软件:VMware Workstation 11 使用的Ubuntu系统:Ubuntu ...
- 4.1 ROS元功能包
4.1 ROS元功能包 场景:完成ROS中一个系统性的功能,可能涉及到多个功能包,比如实现了机器人导航模块,该模块下有地图.定位.路径规划...等不同的子级功能包.那么调用者安装该模块时,需要逐一的安 ...
- 二进制日志BINARY LOG清理
mysql> show master logs; +------------------+-----------+ | Log_name | File_size | +------------- ...
- 在github上最热门好评高的ROS相关功能包
在github上最热门最受欢迎的ROS相关功能包 下面依次列出,排名不分先后: 1 Simulation Tools In ROS https://github.com/ros-simulation ...
随机推荐
- Linux发不出分片包的问题分析
今日有个网络攻击模拟需求,要打分片的ip包,程序写好了,在开发机上验证也没问题,然后部署到沙盒环境之后不行,就是发不出来数据包,而不分片的数据包能够正常发送,定位过程如下 1.对比了两台机器/proc ...
- 【Asp.net入门3-02】使用jQuery-jQuery 入门
下面的几小节将介绍jQuery的基础知识.如前所述,不可能仅仅通过一章的内容详细介绍jQuery, 但可以向你说明如何对HTML文档中的内容执行简单的操作,以及更重要的,如何逐步实现本书其他 部分的示 ...
- 2017易观OLAP算法大赛
大赛简介 目前互联网领域有很多公司都在做APP领域的“用户行为分析”产品,与Web时代的行为分析相类似,其目的都是帮助公司的运营.产品等部门更好地优化自家产品,比如查看日活和月活,查看渠道来源 ...
- kubernetes挂载ceph rbd和cephfs的方法
目录 k8s挂载Ceph RBD PV & PVC方式 创建secret 创建PV 创建PVC 创建deployment挂载PVC StorageClass方式 创建secret 创建Stor ...
- 关于RESTful的理解
如何更好的理解RESTful? (转自https://sanwen8.cn/p/54czrEO.html) 在测试开发中,我们经常接触到API,在调用API时候特别是第三方API时候,我们常常陷入以下 ...
- go语言从零学起(三) -- chat实现的思考
要通过go实现一个应用场景: 1 建立一个websocket服务 2 维护在线用户的链接 3 推送消息和接受用户的操作 列出需求,很显然的想到了chat模型.于是研究了revel框架提供的sample ...
- T51071 Tony到死都想不出の数学题
T51071 Tony到死都想不出の数学题 自己摘的题出了数据挂一下链接 \(a, b\) 均为整数 设 \(M(a)\) 为满足 \((a + b) | ab\) 的 \(b\) 的个数, 求 \( ...
- 用phpUnit入门TDD
用phpunit实战TDD系列 从一个银行账户开始 假设你已经 安装了phpunit. 我们从一个简单的银行账户的例子开始了解TDD(Test-Driven-Development)的思想. 在工程目 ...
- 洛谷P3959 [NOIP2017]宝藏
[题目描述] 参与考古挖掘的小明得到了一份藏宝图,藏宝图上标出了 n 个深埋在地下的宝藏屋,也给出了这 n 个宝藏屋之间可供开发的 m 条道路和它们的长度. 小明决心亲自前往挖掘所有宝藏屋中的宝藏.但 ...
- 选择Memcached还是Redis?
两者相似之处 Memcached与Redis都属于内存内.键值数据存储方案.它们都从属于数据管理解决方案中的NoSQL家族,而且都基于同样的键值数据模型.双方都选择将全部数据保存在内存当中,这自然也就 ...