Одна функция выхода/обновления

Описание

Задайте, сгенерировать ли modelшаг функция.

Генерация кода Category:> Интерфейс

Настройки

Значение по умолчанию: на

На

Генерирует modelшаг функция для модели. Эта функция содержит код функции выхода и обновления для блоков в модели и вызвана rt_OneStep выполнить обработку в течение одного периода часов модели на уровне прерывания.

'off'

Не комбинирует выход и обновляет функциональный код в одну функцию, и вместо этого генерирует код в отдельном modelвывод и model_update функции.

Советы

Ошибки или неожиданное поведение могут произойти, если блок Model является частью цикла, блок Model является прямым проходным блоком, и заканчивается алгебраический цикл. Для получения дополнительной информации о прямом канале через, смотрите Алгебраические Концепции Цикла (Simulink).

Simulink® Coder™ игнорирует этот параметр для модели, на которую ссылаются, если какое-либо из следующих условий применяется к той модели:

  • Является многоскоростным

  • Имеет время непрерывной выборки

  • Регистрирует состояния (использующий States или параметры Final states в Configuration Parameters> панель Data Import/Export

Зависимости

  • Установка Code interface packaging к C++ class силы на и отключают эту опцию.

  • Эта опция и Classic call interface взаимно несовместимы и не могут оба быть выбраны через графический интерфейс пользователя. Выбор Classic call interface обеспечивает прочь и отключает эту опцию, и очищающийся Classic call interface включает (но не выбирает), эта опция.

  • Когда вы используете эту опцию, необходимо очистить опцию Minimize algebraic loop occurrences на панели Model Referencing.

  • Если вы настраиваете ert_main.c или .cpp чтобы считать выходные параметры модели после каждого шага модели тарифной ставки, выбирая оба параметра, Support: continuous time и Single output/update function могут вызвать выходные значения, считанные из ert_main для непрерывного выходного порта, чтобы отличаться от соответствующих выходных значений в записанных данных для модели. Это вызвано тем, что, в то время как записанные данные являются снимком состояния выхода на главных временных шагах, выхода, считанного из ert_main после того, как шаг модели тарифной ставки потенциально отражает прошедшие незначительные временные шаги. В следующей таблице перечислены обходные решения, которые устраняют несоответствие.

    Работа вокругНастроенный ert_main.cНастроенный ert_main.cpp
    Отделитесь сгенерированные функции выхода и обновления (очистите параметр Single output/update function), и введите код в ert_main считать выходные значения модели, отражающие только главные временные шаги. Например, в ert_main, между modelвывод вызовите и model_update вызовите, считайте модель External outputs структура глобальных данных (заданный в modelH). X 
    Выберите параметр Single output/update function и введите код в сгенерированном modelC или .cpp файл, чтобы возвратить выходные значения модели, отражающие только главные временные шаги. Например, в ступенчатой функции модели, между выходным кодом и кодом обновления, сохраняют значение модели External outputs структура глобальных данных (заданный в modelH). Затем восстановите значение после того, как код обновления завершится.XX
    Поместите блок Zero-Order Hold перед непрерывным выходным портом.XX

Информация о командной строке

Параметр: CombineOutputUpdateFcns
Ввод: символьный вектор
Значение: 'on' | 'off'
Значение по умолчанию: 'on'

Рекомендуемые настройки

ПриложениеУстановка
ОтладкаНа
ТрассируемостьНа
ЭффективностьНа
Меры безопасности

Никакая рекомендация

Похожие темы