slbuild

Создайте независимый исполняемый файл или цель модели-ссылки для модели

Описание

пример

slbuild(model) создает автономный двоичный исполняемый файл Simulink® Coder™ для заданной модели с помощью параметров конфигурации текущей модели. Это также создает цели кодера модели - ссылки для моделей, на которые ссылаются.

Если заданная модель не загружается, slbuild загружает модель прежде, чем инициировать процесс сборки.

Если model аргумент является массивом ячеек топ-моделей, slbuild создает исполняемый файл для каждой модели.

Вы не можете использовать slbuild создавать подсистемы.

пример

slbuild(model,buildSpec) создает файлы, которые соответствуют заданному действию генерации кода.

пример

slbuild(___,Name,Value) файлы сборок на основе одного или нескольких аргументов пары "имя-значение".

Примеры

свернуть все

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

slbuild('rtwdemo_rtwintro')
% Same operation as ...
% slbuild('rtwdemo_rtwintro','StandaloneCoderTarget') 

Для цели типового в реальном времени (GRT) кодер генерирует эти файлы кода и размещает их в папки rtwdemo_rtwintro_grt_rtw и slprj/grt/_sharedutils.

Файлы моделиСовместно используемые файлыИнтерфейсные файлыДругие файлы

rtwdemo_rtwintro.c

rtwdemo_rtwintro.h

rtwdemo_rtwintro_private.h

rtwdemo_rtwintrotypes.h

rtwtypes.h

multiword_types.h

builtin_typeid_types.h

rtmodel.h

'none'

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

Установка параметраРезультаты
Code Generation> панель Generate code only очищенИсполняемый образ rtwdemo_rtwintro.exe
Code Generation> Report> Create code generation report выбранОтчет появляется, предоставляя информацию и ссылки на файлы сгенерированного кода, подсистему и отчеты интерфейса кода, функции точки входа, импорт, выходные порты, интерфейсные параметры и хранилища данных

В этом примере показано, как использовать slbuild сгенерировать исполняемый код для двух моделей, sldemo_mdlref_depgraph и rtwdemo_counter. sldemo_mdlref_depgraph топ-модель, это ссылается на модели. Пример также показывает, как создать модели, на которые ссылаются, параллельно.

Создайте локальную папку.

if exist(fullfile('.','myTempFolder'),'dir')
    rmdir('myTempFolder','s')
end
mkdir myTempFolder
cd myTempFolder

Скопируйте sldemo_mdlref_depgraph, какие модели ссылок, к локальной папке.

src_dir = fullfile(matlabroot, ...
                   'toolbox', ...
                   'simulink', ...
                   'simdemos', ...
                   'simfeatures', ...
                   'modelreference');
copyfile(fullfile(src_dir, ...
                  'sldemo_mdlref_depgraph.slx'), ...
                  '.');

Включите параллельное создание моделей, на которые ссылается sldemo_mdlref_depgraph.

load_system('sldemo_mdlref_depgraph')
set_param('sldemo_mdlref_depgraph', ...
'EnableParallelModelReferenceBuilds', 'on');

Инициализируйте рабочих MATLAB® для параллельного создания моделей, на которые ссылаются.

set_param('sldemo_mdlref_depgraph', ...
          'ParallelModelReferenceMATLABWorkerInit', ...
          'Copy Base Workspace');

Создайте модели.

slbuild({'sldemo_mdlref_depgraph', 'rtwdemo_counter'})

В myTempFolder, процесс сборки создает файлы независимого исполняемого файла, sldemo_mdlref_depgraph.exe и rtwdemo_counter.exe.

Для каждой модели, в Командном окне, процесс сборки отображает сводные данные сборки.

Уберите область сборки модели достаточно, чтобы инициировать регенерацию кода топ-модели в следующей сборке.

slbuild('rtwdemo_rtwintro','CleanTopModel')

Сгенерируйте код и создайте исполняемый образ для rtwdemo_mdlreftop, который обращается к модели rtwdemo_mdlrefbot, независимо от контрольных сумм модели и установок параметров.

slbuild('rtwdemo_mdlreftop','StandaloneCoderTarget', ...
    'ForceTopModelBuild',true)

Входные параметры

свернуть все

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

Если вы задаете многоуровневые модели через массив ячеек указателей или векторов символов, процесс сборки применяет buildSpec к каждой модели в массиве ячеек.

Пример: gcs

buildSpec направляет генератор кода, чтобы выполнить выбранное действие сборки для модели и процесс сборки:

  • Соблюдает установку параметра Rebuild на панели Model Referencing диалогового окна Configuration Parameters.

  • Требует лицензии Simulink Coder, только если вы создаете цель Simulink Coder модели - ссылки, не, если вы создаете цель симуляции модели - ссылки только.

buildSpec аргумент должен быть одним из следующих.

buildSpecСоздайте действие

'StandaloneCoderTarget'

Создает автономный двоичный исполняемый файл Simulink Coder для заданной модели, с помощью параметров конфигурации текущей модели. Это также создает цели кодера модели - ссылки для моделей, на которые ссылаются.

Если заданная модель не загружается, slbuild загрузки это прежде, чем инициировать процесс сборки.

'ModelReferenceSimTarget'

Создает цель симуляции модели - ссылки (не требует лицензии Simulink Coder).

'ModelReferenceCoderTarget'

Создает цель Simulink Coder модели - ссылки и соответствующую цель симуляции модели - ссылки.

'ModelReferenceCoderTargetOnly'

Сборки только цель Simulink Coder модели - ссылки.

'CleanTopModel'

Чистит область сборки модели достаточно, чтобы инициировать регенерацию кода топ-модели в следующей сборке.

Пример: 'ModelReferenceSimTarget'

Аргументы в виде пар имя-значение

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: 'UpdateThisModelReferenceTarget','Force'

Условное выражение восстанавливает опцию для сборки модели - ссылки в виде разделенной запятой пары, состоящей из 'UpdateThisModelReferenceTarget' и 'Force', 'IfOutOfDateOrStructuralChange', или 'IfOutOfDate'.

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

Значение 'UpdateThisModelReferenceTarget'Эквивалентный восстанавливают опциюВосстановите действие

'Force'

Always

Безусловно восстанавливает модель.

'IfOutOfDateOrStructuralChange'

If any changes detected

Восстанавливает модель, если процесс сборки обнаруживает какие-либо изменения.

'IfOutOfDate'

If any changes in known dependencies detected

Восстанавливает модель, если процесс сборки обнаруживает какие-либо изменения в известных зависимостях этой модели.

Для получения дополнительной информации о различном восстанавливают опции, видят, Восстанавливают.

Пример: 'UpdateThisModelReferenceTarget','Force'

Зависимости

Чтобы использовать эту опцию, установите buildSpec к 'ModelReferenceSimTarget', 'ModelReferenceCoderTarget', или 'ModelReferenceCoderTargetOnly'.

Типы данных: char | string

Опция, чтобы обеспечить топ-модель иерархии модели, чтобы создать в виде разделенной запятой пары, состоящей из 'ForceTopModelBuild' и true или false.

Устанавливание значения к true направляет генератор кода, чтобы сгенерировать код и создать исполняемый образ для топ-модели иерархии модели, независимо от контрольных сумм модели и установок параметров.

Пример: 'ForceTopModelBuild',true

Зависимости

Чтобы использовать эту опцию, установите buildSpec к 'StandaloneCoderTarget'.

Типы данных: логический

Опция, чтобы отобразить информацию о сборке в виде разделенной запятой пары, состоящей из 'OpenBuildStatusAutomatically' и true или false.

Чтобы отобразить информацию о сборке в окне Build Status, задайте true. Значением по умолчанию является false. Для получения дополнительной информации об использовании окна состояния смотрите, что Параллель Монитора Создает из Моделей, на которые Ссылаются (Simulink Coder).

Окно Build Status поддерживает параллельные сборки иерархий модели, на которые ссылаются. Не используйте окно Build Status для последовательных сборок.

Зависимости

Чтобы использовать эту опцию, установите buildSpec к 'StandaloneCoderTarget'.

Типы данных: логический

Опция, чтобы создать цели симуляции модели - ссылки в виде разделенной запятой пары, состоящей из 'IncludeModelReferenceSimulationTargets' и true или false.

Зависимости

Чтобы использовать эту опцию, установите buildSpec к 'StandaloneCoderTarget'.

Типы данных: логический

Вопросы совместимости

развернуть все

Поведение изменяется в R2020b

Не рекомендуемый запуск в R2019a

Расширенные возможности

Представлено до R2006a