Начинающий, получая данные с Digilent® Analog Discovery™

В этом примере показано, как получить данные о напряжении аналогового входа (на уровне выборки 300 кГц). Динамический диапазон входящего сигнала-2.5 к 2,5 вольтам. Вы будете использовать основанный на сеансе интерфейс с Аналоговым оборудованием Открытия Digilent.

Создайте сеанс с устройством Digilent

Узнайте устройства Digilent, соединенные к вашей системе с помощью daq.getDevices и создайте сеанс с помощью перечисленного устройства Digilent.

s = daq.createSession('digilent')
s = 

Data acquisition session using Digilent Inc. hardware:
   Will run for 1 second (10000 scans) at 10000 scans/second.
   No channels have been added.
   

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

Добавьте канал аналогового входа с ID устройства AD1 и ID канала 1. Установите тип измерения на Voltage.

ch = addAnalogInputChannel(s,'AD1', 1, 'Voltage')
ch = 

Data acquisition analog input voltage channel '1' on device 'AD1':

       Coupling: DC
 TerminalConfig: Differential
          Range: -25 to +25 Volts
           Name: ''
             ID: '1'
         Device: [1x1 daq.di.DeviceInfo]
MeasurementType: 'Voltage'


Установите свойства канала и сеанс

Установите уровень выборки на 300 кГц и область значений канала к-2.5 к 2,5 вольтам. Установите длительность на 0,5 секунды.

s.Rate = 300e3;
s.Channels.Range = [-2.5 2.5];
s.DurationInSeconds = 0.5
s = 

Data acquisition session using Digilent Inc. hardware:
   Will run for 0.5 seconds (150000 scans) at 300000 scans/second.
   Number of channels: 1
      index Type Device Channel MeasurementType       Range        Name
      ----- ---- ------ ------- --------------- ------------------ ----
      1     ai   AD1    1       Voltage (Diff)  -2.5 to +2.5 Volts
   

Получите одну выборку

Получите одно сканирование по требованию, измерив данные и инициируйте время.

[singleReading, triggerTime] = inputSingleScan(s)
singleReading =

   -0.0104


triggerTime =

   7.3532e+05

Получите данные, к которым добавляют метку времени,

Запустите синхронизированное приоритетное приобретение.

[data, timestamps, triggerTime] = startForeground(s);

Отобразите результаты

plot(timestamps, data);
xlabel('Time (seconds)')
ylabel('Voltage (Volts)')
title(['Clocked Data Triggered on: ' datestr(triggerTime)])