exponenta event banner

Программно создать элементы управления исполнениями

Создание и экспорт элементов управления исполнениями

Создайте управляющие переменные, определите условия исполнения и экспортируйте управляющие переменные.

  1. Создание управляющих переменных в глобальной рабочей области или словаре данных.

    FUEL=2;
    EMIS=1;
  2. Используйте управляющие переменные для определения управляющего условия с помощью Simulink.Variant объект.

    LinearController=Simulink.Variant('FUEL==2 && EMIS==1');

    Примечание

    Перед каждым моделированием определите Simulink.Variant объекты, представляющие условия исполнения.

  3. Если переменные сохранены в глобальной рабочей области, выберите управляющие переменные для экспорта. Щелкните правой кнопкой мыши и выберите «Сохранить как», чтобы указать имя файла MAT.

Повторное использование условий исполнения

Если необходимо повторно использовать общие условия исполнения в моделях, укажите условия управления исполнением с помощью Simulink.Variant объекты.

Повторное использование Simulink.Variant объекты для динамического изменения иерархии модели для отражения условий исполнения путем изменения значений управляющих переменных, определяющих выражение условия.

Пример модели AutoSSVar показывает использование Simulink.Variant объекты для определения условий управления вариантами.

Примечание

Необходимо использовать Simulink.Variant объекты для определения условий управления исполнениями для рабочих процессов AUTOSAR.

Перечисляемые типы как элементы управления исполнениями

Используйте перечисляемые типы, чтобы дать значимые имена целым числам, используемым в качестве управляющих значений вариантов.

  1. В редакторе 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
    
  2. Определить 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')

    Использование перечисляемых типов упрощает создание кода, поскольку он содержит имена значений, а не целые числа.

Связанные примеры

Подробнее