exponenta event banner

Запуск сбора данных с несколькими триггерами для внешнего события

В этом примере показано, как настроить и запустить получение нескольких триггеров для внешнего события. В этом случае устройство сконфигурировано для начала получения данных по сигналу переднего фронта.

Создание сбора данных и добавление каналов аналогового ввода

Создайте объект DataAcquisition и добавьте аналоговый входной канал с помощью Voltage тип измерения, использующий NI PCIe 6363, с идентификатором Dev4.

dq = daq("ni");
addinput(dq,"Dev4","ai0","Voltage");

Настройка сбора данных для запуска на внешнем триггере

Настройте устройство для получения данных о внешнем триггере. Триггер, запускающий сбор данных, называется триггером запуска. В этом примере коммутатор подключен к терминалу PFI0 на устройстве Dev4. Это физическое соединение (между коммутатором и терминалом PFI0) в качестве пускового триггера.

Добавить триггер цифрового запуска

Триггер имеет тип триггера (Digital). Допустимое значение для Digital тип триггера: StartTrigger.

Триггер имеет источник и назначение. В этом примере источником является коммутатор (выберите 'External' в качестве источника). Местом назначения является PFI0 терминал включен Dev4 ('PFI0/Dev4'). Использовать addtrigger для добавления этого триггера в DataAcquisition.

addtrigger(dq,"Digital","StartTrigger","External","Dev4/PFI0");
dq.DigitalTriggers
ans = 

  DigitalTrigger with properties:

         Source: "External"
    Destination: 'Dev4/PFI0'
           Type: 'StartTrigger'
      Condition: 'RisingEdge'

Установка параметров триггера

По умолчанию DataAcquisition ожидает цифрового триггера с передним фронтом в течение 10 секунд. Увеличить время ожидания до 30 секунд с помощью DigitalTriggerTimeout собственность.

dq.DigitalTriggerTimeout = 30;

Можно настроить DataAcquisition для получения нескольких триггеров, когда он должен реагировать на несколько событий. В этом примере ожидаются два внешних триггерных сигнала, позволяющих устройству Dev4 для начала получения сканирований при получении второго триггера.

dq.NumDigitalTriggersPerRun = 2;

Начало приобретения

Использовать read получение сканирований при получении каждого сконфигурированного цифрового пускового сигнала. Конкретная последовательность событий:

  1. Начинается сбор данных

  2. Одна секунда фактического получения начинается после получения первого триггера, пока не истечет период тайм-аута

  3. Одна секунда фактического получения начинается после получения второго триггера, пока не истечет период тайм-аута

  4. Возвращаются данные

[data, startTime] = read(dq, seconds(1));

Постройте график данных

Обратите внимание на разрыв в работе на основе времени между двумя запусками триггера.

plot(data.Time, data.Variables, '.')