Чтобы сконфигурировать модель для генерации кода, следуйте шагам в Select a Solver That Support Code Generation и Select a System Target File from STF Browser. Когда вы выбираете системный целевой файл, другие параметры конфигурации модели изменяются, чтобы служить требованиям окружения выполнения. Для примера:
Параметры интерфейса кода
Создайте параметры процесса, такие как набор инструментальных средств или шаблон make-файла
Целевые аппаратные параметры, такие как размер слова и упорядоченное расположение байтов
После выбора системного целевого файла можно изменить настройки параметров конфигурации модели.
Вы можете переключаться между различными системными целевыми файлами в одном рабочем процессе в различных целях генерации кода (для примера, быстрого прототипирования по сравнению с развертыванием производственного кода). Чтобы переключиться, настройте различные конфигурации модели для одной и той же модели и переключите активную конфигурацию модели для текущей операции. Дополнительные сведения о том, как настроить конфигурации модели и изменить активная конфигурация модели, см. в разделе Управление конфигурациях модели для модели.
Чтобы создать модель, строение модели должна задать решатель, который совместим с генерацией кода для системного целевого файла. Немногие системные целевые файлы поддерживают генерацию кода с помощью решателей с переменным шагом или для моделей с ненулевым временем запуска.
Для системных целевых файлов GRT, ERT и ERT установите параметр конфигурации Type равным Fixed-step
.
Для системных целевых файлов Rapid Simulation (Rsim) или S-Function (rtwsfcn) установите параметр конфигурации Type равным Fixed-step
или Variable-step
.
Для получения дополнительной информации о требовании, что вы используете решатель с фиксированным шагом для генерации кода для целевого файла системы в реальном времени, смотрите Основанное на времени Планирование и Генерация кода.
Целевой файл системы Rapid Simulation (RSim) поддерживает ненулевое время запуска, когда параметру конфигурации Solver selection задано значение Use Simulink solver module
. Другие системные целевые файлы не поддерживают ненулевое время запуска - генератор кода не производит код, и процесс сборки вызывает ошибку.
После выбора решателя (см. «Выбор решателя, который поддерживает генерацию кода») задайте значение для System target file параметра конфигурации. Введите имя вашего системного целевого файла непосредственно в поле или используйте System Target File Browser, чтобы выбрать файл.
Чтобы использовать браузер системных целевых файлов:
В диалоговом окне параметров конфигурации, рядом с полем System target file, нажмите кнопку Browse. Браузер отображает список доступных системных целевых файлов, включая индивидуальные настройки.
Из списка выберите свой файл, например, системный целевой файл GRT (grt.tlc
). Фон окна списка становится желтым, чтобы указать, что выбор не применяется. Щелкните Apply или OK.
Браузер системных целевых файлов
Можно также программно выбрать системный целевой файл из MATLAB® код, как описано в разделе «Программный выбор системного целевого файла».
После выбора системного целевого файла можно изменить настройки параметров конфигурации модели. Выбор системного целевого файла для вашей модели выбирает или подход набора инструментальных средств или подход make-файла шаблона для управления процессом сборки. Дополнительные сведения об этих подходах см. в разделах Выбор подхода к сборке и Настройка процесса сборки.
Если вы хотите переключиться между различными системными целевыми файлами в одном рабочем процессе для различных целей генерации кода, настройте различные конфигурации модели для одной и той же модели. Переключите активную конфигурацию модели для текущей операции. Этот подход полезен для переключения между быстрым прототипированием и развертыванием производственного кода. Дополнительные сведения о том, как настроить конфигурации модели и изменить активная конфигурация модели, см. в разделе Управление конфигурациях модели для модели.
Simulink® модели хранят параметры всей модели и данные системного целевого файла в конфигурациях модели. Каждая конфигурация модели содержит компонент, который определяет структуру определенного системного целевого файла и текущие значения соответствующих опций. Simulink загружает часть этой информации из заданного системного целевого файла. Можно сконфигурировать модели для генерации альтернативного кода путем копирования и изменения старых или добавления новых конфигураций модели и просмотра, чтобы выбрать новый системный целевой файл. Затем можно в интерактивном режиме выбрать активное строение из этих наборов (только одна конфигурация модели может быть активным в заданное время).
Скрипты, которые автоматизируют выбор системного целевого файла, должны эмулировать этот процесс.
Для программирования выбора целевого файла системы:
Получите указатель на активную конфигурацию модели с вызовом getActiveConfigSet
функция.
Задайте переменные вектора символов, которые соответствуют необходимому системному целевому файлу, набору инструментов или шаблону make-файла и/или make
настройки команд. Для примера для системного целевого файла ERT можно задать переменные для векторов символов 'ert.tlc'
, 'ert_default_tmf'
, и 'make_rtw'
.
Выберите системный целевой файл с вызовом switchTarget
функция. В вызове функции укажите указатель для активной конфигурации модели и системного целевого файла.
Установите TemplateMakefile
и MakeCommand
параметры конфигурации для соответствующих переменных, созданных на шаге 2.
Для примера:
cs = getActiveConfigSet(model); stf = 'ert.tlc'; tmf = 'ert_default_tmf'; mc = 'make_rtw'; switchTarget(cs,stf,[]); set_param(cs,'TemplateMakefile',tmf); set_param(cs,'MakeCommand',mc);
Для получения дополнительной информации о программном выборе системных целевых файлов см. switchTarget
.
Можно создать собственные системные целевые файлы, которые взаимодействуют с внешним кодом или операционными окружениями.
Дополнительные сведения о том, как сделать пользовательские системные целевые файлы отображаются в Диспетчере системных целевых файлов и отображают соответствующие элементы управления, см. в разделе Пользовательские целевые объекты и разделах, на которые они ссылаются.
getActiveConfigSet
| switchTarget