Считайте Данные о Форме волны из Осциллографов Keysight® DSO-X 2002 А с помощью Драйвера IVI-C

Этот пример показывает, как инициализировать драйвер, считайте несколько свойств драйвера, получите использование данных о форме волны Agilent Technologies осциллограф DSO-X 2002 А и выведите результат в MATLAB®.

Требования

Этот пример требует, чтобы следующее было установлено на компьютере:

  • Версия 17.1 библиотек Keysight (Agilent) IO или более новый;

  • Keysight (Agilent) 2000, 3000, 4000, 6 000 Осциллографов InfiniiVision X-Series IVI версий драйвера 2.1.6.0 или более новый;

Перечислите доступные драйверы IVI-C на компьютере

Это перечисляет IVI драйверов, которые были установлены на компьютере.

IviInfo = instrhwinfo('ivi');
IviInfo.Modules
ans = 

  Columns 1 through 6

    'Ag33220'    'Ag3352x'    'Ag34410'    'Ag34970'    'Ag532xx'    'AgAC6800'

  Columns 7 through 11

    'AgE36xx'    'AgInfiniiVision'    'AgMD1'    'AgRfSigGen'    'AgXSAn'

  Columns 12 through 13

    'KtRFPowerMeter'    'rsspecan'

Создайте инструментальный драйвер MATLAB и подключение к инструменту

% Create the MATLAB instrument driver
makemid('AgInfiniiVision','AgInfiniiVision.mdd')

% Use icdevice with the MATLAB instrument driver name and instrument's
% resource name to create a device object. In this example the instrument
% is connected by GPIB at board index 0 and primary address 1.
myInstrument = icdevice('AgInfiniiVision.mdd', 'GPIB0::01::INSTR','optionstring','simulate=true');

% Connect driver instance
connect(myInstrument);

Получите общие свойства устройства

Запросите информацию о драйвере и инструменте

% Get information about the driver
Utility = get(myInstrument, 'Utility');
Revision = invoke(Utility, 'revisionquery');
DriverIdentification = get(myInstrument,'Inherentiviattributesdriveridentification');
InstrumentIdentification = get(myInstrument,'Inherentiviattributesinstrumentidentification');
Vendor = get(DriverIdentification, 'Specific_Driver_Vendor');
Description = get(DriverIdentification, 'Specific_Driver_Description');
InstrumentModel = get(InstrumentIdentification, 'Instrument_Model');
FirmwareRev = get(InstrumentIdentification, 'Instrument_Firmware_Revision');

% Print the queried driver properties
fprintf('Revision:        %s\n', Revision);
fprintf('Vendor:          %s\n', Vendor);
fprintf('Description:     %s\n', Description);
fprintf('InstrumentModel: %s\n', InstrumentModel);
fprintf('FirmwareRev:     %s\n', FirmwareRev);
fprintf(' \n');
Revision:        2.1.6.0 
Vendor:          Agilent Technologies
Description:     IVI driver for the Keysight 2000X, 3000X, 4000X and 6000X family of Oscilloscopes [Compiled for 64-bit.]
InstrumentModel: DSO-X 2002A
FirmwareRev:     Sim2.1.6.0
 

Setup измерения и выборка форма волны от осциллографа

Measurement = get(myInstrument, 'Instrumentspecificmeasurement');
invoke(Measurement, 'measurementsautosetup');
WaveformArray = zeros(1,100);
[WaveformArray,ActualPoints,InitialX,Xincreament] = invoke(Measurement, 'measurementfetchwaveform', 'Channel1', size(WaveformArray,2), WaveformArray);

Визуализируйте данные и отобразите любые ошибки

% Display the fetched data
plot(WaveformArray(1:ActualPoints));

% If there are any errors, query the driver to retrieve and display them.
ErrorNum = 1;
while (ErrorNum ~= 0)
    [ErrorNum, ErrorMsg] = invoke(Utility, 'errorquery');
    fprintf('ErrorQuery: %d, %s\n', ErrorNum, ErrorMsg);
end
ErrorQuery: 0, No error. 

Отключите объект устройства и вымойтесь

disconnect(myInstrument);
% Remove instrument objects from memory
delete(myInstrument);

Дополнительная информация:

Этот пример показывает настройку и приобретение данных из осциллографа с помощью IVI драйверов. Если измеренная форма волны получена из инструмента, MATLAB может использоваться, чтобы визуализировать и выполнить исследования данных, пользующихся богатой библиотекой функций в Signal Processing Toolbox™ и Системах связи Toolbox™. Используя Instrument Control Toolbox™, возможно автоматизировать управление инструментов, и, создать системы тестирования, которые используют MATLAB, чтобы выполнить исследования, которые не могут быть возможным использованием встроенной возможности оборудования.