主要内容

ros2bag

打开并解析ros2bag日志文件

    描述

    ros2bag对象包含来自ROS 2包日志文件的所有消息。

    创建

    描述

    例子

    = ros2bag (folderpath创建一个ros2bag对象,,其中包含位于path的ROS 2包日志文件中的所有消息folderPath.的folderpath的值FilePath财产。

    ROS 2包文件用于存储ROS 2消息数据。它们主要用于记录通过ROS 2网络传输的消息。您可以使用这些包文件进行离线分析、可视化和存储。

    请注意

    如果ROS 2包日志文件包含自定义消息,请使用MATLAB创建自定义消息ros2genmsg函数,然后创建ros2bag对象。

    属性

    全部展开

    此属性是只读的。

    ros2包文件的路径,指定为字符向量。

    数据类型:字符

    此属性是只读的。

    第一条消息的时间戳,指定为以秒为单位的标量。

    数据类型:uint64

    此属性是只读的。

    最后一条消息的时间戳,指定为以秒为单位的标量。

    数据类型:uint64

    此属性是只读的。

    消息数,指定为标量。

    数据类型:

    此属性是只读的。

    可用主题的表,指定为表。表中的每一行都列出了一个主题、该主题的消息数量、消息类型和消息定义。

    数据类型:表格

    此属性是只读的。

    消息列表,指定为表。表中的每一行列出一条消息。

    数据类型:表格

    对象的功能

    readMessages 读取来自ros2bag对象
    选择 选择ros2bag中的消息子集

    例子

    全部折叠

    解压缩包含ROS 2包日志文件的zip文件,并指定日志文件夹的完整路径。

    解压缩(“ros2_netwrk_bag.zip”);folderPath = fullfile(pwd,“ros2_netwrk_bag”);

    创建一个ros2bag对象,该对象包含日志文件中的所有消息。

    ros2bag(文件夹路径);

    的内容获取信息ros2bag对象。

    Bag2info = ros2(“包”“信息”folderPath)
    bag2info =带字段的结构:路径:/ tmp / Bdoc21b_1757077_4312 / tp471a65de ros-ex96596996 / ros2_netwrk_bag / ros2_netwrk_bag。db3'版本:'1'存储id: 'sqlite3'持续时间:207.9020开始:[1x1 struct]结束:[1x1 struct]大小:16839538消息:166867类型:[4x1 struct]主题:[4x1 struct]

    中的所有消息ros2bag对象。

    msgs = readMessages(包);

    选择按主题筛选的消息子集。

    bagSel = select(包,“主题”“/”奥多姆);

    在选择中获取消息。

    msgsFiltered = readMessages(bagSel);

    另请参阅

    功能

    R2021a中引入