Управление целями симуляции для ссылочных Моделей

simulation target, или SIM target, является автоматически сгенерированным Файлом MEX, которое реализует ссылку на модель, которая выполняется в режиме Accelerator. Simulink® вызывает цель симуляции по мере необходимости во время симуляции, чтобы вычислить поведение и выходы ссылочных моделей. Simulink использует ту же цель симуляции для всех образцов ссылочных моделей, которые выполняются в режиме Accelerator. Образцы из ссылочных моделей, которые выполняются в режиме normal mode, не используют цель симуляции.

Чтобы создать модель-ссылку цели симуляции, Simulink генерирует код, который накладывает некоторые требования и ограничения на ссылочные модели, которые выполняются в режиме Accelerator. Помимо этих ограничений, можно обычно игнорировать цели симуляции, когда вы выполняете ссылочную модель в режиме Accelerator. Для получения информации об этих ограничениях смотрите Выбор режимов симуляции для иерархий модели.

По умолчанию Simulink генерирует цель симуляции для ссылочной модели, который выполняется в режиме Accelerator, если:

  • Цель симуляции не существует, когда вы обновляете схему прямого или косвенного родительского элемента модели-ссылки или моделируете иерархию модели.

  • Цель моделирования устарела со структурными изменениями в ссылочных моделях.

При генерации цели симуляции MATLAB® Командное окно отображает сообщения о состоянии, чтобы можно было контролировать процесс генерации цели симуляции.

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

Примечание

Если у вас есть лицензия Simulink Coder™, будьте осторожны, чтобы не путать цель симуляции ссылочной модели с этими другими типами целей:

  • Аппаратная цель - платформа, для которой Simulink Coder генерирует код

  • Системная цель - файл, в котором Simulink Coder описывает, как сгенерировать код для конкретной цели

  • Rapid Simulation target (RSim) - системный целевой файл, поставляемый с Simulink Coder

  • Цель модели-ссылки устройства - библиотечный модуль, который содержит код Simulink Coder для модели-ссылки

Сокращение времени, затраченного на проверку изменений

Можно уменьшить время, которое Simulink проводит, проверяя, требуют ли цели симуляции перестраивания, путем установки значений параметров конфигурации следующим образом:

  • Во всех ссылочных моделях на протяжении всей иерархии установите параметр конфигурации resolution configuration на Explicit only или None.

  • В верхней модели иерархии модели установите параметр конфигурации на If any changes in known dependencies detected. Кроме того, можно использовать этот параметр, чтобы задать, что Simulink всегда или никогда не перестраивает цели симуляции.

Эти параметры существуют в конфигурацию модели модели; они не являются параметрами блока Model. Установка этих параметров для любого образца модели-ссылки устанавливает их для всех образцов этой модели.

Задайте язык программирования целей симуляции

Чтобы задать язык программирования для целевых объектов симуляции моделей-ссылок, используйте параметр конфигурации на вкладке Simulation Target диалогового окна Параметры Конфигурации.

Используйте пользовательский код для целей симуляции

Как использовать пользовательский код с Stateflow® или с MATLAB Function блоками при построении модели-ссылки симуляции целевого объекта используйте пользовательский код Include для ссылок моделей параметра конфигурации.

Внимание

Использование пользовательского кода для ссылок на модели в режиме Accelerator может привести к другим результатам, чем когда вы симулируете модель, не используя пользовательский код. Если пользовательский код включает объявления структур для шин или перечислений, генерация целевого кода симуляции прекращает работать, если построение приводит к повторным объявлениям этих структур. Кроме того, если пользовательский код использует структуру, которая представляет шину или перечисление, можно получить неожиданные результаты симуляции.

Управление местоположением Симуляции целей

Simulink создает цели симуляции в slprj папка сборки текущей папки. Если на slprj папка не существует, Simulink создает ее.

Примечание

Генерация кода Simulink Coder также использует slprj папка. Подпапки в slprj предоставить отдельные места для кода симуляции, кода Simulink Coder и других файлов. Для получения дополнительной информации смотрите Управление папками процесса сборки (Simulink Coder).

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

  • Сохраните сгенерированные файлы отдельно от моделей и других исходных материалов, используемых для их генерации.

  • Повторно используйте или совместно используйте ранее построенные цели симуляции без необходимости установки текущей рабочей папки в предыдущую рабочую папку.

  • Отделите сгенерированные программные продукты симуляции от сгенерированного производственного кода.

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

Чтобы задать папку кэша симуляции, которая будет использоваться вместо текущей папки (pwd), в диалоговом окне Simulink Preferences > General, установите папку кэша Симуляции путем ввода или просмотра пути к папке.

Этот выбор предоставляет начальные значения по умолчанию для параметров сеанса работы с MATLAB.

Также можно задать CacheFolder Сеанс работы с MATLAB с использованием set_param функция.

>> set_param(0, 'CacheFolder', fullfile('C:','Work','MyModelSimCache'))
>> get_param(0, 'CacheFolder')
ans =

C:\Work\MyModelSimCache

Чтобы переопределить или восстановить выборы папки кэша симуляции только для текущего сеанса работы с MATLAB, используйте Simulink.fileGenControl функция. Значения, которые вы устанавливаете используя Simulink.fileGenControl истекает в конце текущего сеанса работы с MATLAB.

Похожие темы