Режимы симуляции

Интерпретированное выполнение по сравнению с генерацией кода

Можно использовать MATLAB System блок в Simulink® модели для симуляции через интерпретированное выполнение или генерацию кода. Реализация блока MATLAB System с допустимым именем класса System object™ включает параметр Simulate using. Этот параметр появляется в нижней части диалогового окна MATLAB System блоков, если существует только одна вкладка или нижняя часть первой из нескольких вкладок. Используйте параметр Simulate using, чтобы управлять моделированием блока. Таблица описывает, как выбрать правильное значение для вашей цели.

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

    Примечание

    С интерпретированным выполнением, если вы устанавливаете параметр Use division for fixed-point net slope computation на On или Use division for reciprocals of integers only в диалоговом окне Параметры конфигурации (Configuration Parameters) можно получить неоптимизированные числовые результаты. Эти неправильные числовые результаты вызваны тем, что код MATLAB не поддерживает этот параметр.

  • С генерацией кода модель моделирует блок с помощью генерации кода, используя подмножество кода MATLAB, поддерживаемое для генерации кода.

ДействиеВыбратьПрофессионалыНедостатки

После запуска первой модели моделируйте и генерируйте код для MATLAB System, используя только подмножество функций MATLAB, поддерживаемое для генерации кода. Выбор этой опции заставляет симуляцию запускать сгенерированный код.

Code generation (по умолчанию)

Потенциально лучшая эффективность.

Системный объект ограничивается подмножеством функций MATLAB, поддерживаемых для генерации кода. Симуляция может начаться медленнее.

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

Interpreted execution

Системный объект может содержать любую поддерживаемую функцию MATLAB. Более быстрое время запуска.

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

Чтобы воспользоваться преимуществами более высокой эффективности, рассмотрите использование методов распространения в вашем системном объекте. Для получения дополнительной информации см. Раздел «Добавление и реализация методов распространения».

Симуляция с использованием генерации кода

Во время симуляции и генерации кода для одной или нескольких целей симуляции (в этом случае, блоков системного объекта), модель отображает сообщения о состоянии в нижнем левом углу окна Редактор. Модель может иметь несколько копий одного и того же блока MATLAB System. Блоки считаются одинаковыми, если они,

  • Используйте тот же Системный объект.

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

  • Иметь нетронутые параметры, которые имеют то же значение.

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

Когда процесс генерации кода завершен, Simulink создает файл MEX для сгенерированного кода.

См. также

Похожие примеры

Подробнее о