В этом примере показано, как создать программную архитектуру системы управления положением дросселя в 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.