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

Этот пример показывает, как настроить и запустить мультитриггерное приобретение на внешнем событии. Сконфигурируйте свое устройство, чтобы начать получать данные, когда вы поражаете переключатель, который отправляет возрастающий сигнал ребра в ваше устройство.

Создайте сеанс и добавьте канал аналогового входа

Создайте сеанс и добавьте канал аналогового входа с типом измерения Voltage, с помощью Национального Instruments® PCIe 6363, с ID Dev4.

s = daq.createSession('ni');
addAnalogInputChannel(s,'Dev4', 0, 'Voltage');

Сконфигурируйте Сеанс, чтобы запуститься на Внешнем событии

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

Добавьте запускают триггерные связи с сеансом

Триггерная связь имеет источник и место назначения. В этом примере источник является переключателем, который является внешним к сеансу. Выберите 'External' в качестве источника. Место назначения является терминалом PFI0 на Dev4, выберите 'PFI0/Dev4' в качестве места назначения. Используйте addTriggerConnection, чтобы добавить связь типа StartTrigger

addTriggerConnection(s,'External','Dev4/PFI0','StartTrigger');

Для быстрых сводных данных связей ввести

s.Connections
ans = 


Start Trigger is provided externally and will be received by 'Dev4' at terminal 'PFI0'.

     TriggerType: 'Digital'
TriggerCondition: RisingEdge
          Source: 'External'
     Destination: 'Dev4/PFI0'
            Type: 'StartTrigger'


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

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

s.ExternalTriggerTimeout = 30;

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

s.TriggersPerRun = 2;

Запустите приобретение

Используйте команду startForeground, чтобы запустить приобретение.

[data,timeStamps,triggerTime] = s.startForeground();
plot(timeStamps,data,'.')

Вы будете видеть, что разрыв на основе времени между этими двумя инициировать запускается.

Найдите время для первого триггера

Абсолютное время первого триггера возвращено startForeground в переменной triggerTime. triggerTime является MATLAB последовательная метка времени даты. Используйте основные операции преобразования даты MATLAB, чтобы анализировать их.

datestr(triggerTime)
ans =

  1×20 char array

23-Sep-2016 19:45:06

Для просмотра документации необходимо авторизоваться на сайте