Различной модели можно было сопоставить множество различных настроек с ним. Каждая настройка представляет комбинацию различных значений управления, которая активирует определенный вариант. Можно сгенерировать уменьшаемую версию различной модели, которая представляет одну различную настройку с помощью Различного Редуктора. Лицензия Simulink® Design Verifier™ требуется, чтобы уменьшать вашу модель. В этом примере показано, как уменьшать модель программно и использование Различного менеджера.
Откройте модель slexVariantReducer
. Модель содержит Различный Исходный блок, блок Variant Sink и Различный блок Subsystem с этими вариантами:
Различный источник: V
== 1 и V
==2
Различный приемник: W
== 1, W
== 2, и W
==3
Различная подсистема: V
== 1 и V
==2
На вкладке Modeling панели инструментов Simulink® выберите Model Explorer> Model Properties> Callbacks. PostLoadfn
функция обратного вызова модели задает различные контрольные переменные V
и W
и загружает slexVariantReducer_config.mat
файл.
Модель имеет две предопределенных различных настройки, названные config1
V
== 1 && W
== 2) и config2
V
== 2 && W
== 2). Эти настройки сохранены в различном объекте данных конфигурации, slexVariantReducer_config
, который в свою очередь сохранен в slexVariantReducer_config.mat
файл.
open_system('slexVariantReducer');
Чтобы открыть Различного менеджера, щелкните правой кнопкой по различному значку по любому из различных блоков и выберите Open in Variant Manager. Различный менеджер показывает предопределенные различные настройки.
Нажмите Reduce Model. Диалоговое окно Variant Reducer открывается. Выберите опцию настроек варианта Specify и выберите настройку, которая будет сохранена в упрощенной модели от Именованных Настроек.
Нажмите Reduce. Упрощенная модель для необходимой настройки создается. Если модель содержит разрешенные ссылки библиотеки или модели, на которые ссылаются, соответствующий родительский элемент уменьшается для заданной настройки и ссылается в модели. Упрощенная модель, уменьшаемая модель, на которую ссылаются и уменьшаемая библиотека получают их имена из соответствующей модели, модели, на которую ссылаются или библиотеки с _r (суффикс модели) добавленный к нему.
Чтобы уменьшать модель программно, выполните эти шаги в Командном окне MATLAB®:
% %Generate the reduced model for the configuration config1 to the default % %output folder, reducedModel. Simulink.VariantManager.reduceModel... ('slexVariantReducer','NamedConfigurations', {'config1'}); cd ./reducedModel; open_system('slexVariantReducer_r');
Successfully created reduced model '/tmp/BR2021bd_1724986_151598/publish_examples1/tpf3391e17/ex21847392/reducedModel/slexVariantReducer_r.slx'.