Как только объект устройства был создан и подключен, он может использоваться как интерфейс к инструменту. В этой главе показано, как получить доступ и сконфигурировать настройки инструмента, а также как считать и записать данные в инструмент.
Каждый объект устройства содержит свойства, характерные для инструмента, который он представляет. Эти свойства определяются драйвером прибора, используемым во время создания объекта устройства. Для примера могут быть свойства осциллографа, которые позволяют вам регулировать параметры триггера, или контрастность отображения экрана.
Свойствам присваиваются значения по умолчанию при создании объекта устройства. О выполнении connect
объект обновляется, чтобы отразить состояние инструмента или наоборот, в зависимости от второго аргумента, данного connect
.
Вы можете получить полный список конфигурируемых свойств, позвонив в set
команда и передача объекта устройства.
Этот пример иллюстрирует, как сконфигурировать инструмент с помощью объекта устройства.
Используемый инструмент является Tektronix® Двухканальный осциллограф TDS 210. Квадратная волна введена в канал 1 осциллографа. Задача состоит в том, чтобы настроить настройки возможностей так, чтобы срабатывание происходило на падающем ребре сигнала:
Создайте объект устройства - Создайте объект интерфейса GPIB, а затем объект устройства для осциллографа TDS 210.
g = gpib('ni',0,1); d = icdevice('tektronix_tds210', g);
Подключите объект устройства - Используйте connect
функция для соединения объекта устройства с прибором.
connect(d);
Проверяйте текущее Slope
настройки для Trigger
свойство - Создайте переменную, чтобы представлять свойство Trigger, а затем используйте get
функция для получения текущего значения для осциллографа Slope
настройка.
dtrigger = get(d, 'Trigger'); dtrigger.Slope ans = rising
The Slope
в данный момент установлено значение rising
.
Измените Slope
setting - Если вы хотите, чтобы триггеры произошли на падающем ребре, необходимо изменить этот параметр в объекте устройства. Это может быть достигнуто с помощью set
команда.
dtrigger.Slope = 'falling');
Это изменяет Slope
на falling
.
Отсоедините и очистите - Когда вам больше не нужен объект устройства, отсоедините его от инструмента и удалите из памяти. Удалите объект устройства и объект интерфейса из MATLAB® рабочей области.
disconnect(d); delete(d); clear d g dtrigger;
Объекты устройства содержат методы, характерные для инструментов, которые они представляют. Детали реализации скрыты за одной функцией. Специфичные для прибора функции определены в драйвере прибора MATLAB.
methods
функция отображает все доступные определяемые драйвером функции для объекта устройства. Отображение разделено на два раздела:
Обобщенные функции объекта
Функции объекта для конкретного драйвера
Чтобы просмотреть доступные методы, введите
methods(obj)
Используйте instrhelp
функция для получения справки по функциям объекта устройства.
instrhelp(obj, methodname);
Для вызова специфичных для инструмента методов вы используете invoke
функция. invoke
требуется объект устройства и имя функции. При необходимости необходимо также предоставить входные параметры. Следующий пример демонстрирует, как использовать invoke
для получения данных измерений с осциллографа.
Этот пример иллюстрирует, как вызвать функцию объекта устройства для конкретного инструмента. Ваша задача - получить частотное измерение формы волны. Инструментом является двухканальный осциллограф Tektronix TDS 210.
Возможности предварительно сконфигурирована с помощью входного входа квадратной волны в канал 1 осциллографа. Четыре аппаратные поддержки различных измерений: частота, среднее, период и пик-пик. Запрошенное измерение обозначается с использованием индексной переменной от 1 до 4.
В демонстрационных целях осциллограф в этом примере был предварительно сконфигурирован с правильными настройками измерения:
Создайте объект устройства - Создайте объект интерфейса GPIB и объект устройства для осциллографа.
g = gpib('ni',0,1); d = icdevice('tektronix_tds210', g);
Подключите объект устройства - Используйте connect
команда для открытия объекта GPIB и обновления настроек в объекте устройства.
connect(d);
Получите измерение частоты - Используйте invoke
командовать и вызов measure
. measure
функция требует, чтобы был задан параметр index. Значение индекса определяет, какое измерение должен вернуть осциллограф. Для настройки тока осциллографа Tektronix TDS 210, индекс 1 указывает, что частота должна быть измерена.
invoke(d, 'measure', 1) ans = 999.9609
Возвращаемая частота составляет 999,96 Гц, или почти 1 кГц.
Отсоедините и очистите - вам больше не нужен объект устройства, чтобы вы могли отсоединить его от инструмента. Также следует удалить его из памяти и удалить из рабочего пространства MATLAB.
disconnect(d); delete(d); clear d g;
Команды управления являются специальными функциями и свойствами, которые существуют для всех объектов устройства. Вы используете команды управления, чтобы идентифицировать инструмент, сбросить настройки оборудования, выполнить диагностические стандартные программы и извлечь ошибки инструмента. Набор команд управления состоит из
Все команды управления заданы в драйвере прибора MATLAB для вашего устройства.
InstrumentModel
- свойство объекта устройства. При запросе на прибор посылается команда идентификации прибора.
Для примера, для осциллографа Tektronix TDS 210,
d.InstrumentModel ans = TEKTRONIX,TDS 210,0,CF:91.1CT FV:v2.03 TDS2MM:MMV:v1.04
Чтобы восстановить заводские настройки на инструменте, используйте devicereset
функция. Когда devicereset
вызывается, соответствующая инструкция сброса отправляется на ваш инструмент.
Команда принимает подключенный объект устройства и не имеет выходных аргументов.
devicereset(obj);
Эта команда запрашивает, чтобы ваш инструмент выполнил самодиагностику. Фактические выполненные операции и выходные аргументы характерны для инструмента, с которым связан объект устройства. selftest
принимает связанный объект устройства как входной параметр.
result = selftest(obj);
Вы можете извлечь сообщения об ошибке, сгенерированные вашим инструментом с geterror
функция. Возвращенные сообщения зависят от конкретного инструмента. geterror
принимает связанный объект устройства как входной параметр.
msg = geterror(obj);