Начало работы данных с помощью Digilent Analog Discovery

В этом примере показано, как сгенерировать данные о напряжении со скоростью 300 кГц.

Устройства обнаружения

Обнаружение устройств Digilent, подключенных к вашей системе с помощью daqlist

daqlist("digilent")
ans =

  1×4 table

    DeviceID                     Description                            Model                  DeviceInfo       
    ________    _____________________________________________    ____________________    _______________________

     "AD1"      "Digilent Inc. Analog Discovery 2 Kit Rev. C"    "Analog Discovery 2"    [1×1 daq.di.DeviceInfo]

Создайте DataAcquisition для цифрового устройства

dq = daq("digilent")
dq = 

DataAcquisition using Digilent Inc. hardware:

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

Show channels
Show properties and methods

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

Добавьте аналоговый выходной канал с идентификатором устройства AD1 и идентификатор канала 1. Установите тип измерения равным Voltage. По умолчанию область значений напряжений выходного сигнала составляет от -5,0 до + 5,0 вольт.

ch_out = addoutput(dq, "AD1", "1", "Voltage");
ch_out.Name = "AD1_1_out"
ch_out = 

    Index    Type    Device    Channel      Measurement Type              Range               Name    
    _____    ____    ______    _______    _____________________    ____________________    ___________

      1      "ao"    "AD1"       "1"      "Voltage (SingleEnd)"    "-5.0 to +5.0 Volts"    "AD1_1_out"

Сгенерируйте одну выборку

Сгенерируйте один скан по запросу.

outVal = 2;
write(dq, outVal);

Установите свойства DataAcquisition и задайте Выход сигнал

Установите скорость выхода скана 300 кГц.

rate = 300e3;
dq.Rate = rate;

% Generate a 10 Hz sine-wave for half a second. The length of the
% output waveform and the specified output rate define the duration of
% the waveform (totalduration = numscans / rate).

f = 10;
totalduration = 1;
n = totalduration * rate;
t = (1:n)/rate;
output = sin(2*pi*f*t)';

Сгенерируйте данные

write(dq, output);