systemcomposer.arch.Function

Функция программной архитектуры

    Описание

    Function объект представляет функцию в модели программной архитектуры.

    Используйте Редактор Функций от панели инструментов на модели программной архитектуры, чтобы отредактировать порядок выполнения симуляции и шаг расчета функций с наследованным шагом расчета (-1) в вашей программной архитектуре.

    Создание

    Получите функции в модели программной архитектуры.

    model = systemcomposer.openModel('ThrottleControlComposition');
    sim('ThrottleControlComposition');
    functions = model.Architecture.Functions

    Свойства

    развернуть все

    Модель Architecture, где элемент принадлежит в виде systemcomposer.arch.Model объект.

    Порядок выполнения функций в виде вектора-строки из числовых значений.

    Пример: [model.Architecture.Functions.ExecutionOrder]

    Типы данных: uint64

    Имя функции в виде вектора символов.

    Типы данных: char

    Компонент, где функция задана в виде systemcomposer.arch.Component объект.

    Родительская архитектура элемента, где функция задана в виде systemcomposer.arch.Architecture объект.

    Период функции в виде числового значения, конвертируемого к строке или строке допустимого MATLAB® переменные. Period свойство апериодических функций доступно для редактирования. Редактирование Period свойство периодической функции приведет к ошибке.

    Универсальный уникальный идентификатор для функции в виде вектора символов.

    Пример: '91d5de2c-b14c-4c76-a5d6-5dd0037c52df'

    Типы данных: char

    Уникальный внешний идентификатор для функции в виде вектора символов. Внешний ID сохраняется по продолжительности жизни функции и посредством всех операций, которые сохраняют UUID.

    Типы данных: char

    Функции объекта

    increaseExecutionOrderИзмените функциональный порядок выполнения в позже
    decreaseExecutionOrderИзмените функциональный порядок выполнения в ранее

    Примеры

    свернуть все

    Этот пример показывает программную архитектуру системы управления положения дросселя и как запланировать порядок выполнения корневых функций уровня.

    model = systemcomposer.openModel('ThrottleControlComposition');

    Симулируйте модель, чтобы заполнить его с функциями.

    sim('ThrottleControlComposition');

    Просмотрите имена функций, упорядоченные порядком выполнения.

    functions = {model.Architecture.Functions.Name}'
    functions = 6x1 cell
        {'Actuator_output_5ms'   }
        {'Controller_run_5ms'    }
        {'TPS_Primary_read_5ms'  }
        {'TPS_Secondary_read_5ms'}
        {'TP_Monitor_D1'         }
        {'APP_Sensor_read_10ms'  }
    
    

    Уменьшите порядок выполнения третьей функции.

    decreaseExecutionOrder(model.Architecture.Functions(3))

    Просмотрите имена функций, упорядоченные порядком выполнения.

    functions = {model.Architecture.Functions.Name}'
    functions = 6x1 cell
        {'Actuator_output_5ms'   }
        {'TPS_Primary_read_5ms'  }
        {'Controller_run_5ms'    }
        {'TPS_Secondary_read_5ms'}
        {'TP_Monitor_D1'         }
        {'APP_Sensor_read_10ms'  }
    
    

    Третья функция теперь перемещена вверх в порядке выполнения, выполнившись ранее.

    Увеличьте порядок выполнения второй функции.

    increaseExecutionOrder(model.Architecture.Functions(2))

    Просмотрите имена функций, упорядоченные порядком выполнения.

    functions = {model.Architecture.Functions.Name}'
    functions = 6x1 cell
        {'Actuator_output_5ms'   }
        {'Controller_run_5ms'    }
        {'TPS_Primary_read_5ms'  }
        {'TPS_Secondary_read_5ms'}
        {'TP_Monitor_D1'         }
        {'APP_Sensor_read_10ms'  }
    
    

    Вторая функция теперь спущена в порядке выполнения, выполнившись позже.

    Больше о

    развернуть все

    Введенный в R2021b
    Для просмотра документации необходимо авторизоваться на сайте