Создайте контрольные переменные, задайте различные условия и переменные контроля над экспортом.
Создайте контрольные переменные в глобальной рабочей области или словаре данных.
FUEL=2; EMIS=1;
Используйте контрольные переменные, чтобы задать условие управления с помощью объекта Simulink.Variant
.
LinearContoller=Simulink.Variant('FUEL==2 && EMIS==1');
Перед каждым моделированием задайте объекты Simulink.Variant
, представляющие различные условия.
Если вы сохранили переменные в глобальной рабочей области, выберите контрольные переменные к экспорту. Щелкните правой кнопкой и нажмите Save As, чтобы задать имя MAT-файла.
Если вы хотите снова использовать общие различные условия через модели, задайте различные условия управления с помощью объектов Simulink.Variant
.
Simulink.Variant
повторного использования возражает, чтобы изменить иерархию модели динамически, чтобы отразить различные условия путем изменения значений контрольных переменных, которые задают выражение условия.
Модель в качестве примера, которую AutoSSVar
показывает использованию Simulink.Variant
, возражает, чтобы задать различные условия управления.
Необходимо использовать объекты Simulink.Variant
задать различные условия управления для рабочих процессов AUTOSAR.
Используйте перечислимые типы, чтобы дать понятные имена целым числам, используемым в качестве различных значений управления.
В Редакторе MATLAB® задайте классы, которые сопоставляют перечисляемые значения с понятными именами.
classdef sldemo_mrv_CONTROLLER_TYPE < Simulink.IntEnumType enumeration NONLINEAR (1) SECOND_ORDER (2) end end
classdef sldemo_mrv_BUILD_TYPE < Simulink.IntEnumType enumeration PROTOTYPE (1) PRODUCTION (2) end end
Задайте объекты Simulink.Variant
для этих классов в глобальной рабочей области.
VE_NONLINEAR_CONTROLLER = Simulink.Variant... ('E_CTRL==sldemo_mrv_CONTROLLER_TYPE.NONLINEAR') VE_SECOND_ORDER_CONTROLLER =Simulink.Variant... ('E_CTRL==sldemo_mrv_CONTROLLER_TYPE.SECOND_ORDER') VE_PROTOTYPE =Simulink.Variant... ('E_CURRENT_BUILD==sldemo_mrv_BUILD_TYPE.PROTOTYPE') VE_PRODUCTION =Simulink.Variant... ('E_CURRENT_BUILD==sldemo_mrv_BUILD_TYPE.PRODUCTION')
Используя перечислимые типы упрощает сгенерированный код, потому что он содержит имена значений, а не целых чисел.