Получение входных данных счетчика

Добавление входного канала счетчика

Использовать addinput добавление канала, который получает счетчики ребер от устройства. Можно получить единственные входные данные или массив путем получения на переднем плане. Дополнительные сведения см. в разделе Рабочий процесс интерфейса.

Получение одиночного счетчика

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

Шаг 1. Создайте объект DataAcquisition, присвоенный переменной d.

d = daq("ni");

Шаг 2. Добавьте входной канал счетчика с типом измерения счетчика ребер.

ch = addinput(d,"cDAQ1Mod5","ctr0","EdgeCount")
ch = 

    Index    Type      Device       Channel    Measurement Type    Range         Name    
    _____    ____    ___________    _______    ________________    _____    ________________

      1      "ci"    "cDAQ1Mod5"    "ctr0"       "EdgeCount"       "n/a"    "cDAQ1Mod5_ctr0"

Шаг 3. Измените канал ActiveEdge свойство к 'Falling' и просмотрите свойства канала, чтобы увидеть изменение.

ch.ActiveEdge = 'Falling';
get(ch)
      ActiveEdge: Falling
  CountDirection: Increment
    InitialCount: 0
        Terminal: 'PFI0'
SampleTimingType: 10388
            Name: 'cDAQ1Mod5_ctr0'
              ID: 'ctr0'
          Device: [1x1 daq.ni.DeviceInfo]
 MeasurementType: 'EdgeCount'

Шаг 4. Получите один скан считывание буфера счетчика.

count = read(d)
count =

   133

Шаг 5. Сбросьте счетчики из начального счетчика и получите обновленное значение счетчика. Это значение является количеством обнаружений с момента сброса счетчика.

resetcounters(d);
count = read(d)
count = 

   71

Получение одиночного счетчика частот

Этот пример показывает, как получить один скан частоты измерения от NI 9402 с идентификатором устройства cDAQ1Mod5.

Шаг 1. Создайте объект DataAcquisition.

d = daq("ni");

Шаг 2. Добавьте встречный канал с типом измерения.

addinput(d,"cDAQ1Mod5","ctr0","Frequency")
    Index    Type      Device       Channel    Measurement Type    Range         Name    
    _____    ____    ___________    _______    ________________    _____    ________________

      1      "ci"    "cDAQ1Mod5"    "ctr0"       "Frequency"       "n/a"    "cDAQ1Mod5_ctr0"

Шаг 3. Получите один скан данных счетчика.

f = read(d,"OutputFormat","Matrix")
f =

  9.5877e+003

Получение входных данных счетчика в переднем плане

Этот пример показывает, как получить данные переднего ребра от NI 9402 с идентификатором устройства cDAQ1Mod5, и постройте график полученных данных.

Шаг 1. Создайте объект DataAcquisition.

d = daq("ni");

Шаг 2. Добавьте входной канал счетчика с типом измерения счетчика ребер.

addinput(d,"cDAQ1Mod5","ctr0","EdgeCount")
    Index    Type      Device       Channel    Measurement Type    Range         Name    
    _____    ____    ___________    _______    ________________    _____    ________________

      1      "ci"    "cDAQ1Mod5"    "ctr0"       "EdgeCount"       "n/a"    "cDAQ1Mod5_ctr0"

Шаг 3. Добавьте аналоговый входной канал для типа измерения напряжения.

Канал входа счетчика требует внешнего синхроимпульса для выполнения захвата переднего плана. Если у вас нет внешнего синхроимпульса, добавьте аналоговый входной канал от синхроимпульса на том же корпусе CompactDAQ к DataAcquisition. Этот пример использует устройство NI 9205 на том же корпусе с идентификатором устройства cDAQ1Mod1. Альтернативно, аналоговый входной канал может находиться на том же устройстве, что и встречный канал.

addinput(d,"cDAQ1Mod1","ai1","Voltage");

Шаг 4. Получите данные и присвойте их переменной data, и постройте график результатов.

data = read(d,seconds(1),"OutputFormat","Matrix");
plot(data)

График отображает результаты из обоих каналов в DataAcquisition:

  • Измерение числа ребер

  • Аналоговые входные данные