Преобразуйте конфигурируемую подсистему в различную подсистему

Примечание

Configurable Subsystem будет удален в будущем релизе. Блоки Configurable Subsystem в существующих моделях должны быть преобразованы в блоки Variant Subsystem.

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

  • Можно смешать блоки Model и блоки Subsystem как варианты.

  • Можно задать варианты, которые имеют различные количества портов ввода и вывода.

Выполните эти шаги, чтобы преобразовать блок Configurable Subsystem в блок Variant Subsystem:

  1. Откройте модель, содержащую Конфигурируемый блок Subsystem.

  2. Щелкните правой кнопкой по блоку Configurable Subsystem и по контекстному меню, выберите Subsystem & Model Reference> Convert to> Variant Subsystem.

  3. По умолчанию флажок Copy without creating links to the configurable subsystem library устанавливается. Это создает Варианты, не создавая ссылки на библиотеку.

  4. Нажмите OK. Конфигурируемый блок Subsystem преобразован в блок Variant Subsystem и отображен в новом окне.

    Примечание

    Когда блок Configurable Subsystem преобразован в блок Variant Subsystem, выбор Блока блока Configurable Subsystem изменяется на LabelModeActiveChoice в Различном блоке Subsystem.

  5. Вручную замените блок Configurable Subsystem на конвертированный блок Variant Subsystem в исходной модели.

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

Когда вы загружаете модель, содержащую блоки Configurable Subsystem, предупреждение выведено, который даст вам команду преобразовывать блок Configurable Subsystem в блок Variant Subsystem.

  1. Рассмотрите модель с блоком Configurable Subsystem. Когда вы загружаете эту модель, предупреждение выведено в Diagnostic Viewer.

    Примечание

    Когда вы создаете новый Конфигурируемый блок Subsystem, советник по вопросам обновления, предупреждение отображено, чтобы преобразовать блок Configurable Subsystem в блок Variant Subsystem.

  2. В Diagnostic Viewer нажмите Open в разделе Suggested Actions.

  3. В Советнике по вопросам Обновления выберите Identify configurable subsystem blocks for converting to variant subsystem blocks и затем нажмите Run This Check. Отображен список всех блоков Configurable Subsystem в модели и рекомендуемом действии, которое будет выполняться.

    Примечание

    Чтобы обновить Конфигурируемые экземпляры Подсистемы, созданные Моделью discretizer в модели или уровне подсистемы, выполните Recommended Action. Рекомендуемое действие гарантирует, что информация относительно дискретизации сохраняется.

    Чтобы преобразовать в Различную Подсистему, щелкните правой кнопкой мыши по каждому из Конфигурируемых экземпляров Подсистемы, обеспеченных в списке и selectSubsystem and Model Reference> Convert to> Variant Subsystem.

Кроме того, когда вы симулируете модель, содержащую блоки Configurable Subsystem, Советник по вопросам Обновления, предупреждающий, отображен в редакторе. Демонстрационный снимок экрана как показано ниже.

Изменение активного варианта

Когда блок Configurable Subsystem преобразован в блок Variant Subsystem, блок Block Choice of Configurable Subsystem изменяется на режим Label активный выбор в Различном блоке Subsystem.

Чтобы изменить активный вариант, выполните один из этих шагов:

  • Щелкните правой кнопкой по значку по блоку Variant Subsystem и выберите Block Parameters (Subsystem). В диалоговом окне параметров блоков выберите активный вариант из Label mode active choice выпадающий список.

  • Щелкните правой кнопкой по значку по блоку Variant Subsystem и выберите Label Mode Active Choice.

Примечание

Когда блок Configurable Subsystem с маской преобразован в блок Variant Subsystem, Label mode active choice опция и все другие параметры в диалоговом окне параметров блоков отключены. Чтобы изменить активный вариант, щелкните правой кнопкой по значку по блоку Variant Subsystem и выберите Label Mode Active Choice.

Преобразуйте конфигурируемые блоки Subsystem в различные блоки Subsystem программно

Блоки Configurable Subsystem в модели могут быть преобразованы в блоки Variant Subsystem программно использование convertToVariant метод.

Когда Configurable Subsystem преобразован в блок Variant Subsystem, выбор Блока блока Configurable Subsystem изменяется на LabelModeActiveChoice в блоке Variant Subsystem.

Если выбор Блока блока шаблона Configurable Subsystem соединяется, то блок копируется в график Variant Subsystem, и скопированным блокам сохранят его ссылки. Если выбор Блока блока шаблона Configurable Subsystem не соединяется, то блок копируется в график Variant Subsystem, и блок в библиотеке Configurable Subsystem соединяется с ним.

Выполните эти шаги, чтобы преобразовать блоки Configurable Subsystem в модели с блоками Variant Subsystem:

  1. Откройте модель, содержащую блок Configurable Subsystem.

  2. В командной строке введите find_system команда, чтобы найти весь Configurable Subsystem блокируется в модели:

    find_system(bdroot, 'Regexp', 'on', 'LookUnderMasks', 'on','FollowLinks', 'on', 'Variants', 'AllVariants', 'TemplateBlock', '.')

    Блоки Configurable Subsystem, существующие в модели, перечислены:

    {'mconfigsub/config_sub'}
    {'mconfigsub/nested config'}
  3. Найдите блоки шаблона библиотеки из списка с помощью get_param команда.

    get_param('mconfigsub/nested config','TemplateBlock')
    ans =
        'mconfiglib/nested config'
    
    get_param('mconfigsub/config_sub','TemplateBlock')                                                                               
    ans =
        'mconfiglib/Subsystem/config_sub'
    
  4. Преобразуйте блоки шаблона библиотеки в Различные блоки Subsystem с помощью convertToVariant метод:

    Simulink.VariantManager.convertToVariant('mconfiglib/nested config')
    
    Simulink.VariantManager.convertToVariant('mconfiglib/Subsystem/config_sub')

    Для получения информации об использовании этого метода смотрите convertToVariant.

  5. Сохраните библиотеки. Можно использовать save_system команда, чтобы сохранить библиотеки.

  6. Закройте и откройте модель снова. Блоки Configurable Subsystem в модели будут преобразованы в блоки Variant Subsystem.

Похожие темы