Использование оболочек, совместимых с классами IVI-C

Обертки IVI-C

Оболочки IVI-C обеспечивают интерфейс для MATLAB® для приборов, работающих на драйверах, совместимых с классами IVI-C.

Этот пример документации использует определенный инструмент, Keysight™ MSO6104A осциллограф. Эта функция работает с любым прибором, совместимым с классами IVI-C. Вы можете следовать основным шагам, используя свой конкретный инструмент, если устройство соответствует классу IVI-C.

Необходимые условия

Для использования оболочки необходимо установить следующее программное обеспечение.

  • Windows® 64-разрядная версия

  • Общие компоненты VISA

  • ВИЗА

    В следующем примере используется Keysight VISA, но можно использовать любую версию VISA.

  • National Instruments ™® пакет податливости NICP 4.1

  • Ваш драйвер прибора

Можно использовать instrhwinfo чтобы подтвердить, что эти программные модули установлены.

% Check that the software is properly installed.
instrhwinfo('ivi')

Создание общих библиотек или автономных приложений при использовании IVI-C или VXI

При использовании драйверов IVI-C или VXIplug & play, выполнение вашего кода сгенерирует дополнительные файлы в папке, указанной выполнением следующего кода в подсказке MATLAB:

fullfile(tempdir,'ICTDeploymentFiles',sprintf('R%s',version('-release')))

На всех поддерживаемых платформах файл с именем MATLABPrototypeFor<driverName>.m сгенерирован, где <driverName> имя драйвера IVI-C или VXIplug & play. С 64-битным MATLAB в Windows, второй файл по имени <driverName>_thunk_pcwin64.dll сгенерирован. При создании развернутого приложения или общей библиотеки вручную включите эти сгенерированные файлы. Для получения дополнительной информации о включении дополнительных файлов см. документацию MATLAB Compiler.

Чтение сигналов с использованием интерфейса, совместимого с классами IVI-C

В этом примере показаны общие рабочие процессы для использования с устройством, совместимым с классами IVI-C. В этом примере используется определенный инструмент, осциллограф MSO6104A Keysight. Эта функция работает с любым прибором, совместимым с классами IVI-C. Вы можете выполнить основные шаги, используя свой конкретный инструмент, если он совместим с классами IVI-C.

  1. Убедитесь, что все необходимое программное обеспечение установлено. Смотрите Необходимые условия для списка.

  2. Убедитесь, что ваш инструмент распознан утилитой VISA. В этом случае откройте Keysight Connectivity Expert и убедитесь, что он распознает осциллограф.

  3. Настройте логическое имя с помощью хранилища строений. Строка ресурса VISA, показанная в этом коде, была получена из утилиты VISA на шаге 2.

    % Construct a configStore.
    configStore = iviconfigurationstore;
    
    % Set up the hardware asset called myScopeHWAsset, and resource description
         TCPIP0::a-m6104a-004598::INSTR.
    add(configStore, 'HardwareAsset', 'myScopeHWAsset', 'TCPIP0::a-m6104a-004598::INSTR');
    
    % Add a driver session called myScopeSession, and use the asset created in the 
         step above. Ag546XX is the Agilent driver version. 
    add(configStore, 'DriverSession', 'myScopeSession', 'Ag546XX', 'myScopeHWAsset');
    
    % Add a logical name to the configStore called myScope and driver session called  
         myScopeSession.
    add(configStore, 'LogicalName', 'myScope', 'myScopeSession');
    
    % Save the changes to the IVI configuration store data file.
    commit(configStore);
    
    % You can verify that the steps you just performed worked.
    logicalNameInfo = instrhwinfo('ivi', 'myscope')

    Для получения дополнительной информации о строении магазине см. раздел IVI Строения Store.

  4. Создайте образец возможностей.

    % Instantiate an instance of the scope.
    ivicScope = instrument.ivic.IviScope();
    
  5. Подключите к прибору.

    % Open the hardware session. 
    ivicScope.init('myScope', true, true);
  6. Свяжитесь с прибором. Для примера прочитайте форму волны.

    % Use the AutoSetup method to automatically set up the oscilloscope.
    ivicScope.Configuration.AutoSetup();
    
    % Create a record length variable. 
    recordLength = ivicScope.Acquisition.Horizontal_Record_Length;
    
    % Preallocate buffer to store the data read from the scope. 
    waveformArray = zeros(1, recordLength);
    
    % Read a waveform with channel name set to channel1 and timeout to 1000. 
    [waveformArray,actualPoints,initiaX,xIncrement] = ivicScope.WaveformAcquisition.
         ReadWaveform('channel1', recordLength, 1000, waveformArray);
    
    % Plot the waveform and assign labels for the plot. 
    plot(waveformArray);
    xlabel('Samples');
    ylabel('Voltage');
  7. После настройки инструмента и извлечения его данных закройте сеанс и удалите его из рабочей области.

    ivicScope.close();
    clear ivicScope;

IVI-C Класс совместимые обертки в Инструмент Test & Measurement

Можно также использовать функцию IVI-C Wrappers из инструмента Test & Measurement Tool. Просмотрите узлы IVI-C, задав выборы в MATLAB.

  1. В MATLAB, на вкладке Home, в разделе Environment, нажмите Preferences. Затем выберите Instrument Control в диалоговом окне Preferences.

  2. Выберите опцию Show IVI Instruments in TMTool в IVI Instruments разделе.

    Если у вас нет необходимого программного обеспечения, вы получите сообщение, указывающее на это. Список необходимых программ см. в разделе «Необходимые условия».

  3. Запустите Инструмент Test & Measurement (используя tmtool function), и новый узел IVI Instruments появляется под Instrument Drivers.

Для получения информации об его использовании в инструменте Test & Measurement см. справку в инструменте, выбрав узел IVI Instruments в дереве, когда он будет виден после установки выбора MATLAB.