exponenta event banner

Получение данных из нескольких каналов с помощью устройства MCC

В этом примере показано, как получать данные из нескольких аналоговых входных каналов с помощью устройства MCC.

Настройка оборудования

В этом примере используется устройство Measurement Computing USB-1608FS-Plus для регистрации данных с аналоговых входных каналов 0 и 9, которые соединены с выходами генератора функций.

Отображение списка доступных устройств

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

d = daqlist("mcc")
d =

  1×4 table

    DeviceID                     Description                           Model                 DeviceInfo       
    ________    _____________________________________________    _________________    ________________________

    "Board0"    "Measurement Computing Corp. USB-1608FS-Plus"    "USB-1608FS-Plus"    [1×1 daq.sdk.DeviceInfo]

Получить сведения об устройстве

daqlist функция показывает обзор доступных устройств. Дополнительные сведения об устройстве можно найти в DeviceInfo поле таблицы.

deviceInfo = d{1, "DeviceInfo"}
deviceInfo = 

mcc: Measurement Computing Corp. USB-1608FS-Plus (Device ID: 'Board0')
   Analog input supports:
      4 ranges supported
      Rates from 0.1 to 100000.0 scans/sec
      8 channels ('Ai0' - 'Ai7')
      'Voltage' measurement type
   


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

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

dq = daq("mcc")

% The |addinput| function adds an analog input channel to
% the DataAcquisition.  You can add more than one channel to a
% DataAcquisition.
ch1 = addinput(dq, "Board0", 0, "Voltage");
ch2 = addinput(dq, "Board0", 1, "Voltage");
dq = 

DataAcquisition using Measurement Computing Corp. hardware:

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

Show channels
Show properties and methods

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

read функция запускает получение и возвращает результаты в виде расписания.

data = read(dq, seconds(1));

График полученных данных

plot(data.Time, data.Board0_Ai0, data.Time, data.Board0_Ai1);
xlabel('Time (s)');
ylabel('Voltage (V)');

Изменение свойств по умолчанию для приобретения

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

dq.Rate = 10000;
[data, startTime] = read(dq, seconds(1));
plot(data.Time, data.Board0_Ai0, data.Time, data.Board0_Ai1);
xlabel('Time (s)');
ylabel('Voltage (V)');