Начало работы с Embedded Coder

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

О модели

Эта модель представляет основной автопилот продольной оси с двумя рабочими режимами: прокрутитесь отношение содержат, и заголовок содержат. Логика режима для этих режимов является внешней к этой модели. Архитектура модели представляет заголовок, содержат режим и основную функцию отношения списка как атомарные подсистемы.

Функция управления ориентацией списком является ПИД-регулятором, который использует отношение списка и обратную связь уровня списка, чтобы произвести команду элерона. Вход контроллеру является или основной ссылкой угла вращения или командой списка, чтобы отследить желаемый заголовок. Модель следующие:

open_system('rtwdemo_roll');

Подсистема RollAngleReference

Основное вычисление ссылки угла вращения реализовано как подсистема RollAngleReference. Embedded Coder® встраивает это вычисление непосредственно в основную функцию для rtwdemo_roll.

open_system('rtwdemo_roll/RollAngleReference');

Подсистема HeadingMode

Подсистема HeadingMode вычисляет команду списка, чтобы отследить желаемый заголовок.

close_system('rtwdemo_roll/RollAngleReference');
open_system('rtwdemo_heading');

Подсистема BasicRollMode

Подсистема BasicRollMode вычисляет функцию управления ориентацией списком (ПИД).

close_system('rtwdemo_heading');
open_system('rtwdemo_attitude');

Сгенерируйте код для модели

Модель предварительно сконфигурирована, чтобы сгенерировать код с помощью Embedded Coder. Чтобы сгенерировать код с помощью Simulink Coder только, реконфигурируйте модель, или в командной строке вводят rtwconfiguredemo('rtwdemo_roll','GRT')

В вашей системе временная папка создайте временную папку для процесса сборки.

currentDir = pwd;
[~,cgDir] = rtwdemodir();

Сгенерируйте код.

rtwbuild('rtwdemo_roll');
### Starting build procedure for: rtwdemo_roll
### Successful completion of build procedure for: rtwdemo_roll

Можно просмотреть целый сгенерированный код в подробном отчете HTML с двусторонней отслеживаемостью между моделью и кодом.

web(fullfile(cgDir,'rtwdemo_roll_ert_rtw','html','rtwdemo_roll_codegen_rpt.html'))

Закройте модели и возвратитесь к предыдущей рабочей папке.

close_system('rtwdemo_roll',0)
close_system('rtwdemo_attitude',0)
close_system('rtwdemo_heading',0)

cd(currentDir);
rtwdemoclean;

Embedded Coder примеры Запуска

Для получения дополнительной информации о генерации кода с Embedded Coder см. Примеры в Начало работы с документацией Embedded Coder.