Начало работы с быстрым перезапуском

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

  1. Включите быстрый перезапуск с помощью кнопки Fast Restart на Simulink® Панель инструментов или из командной строки.

  2. Симулируйте модель. Первая симуляция требует, чтобы модель скомпилировала, инициализировала и сохранила ModelOperatingPoint объект. Если симуляция завершена, она не завершает работу. Вместо этого модель инициализируется снова в быстром перезапуске.

  3. Выполните любое из этих действий:

    • Измените настраиваемые параметры.

    • Переключитесь между решателями переменного шага.

    • Настройте входные параметры корневого уровня.

    • Измените базовое рабочее пространство, переменные рабочего пространства модели и записи в словаре данных, на которые ссылаются настраиваемые параметры.

    • Измените входные параметры в блоки From Workspace и From File.

    • Измените параметр Initial state для следующей симуляции.

    • Используя блок Signal Builder, данные об изменении, переименовывают сигналы и группы сигнала, и добавляют новые группы.

    • Измените сигнал, регистрирующий значения переопределения для модели программно при помощи set_param команда и DataLoggingOverride параметр. Смотрите Сигнал Переопределения Регистрировать Настройки из MATLAB.

    Если вы инициализировали модель в быстром перезапуске, вы не можете

    • Измените размерность, введите, или сложность сигнала или переменной.

    • Внесите изменения в ненастраиваемый параметр, такие как шаг расчета.

    • Внесите структурные изменения, такие как добавление или удаление блоков или связей.

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

  4. Вы не должны перекомпилировать модель, если вы изменяете решатель. Можно выбрать соответствующие решатели во время времени выполнения, не имея необходимость проходить дорогой процесс перекомпиляции.

  5. Симулируйте модель. Модель использует новые значения параметров и входных параметров, которые вы обеспечили, но не компилируете снова.

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

    Примечание

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

Подготовьте модель, чтобы использовать быстрый перезапуск

Прежде чем вы симулируете модель в быстром перезапуске, гарантируете, что модель удовлетворяет эти требования:

  • Если вы включили коллбэки в модели, убедитесь, что они не пытаются внести структурные изменения, когда модель повторно инициализируется. Например, коллбэки, такие как команды инициализации маски называются в начале каждой симуляции. Поэтому избегайте использования кода инициализации маски, который вносит структурные изменения в модель.

  • Все блоки в модели должны поддержать ModelOperatingPoint объект.

  • Режим симуляции Нормален или Режим Accelerator.

Примечание

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

Включите быстрый перезапуск

Используйте один из этих методов, чтобы включить быстрый перезапуск:

  • Нажмите кнопку Fast restart на панели инструментов Simulink Editor.

  • В MATLAB® Командная строка, использовать set_param включить быстрый перезапуск. Ввод

    set_param(model,'FastRestart','on')

Симулируйте Модель с помощью Быстрого Перезапуска

После того, как вы загружаете свою модель и включаете быстрый перезапуск, симулируете модель.

  1. Симулируйте модель путем вызова sim или нажатие кнопки Run в Редакторе Simulink панель инструментов. Первая симуляция в быстром перезапуске требует, чтобы модель скомпилировала и сохранила ModelOperatingPoint объект.

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

  2. Настройте настраиваемые параметры в модели, такие как значение усиления блока Gain или входные значения корневого уровня мелодии. Можно также внести изменения в переменные базового рабочего пространства. Вы не можете настроить ненастраиваемые параметры, такие как шаг расчета, потому что выполнение так требует, чтобы модель скомпилировала еще раз.

  3. Симулируйте модель снова. На этот раз модель не компилирует. Когда вы нажимаете кнопку Play или шаг вперед, блоки обновлений Simulink, которые имеют новые значения, а также блоки та ссылочная рабочая область переменные.

  4. Когда вы удовлетворены своими результатами, выключаете быстрый перезапуск путем нажатия кнопки Fast restart прочь.

  5. Чтобы сохранить ваши изменения, сохраните модель.

Примечание

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

Остановите симуляцию

Когда вы нажимаете Stop посреди быстрой симуляции перезапуска:

  • Симуляция не завершает работу.

  • Модель находится в инициализированном состоянии.

  • Можно теперь изменить настраиваемые параметры в модели

  • Можно отключить симуляцию и выйти из быстрого перезапуска путем нажатия кнопки Fast restart прочь.

Выход быстро перезапускает

Можно выйти из быстрого перезапуска только, когда модель находится в инициализированном состоянии. После симуляции нажмите кнопку Fast restart прочь. Для этого программно введите:

set_param(model,'FastRestart','off')

  • Simulink отключает симуляцию.

  • Simulink отбрасывает любую скомпилированную информацию о модели.

  • Модель должна скомпилировать снова в следующий раз, когда вы симулируете.

Быстро перезапустите методологию

Настройка параметров между симуляциями

  • Когда модель инициализируется в быстром перезапуске, кроме того, чтобы блокировать значения и переменные базового рабочего пространства, вы можете настройки параметров в Data Import/Export и панели Solver в диалоговом окне Configuration Parameters (на вкладке Simulation, под Prepare, нажать Model Settings).

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

    • Параметр Initial Value блока IC

    • Параметр Initial Output блока Merge

    • Параметр Data блока From Workspace

    • Параметр Signal и группы сигнала блока Signal Builder.

Переключение решателей между симуляциями

Когда быстрый перезапуск включен, можно переключить решатели между симуляциями. Только допустимые решатели, которые могут быть переключены на, перечислены в Solver перечислите в диалоговом окне Configuration Parameters. Если вы переключаете решатели с помощью set_param команда между симуляциями и набором к недопустимому решателю, вы будете видеть предупреждение, и недопустимый решатель будет проигнорирован.

Методы модели и коллбэки в быстром перезапуске

Когда быстрый перезапуск включен, модель вызовов Simulink и методы блока и коллбэки можно следующим образом:

  1. Вызовите модель InitFcn 'callback'.

  2. Вызовите модель SetupRuntimeResources метод.

    1. Вызовите mdlSetupRuntimeResources Метод S-функции.

  3. Вызовите модель Start метод.

    1. Вызовите mdlStart Метод S-функции.

  4. Вызовите модель Initialize метод.

    1. Вызовите mdlInitializeConditions Метод S-функции.

      Примечание

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

  5. Вызовите модель и блок StartFcn коллбэки.

    Примечание

    Шаги 1-5 применяются ко всем симуляциям в Simulink (с или без быстрого перезапуска).

  6. Для первой симуляции в быстром перезапуске получите снимок состояния симуляции. Снимок состояния симуляции содержит состояние симуляции (ModelOperatingPoint) и информация, связанная с записанными данными и блоками визуализации. Как часть получения снимка состояния, вызовите ModelOperatingPoint Метод S-функции.

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

    • Вызовите модель Outputs.

    • Вызовите модель Update.

    • Вызовите модель Derivatives.

    • Повторите эти шаги в цикле до времени остановки, или остановку требуют.

  8. Вызовите модель Terminate метод.

    1. Вызовите mdlTerminate Метод S-функции.

  9. После концов симуляции вызовите модель и блок StopFcn коллбэки. Это - стандартная фаза любой симуляции, с или без быстрого перезапуска.

  10. Восстановите снимок состояния симуляции, взятый для быстрого перезапуска. Как часть восстановления, вызовите set Метод S-функции.

  11. Ожидайте в повторно инициализированном состоянии до одного из этих действий:

    • Чтобы запустить другую симуляцию (программно или использование Редактора Simulink) в быстром перезапуске, возвратитесь к шагу 3.

    • Закончить режим Fast Restart и не скомпилировать модель:

      1. Вызовите метод модели CleanupRuntimeResources и mdlCleanupRuntimeResources Метод S-функции.

      2. Не вызывайте StopFcn коллбэки снова в этой точке.

В некоторых случаях. Start и Terminate методы только называются однажды а не для каждой последовательной Быстрой симуляции Перезапуска. В этих случаях эти вызовы метода объединены с вызовами SetupRuntimeResources и CleanupRuntimeResources, соответственно. Эти случаи следующие:

  • Когда S-функция содержит пользовательский ModelOperatingPoint сохраните и восстановите методы.

  • Когда S-функция устанавливает флаг SS_OPTION_CALL_TERMINATE_ON_EXIT.

  • Когда S-функция помещается в ускоренном режиме модели, на которую ссылаются.

Для получения дополнительной информации о коллбэках модели смотрите Коллбэки для Индивидуально настраиваемого Поведения Модели.

Рабочая точка и значения начального состояния

Можно изменить значения начального состояния, включая ModelOperatingPoint, промежуточные быстрые симуляции перезапуска.

Когда ModelOperatingPoint объект для начального состояния используется в быстром перезапуске, каждой новой симуляции сброс ко времени начала модели а не время снимка состояния каждого ModelOperatingPoint объект. После этого, на первом шаге вперед, Simulink Check, чтобы видеть, если ModelOperatingPoint был задан. Если да, Simulink восстанавливает его прежде, чем вычислить следующий шаг. Таким образом, первый шаг симуляции эффективно ускоренная перемотка вперед ко времени снимка состояния заданного ModelOperatingPoint объект.

Анализируйте данные Используя инспектора данных моделирования

Быстро перезапустите регистрацию данных поддержек с помощью Инспектора Данных моделирования. Каждая симуляция в быстром перезапуске создает объект SDI с именем <modelname> fast restart run <number>. Значение number шаг для каждой симуляции.

Пользовательский код в инициализировать функции

Когда вы помещаете пользовательский код в Configuration Parameters> Simulation Target> Custom Code> панель Initialize function в диалоговом окне Model Configuration Parameters, это называется только во время первой симуляции в быстром перезапуске.

Похожие темы