Продвигайте параметр в маску

Блоки и подсистемы могут иметь несколько параметров, сопоставленных с ними. Маски блоков позволяют вам раскрыть один или несколько из этих параметров, скрывая другие от представления. Продвижение конкретных параметров в маскирующий блок упрощает интерфейс и позволяет вам задавать параметры, которые пользователь блока может просматривать и устанавливать.

Можно использовать кнопку Promote в редакторе масок для продвижения любого базового параметра блока в маску блока или в маску подсистемы. Параметры блоков связываются с параметром в маске, что позволяет редактировать значение параметров из диалогового окна маски.

Повысьте параметры из диалогового окна блока в маску:

  • Чтобы настроить диалоговое окно маски путем перемещения необходимых параметров из диалогового окна блока в диалоговое окно маски.

  • Чтобы повторно использовать библиотечный блок в разных образцах модели. Для каждого образца библиотечного блока можно создать диалоговый индивидуума маски, повысив параметры для каждого блока.

Рассмотрим диалоговое окно блока Gain, которое имеет такие параметры, как Gain, Multiplication.

Чтобы открыть только Gain параметр, замаскировать Gain блок и продвигать Gain параметр в диалоговое окно маски.

Точно так же можно замаскировать блок подсистемы и повысить параметры в маску от дочерних блоков блока подсистемы. Если тип данных параметров дочерних блоков подсистемы одинаковый, можно связать один параметр маски с несколькими повышенными параметрами. Например, можно продвигать несколько параметров Gain в подсистеме в одно диалоговое окно маски.

Если параметр имеет тип данных popup или DataType, опции должны также быть одинаковыми для параметров, которые будут продвигаться вместе. Атрибут Evaluate для всех параметров, которые будут продвигаться, должен быть одинаковым.

Для связанного примера см. Раздел «Продвижение параметров маски»

Можно также изменить атрибуты повышенного параметра. Например, вы можете сделать повышенный параметр только для чтения или скрытым. Дополнительные сведения об атрибутах см. в разделе Редактор свойств.

Продвижение базовых параметров в маску блоков

  1. Выберите блок, параметр которого вы хотите продвигать.

  2. На вкладке Block нажмите Create Mask.

  3. В диалоговом окне Mask Editor щелкните вкладку Parameters & Dialog.

  4. На панели Controls нажмите Promote.

  5. На панели Property editor, рядом с Type options, нажмите.

    Используйте диалоговое окно Promoted Parameter Selector, чтобы выбрать параметры, которые вы хотите продвигать.

  6. Чтобы добавить параметр в список Promoted parameters, выберите параметр из таблицы Promotable parameters и нажмите кнопку Add to promoted parameter list.

    Чтобы просмотреть такие свойства параметров, как Type, наведите указатель мыши на имя параметра на панели Promotable parameter.

    Совет

    • Можно использовать список Child blocks или Search поле, чтобы найти базовые параметры блоков для продвижения.

    • Чтобы предотвратить настройку свойства во время симуляции, можно отключить атрибут Tunable при продвижении настраиваемого параметра.

  7. Нажмите OK.

  8. В диалоговом окне Mask Editor отредактируйте имена приглашений для повышенных параметров и нажмите OK. Вы не можете редактировать имена переменных. Атрибуты повышенного параметра можно изменить в разделе редактор. Например, вы можете пометить повышенный параметр как доступный только для чтения, вычисляющий, скрытый и настраиваемый. Для получения дополнительной информации см. редактора свойств».

  9. Нажмите OK. Посмотрите на маску блока. Задать можно только те параметры, которые вы повысили.

    Примечание

    • Можно использовать Promote all для продвижения всех параметров. Promote all доступно для всех маск блоков, кроме масок подсистем.

    • Чтобы удалить повышенный параметр, выберите параметр и нажмите Delete клавишу.

    • Вы не можете просматривать или повышать параметры вложенного маскированного или связанного дочернего блока.

    • Не продвигайте параметры встроенных блоков Simulink, так как эти блоки могут иметь внутренние коллбэки, связанные с ними.

Продвижение базовых параметров в маску подсистемы

  1. Выберите подсистему.

  2. На вкладке Subsystem Block, в группе Mask, нажмите Create Mask.

  3. В диалоговом окне Mask Editor щелкните вкладку Parameters & Dialog.

  4. На панели Controls нажмите Promote.

  5. На панели Property editor, рядом с Type options, нажмите.

  6. В диалоговом окне Promoted Parameter Selector выберите параметры, которые вы хотите продвигать.

  7. Чтобы добавить параметр в список Promoted parameters, выберите параметр из таблицы Promotable parameters и нажмите кнопку Add to promoted parameter list.

    Можно добавить параметры одного и того совпадающего типа данных из различных дочерних блоков в список Promoted parameters. Для примера, Gain параметр из другого дочернего блока может быть добавлен в список Promoted parameters для продвижения в одну Gain параметр на маске.

  8. Нажмите OK.

  9. В диалоговом окне Mask Editor отредактируйте имена приглашений для повышенных параметров и нажмите OK. Вы не можете редактировать имена переменных.

  10. Нажмите OK. Посмотрите на маску блока. Задать можно только те параметры, которые вы повысили.

Неразрешенный повышенный параметр

Когда повышенный параметр отключен от базовых параметров блоков, повышенный параметр неразрешен. Неразрешенные повышенные параметры могут привести к ошибке модели, поскольку повышенный параметр не может найти соответствующие параметры блоков. Повышенные параметры могут стать нерешенными по любой из следующих причин:

  • Базовый блок удаляется.

  • Базовый блок заменяется на другой блок с таким же именем, но не имеет заданного параметра.

  • Базовый блок перемещается внутри другой маски.

Лучшие практики

  • Установите значение повышенного параметра только в диалоговом окне маски, а не в базовом диалоговом окне блока или из командной строки.

  • Повышенные параметры не могут быть повторно повышены до любой другой маски.

  • Не редактируйте атрибут Evaluate повышенного параметра. Это свойство унаследовано от параметров блоков.

  • Если вы продвигаете нетронутый параметр, не редактируйте атрибут Tunable.

  • Параметры маскированного или связанного дочернего блока не могут быть просмотрены или повышены.

  • Коллбэки, сопоставленные с параметрами блоков, продвигаются в маску блока, а не в маску подсистемы. Пользовательские коллбэки последовательно выполняются после выполнения динамического коллбэка.

Повышение параметров блоков в маске

Можно использовать Продвижение параметра для продвижения любого базового параметра блока либо в маску блока, либо в маску подсистемы. Эта модель содержит подсистему, которая имеет 3 блока Gain (Gain1, Gain2 и * Gain3). Переменная K представляет параметр Gain для этих блоков Gain. Можно продвигать только параметр Gain каждого из этих блоков Gain в маску блока как один параметр. Когда вы делаете это, параметр K доступен в маске для редактирования, и его значение будет применено к блокам Gain1, Gain2 и Gain3.

  1. Выберите блок Subsystem.

  2. На вкладке Блока Subsystem, в группе «Маска», нажатии кнопки «Создать маску/редактировать маску».

  3. В диалоговом окне «Редактор маски» перейдите на вкладку «Параметры & диалоговое окно».

  4. На панели «Элементы управления» нажмите «Продвигать».

  5. На панели редактора свойств, поле Опции типа, нажмите

  6. В диалоговом окне «Выбор параметра» выберите «Gain1».

  7. Выберите Gain в таблице Promotable parameters и нажмите кнопку Add to promoted parameter list. Точно так же добавьте параметр Gain для Gain2.

  8. Нажмите кнопку ОК.

  9. В диалоговом окне Редактор отредактируйте имена приглашений для параметра Gain. Здесь используемая подсказка является общим коэффициентом усиления.

  10. Нажмите кнопку ОК, чтобы завершить создание маски подсистемы с продвижением «многие к одному».

  11. Симулируйте модель. Заметьте, что значение 4 передается из маски в базовые блоки Gain1, Gain2 и Gain3. В этом случае на выходе отображается 64.

open_system('promote_block_param_to_mask');

Похожие темы