readMessages

Чтение сообщений от ros2bag объект

    Описание

    пример

    msgs = readMessages(bag) возвращает данные из всех сообщений в ros2bag bag объекта. Сообщения возвращаются как массив ячеек структур.

    msgs = readMessages(bag,rows) возвращает данные из сообщений в строках, заданных rows. Область значений строк: [1 bag.NumMessages].

    Примеры

    свернуть все

    Извлеките zip-файл, содержащий файл журнала пакетов ROS 2, и укажите полный путь к папке журнала.

    unzip('alltopics.zip');
    folderPath = fullfile(pwd,'alltopics');

    Создайте ros2bag объект, который содержит все сообщения в файле журнала.

    bag = ros2bag(folderPath);

    Получите информацию о содержимом ros2bag объект.

    bag2info = ros2("bag","info",folderPath)
    bag2info = struct with fields:
             Path: 'C:\Users\SHIVARAD\OneDrive - MathWorks\Documents\MATLAB\Examples\ros-ex96596996\alltopics\alltopics.db3'
          Version: '1'
        StorageId: 'sqlite3'
         Duration: 102.396644003
            Start: [1×1 struct]
              End: [1×1 struct]
             Size: 4965433
         Messages: 36503
            Types: [5×1 struct]
           Topics: [5×1 struct]
    
    

    Получайте все сообщения в ros2bag объект.

    msgs = readMessages(bag);

    Выберите подмножество сообщений, отфильтрованных по темам.

    bagSel = select(bag,"Topic","/scan");

    Получите сообщения в выделенной области.

    msgsFiltered = readMessages(bagSel);

    Входные параметры

    свернуть все

    Сообщения в ros2bag объект, заданный как ros2bag объект.

    Строки ros2bag объект, заданный как n элемент. n - количество строк, из которых нужно получить сообщения. Каждая запись в векторе соответствует пронумерованному сообщению в пакете. Область значений строк: [1 bag.NumMessages].

    Выходные аргументы

    свернуть все

    Данные сообщения ROS 2, возвращенные как массив ячеек структур.

    См. также

    Объекты

    Функции

    Введенный в R2021a