Получите данные и сгенерируйте сигналы одновременно

В этом примере показано, как получить и сгенерировать данные с помощью двух модулей National Instruments ™, действующих одновременно.

Создайте DataAcquisition

Используйте daq создать DataAcquisition

dq = daq("ni")
dq = 

DataAcquisition using National Instruments hardware:

                     Running: 0
                        Rate: 1000
           NumScansAvailable: 0
            NumScansAcquired: 0
              NumScansQueued: 0
    NumScansOutputByHardware: 0
                   RateLimit: []

Show channels
Show properties and methods

Настройте Оборудование

Этот пример использует compactDAQ шасси NI c9178 с NI 9205 (cDAQ1Mod1 - 4 канала аналогового входа) модуль и NI 9263 (cDAQ1Mod2 - 4 канала аналогового выхода) модуль. Используйте daqlist получить больше информации о подключенном оборудовании.

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

Добавьте канал аналогового входа и канал аналогового выхода

Используйте addinput добавить канал напряжения аналогового входа. Используйте addoutput добавить канал напряжения аналогового выхода.

addinput(dq, "cDAQ1Mod1", "ai0", "Voltage")
addoutput(dq, "cDAQ1Mod2", "ao0", "Voltage")

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

output = cos(linspace(0,2*pi,1000)');
plot(output);
title("Output Data");

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

Используйте readwrite сгенерировать и получить сканы одновременно.

data1 = readwrite(dq, output);

Отобразите полученные данные на графике

plot(data1.Time, data1.Variables);
ylabel("Voltage (V)")
title("Acquired Signal");

Сгенерируйте и получите дату дважды предыдущей длительности

data2 = readwrite(dq, [output; output]);

Отобразите полученные данные на графике

plot(data2.Time, data2.Variables);
ylabel("Voltage (V)")
title("Acquired Signal");