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) запускает фоновый входной захват, чтобы запуститься для конечного промежутка времени или в виде длительности или в виде многих сканов. Если DataAcquisition имеет какие-либо выходные каналы, запуск происходит, но спецификация длительности проигнорирована.

Примеры

свернуть все

Когда фоновый захват инициируется с 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" задайте двойное для количества сканов. Значением по умолчанию составляет 1 секунду.

Пример: seconds(5)

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

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

Функции

Введенный в R2020a