Получение данных и одновременная генерация сигналов

Этот пример показывает, как получить данные с помощью устройства NI 9205 с идентификатором cDAQ1Mod1, при генерации сигналов от устройства NI 9263 с идентификатором cDAQ1Mod2.

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

Создайте объект NI DataAcquisition и добавьте один аналоговый входной канал на cDAQ1Mod1 и один аналоговый выходной канал на cDAQ1Mod2:

d = daq("ni");
addinput(d,"cDAQ1Mod1","ai0","Voltage");
addoutput(d,"cDAQ1Mod2","ao0","Voltage");
d.Channels
ans = 

  Index    Type      Device       Channel      Measurement Type             Range                Name   
  _____    ____    ___________    _______    _____________________    __________________    _______________

    1      "ai"    "cDAQ1Mod1"     "ai0"     "Voltage (SingleEnd)"    "-10 to +10 Volts"    "cDAQ1Mod1_ai0"
    1      "ao"    "cDAQ1Mod2"     "ao0"     "Voltage (SingleEnd)"    "-10 to +10 Volts"    "cDAQ1Mod2_ao0"

Задайте данные сигнала выхода для 2500 сканов:

outData = linspace(-1,10,2500)';

Сгенерированный выходной сигнал 2500 сканов будет запускаться в течение 2,5 секунд со скоростью сканом 1000 выборок в секунду.

Сгенерируйте выходной сигнал и получите входные данные:

inData = readwrite(d,outData,"OutputFormat","Matrix");
plot(inData)

Похожие темы