Задайте типы данных Используя параметр DataTypeStr

Подобно любому параметру маски параметр DataTypeStr может быть добавлен на диалоговом окне маски из Редактора Маски. Добавление параметра DataTypeStr к диалоговому окну маски позволяет конечному пользователю блока задавать приемлемые типы данных для связанного параметра типа Edit. При определении маски можно задать один или несколько типов данных для параметра Edit. Конечный пользователь блока может выбрать из одного из этих типов данных. Определение типа данных для параметра Edit задает правило для входного значения, которое может быть обеспечено через диалоговое окно маски.

Параметр DataTypeStr также позволяет вам задавать минимальное и максимальное значение для параметра Edit. Можно сделать так при помощи Min и параметров маски Max и сопоставляющий эти параметры к параметру DataTypeStr. параметр DataTypeStr может использоваться, чтобы сделать анализ фиксированной точки.

Объединенные типы данных, чтобы отредактировать параметр

  1. Откройте модель, в которой вы хотите замаскировать блок. Например, откройте модель DataTypeStr в Параметрах Маски.

  2. Щелкните правой кнопкой по блоку Subsystem и выберите Mask> Create Mask.

    Примечание

    Если вы редактируете существующую маску, чтобы открыть Редактор Маски, выберите Mask> Edit Mask.

  3. В Редакторе Маски кликните по панели Parameters & Dialog и добавьте Edit, Min, Max, параметры DataTypeStr.

  4. Чтобы задать типы данных для параметра Edit, выберите DataTypeStr в разделе Dialog box Редактора Маски и нажмите кнопку рядом с Type options в панели Property editor. Редактор Type options имеет пользовательский интерфейс с вкладками, содержащий эти вкладки для правил типа данных.

    1. Inherit rules - Задайте правила наследования для определения типов данных. Наследовать правила сгруппированы под тремя категориями: Общие правила Simulink, Пользовательские правила и Усовершенствованные правила Simulink. По умолчанию Общие правила Simulink и Усовершенствованные правила Simulink доступны под вкладкой Inherit rules. Усовершенствованный раздел правил позволяет вам наследовать правила от данных о точке останова, постоянного значения, усиления, табличных данных, логических данных, аккумулятора, продукт вывод и Simulink. Это также позволяет вам иметь тот же размер слова, как введено и иметь совпадающие типы данных для всех портов. Пользовательские правила перечислены под вкладкой Inherit rules, только если существуют любые пользовательские правила наследования, указанные на пути поиска файлов MATLAB. Поскольку определения некоторых Наследовали правила, см. Правила Наследования Типа данных.

    2. Built-in types: Задайте один или несколько встроенных типов данных Simulink®, таких как double или single. Для получения дополнительной информации смотрите Типы данных, Поддержанные Simulink.

    3. Fixed-point: Задайте масштабирование и подписанные режимы для типа данных с фиксированной точкой. Для получения дополнительной информации смотрите Определение Типа данных с фиксированной точкой.

    4. User-defined: Задайте объект шины, или перечислил (перечислимый) тип данных или обоих. Для получения дополнительной информации смотрите, Задают Перечислимый Тип данных и Задают Тип данных Object Шины.

    5. Associations: Сопоставьте параметр типа данных с параметром Edit. Можно также сопоставить Min и параметры Max к параметру Edit.

  5. Чтобы сохранить выбор правил, нажмите OK в Type Options Editor.

  6. Чтобы сохранить изменения и выйти из Редактора Маски, нажмите OK.

Просмотрите DataTypeStr программно

Можно использовать команду Simulink.Mask.get в командном окне MATLAB®, чтобы просмотреть значения типа данных, заданные для маски блока. MATLAB использует предопределенную номенклатуру, чтобы представлять информацию о типе данных в командной строке.

Этот пример показывает, как просмотреть Параметр DataTypeStr для модели Mask Parameters в качестве примера программно.

maskobj = Simulink.Mask.get(gcb)
maskobj = 

Mask with properties:

                  Type: ''
                  Description: ''
                         Help: ''
               Initialization: ''
               SelfModifiable: 'off'
                      Display: ''
                    IconFrame: 'on'
                   IconOpaque: 'opaque'
         RunInitForIconRedraw: 'off'
                   IconRotate: 'none'
                   PortRotate: 'default'
                    IconUnits: 'autoscale'
                   Parameters: [1×4 Simulink.MaskParameter]
                     BaseMask: [0×0 Simulink.Mask]
         ParameterConstraints: [0×0 Simulink.Mask.Constraints]
         BlockConstraintRules: [0×0 Simulink.Mask.BlockConstraints]
    ConstraintParamAssociator: [0×0 Simulink.Mask.ConstraintParamAssociator]

maskobj.getParameter('DataTypeStrParameter')
ans = 

MaskParameter with properties:

Type: 'unidt({a=4|2|3|1}{i=Inherit: auto|Inherit: Inherit via internal rule}{b=double|single})'
    TypeOptions: {0×1 cell}
           Name: 'DataTypeStrParameter'
         Prompt: 'Output data type'
          Value: 'Inherit: auto'
       Evaluate: 'on'
        Tunable: 'off'
      NeverSave: 'off'
         Hidden: 'off'
       ReadOnly: 'off'
        Enabled: 'on'
        Visible: 'on'
    ShowTooltip: 'on'
       Callback: ''
          Alias: ''

Результат отображает свойства, которые заданы для параметра DataTypeStr. Этот пример задает номенклатуру для заданных опций типа:

Type: 'unidt({a=4|2|3|1}{i=Inherit: auto|Inherit: Inherit via internal rule}{b=double|single})'

Здесь, Type отображает значения, заданные для параметра DataTypeStr, и имеет эти определения:

  • a задает Associations, и его соответствующими значениями является 4, 2, 3, 1. Эти значения являются индексами для параметра и представляют DataTypeStr, Min, Max и параметры Edit последовательно.

  • i задает Inherit rules и его соответствующее значение как Inherit: Same as first input.

  • b задает Built-in types и его соответствующее значение как double и single.

Смотрите также