Группа может использоваться, чтобы задать или запросить одно и то же свойство для нескольких элементов или для запроса нескольких связанных свойств одновременно. Для примера все каналы входа на осциллографе могут быть масштабированы до одного и того же значения с одной командой; или все настройки текущих измерений могут быть извлечены и просмотрены одновременно.
Группа состоит из одного или нескольких групповых объектов. Объекты в группе имеют общий набор свойств и функций. Используя эти свойства и функции, можно управлять функциями инструмента, представленного группой. Для порядка групповых объектов правильно управлять инструментом, группа должна задать команду выбора для группы и идентификационную строку для каждого объекта в группе.
Команда selection является командой instrument, которая конфигурирует инструмент для использования возможности или физического компонента, представленного текущим групповым объектом. Обратите внимание, что инструмент может не иметь команды выбора.
Идентификационная строка идентифицирует объект в группе. Количество идентификационных строк, перечисленных группой, определяет количество объектов в группе. Идентификационная строка может быть заменена на команды инструмента, записанные в инструмент.
Когда команда групповой объект instrument записывается в инструмент, происходят следующие шаги:
Команда выбора для группы определяется драйвером.
Идентификационная строка для группового объекта определяется драйвером.
Если команда выбора содержит строку <ID>
, он заменяется идентификационной строкой.
Команда выбора записывается в инструмент. Если он пуст, на инструмент ничего не записывается.
Если команда instrument содержит строку <ID>
, он заменяется идентификационной строкой.
Команда instrument записывается в инструмент.
Этот раздел включает несколько примеров групп с шагами для проверки кода.
Этот пример объединяет возможности триггера Tektronix® Осциллограф TDS 210 в триггерную группу. Осциллограф позволяет сконфигурировать источник триггера и настройки наклона. В MATLAB® редактор драйверов приборов,
Выберите Groups
узел в дереве.
Введите имя группы, Trigger
, в поле Add Group text и нажмите Add.
Разверните Groups
узел для отображения всех определенных групп.
Выберите Trigger
узел в дереве.
Выберите вкладку Definition (Определение).
Поскольку осциллограф имеет только один триггер, нет команды, которая будет выбирать текущий триггер. Поле текста команды Selection остается пустым.
Перейдите на вкладку «Справка», чтобы завершить определение поведения группы.
В поле Текст справки введите Trigger is a trigger group. The trigger group object contains properties that configure and query the oscilloscope's triggering capabilities
.
Нажмите кнопку Save.
Проверка поведения группы. Эта процедура проверяет определенную информацию о группе. В этом примере имя драйвера tektronix_tds210_ex.mdd
. Связь с осциллографом Tektronix TDS 210 по первичному адресу 2 осуществляется через плату Измерения Computing™ Corporation GPIB с индексом платы 0. Из командной строки MATLAB,
Создайте объект устройства, obj
, используя icdevice
функция.
g = gpib('mcc',0,2); obj = icdevice('tektronix_tds210_ex.mdd',g);
Просмотрите группу, которую вы создали. Обратите внимание, что HwName
свойство является строкой идентификации группового объекта.
obj.Trigger
HwIndex: HwName: Type: Name: 1 Trigger1 scope-trigger Trigger1
Просмотрите справку.
instrhelp(obj, 'Trigger')
TRIGGER Trigger is a trigger group. The trigger group object contains properties that configure and query the oscilloscope's triggering capabilities.
Удалите объекты.
delete([obj g])
Этот пример определяет свойства для Trigger
Групповой объект, созданная в предыдущем примере. Осциллограф Tektronix TDS 210 может срабатывать от CH1 или CH2, когда данные имеют восходящий или падающий уклон.
Во-первых, свойства Source
и Slope
добавляются к групповому объекту. В редакторе драйверов приборов MATLAB,
Разверните Trigger
сгруппировать узел для отображения свойств группового объекта и функций.
Выберите Properties
узел для определения Trigger
групповые объекты.
Введите имя свойства Source
в поле Add property text и нажмите кнопку Add
Введите имя свойства Slope
в поле Добавить текст свойства и нажмите кнопку Add.
Разверните Properties
узел для отображения свойств группового объекта.
Затем задайте поведение Source
свойство:
Выберите Source
узел в дереве.
Выберите вкладку Code, чтобы определить set
и get
команды для Source
свойство.
Выберите Instrument Commands
в поле Свойства стиля.
Введите TRIGger:MAIn:EDGE:SOUrce?
в команда text.
Введите TRIGger:MAIn:EDGE:SOUrce
в поле Задать текст команды.
Выберите вкладку Значения свойств, чтобы задать допустимые значения свойств.
Выберите String
в поле Тип данных.
Выберите Enumeration
в поле Ограничение.
Введите CH1
в текстовом поле Add property value и нажмите кнопку Add. Затем введите CH1
в поле Instrument Value.
Точно так же добавьте перечисление: CH2
, CH2
.
Выберите вкладку «Справка», чтобы завершить определение поведения свойства.
Введите CH1
в текстовом поле Значение по умолчанию.
Выберите never
в поле Read only.
В поле Текст справки введите Specifies the source for the main edge trigger
.
Затем задайте поведение Slope
свойство:
Выберите Slope
узел в дереве.
Выберите вкладку Code, чтобы задать набор и получить команды для Slope
свойство.
Выберите Instrument Commands
в поле Свойства стиля.
Введите TRIGger:MAIn:EDGE:SLOpe?
в команда text.
Введите TRIGger:MAIn:EDGE:SLOpe
в поле Задать текст команды.
Выберите вкладку Значения свойств, чтобы задать допустимые значения свойств.
Выберите String
в поле Тип данных.
Выберите Enumeration
в поле Ограничение.
Введите falling
в текстовом поле Add property value и нажмите кнопку Add. Затем введите FALL
в поле Instrument Value.
Точно так же добавьте перечисление: rising
, RISe
.
Выберите вкладку «Справка», чтобы завершить определение поведения свойства.
Введите falling
в текстовом поле Значение по умолчанию.
Выберите never
в поле Read only.
В поле Текст справки введите Specifies a rising or falling slope for the main edge trigger
.
Нажмите кнопку Save.
Проверка свойств группового объекта в MATLAB. Эта процедура проверяет свойства Trigger
групповой объект. В этом примере имя драйвера tektronix_tds210_ex.mdd
. Связь с осциллографом Tektronix TDS 210 по первичному адресу 2 осуществляется через плату GPIB компании Measurement Computing Corporation по индексу 0 платы. Из командной строки MATLAB,
Создайте объект устройства, obj
, используя icdevice
функция.
g = gpib('mcc',0,2); obj = icdevice('tektronix_tds210_ex.mdd',g);
Извлечение групповых объектов, t
, от объекта устройства.
t = obj.Trigger
HwIndex: HwName: Type: Name: 1 Trigger1 scope-trigger Trigger1
Получите доступ к конкретным свойствам, чтобы отобразить их текущее значение.
t.Source
ans = 'CH1'
t.Slope
ans = 'falling'
Вызывающие set
на определенном свойстве перечисляются значения, на которые можно задать свойство.
set(t,'Source')
[ {CH1} | CH2 ]
set(t,'Slope')
[ {falling} | rising ]
Попробуйте задать допустимые и недопустимые значения свойства.
t.Source = 'CH2'; t.Slope = 'rising';
t.Source
ans = 'CH2'
t.Slope
ans = 'rising'
t.Source = 'CH3'
There is no enumerated value named 'CH3'.
t.Slope = 'steady'
There is no enumerated value named 'steady'.
Просмотрите справку, которую вы написали.
instrhelp(t,'Source')
SOURCE [ {CH1} | CH2 ] Specifies the source for the main edge trigger.
instrhelp(t,'Slope')
SLOPE [ {falling} | rising ] Specifies a rising or falling slope for the main edge trigger.
Перечислите признаки группового объекта, определенные на вкладках Свойства Значений и Help.
propinfo(t,'Source')
ans = struct with fields: Type: 'string' Constraint: 'enum' ConstraintValue: {2×1 cell} DefaultValue: 'CH1' ReadOnly: 'never' InterfaceSpecific: 1
propinfo(t,'Slope')
ans = struct with fields: Type: 'string' Constraint: 'enum' ConstraintValue: {2×1 cell} DefaultValue: 'falling' ReadOnly: 'never' InterfaceSpecific: 1
Подключитесь к инструменту, чтобы проверить set
и get
код.
connect(obj)
Примечание
Когда вы выдаете get
функция на Source
свойство для объекта триггера, textronix_tds210_ex.mdd
драйвер фактически отправляет TRIGger:MAIn:EDGE:SOUrce?
команда на инструмент.
t.Source
ans = 'CH1'
Примечание
Когда вы выдаете set
функция на Slope
свойство для объекта триггера, textronix_tds210_ex.mdd
драйвер фактически отправляет TRIGger:MAIn:EDGE:SLOpe RISe
команда на инструмент.
t.Slope = 'rising';
Отсоединитесь от инструмента и удалите объекты.
disconnect(obj) delete([obj g])
Этот пример объединяет возможности измерения осциллографа Tektronix TDS 210 в группу измерений. Осциллограф позволяет проводить четыре измерения за раз. В редакторе драйверов приборов MATLAB,
Выберите Groups
узел в дереве.
Введите имя группы, Measurement
, в поле Добавить текст группы и нажмите Add.
Разверните Groups
узел для отображения всех определенных групп.
Выберите Measurement
узел в дереве.
Выберите вкладку Definition (Определение).
Осциллограф не задает команду прибора, которая будет определять измерение, которое вычисляется в настоящее время. Поле текста команды Selection остается пустым.
В списке «Имя идентификатора» измените Measurement1
на Meas1
для определения идентификационной строки для первого группового объекта измерений в группе.
Введите идентификаторы Meas2
, Meas3
, и Meas4
для остальных групповых объектов измерений путем ввода каждого из них в текстовое поле Identifier и щелчка по Add после каждого.
Перейдите на вкладку «Справка», чтобы завершить определение поведения группы.
В поле Текст справки введите Measurement is an array of measurement group objects. A measurement group object contains properties related to each supported measurement on the oscilloscope
.
Нажмите кнопку Save.
Проверка поведения группы. Эта процедура проверяет определенную информацию о группе. В этом примере имя драйвера tektronix_tds210_ex.mdd
. Связь с осциллографом Tektronix TDS 210 по первичному адресу 2 осуществляется через плату GPIB компании Measurement Computing Corporation по индексу 0 платы. Из командной строки MATLAB,
Создайте объект устройства, obj
, используя icdevice
функция.
g = gpib('mcc',0,2); obj = icdevice('tektronix_tds210_ex.mdd',g);
Просмотрите группу, которую вы создали. Обратите внимание, что HwName
свойство является групповым объектом get(obj)
.
obj.Measurement
HwIndex: HwName: Type: Name: 1 Meas1 scope-measurement Measurement1 2 Meas2 scope-measurement Measurement2 3 Meas3 scope-measurement Measurement3 4 Meas4 scope-measurement Measurement4
Просмотрите справку.
instrhelp(obj,'Measurement')
MEASUREMENT Measurement is an array of measurement group objects. A measurement group object contains properties related to each supported measurement on the oscilloscope.
Удалите объекты.
delete([obj g])
Этот пример определяет свойства для Measurement
Групповой объект, созданная в предыдущем примере. Осциллограф Tektronix TDS 210 может вычислять частоту, среднее значение, период, значение от пика до пика, среднее значение корня, время нарастания, время спада, ширину положительного импульса или ширину отрицательного импульса формы волны канала 1 или канала 2.
Во-первых, свойства MeasurementType
, Source
, Value
, и Units
будет добавлено к Measurement
групповой объект.
Разверните Measurement
сгруппировать узел для отображения свойств и методов группового объекта.
Выберите Properties
узел для определения Measurement
групповые объекты.
Введите имя свойства MeasurementType
в поле Добавить текст свойства и нажмите кнопку Add.
Введите имя свойства Source
в поле Добавить текст свойства и нажмите кнопку Add.
Введите имя свойства Value
в поле Добавить текст свойства и нажмите кнопку Add.
Введите имя свойства Units
в поле Добавить текст свойства и нажмите кнопку Add.
Разверните Properties
узел для отображения свойств группового объекта.
Затем задайте поведение MeasurementType
свойство:
Выберите MeasurementType
узел в дереве.
Выберите вкладку Code, чтобы определить set
и get
команды для MeasurementType
свойство.
Выберите Instrument Commands
в поле Свойства стиля.
Введите Measurement:<ID>:Type?
в команда text.
Введите Measurement:<ID>:Type
в поле Задать текст команды.
Выберите вкладку Значения свойств, чтобы задать допустимые значения свойств.
Выберите String
в поле Тип данных.
Выберите Enumeration
в поле Ограничение.
Введите frequency
в текстовом поле Add property value и нажмите кнопку Add. Затем введите FREQuency
в поле Instrument Value.
Добавьте перечисление: mean
, MEAN
.
Добавьте перечисление: period
, PERIod
.
Добавьте перечисление: pk2pk
, PK2pk
.
Добавьте перечисление: rms
, CRMs
.
Добавьте перечисление: riseTime
, RISe
.
Добавьте перечисление: fallTime
, FALL
.
Добавьте перечисление: posWidth
, PWIdth
.
Добавьте перечисление: negWidth
, NWIdth
.
Добавьте перечисление: none
, NONE
.
Выберите вкладку «Справка», чтобы завершить определение поведения свойства.
Введите none
в текстовом поле Значение по умолчанию.
Выберите never
в поле Read only.
В поле Текст справки введите Specifies the measurement type
.
Затем задайте поведение Source
свойство.
Выберите Source
узел в дереве.
Выберите вкладку Code, чтобы определить set
и get
команды для Source
свойство.
Выберите Instrument Commands
в поле Свойства стиля.
Введите Measurement:<ID>:Source?
в командном поле Get.
Введите Measurement:<ID>:Source
в команда.
Выберите вкладку Значения свойств, чтобы задать допустимые значения свойств.
Выберите String
в поле Тип данных.
Выберите Enumeration
в поле Ограничение.
Введите CH1
в текстовом поле Add property value и нажмите кнопку Add. Затем введите CH1
в поле Instrument Value.
Точно так же добавьте перечисление: CH2
, CH2
.
Выберите вкладку «Справка», чтобы завершить определение поведения свойства.
Введите CH1
в текстовом поле Значение по умолчанию.
Выберите never
в поле Read only.
В поле Текст справки введите Specifies the source of the measurement
.
Затем задайте поведение Units
свойство.
Выберите Units
узел в дереве.
Выберите вкладку Code, чтобы определить set
и get
команды для Units
свойство.
Выберите Instrument Commands
в поле Свойства стиля.
Введите Measurement:<ID>:Units?
в команда text.
Начиная с Units
свойство доступно только для чтения, оставьте поле команда text пустым.
Выберите вкладку Значения свойств, чтобы задать допустимые значения свойств.
Выберите String
в поле Тип данных.
Выберите None
в поле Ограничение.
Выберите вкладку «Справка», чтобы завершить определение поведения свойства.
Введите volts
в текстовом поле Значение по умолчанию.
Выберите always
в поле Read only.
В поле Текст справки введите Returns the measurement units
.
Наконец, задайте поведение Value
свойство.
Выберите Value
узел в дереве.
Выберите вкладку Code, чтобы определить set
и get
команды для Value
свойство.
Выберите Instrument Commands
в поле Свойства стиля.
Введите Measurement:<ID>:Value?
в команда text.
Начиная с Value
свойство доступно только для чтения, оставьте поле команда text пустым.
Выберите вкладку Значения свойств, чтобы задать допустимые значения свойств.
Выберите Double
в поле Тип данных.
Выберите None
в поле Ограничение.
Перейдите на вкладку «Справка», чтобы завершить определение поведения свойства.
Введите 0
в поле Значение по умолчанию.
Выберите always
в поле Read only.
В поле Текст справки введите Returns the measurement value
.
Нажмите кнопку Save.
Проверка свойств группового объекта в программном обеспечении MATLAB. Эта процедура проверяет свойства группового объекта измерений. В этом примере имя драйвера tektronix_tds210_ex.mdd
. Связь с осциллографом Tektronix TDS 210 по первичному адресу 2 осуществляется через плату GPIB компании Measurement Computing Corporation по индексу 0 платы. Из командной строки MATLAB,
Создайте объект устройства, obj
, используя icdevice
функция.
g = gpib('mcc',0,2); obj = icdevice('tektronix_tds210_ex.mdd',g);
Извлеките групповые объекты измерений, m
, от объекта устройства.
m = obj.Measurement
HwIndex: HwName: Type: Name: 1 Meas1 scope-measurement Measurement1 2 Meas2 scope-measurement Measurement2 3 Meas3 scope-measurement Measurement3 4 Meas4 scope-measurement Measurement4
Просмотрите текущие значения свойств первого группового объекта. Вызывающие get
на объекте перечислены все его свойства.
m(1)
HwIndex: HwName: Type: Name: 1 Meas1 scope-measurement Measurement1
Вызывающие get
в определенном свойстве перечисляет его текущее значение.
m(1).MeasurementType
ans = 'none'
m(1).Source
ans = 'CH1'
m(1).Units
ans = 'volts'
m(1).Value
ans = 0
Просмотрите допустимые значения свойств группового объекта. Вызывающие set
на объекте перечислены все его настраиваемые свойства.
set(m(1))
Name: SCOPE-MEASUREMENT specific properties: MeasurementType: [ frequency | mean | period | pk2pk | rms | riseTime | fallTime | posWidth | negWidth | {none} ] Source: [ {CH1} | CH2 ]
set(m(1),'MeasurementType')
[ frequency | mean | period | pk2pk | rms | riseTime | fallTime | posWidth | negWidth | {none} ]
set(m(1),'Source')
[ {CH1} | CH2 ]
Попробуйте задать допустимые и недопустимые значения свойства.
m(1).Source = 'CH2'
HwIndex: HwName: Type: Name: 1 Meas1 scope-measurement Measurement1 2 Meas2 scope-measurement Measurement2 3 Meas3 scope-measurement Measurement3 4 Meas4 scope-measurement Measurement4
m(1).Source
ans = 'CH2'
m(1).Source = 'CH5'
There is no enumerated value named 'CH5'.
Просмотрите справку, которую вы написали.
instrhelp(m(1),'Value')
VALUE (double) (read only) Returns the measurement value.
Перечислите признаки группового объекта, определенные на вкладках Свойства Значений и Help.
propinfo(m(1),'Units')
ans = struct with fields: Type: 'string' Constraint: 'none' ConstraintValue: '' DefaultValue: 'volts' ReadOnly: 'always' InterfaceSpecific: 1
Подключитесь к инструменту, чтобы проверить set
и get
код.
connect(obj)
Примечание
Когда вы выдаете get
функция на MeasurementType
свойство для первого объекта измерения в группе, textronix_tds210_ex.mdd
драйвер фактически отправляет Measurement:Meas1:Type?
команда на инструмент.
m(1).MeasurementType
ans = 'freequency'
Примечание
Когда вы выдаете set
функция на Source
свойство для второго объекта измерения в группе, textronix_tds210_ex.mdd
драйвер фактически отправляет Measurement:Meas2:Source CH2
команда на инструмент.
m(2).Source = 'CH2';
Отсоединитесь от инструмента и удалите объекты.
disconnect(obj) delete([obj g])