Сконфигурируйте модель для генерации кода.
Примените инструменты проверки модели, чтобы обнаружить условия и параметры конфигурации, приводящие к генерации неточного или неэффективного кода.
Сгенерируйте код из модели.
Найдите и идентифицируйте файлы сгенерированного кода.
Рассмотрите сгенерированный код.
Способность открыться и изменить модели Simulink® и подсистемы.
Способность установить параметры конфигурации модели.
Способность использовать Model Advisor Simulink.
Способность считать код С.
Установленный, поддерживаемый компилятор C.
rtwdemo_throttlecntrl
файл модели
Параметры конфигурации модели определяют метод для генерации кода и получившегося формата.
Открытый rtwdemo_throttlecntrl
и сохраните копию как throttlecntrl
в перезаписываемом месте на вашем пути MATLAB. Затем откройте приложение Simulink Coder.
Откройте диалоговое окно Configuration Parameters, панель Solver. Чтобы сгенерировать код для модели, необходимо сконфигурировать модель, чтобы использовать решатель фиксированного шага. Следующая таблица показывает настройку решателя для этого примера.
Параметр | Установка | Эффект на сгенерированном коде |
---|---|---|
Type | Fixed-step | Обеспечивает постоянный (фиксированный) размер шага, который требуется для генерации кода |
Solver | discrete (no continuous states) | Применяет метод интегрирования фиксированного шага для вычисления производной состояния модели |
Fixed-step size | .001
| Устанавливает базовую ставку; должно быть наименьшее общее кратное уровней в системе |
Установите параметр конфигурации модели System target file на grt.tlc
.
GRT (Типовая Цель В реальном времени) настройка требует решателя фиксированного шага. Однако rsim.tlc
системный конечный файл поддерживает переменную генерацию кода шага.
Системный конечный файл задает среду для генерации и строительные нормы и правила для выполнения на определенном оборудовании или платформе операционных систем. Например, одно свойство системного конечного файла является значением для CodeFormat
Переменная TLC. Настройка GRT требует фиксированного решателя шага, и rsim.tlc поддерживает переменную генерацию кода шага.
Установите параметр конфигурации модели Include directories можно следующим образом:
"$matlabroot$\toolbox\rtw\rtwdemos\EmbeddedCoderOverview\"
Эта папка включает файлы, которые требуются, чтобы создавать исполняемый файл для модели.
Закройте диалоговое окно Model Configuration Parameters.
Можно сохранить настройки параметров конфигурации модели как функция MATLAB® при помощи getActiveConfigSet
функция. В Окне Команды MATLAB, введите:
thcntrlAcs = getActiveConfigSet('throttlecntrl'); thcntrlAcs.saveAs('throttlecntrlModelConfig');
Можно затем использовать получившуюся функцию (например, throttlecntrlModelConfig
) к:
Заархивируйте настройку модели.
Сравните различные настройки модели при помощи инструментов дифференцирования.
Установите настройку других моделей.
Например, можно установить настройку модели myModel
совпадать с настройкой моделей контроллеров дросселя путем открытия myModel
и ввод:
myModelAcs = throttlecntrlModelConfig; attachConfigSet('myModel', myModelAcs, true); setActiveConfigSet('myModel', myModelAcs.Name);
Для получения дополнительной информации смотрите, Сохраняют Конфигурацию модели (Simulink) и Загрузка Сохраненная Конфигурация модели (Simulink).
Прежде, чем сгенерировать код для модели, используйте Model Advisor Simulink, чтобы проверять модель на условия и параметры конфигурации. Эта проверка находит проблемы, которые могут привести к неточному или неэффективному коду.
Открытая модель throttlecntrl
. Затем откройте приложение Simulink Coder.
Запустите Model Advisor. Во вкладке C Code нажмите C/C++ Code Advisor. Диалоговое окно открывает показ системной иерархии модели.
Нажмите rtwdemo_throttlecntrl
и затем нажмите OK. Окно Model Advisor открывается.
На левой панели выберите Run this check. Отчет показывает Run Summary, что флаги проверяют предупреждения.
Рассмотрите отчет. Предупреждения подсвечивают проблемы. На данном этапе можно проигнорировать их. Для получения дополнительной информации об отчетах, вид на море Отчеты Проверки Model Advisor (Simulink).
Открытый throttlecntrl
. Затем откройте приложение Simulink Coder.
Выберите параметр конфигурации модели Generate code only.
Выберите параметр конфигурации модели Create code generation report и нажмите Apply.
Сгенерируйте код.
Сообщения появляются в Средстве просмотра Диагностики. Генератор кода производит стандарт C и заголовочные файлы и отчет генерации кода HTML. Генератор кода помещает файлы в папку сборки, подпапку под названием throttlecntrl_grt_rtw
под вашей текущей рабочей папкой.
В отчете генерации кода щелкните по ссылке для сгенерированного файла модели C и рассмотрите сгенерированный код. Ищите эти элементы в отчете:
Идентификация, версия, метка времени и комментарии настройки.
Ссылки, чтобы помочь вам перейти в и между файлами
Определения данных
Код планировщика
Код контроллера
Функции инициализации и завершения модели
Вызовите интерфейс для системного конечного файла GRT — выход, обновление, инициализация, запуститесь, и оконечный
Сохраните и закройте модель throttlecntrl
.
Рассмотрите исследование следующих файлов. В генерации кода сообщают о панели Contents, щелкают по ссылкам.
Файл | Описание |
---|---|
throttlecntrl.c | C файл, который содержит планировщик, контроллер, инициализацию и интерфейсный код |
throttlecntrl_data.c | C файл, который присваивает значения сгенерированным структурам данных |
throttlecntrl.h | Заголовочный файл, который задает структуры данных |
throttlecntrl_private.h | Заголовочный файл, который задает данные, используемые только сгенерированным кодом |
throttlecntrl_types.h | Заголовочный файл, который задает структуру данных модели |
Для получения дополнительной информации смотрите, Управляют Зависимостями от Файла Процесса сборки.
На данном этапе рассмотрите данные о регистрации к MAT-файлу. Для примера см. Данные логов для Анализа.
Открытый throttlecntrl
. Затем откройте приложение Simulink Coder.
Параметр конфигурации модели Clear Generate code only и нажимает Apply.
Создайте модель. См. сообщения в Средстве просмотра Диагностики. Генератор кода использует make-файл шаблона, сопоставленный с вашим системным выбором конечного файла, чтобы создать исполняемый файл. Можно запустить эту программу на рабочей станции, независимой от внешней синхронизации и событий.
Проверяйте свою рабочую папку на файл throttlecntrl.exe
.
Запустите исполняемый файл. В Командном окне введите !throttlecntrl
. !
символ передает команду, которая следует за ним к операционной системе, которая запускает автономную программу.
Программа продолжает одну линию выхода в Командном окне:
** starting the model **
На данном этапе рассмотрите данные о регистрации к MAT-файлу. Для примера см. Данные логов для Анализа.
Для платформ UNIX® запустите исполняемую программу в Командном окне с синтаксисом !./
executable_name
. Если предпочтено, запуск исполняемая программа от ОС окружают с синтаксисом ./
executable_name
. Для получения дополнительной информации смотрите Запуск Внешние Команды, Скрипты и Программы (MATLAB).
Чтобы сгенерировать код, измените настройку модели, чтобы указать, что решатель фиксированного шага затем выбирает системный конечный файл. Используя grt.tlc
файл требует решателя фиксированного шага. Если модель содержит непрерывные блоки времени, можно использовать решатель переменного шага с rsim.tlc
системный конечный файл.
После отладки модели считайте конфигурирование модели со встраиванием параметра включенным.
Используйте getActiveConfigSet
функционируйте, чтобы сохранить настройку модели для будущего использования или применить его к другой модели.
Прежде, чем сгенерировать код, рассмотрите проверку модели с Model Advisor.
Генератор кода помещает сгенерированные файлы в подпапку (model_grt_rtw
) из вашей рабочей папки.