start

Запустите фоновую операцию DataAcquisition

Описание

пример

start(d) запускает фоновую операцию интерфейса DataAcquisition. Когда начинается сбор входных данных и генерация выходных данных, определяется строением канала и предварительно загруженными выходными данными:

  • Если DataAcquisition имеет только входные каналы, сбор начинается немедленно, собирая данные сканы, к которым вы можете получить доступ позже с read функция. Значение по умолчанию скана длительности составляет 1 секунду.

  • Если интерфейс DataAcquisition имеет только выходные каналы, генерация начинается немедленно, если данные уже поставлены в очередь с preload функция. Если данные не поставлены в очередь, вывод начинается, когда данные становятся доступными с write функция.

  • Если DataAcquisition имеет как входной, так и выходной каналы, сбор входных данных начинается и заканчивается одновременно с генерацией выходов, что приводит к тому же количеству сканов.

start(d,"Continuous") запускает фоновую операцию, выполняемую постоянно. Если данные уже доступны из preload функция, выходная генерация начинается немедленно вместе с приемом по любым входным каналам. В противном случае приобретение начинается при выполнении write. Операция продолжается до тех пор, пока вы не позвоните stop. Когда сгенерированы выходные данные скана или получены входные данные скана, вам, возможно, потребуется вызвать write или read пока DataAcquisition все еще работает.

start(d,"RepeatOutput") запускает фоновую операцию, генерируя периодический выход в повторяющемся цикле выходных данных скана. Если данные уже доступны из preload функция, выходная генерация начинается немедленно вместе с приемом по любым входным каналам. В противном случае генерация и приобретение начинаются при выполнении write. Операция продолжается до тех пор, пока вы не позвоните stop. Если собираются входные данные скана, вам может потребоваться вызвать read пока DataAcquisition все еще работает.

start(d,"Duration",span) или start(d,"NumScans",span) запускает сбор фона для выполнения в течение конечного промежутка времени, заданного как длительность или количество сканов.

Примеры

свернуть все

Когда фоновое приобретение инициировано с start функция, использование read для импорта данных.

d = daq("ni");
ch = addinput(d,"Dev1",1:2,"Voltage")
start(d,"NumScans",5)
Background operation has started.
Background operation will stop after 0.005 s.
To read acquired scans, use read.
scanData = read(d,"all")
scanData =

  5×2 timetable

      Time       Dev1_ai1    Dev1_ai2
    _________    ________    ________

    0 sec        0.012466    0.023977
    0.001 sec    0.019373    0.023319
    0.002 sec    0.021017     0.02299
    0.003 sec    0.021346     0.02299
    0.004 sec    0.022661    0.023648

Определите и предварительно загрузите данные для выхода устройства, а затем запустите генерацию выхода, чтобы повторить в фоновом режиме, пока MATLAB продолжает.

d = daq("ni");
addoutput(d,"Dev1",1,"Voltage");
signalData = sin((1:1000)*2*pi/1000); 
preload(d,signalData') % Column of data for one channel
start(d,"RepeatOutput")
% Device output now repeated while MATLAB continues.
stop(d)

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

свернуть все

Интерфейс DataAcquisition, заданный как DataAcquisition объект, созданный с использованием daq функция.

Пример: d = daq()

Продолжительность фоновой операции, заданная как длительность или двойной точности. Для "Duration" задайте тип длительности; для "NumScans" задайте double для количества сканов. Значение по умолчанию является 1 секундой.

Пример: seconds(5)

Типы данных: double | duration

См. также

Функции

Введенный в R2020a