Моделирование программной архитектуры системы управления положением дросселя

В этом примере показано, как создать программную архитектуру системы управления положением дросселя в System Composer ®, запланировать и симулировать порядок выполнения функций из его компонентов и сгенерировать код.

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

В этом примере программная архитектура системы управления положением дросселя моделируется в System Composer с использованием шести компонентов. Компонент управления положением дросселя считывает положение дросселя и педали и выводит новое положение дросселя. Два компонента датчика положения дросселя обеспечивают текущее положение дросселя, а компонент датчика положения педали обеспечивает приложенное положение педали. Эти сигналы используются компонентом контроллера, чтобы определить новое положение дросселя.

model = systemcomposer.openModel('ThrottleControlComposition');

Симулируйте модель на уровне архитектуры

Симулируйте модель программной архитектуры.

sim('ThrottleControlComposition');

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

Симулируйте Модель в Уровень системы

Чтобы симулировать систему управления дросселем с корпусом дросселя, используйте блок Model, чтобы ссылаться на модель программной архитектуры в системной модели. The ThrottleControlSystem модель также содержит блок Stateflow ® Chart для моделирования более комплексного планирования функций программной архитектуры.

open_system('ThrottleControlSystem');

Чтобы симулировать системную модель, содержащую объект и планировщик Stateflow, используйте команду:

sim('ThrottleControlSystem');

Генерация кода

После симуляции можно сгенерировать код, чтобы развернуть систему управления на целевом компьютере. Для генерации кода требуется лицензия Embedded Coder ®. Откройте ThrottleControlComposition моделировать и выполнять slbuild команда, или нажмите Ctrl + B, чтобы создать модель и сгенерировать код.

slbuild('ThrottleControlComposition');

Сгенерированный код содержит функцию точки входа для каждой функции компонентов в программной архитектуре. Для получения дополнительной информации о генерации кода для моделей экспорта функций, смотрите Сгенерировать код для модели экспорта функций.

Копирайт 2020 The MathWorks, Inc.