daqread

Считайте Data Acquisition Toolbox (.daq) файл

Синтаксис

данные = daqread ('имя файла')
[данные, время] = daqread (...)
[данные, время, abstime] = daqread (...)
[данные, время, abstime, события] = daqread (...)
[данные, время, abstime, события, daqinfo] = daqread (...)
данные = daqread (..., 'Param1', Val1...)
daqinfo = daqread ('имя файла', 'информация')

Описание

data = daqread('filename') считывает все данные из Сбора данных Toolbox™ (.daq) файл, заданный filename. daqread возвращает data, матрицу данных m на n, где m является количеством выборок, и n является количеством каналов. Если data включает данные от нескольких триггеров, данные от каждого триггера разделяется NaN. Если вы устанавливаете свойство OutputFormat на tscollection, daqread возвращает объект набора временных рядов. Смотрите ниже для получения дополнительной информации.

[data,time] = daqread(...) возвращает пары времени/значения. time является m-1 вектором, та же длина как data, который содержит относительное время для каждой выборки. Относительное время измеряется относительно первого триггера, который происходит.

[data,time,abstime] = daqread(...) возвращает абсолютное время первого триггера. abstime возвращен как вектор clock.

[data,time,abstime,events] = daqread(...) возвращает журнал событий. events является структурой, содержащей информацию о событии. Если вы задаете или theSamples, Time или параметры Triggers (см. ниже), структура событий содержит только заданные события.

[data,time,abstime,events,daqinfo] = daqread(...) возвращает структуру, daqinfo, который содержит два поля: ObjInfo и HwInfo. ObjInfo является структурой, содержащей имя свойства / пары значения свойства, и HwInfo является структурой, содержащей информацию об аппаратных средствах. Целый журнал событий возвращен в daqinfo.ObjInfo.EventLog.

data = daqread(...,'Param1', Val1,...) задает возвращенный объем данных и формат данных, с помощью следующих параметров.

Параметр

Описание

Выборки

Задайте демонстрационную область значений.

Время

Задайте относительную область значений времени.

Triggers

Задайте триггерную область значений.

Channels

Задайте область значений канала. Названия канала могут быть заданы как массив ячеек.

DataFormat

Задайте формат данных как doubles (значение по умолчанию) или native.

TimeFormat

Задайте формат времени как vector (значение по умолчанию) или matrix.

'OutputFormat'

Задайте выходной формат как matrix (значение по умолчанию) или tscollection. Когда вы задаете tscollection, daqread только возвращает data.

Samples, Time и свойства Triggers являются взаимоисключающими; то есть, или Samples, Triggers или Time могут быть заданы целиком.

daqinfo = daqread('filename','info') возвращает метаданные в файл в структуре daqinfo, не подвергаясь издержкам чтения данных из файла также. Структура daqinfo содержит два поля:

daqinfo.ObjInfo

структура, содержащая пары параметра/значения для объекта сбора данных раньше, создавала файл, filename. Примечание: Значение свойства UserData не восстанавливается.

daqinfo.HwInfo

структура, содержащая информацию об аппаратных средствах. Целый журнал событий возвращен в daqinfo.ObjInfo.EventLog.

Примеры

Используйте Data Acquisition Toolbox, чтобы получить данные. Объект аналогового входа, ai, получает одну секунду данных для четырех каналов и сохраняет данные к выходному файлу data.daq.

ai = analoginput('nidaq','Dev1');
chans = addchannel(ai,0:3);
set(ai,'SampleRate',1000)
ActualRate = get(ai,'SampleRate');
set(ai,'SamplesPerTrigger, ActualRate)
set(ai,'LoggingMode','Disk&Memory')
set(ai,'LogFileName','data.daq')
start(ai)

После данных был собран и сохранен в дисковый файл, можно получить данные и другую связанную с приобретением информацию с помощью daqread. Считать все пары частоты дискретизации из data.daq:

[data,time] = daqread('data.daq');

Считать выборки 500 - 1 000 для всех каналов от data.daq:

data = daqread('data.daq','Samples',[500 1000]);

К выборкам только для чтения 1 000 - 2 000 из индексов 2, 4 и 7 канала в собственном формате из файла, data.daq:

data = daqread('data.daq', 'Samples', [1000 2000],...
               'Channels', [2 4 7], 'DataFormat', 'native');

К только для чтения данные, который представляет первые и вторые триггеры на всех каналах из файла, data.daq:

[data,time] = daqread('data.daq', 'Triggers', [1 2]);

Получить информацию о свойстве канала из data.daq:

daqinfo = daqread('data.daq','info');
chaninfo = daqinfo.ObjInfo.Channel;

Получить список типов событий и данных о событиях, содержавших data.daq:

daqinfo = daqread('data.daq','info');
events = daqinfo.ObjInfo.EventLog;
event_type = {events.Type};
event_data = {events.Data};

Считать все данные из файла data.daq и возвратить его как объект набора временных рядов:

data = daqread('data.daq','OutputFormat','tscollection');

Советы

Больше о .daq файлах

  • Формат, используемый daqread, чтобы возвратить данные, относительное время, абсолютное время и информация о событии, идентичен формату, используемому функцией getdata, которая является частью Data Acquisition Toolbox. Для получения дополнительной информации см. документацию Data Acquisition Toolbox.

  • Если данные от нескольких триггеров считаны, то размер получившегося массива данных увеличен количеством триггеров, выпущенных, потому что каждый триггер разделяется NaN.

  • ObjInfo.EventLog всегда содержит целый журнал событий независимо от значения, заданного Samples, Time или Triggers.

  • Значение свойства UserData не восстанавливается, когда вы возвращаете объект устройства (ObjInfo) информация.

  • При чтении файла .daq функция daqread не возвращает значения свойств, которые были заданы как массив ячеек.

  • Data Acquisition Toolbox (.daq) файлы создается путем определения значения для свойства LogFileName (или принятия значения по умолчанию) и конфигурирования свойства LoggingMode к Disk или Disk&Memory.

Больше о возвращенном объекте набора временных рядов

Когда OutputFormat установлен в tscollection, daqread возвращает объект набора временных рядов. Этот объект коллекции временных рядов содержит абсолютный объект временных рядов для каждого канала в файле. Следующее описывает, как daqread устанавливает некоторые свойства объекта коллекции временных рядов и объектов временных рядов.

  • Свойство time объекта набора временных рядов установлено в значение свойства InitialTriggerTime, заданного в файле.

  • Свойство name каждого объекта временных рядов установлено в значение свойства Name канала в файле. Если это имя не может использоваться в качестве имени объекта временных рядов, daqread определяет имя к 'Channel' со свойством HwChannel добавленного канала.

  • Значение свойства Units объекта временных рядов зависит от значения параметра DataFormat. Если параметр DataFormat устанавливается на 'double', daqread устанавливает свойство DataInfo каждого объекта временных рядов в наборе к значению свойства Units соответствующего канала в файле. Если параметр DataFormat устанавливается на 'native', daqread устанавливает свойство Units на 'native'. См. документацию Data Acquisition Toolbox для получения дополнительной информации об этих свойствах.

  • Каждый объект временных рядов будет иметь присоединенное соответствие объектов tsdata.event журналу событий сопоставленным с каналом.

Если daqread возвращает данные в несколько триггеров, данные от каждого триггера разделяется NaN в данных временных рядов. Это увеличивает длину данных и временных векторов в объекте временных рядов количеством триггеров.

Смотрите также

|

Была ли эта тема полезной?