Группа может использоваться, чтобы установить или запросить то же свойство на нескольких элементах или запросить несколько связанных свойств, одновременно. Например, все входные каналы на осциллографе могут масштабироваться к тому же значению с одной командой; или все текущие настройки измерения могут быть получены и просмотрены одновременно.
Группа состоит из одного или нескольких групповых объектов. Объекты в группе совместно используют набор свойств и функций. Используя эти свойства и функции можно управлять функциями инструмента, представленного группой. Для групповых объектов, чтобы управлять инструментом правильно, группа должна задать команду выбора для группы и идентификационную строку для каждого объекта в группе.
Команда выбора является инструментальной командой, которая конфигурирует инструмент, чтобы использовать возможность или физический компонент, представленный текущим групповым объектом. Отметьте, инструмент не может иметь команды выбора.
Идентификационная строка идентифицирует объект в группе. Количество идентификационных строк, перечисленных группой, задает количество объектов в группе. Идентификационной строкой можно заменить в инструментальные команды, записанные в инструмент.
Когда инструментальная команда группового объекта записана в инструмент, следующие шаги происходят:
Команда выбора для группы определяется драйвером.
Идентификационная строка для группового объекта определяется драйвером.
Если команда выбора содержит строку <ID>
, это заменяется идентификационной строкой.
Команда выбора записана в инструмент. Если пустой, ничто не записано в инструмент.
Если инструментальная команда содержит строку <ID>
, это заменяется идентификационной строкой.
Инструментальная команда записана в инструмент.
Этот раздел включает несколько примеров групп с шагами, чтобы проверить код.
Этот пример комбинирует триггерные возможности осциллографа Tektronix® TDS 210 в триггерную группу. Осциллограф позволяет триггерному источнику и наклонным настройкам быть сконфигурированным. В инструментальном редакторе драйвера MATLAB®,
Выберите узел Groups
в дереве.
Введите название группы, Trigger
, в текстовом поле Add Group и нажмите Add.
Расширьте узел Groups
, чтобы отобразить все заданные группы.
Выберите узел Trigger
в дереве.
Выберите вкладку Definition.
Поскольку осциллограф имеет только один триггер, нет команды, которая выберет текущий триггер. Поле текста команды Выбора останется пустым.
Выберите вкладку Help, чтобы закончить задавать поведение группы.
В текстовом поле Help введите 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 сделана через Измерение плата GPIB Корпорации Computing™ в параметре плат 0. Из командной строки MATLAB,
Создайте объект устройства, obj
, с помощью функции icdevice
.
g = gpib('mcc', 0, 2); obj = icdevice('tektronix_tds210_ex.mdd', g);
Просмотрите группу, которую вы создали. Обратите внимание на то, что свойство HwName
является идентификационной строкой группового объекта.
get(obj) obj.Trigger HwIndex: HwName: Type: Name: 1 Trigger1 scope-trigger Trigger1
Просмотрите справку.
instrhelp(obj, 'Trigger') TRIGGER (object) (read only) 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 и нажмите кнопку Add
Введите имя свойства Slope
в текстовое поле свойства Add и нажмите кнопку Add.
Расширьте узел Properties
, чтобы отобразить свойства группового объекта.
Затем, задайте поведение свойства Source
:
Выберите узел Source
в дереве.
Выберите вкладку Code, чтобы задать set
и команды get
для свойства Source
.
Выберите Instrument Commands
в поле стиля Свойства.
Введите TRIGger:MAIn:EDGE:SOUrce?
в Получить поле текста команды.
Введите TRIGger:MAIn:EDGE:SOUrce
в поле текста команды Набора.
Выберите вкладку Property Values, чтобы задать позволенные значения свойств.
Выберите String
в поле Data Type.
Выберите Enumeration
в поле Constraint.
Введите CH1
в Добавить текстовое поле значения свойства и нажмите кнопку Add. Затем введите CH1
в поле таблицы Instrument Value.
Точно так же добавьте перечисление: CH2
, CH2
.
Выберите вкладку "Общие", чтобы закончить задавать поведение свойства.
Введите CH1
в текстовое поле Значения по умолчанию.
Выберите never
в поле Только для чтения.
В текстовом поле Help введите Specifies the source for the main edge trigger
.
Затем, задайте поведение свойства Slope
:
Выберите узел Slope
в дереве.
Выберите вкладку Code, чтобы задать набор и получить команды для свойства Slope
.
Выберите Instrument Commands
в поле стиля Свойства.
Введите TRIGger:MAIn:EDGE:SLOpe?
в Получить поле текста команды.
Введите TRIGger:MAIn:EDGE:SLOpe
в поле текста команды Набора.
Выберите вкладку Property Values, чтобы задать позволенные значения свойств.
Выберите String
в поле Data Type.
Выберите Enumeration
в поле Constraint.
Введите falling
в Добавить текстовое поле значения свойства и нажмите кнопку Add. Затем введите FALL
в поле таблицы Instrument Value.
Так же добавьте перечисление: rising
, RISe
.
Выберите вкладку "Общие", чтобы закончить задавать поведение свойства.
Введите falling
в текстовое поле Значения по умолчанию.
Выберите never
в поле Только для чтения.
В текстовом поле Help введите Specifies a rising or falling slope for the main edge trigger
.
Нажмите кнопку Save.
Verifying Properties Группового объекта в 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' ??? The 'CH3' enumerated value is invalid. t.Slope = 'steady' ??? The 'steady' enumerated value is invalid.
Просмотрите справку, которую вы записали.
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.
Перечислите характеристики группового объекта, которые вы задали в Значениях свойств и вкладках "Общие".
propinfo(t, 'Source') ans = Type: 'string' Constraint: 'enum' ConstraintValue: {2x1 cell} DefaultValue: 'CH1' ReadOnly: 'never' InterfaceSpecific: 1 propinfo(t, 'Slope') ans = Type: 'string' Constraint: 'enum' ConstraintValue: {2x1 cell} DefaultValue: 'falling' ReadOnly: 'never' InterfaceSpecific: 1
Соединитесь со своим инструментом, чтобы проверить код get
и set
.
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.
Осциллограф не задает инструментальную команду, которая задаст измерение, которое в настоящее время вычисляется. Поле текста команды Выбора останется пустым.
В списке Имен Идентификатора измените Measurement1
на Meas1
, чтобы задать идентификационную строку для первого группового объекта измерения в группе.
Введите идентификаторы Meas2
, Meas3
и Meas4
для остающихся групповых объектов измерения путем ввода каждого в текстовом поле Identifier и нажатия на Add после каждого.
Выберите вкладку Help, чтобы закончить задавать поведение группы.
В текстовом поле Help введите 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 (object) (read only) 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 и нажмите кнопку Add.
Введите имя свойства Source
в текстовое поле свойства Add и нажмите кнопку Add.
Введите имя свойства Value
в текстовое поле свойства Add и нажмите кнопку Add.
Введите имя свойства Units
в текстовое поле свойства Add и нажмите кнопку Add.
Расширьте узел Properties
, чтобы отобразить свойства группового объекта.
Затем, задайте поведение свойства MeasurementType
:
Выберите узел MeasurementType
в дереве.
Выберите вкладку Code, чтобы задать set
и команды get
для свойства MeasurementType
.
Выберите Instrument Commands
в поле стиля Свойства.
Введите Measurement:<ID>:Type?
в Получить поле текста команды.
Введите Measurement:<ID>:Type
в поле текста команды Набора.
Выберите вкладку Property Values, чтобы задать позволенные значения свойств.
Выберите String
в поле Data Type.
Выберите Enumeration
в поле Constraint.
Введите frequency
в Добавить текстовое поле значения свойства и нажмите кнопку Add. Затем введите FREQuency
в поле таблицы Instrument Value.
Добавьте перечисление: mean
, MEAN
.
Добавьте перечисление: period
, PERIod
.
Добавьте перечисление: pk2pk
, PK2pk
.
Добавьте перечисление: rms
, CRMs
.
Добавьте перечисление: riseTime
, RISe
.
Добавьте перечисление: fallTime
, FALL
.
Добавьте перечисление: posWidth
, PWIdth
.
Добавьте перечисление: negWidth
, NWIdth
.
Добавьте перечисление: none
, NONE
.
Выберите вкладку "Общие", чтобы закончить задавать поведение свойства.
Введите none
в текстовое поле Значения по умолчанию.
Выберите never
в поле Только для чтения.
В текстовом поле Help введите Specifies the measurement type
.
Затем, задайте поведение свойства Source
.
Выберите узел Source
в дереве.
Выберите вкладку Code, чтобы задать set
и команды get
для свойства Source
.
Выберите Instrument Commands
в поле стиля Свойства.
Введите Measurement:<ID>:Source?
в Получить поле команды.
Введите Measurement:<ID>:Source
в поле команды Набора.
Выберите вкладку Property Values, чтобы задать позволенные значения свойств.
Выберите String
в поле Data Type.
Выберите Enumeration
в поле Constraint.
Введите CH1
в Добавить текстовое поле значения свойства и нажмите кнопку Add. Затем введите CH1
в поле таблицы Instrument Value.
Так же добавьте перечисление: CH2
, CH2
.
Выберите вкладку "Общие", чтобы закончить задавать поведение свойства.
Введите CH1
в текстовое поле Значения по умолчанию.
Выберите never
в поле Только для чтения.
В текстовом поле Help введите Specifies the source of the measurement
.
Затем, задайте поведение свойства Units
.
Выберите узел Units
в дереве.
Выберите вкладку Code, чтобы задать set
и команды get
для свойства Units
.
Выберите Instrument Commands
в поле стиля Свойства.
Введите Measurement:<ID>:Units?
в Получить поле текста команды.
Поскольку свойство Units
только для чтения, оставьте поле текста команды Набора пустым.
Выберите вкладку Property Values, чтобы задать позволенные значения свойств.
Выберите String
в поле Data Type.
Выберите None
в поле Constraint.
Выберите вкладку "Общие", чтобы закончить задавать поведение свойства.
Введите volts
в текстовое поле Значения по умолчанию.
Выберите always
в поле Только для чтения.
В текстовом поле Help введите Returns the measurement units
.
Наконец, задайте поведение свойства Value
.
Выберите узел Value
в дереве.
Выберите вкладку Code, чтобы задать set
и команды get
для свойства Value
.
Выберите Instrument Commands
в поле стиля Свойства.
Введите Measurement:<ID>:Value?
в Получить поле текста команды.
Поскольку свойство Value
только для чтения, оставьте поле текста команды Набора пустым.
Выберите вкладку Property Values, чтобы задать позволенные значения свойств.
Выберите Double
в поле Data Type.
Выберите None
в поле Constraint.
Выберите вкладку "Общие", чтобы закончить задавать поведение свойства.
Введите 0
в поле Значения по умолчанию.
Выберите always
в поле Только для чтения.
В текстовом поле Help введите 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)
Вызов get
на определенные списки свойств его текущее значение.
m(1).MeasurementType ans = none
m(1).Source ans = CH1
m(1).Units ans = volts
m(1).Value ans = 'none' 'CH1' 'volts' [0]
Просмотрите приемлемые значения для свойств группового объекта. Вызов set
в списках объектов все его устанавливаемые свойства.
set(m(1)) set(m(1), 'MeasurementType') [ frequency | period | {none} | mean | pk2pk | rms | riseTime | fallTime | posWidth | negWidth ] set(m(1), 'Source') [ {CH1} | CH2 ]
Попытайтесь установить свойство на допустимые и недопустимые значения.
m(1).Source = 'CH2' m(1).Source ans = CH2 m(1).Source = 'CH5' ??? The 'CH5' enumerated value is invalid.
Просмотрите справку, которую вы записали.
instrhelp(m(1), 'Value') VALUE (double) (read only) Returns the measurement value.
Перечислите характеристики группового объекта, которые вы задали в Значениях свойств и вкладках "Общие".
propinfo(m(1), 'Units') ans = Type: 'string' Constraint: 'none' ConstraintValue: [] DefaultValue: 'volts' ReadOnly: 'always' InterfaceSpecific: 1
Соединитесь со своим инструментом, чтобы проверить код get
и set
.
connect(obj)
Когда вы выпускаете функцию get
на свойстве MeasurementType
для первого объекта измерения в группе, драйвер textronix_tds210_ex.mdd
на самом деле отправляет команду Measurement:Meas1:Type?
в инструмент.
m(1).MeasurementType ans = frequency
Когда вы выпускаете функцию set
на свойстве Source
для второго объекта измерения в группе, драйвер textronix_tds210_ex.mdd
на самом деле отправляет команду Measurement:Meas2:Source CH2
в инструмент.
m(2).Source = 'CH2';
Отключитесь от своего инструмента и удалите объекты.
disconnect(obj) delete([obj g])