Оболочки 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 или 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. В этом примере используется определенный инструмент, осциллограф MSO6104A Keysight. Эта функция работает с любым прибором, совместимым с классами IVI-C. Вы можете выполнить основные шаги, используя свой конкретный инструмент, если он совместим с классами IVI-C.
Убедитесь, что все необходимое программное обеспечение установлено. Смотрите Необходимые условия для списка.
Убедитесь, что ваш инструмент распознан утилитой VISA. В этом случае откройте Keysight Connectivity Expert и убедитесь, что он распознает осциллограф.
Настройте логическое имя с помощью хранилища строений. Строка ресурса 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.
Создайте образец возможностей.
% Instantiate an instance of the scope. ivicScope = instrument.ivic.IviScope();
Подключите к прибору.
% Open the hardware session. ivicScope.init('myScope', true, true);
Свяжитесь с прибором. Для примера прочитайте форму волны.
% 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');
После настройки инструмента и извлечения его данных закройте сеанс и удалите его из рабочей области.
ivicScope.close(); clear ivicScope;
Можно также использовать функцию IVI-C Wrappers из инструмента Test & Measurement Tool. Просмотрите узлы IVI-C, задав выборы в MATLAB.
В MATLAB, на вкладке Home, в разделе Environment, нажмите Preferences. Затем выберите Instrument Control в диалоговом окне Preferences.
Выберите опцию Show IVI Instruments in TMTool в IVI Instruments разделе.
Если у вас нет необходимого программного обеспечения, вы получите сообщение, указывающее на это. Список необходимых программ см. в разделе «Необходимые условия».
Запустите Инструмент Test & Measurement (используя tmtool
function), и новый узел IVI Instruments появляется под Instrument Drivers.
Для получения информации об его использовании в инструменте Test & Measurement см. справку в инструменте, выбрав узел IVI Instruments в дереве, когда он будет виден после установки выбора MATLAB.