В этом примере показано, как инициализировать драйвер, считайте несколько свойств драйвера, установите выходное напряжение, включите все выходные параметры и измерьте выходное напряжение, отключите все выходные параметры и измерьте выходное напряжение при помощи предоставления мощности постоянного тока Keysight Technologies E3633A и выведите результат в MATLAB®.
Этот пример требует следующего:
Версия 17.1 библиотек Keysight IO или более новый
Предоставление мощности постоянного тока Keysight E36xx IVI версий 1.2.0.0 или более новый
Это перечисляет 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'
% Create the MATLAB instrument driver makemid('AgE36xx','AgE3633A.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('AgE3633A.mdd', 'GPIB0::01::INSTR','optionstring','simulate=true'); % Connect driver instance connect(myInstrument);
% These values are defined in the driver's header file 'AgE36xx.h'
IVI_ATTR_BASE = 1000000;
IVI_CLASS_ATTR_BASE = IVI_ATTR_BASE + 250000;
AGE36XX_ATTR_VOLTAGE_LEVEL = IVI_CLASS_ATTR_BASE + 1;
AGE36XX_VAL_MEASURE_VOLTAGE = 1;
Запросите информацию о драйвере и инструменте
DriverIdentification = get(myInstrument,'Inherentiviattributesdriveridentification'); InstrumentIdentification = get(myInstrument,'Inherentiviattributesinstrumentidentification'); Utility = get(myInstrument, 'Utility'); Revision = invoke(Utility, 'revisionquery'); 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: 1.2.1.0 Vendor: Agilent Technologies Description: IVI driver for the Agilent E36xx family of programmable power supplies [Compiled for 64-bit.] InstrumentModel: E3633A FirmwareRev: Sim1.2.1.0
Configuration = get(myInstrument, 'Configuration'); invoke(Configuration, 'configurevoltagelevel', 'Output1', 1.23); fprintf('Output 1 set to: 1.23 Volts \n');
Output 1 set to: 1.23 Volts
Outputs = get(myInstrument, 'Outputs'); set(Outputs, 'Enabled', true); fprintf('All outputs enabled \n'); % The measured voltage should read as the set value. Action = get(myInstrument, 'Action'); MeasVal = invoke(Action, 'measure', 'Output1', AGE36XX_VAL_MEASURE_VOLTAGE); fprintf('Output 1 Measurement = %.4g Volts\n', MeasVal);
All outputs enabled Output 1 Measurement = 1.23 Volts
set(Outputs, 'Enabled', false); fprintf('All outputs disabled\n'); % Since all outputs have been disabled, the measured voltage should be 0. MeasVal = invoke(Action, 'measure', 'Output1', AGE36XX_VAL_MEASURE_VOLTAGE); fprintf('Output 1 Measurement = %.4g Volts\n\n', MeasVal);
All outputs disabled Output 1 Measurement = 0 Volts
% 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, чтобы выполнить исследования, которые не могут быть возможным использованием встроенной возможности оборудования.