exponenta event banner

Группы

Группировать компоненты

Группа может использоваться для установки или запроса одного и того же свойства на нескольких элементах или для запроса нескольких связанных свойств одновременно. Например, все входные каналы осциллографа могут быть масштабированы до одного значения одной командой; или все текущие настройки измерений могут быть извлечены и просмотрены одновременно.

Группа состоит из одного или нескольких объектов группы. Объекты в группе имеют общий набор свойств и функций. С помощью этих свойств и функций можно управлять характеристиками инструмента, представленного группой. Чтобы объекты группы могли правильно управлять прибором, группа должна определить команду выбора для группы и идентификационную строку для каждого объекта в группе.

Команда выбора

Команда выбора - это команда инструмента, которая настраивает прибор на использование возможности или физического компонента, представленного текущим групповым объектом. Следует отметить, что инструмент может не иметь команды выбора.

Идентификационная строка

Строка идентификации идентифицирует объект в группе. Количество идентификационных строк, перечисленных группой, определяет количество объектов в группе. Идентификационная строка может быть заменена командами прибора, записанными в прибор.

При записи команды инструмента группового объекта в прибор выполняются следующие шаги:

  1. Команда выбора для группы определяется драйвером.

  2. Строка идентификации для объекта группы определяется драйвером.

  3. Если команда выбора содержит строку <ID>, заменяется идентификационной строкой.

  4. Команда выбора записывается в прибор. Если пусто, на инструмент ничего не записывается.

  5. Если команда прибора содержит строку <ID>, заменяется идентификационной строкой.

  6. Команда прибора записывается в прибор.

Примеры групп

В этом разделе приводится несколько примеров групп с шагами проверки кода.

Создание одноэлементной группы

Этот пример объединяет триггерные возможности осциллографа Tektronix ® TDS 210 в триггерную группу. Осциллограф позволяет настроить источник триггера и настройки наклона. В редакторе драйверов приборов MATLAB ®

  1. Выберите Groups узел в дереве.

  2. Введите имя группы, Trigger, в текстовом поле Добавить группу и нажмите кнопку Добавить.

  3. Разверните окно Groups для отображения всех определенных групп.

  4. Выберите Trigger узел в дереве.

  5. Выберите вкладку Определение (Definition).

    Поскольку осциллограф имеет только один триггер, нет команды, которая выберет текущий триггер. Текстовое поле команды «Выбор» останется пустым.

  6. Выберите вкладку Справка (Help), чтобы завершить определение поведения группы.

    В текстовом поле Справка введите Trigger is a trigger group. The trigger group object contains properties that configure and query the oscilloscope's triggering capabilities.

  7. Нажмите кнопку «Сохранить».

Проверка поведения группы.  Эта процедура используется для проверки определенной информации о группе. В этом примере имя драйвера: tektronix_tds210_ex.mdd. Связь с осциллографом Tektronix TDS 210 по основному адресу 2 осуществляется через плату GPIB корпорации Measurement Computing™ с индексом платы 0. В командной строке MATLAB

  1. Создайте объект устройства, obj, с использованием icdevice функция.

    g = gpib('mcc',0,2);
    obj = icdevice('tektronix_tds210_ex.mdd',g);
  2. Просмотр созданной группы. Обратите внимание, что HwName - строка идентификации объекта группы.

    obj.Trigger
       HwIndex:    HwName:     Type:            Name:  
       1           Trigger1    scope-trigger    Trigger1
  3. Просмотрите справку.

    instrhelp(obj, 'Trigger')
       TRIGGER
    
       Trigger is a trigger group. The trigger group object contains properties
       that configure and query the oscilloscope's triggering capabilities.
  4. Удалите объекты.

    delete([obj g])

Определение свойств объекта группы для одноэлементной группы

В этом примере определяются свойства Trigger объект группы, созданный в предыдущем примере. Осциллограф Tektronix TDS 210 может срабатывать от CH1 или CH2, когда данные имеют наклон подъема или падения.

Во-первых, свойства Source и Slope добавляются к объекту группы триггеров. В редакторе драйверов приборов MATLAB

  1. Разверните окно Trigger для отображения свойств и функций объекта группы.

  2. Выберите Properties для определения узла Trigger свойства объекта группы.

  3. Введите имя свойства Source в текстовом поле «Добавить свойство» и нажмите кнопку «Добавить»

  4. Введите имя свойства Slope в текстовом поле «Добавить свойство» и нажмите кнопку «Добавить».

  5. Разверните окно Properties для отображения свойств объекта группы.

Затем определите поведение Source свойство:

  1. Выберите Source узел в дереве.

  2. Выберите вкладку Код, чтобы определить set и get команды для Source собственность.

    • Выбрать Instrument Commands в поле Стиль свойства.

    • Войти TRIGger:MAIn:EDGE:SOUrce? в текстовом поле команды Get.

    • Войти TRIGger:MAIn:EDGE:SOUrce в текстовом поле команды Set.

  3. Выберите вкладку «Значения свойств» для определения допустимых значений свойств.

    • Выбрать String в поле Тип данных.

    • Выбрать Enumeration в поле Ограничение.

    • Войти CH1 в поле «Добавить значение свойства» и нажмите кнопку «Добавить». Затем введите CH1 в поле «Instrument Value».

    • Аналогично, добавьте перечисление: CH2, CH2.

  4. Перейдите на вкладку «Справка», чтобы завершить определение поведения свойства.

    • Войти CH1 в текстовом поле Значение по умолчанию.

    • Выбрать never в поле Только чтение.

    • В текстовом поле Справка введите Specifies the source for the main edge trigger.

Затем определите поведение Slope свойство:

  1. Выберите Slope узел в дереве.

  2. Выберите вкладку Код, чтобы определить набор и получить команды для Slope собственность.

    • Выбрать Instrument Commands в поле Стиль свойства.

    • Войти TRIGger:MAIn:EDGE:SLOpe? в текстовом поле команды Get.

    • Войти TRIGger:MAIn:EDGE:SLOpe в текстовом поле команды Set.

  3. Выберите вкладку «Значения свойств» для определения допустимых значений свойств.

    • Выбрать String в поле Тип данных.

    • Выбрать Enumeration в поле Ограничение.

    • Войти falling в поле «Добавить значение свойства» и нажмите кнопку «Добавить». Затем введите FALL в поле «Instrument Value».

    • Аналогично добавьте перечисление: rising, RISe.

  4. Перейдите на вкладку «Справка», чтобы завершить определение поведения свойства.

    • Войти falling в текстовом поле Значение по умолчанию.

    • Выбрать never в поле Только чтение.

    • В текстовом поле Справка введите Specifies a rising or falling slope for the main edge trigger.

  5. Нажмите кнопку «Сохранить».

Проверка свойств объекта Group в MATLAB.  Эта процедура проверяет свойства Trigger групповой объект. В этом примере имя драйвера: tektronix_tds210_ex.mdd. Связь с осциллографом Tektronix TDS 210 по основному адресу 2 осуществляется через плату GPIB компании Measurement Computing Corporation с индексом платы 0. В командной строке MATLAB

  1. Создайте объект устройства, obj, с использованием icdevice функция.

    g = gpib('mcc',0,2);
    obj = icdevice('tektronix_tds210_ex.mdd',g);
  2. Извлеките объекты группы триггеров, t, из объекта устройства.

    t = obj.Trigger
       HwIndex:    HwName:     Type:            Name:  
       1           Trigger1    scope-trigger    Trigger1
  3. Доступ к определенным свойствам для отображения текущего значения.

    t.Source
    ans =
    
        'CH1'
    t.Slope
    ans =
    
        'falling'
  4. Запрос set для определенного свойства перечисляет значения, которым можно задать свойство.

    set(t,'Source')
    [ {CH1} | CH2 ]
    set(t,'Slope')
    [ {falling} | rising ]
  5. Попробуйте установить для свойства допустимые и недопустимые значения.

    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'.
  6. Просмотрите справку, которую вы написали.

    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.
  7. Перечислите признаки объекта группы, определенные на вкладках «Значения свойств» и «Справка».

    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
  8. Подключитесь к инструменту для проверки 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';
  9. Отключитесь от прибора и удалите объекты.

    disconnect(obj)
    delete([obj g])

Создание четырехэлементной группы

Этот пример объединяет возможности измерения осциллографа Tektronix TDS 210 в группу измерений. Осциллограф позволяет выполнять четыре измерения одновременно. В редакторе драйверов приборов MATLAB

  1. Выберите Groups узел в дереве.

  2. Введите имя группы, Measurement, в поле Добавить текст группы и нажмите кнопку Добавить.

  3. Разверните окно Groups для отображения всех определенных групп.

  4. Выберите Measurement узел в дереве.

  5. Выберите вкладку Определение (Definition).

    • Осциллограф не определяет команду прибора, которая определяет вычисляемое в настоящее время измерение. Текстовое поле команды «Выбор» останется пустым.

    • В списке «Имя идентификатора» измените Measurement1 кому Meas1 определение идентификационной строки для первого объекта группы измерений в группе.

    • Введите идентификаторы Meas2, Meas3, и Meas4 для остальных объектов группы измерений введите каждый в текстовом поле Идентификатор (Identifier) и щелкните Добавить (Add) после каждого.

  6. Выберите вкладку Справка (Help), чтобы завершить определение поведения группы.

    • В текстовом поле Справка введите Measurement is an array of measurement group objects. A measurement group object contains properties related to each supported measurement on the oscilloscope.

  7. Нажмите кнопку «Сохранить».

Проверка поведения группы.  Эта процедура используется для проверки определенной информации о группе. В этом примере имя драйвера: tektronix_tds210_ex.mdd. Связь с осциллографом Tektronix TDS 210 по основному адресу 2 осуществляется через плату GPIB компании Measurement Computing Corporation с индексом платы 0. В командной строке MATLAB

  1. Создайте объект устройства, obj, с использованием icdevice функция.

    g = gpib('mcc',0,2);
    obj = icdevice('tektronix_tds210_ex.mdd',g);
  2. Просмотр созданной группы. Обратите внимание, что 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
  3. Просмотрите справку.

    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.
  4. Удалите объекты.

    delete([obj g])

Определение свойств объекта группы для четырехэлементной группы

В этом примере определяются свойства Measurement объект группы, созданный в предыдущем примере. Осциллограф Tektronix TDS 210 может вычислять частоту, среднее значение, период, пиковое значение, среднеквадратичное значение, время нарастания, время падения, положительную ширину импульса или отрицательную ширину импульса сигнала канала 1 или канала 2.

Во-первых, свойства MeasurementType, Source, Value, и Units будет добавлен в Measurement групповой объект.

  1. Разверните окно Measurement для отображения свойств и методов объекта группы.

  2. Выберите Properties для определения узла Measurement свойства объекта группы.

  3. Введите имя свойства MeasurementType в текстовом поле «Добавить свойство» и нажмите кнопку «Добавить».

  4. Введите имя свойства Source в текстовом поле «Добавить свойство» и нажмите кнопку «Добавить».

  5. Введите имя свойства Value в текстовом поле «Добавить свойство» и нажмите кнопку «Добавить».

  6. Введите имя свойства Units в текстовом поле «Добавить свойство» и нажмите кнопку «Добавить».

  7. Разверните окно Properties для отображения свойств объекта группы.

Затем определите поведение MeasurementType свойство:

  1. Выберите MeasurementType узел в дереве.

  2. Выберите вкладку Код, чтобы определить set и get команды для MeasurementType собственность.

    • Выбрать Instrument Commands в поле Стиль свойства.

    • Войти Measurement:<ID>:Type? в текстовом поле команды Get.

    • Войти Measurement:<ID>:Type в текстовом поле команды Set.

  3. Выберите вкладку «Значения свойств» для определения допустимых значений свойств.

    • Выбрать String в поле Тип данных.

    • Выбрать Enumeration в поле Ограничение.

    • Войти frequency в поле «Добавить значение свойства» и нажмите кнопку «Добавить». Затем введите FREQuency в поле «Instrument Value».

    • Добавьте перечисление: mean, MEAN.

    • Добавьте перечисление: period, PERIod.

    • Добавьте перечисление: pk2pk, PK2pk.

    • Добавьте перечисление: rms, CRMs.

    • Добавьте перечисление: riseTime, RISe.

    • Добавьте перечисление: fallTime, FALL.

    • Добавьте перечисление: posWidth, PWIdth.

    • Добавьте перечисление: negWidth, NWIdth.

    • Добавьте перечисление: none, NONE.

  4. Перейдите на вкладку «Справка», чтобы завершить определение поведения свойства.

    • Войти none в текстовом поле Значение по умолчанию.

    • Выбрать never в поле Только чтение.

    • В текстовом поле Справка введите Specifies the measurement type.

Затем определите поведение Source собственность.

  1. Выберите Source узел в дереве.

  2. Выберите вкладку Код, чтобы определить set и get команды для Source собственность.

    • Выбрать Instrument Commands в поле Стиль свойства.

    • Войти Measurement:<ID>:Source? в поле команды Get.

    • Войти Measurement:<ID>:Source в поле команды Set.

  3. Выберите вкладку «Значения свойств» для определения допустимых значений свойств.

    • Выбрать String в поле Тип данных.

    • Выбрать Enumeration в поле Ограничение.

    • Войти CH1 в поле «Добавить значение свойства» и нажмите кнопку «Добавить». Затем введите CH1 в поле «Instrument Value».

    • Аналогично добавьте перечисление: CH2, CH2.

  4. Перейдите на вкладку «Справка», чтобы завершить определение поведения свойства.

    • Войти CH1 в текстовом поле Значение по умолчанию.

    • Выбрать never в поле Только чтение.

    • В текстовом поле Справка введите Specifies the source of the measurement.

Затем определите поведение Units собственность.

  1. Выберите Units узел в дереве.

  2. Выберите вкладку Код, чтобы определить set и get команды для Units собственность.

    • Выбрать Instrument Commands в поле Стиль свойства.

    • Войти Measurement:<ID>:Units? в текстовом поле команды Get.

    • С момента Units свойство доступно только для чтения, оставьте текстовое поле команды Set пустым.

  3. Выберите вкладку «Значения свойств» для определения допустимых значений свойств.

    • Выбрать String в поле Тип данных.

    • Выбрать None в поле Ограничение.

  4. Перейдите на вкладку «Справка», чтобы завершить определение поведения свойства.

    • Войти volts в текстовом поле Значение по умолчанию.

    • Выбрать always в поле Только чтение.

    • В текстовом поле Справка введите Returns the measurement units.

Наконец, определите поведение Value собственность.

  1. Выберите Value узел в дереве.

  2. Выберите вкладку Код, чтобы определить set и get команды для Value собственность.

    • Выбрать Instrument Commands в поле Стиль свойства.

    • Войти Measurement:<ID>:Value? в текстовом поле команды Get.

    • С момента Value свойство доступно только для чтения, оставьте текстовое поле команды Set пустым.

  3. Выберите вкладку «Значения свойств» для определения допустимых значений свойств.

    • Выбрать Double в поле Тип данных.

    • Выбрать None в поле Ограничение.

  4. Перейдите на вкладку «Справка», чтобы завершить определение поведения свойства.

    • Войти 0 в поле Значение по умолчанию.

    • Выбрать always в поле Только чтение.

    • В текстовом поле Справка введите Returns the measurement value.

  5. Нажмите кнопку «Сохранить».

Проверка свойств объекта Group в программном обеспечении MATLAB.  Эта процедура проверяет свойства объекта группы измерений. В этом примере имя драйвера: tektronix_tds210_ex.mdd. Связь с осциллографом Tektronix TDS 210 по основному адресу 2 осуществляется через плату GPIB компании Measurement Computing Corporation с индексом платы 0. В командной строке MATLAB

  1. Создайте объект устройства, obj, с использованием icdevice функция.

    g = gpib('mcc',0,2);
    obj = icdevice('tektronix_tds210_ex.mdd',g);
  2. Извлеките объекты группы измерений, 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
  3. Просмотр текущих значений свойств первого объекта группы. Запрос get на объекте перечисляются все его свойства.

    m(1)
       HwIndex:    HwName:    Type:                Name:  
       1           Meas1      scope-measurement    Measurement1
  4. Запрос get в конкретном свойстве перечисляет его текущее значение.

    m(1).MeasurementType
    ans =
    
        'none'
    m(1).Source
    ans =
    
        'CH1'
    m(1).Units
    ans =
    
        'volts'
    m(1).Value
    ans =
    
         0
  5. Просмотрите допустимые значения свойств объекта группы. Запрос 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 ]
  6. Попробуйте установить для свойства допустимые и недопустимые значения.

    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'.
  7. Просмотрите справку, которую вы написали.

    instrhelp(m(1),'Value')
       VALUE  (double)  (read only)
    
       Returns the measurement value.
  8. Перечислите признаки объекта группы, определенные на вкладках «Значения свойств» и «Справка».

    propinfo(m(1),'Units')
    ans = 
    
      struct with fields:
    
                     Type: 'string'
               Constraint: 'none'
          ConstraintValue: ''
             DefaultValue: 'volts'
                 ReadOnly: 'always'
        InterfaceSpecific: 1
  9. Подключитесь к инструменту для проверки 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';
  10. Отключитесь от прибора и удалите объекты.

    disconnect(obj)
    delete([obj g])