exponenta event banner

readTopicMsgs

Читать сообщения по темам

Описание

пример

msgTable = readTopicMsgs(ulogOBJ) считывает данные всех сообщений тематики из указанного ulogreader и возвращает таблицу, содержащую имена тем, идентификатор экземпляра, начальную временную метку, последнюю временную метку, сообщения тем и формат сообщений для всех доступных тем.

msgTable = readTopicMsgs(ulogOBJ,Name,Value) считывает данные, относящиеся к указанным парам имя-значение.

Пример: readTopicMsgs(ulog,'TopicNames',{'vehicle_attitude'},'InstanceID',{0},'Time',[d1 d2])

Примеры

свернуть все

Загрузите файл ULOG. Укажите относительный путь к файлу.

ulog = ulogreader('flight.ulg');

Прочитайте все сообщения по темам.

msg = readTopicMsgs(ulog);

Укажите интервал времени, между которым следует выбирать сообщения.

d1 = ulog.StartTime;
d2 = d1 + duration([0 0 55],'Format','hh:mm:ss.SSSSSS');

Чтение сообщений из раздела 'vehicle_attitude' с идентификатором экземпляра 0 в интервале времени [d1 d2].

data = readTopicMsgs(ulog,'TopicNames',{'vehicle_attitude'}, ... 
'InstanceID',{0},'Time',[d1 d2]);

Извлечение сообщений тематики для тематики.

vehicle_attitude = data.TopicMessages{1,1};

Прочтите всю системную информацию.

systeminfo = readSystemInformation(ulog);

Считывание всех начальных значений параметров.

params = readParameters(ulog);

Считывание всех зарегистрированных выходных сообщений.

loggedoutput = readLoggedOutput(ulog);

Считывание зарегистрированных выходных сообщений в интервале времени.

log = readLoggedOutput(ulog,'Time',[d1 d2]);

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

свернуть все

Модуль чтения файлов ULOG, указанный как ulogreader объект.

Аргументы пары «имя-значение»

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: 'Time',[d1 d2]

Имена тем нужных сообщений, указанных как массив ячеек символьных векторов или строковый массив.

Пример: 'TopicNames',{'sensor_combined','actuator_outputs'} или 'TopicNames',["actuator_outputs","ekf2_timestamps"]

Идентификатор экземпляра раздела требуемых сообщений, заданный как массив ячеек из положительных целых скаляров или векторов. Укажите эту пару имя-значение вместе с соответствующей ей 'TopicNames' пара имя-значение.

Пример: 'TopicNames',{'vehicle_attitude','actuator_outputs'},'InstanceID',{0,[0 1]}

Интервал времени, между которым выбираются сообщения, определяемый как двухэлементный вектор durationили двойной массив. Массив длительности указан в 'hh:mm:ss.SSSSSS' формат. Двойной массив задается в микросекундах.

Пример: 'Time',[d1 d2]

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

свернуть все

Сведения о сообщениях тематики, возвращенные в виде таблицы со столбцами:

  • TopicNames

  • InstanceID

  • StartTimestamp

  • LastTimestamp

  • TopicMessages

  • MsgFormat

См. также

Объекты

Функции

Представлен в R2020b