Ограничения

Шаг расчета и ограничения решателя

Шаги расчета по умолчанию блоков Simscape™ непрерывны. Вы не можете моделировать блоки Simscape с дискретными решателями с помощью шагов расчета по умолчанию.

Если вы переключаетесь на локальный решатель в Блоке Configuration Решателя, состояния связанной физической сети становятся дискретными. Если нет никакого непрерывного Simulink® или состояний Simscape нигде в модели, вы свободны использовать дискретный решатель, чтобы моделировать модель.

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

Алгебраические циклы

Физическая сеть Simscape не должна существовать в Simulink алгебраический цикл. Это означает, что вы не должны непосредственно соединять вывод блока PS-Simulink Converter к входу блока Simulink-PS Converter той же физической сети.

Например, следующая модель содержит прямое сквозное соединение между блоком PS-Simulink Converter и блоком Simulink-PS Converter (подсвеченный в пурпурном). Чтобы избежать алгебраического цикла, можно вставить блок Transfer Function где угодно вдоль подсвеченного цикла.

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

Неподдерживаемые инструменты Simulink и функции

Определенные инструменты Simulink и функции не работают с программным обеспечением Simscape:

\sim

  • Экспорт модели к формату, используемому более ранней версией (File> Export Model to> Previous Version), не поддержан для моделей, содержащих блоки Simscape.

  • Инструмент Simulink Profiler не работает с моделями Simscape.

  • Физические сигналы и строки физического соединения между сохранением портов отличаются от Сигналов Simulink. Поэтому инструмент Signal и Scope Manager и функциональность метки сигнала не поддержаны.

Ограниченные инструменты Simulink

Определенные инструменты Simulink ограничиваются для использования с программным обеспечением Simscape:

  • Можно использовать set_param Simulink и команды get_param, чтобы установить или получить параметры блоков Simscape, если параметры соответствуют полям в диалоговом окне блока. MathWorks® не рекомендует, чтобы вы использовали эти команды, чтобы найти или изменить любые другие параметры блоков.

    Если вы вносите изменения в параметры блоков в командной строке, запускаете вашу модель сначала прежде, чем сохранить его. В противном случае вы можете сохранить недопустимые параметры блоков. Любые изменения параметров блоков, которые вы вносите с set_param, не подтверждены, если вы не запускаете модель.

  • Блоки Simscape принимают объекты Simulink.Parameter как значения параметров в get_param и set_param в ограничениях, заданных здесь.

  • Enabled подсистемы могут содержать блоки Simscape. Всегда устанавливайте параметр States when enabling в Разрешать диалоговом окне к held для порта Enable подсистемы.

    Установка States when enabling к reset не поддержана и может привести к критическим ошибкам симуляции.

  • Можно поместить блоки Simscape в невиртуальных подсистемах, которые поддерживают непрерывные состояния. Невиртуальные подсистемы, которые поддерживают непрерывные состояния, включают Enabled подсистемы и Атомарные подсистемы. Однако физические соединения и физические сигналы не должны пересекать невиртуальные контуры. При размещении блоков Simscape в невиртуальную подсистему убедитесь, что поместили все блоки, принадлежащие данной Физической сети в той же невиртуальной подсистеме.

  • Невиртуальные подсистемы, которые не поддерживают блоки времени непрерывной выборки (такой, как будто Действие, Для Итератора, Вызова функции, Инициированного, В то время как Итератор, и так далее), не может содержать блоки Simscape.

  • Атомарная подсистема с заданным пользователями (ненаследованным) шагом расчета не может содержать блоки Simscape.

  • Конфигурируемые подсистемы Simulink работают с блоками Simscape, только если весь выбор блока имеет сопоставимые подписи порта.

  • При использовании рабочей точки, чтобы сохранить и восстановить симуляции моделей, вы не можете внести изменения в блоки Simscape в модели между временем, в которое вы сохраняете объект ModelOperatingPoint и время, в которое вы восстанавливаете симуляцию с помощью объекта ModelOperatingPoint. Для получения дополнительной информации смотрите Ограничения Сохранения и Восстановления Рабочей точки (Simulink).

    Это - расширение ограничения Simulink, запрещающего структурные изменения к модели между этими двумя моментами времени. Изменения в параметрах блоков Simscape могут вызвать изменения уравнения и привести к изменениям в представлении состояния. Поэтому изменение параметров блоков Simscape между сохранением и восстановлением SimState не позволено.

  • Линеаризация с функцией linmod Simulink или с эквивалентными функциями Simulink Control Design™ и графическими интерфейсами не поддержана с моделями Simscape, если вы используете локальные решатели.

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

    • Все строки Физического соединения должны содержаться в модели, на которую ссылаются. Такие строки не могут пересечь контур подсистемы модели, на которую ссылаются, в модели ссылки.

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

  • Вы не можете создать объекты Сигнала Simulink непосредственно на блоке PS-Simulink Converter выходные параметры. Вставьте блок Signal Conversion после выходного порта блока PS-Simulink Converter и задайте объект сигнала на выводе блока Signal Conversion вместо этого.

Инструменты Simulink, не совместимые с блоками Simscape

Некоторые инструменты Simulink и функции не работают с блоками Simscape:

  • Теги порядка выполнения не появляются на блоках Simscape.

  • Блоки Simscape не вызывают пользовательские коллбэки.

  • Вы не можете установить точки останова на блоках Simscape.

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

  • Вы не можете использовать Fixed-Point Tool Simulink с блоками Simscape.

  • Генератор отчетов сообщает о свойствах блока Simscape не полностью.

Генерация кода

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

  • Повторное использование кода не поддержано.

  • Инкапсулированная генерация Кода С++ не поддержана.

  • Настраиваемые параметры не поддержаны.

  • Встраивание параметра периода выполнения игнорирует глобальные исключения.

  • MaxStackSize не поддержан.

  • Симуляция моделей Simscape на процессорах фиксированной точки не поддержана.

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

  • Преобразование моделей или подсистем, содержащих блоки Simscape к S-функциям, не поддержано.

Генерация кода описывает функции генерации кода Simscape. Ограниченные Инструменты Simulink описывают ограничения на образцовую ссылку.

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

Генерация кода и решатели Фиксированного Шага

Большинство опций генерации кода для моделей Simscape требует использования фиксированного шага решатели Simulink. Эта таблица суммирует доступный выбор решателя, в зависимости от того, как вы генерируете код.

Опция генерации кодаВыбор решателя
Режим Accelerator
Быстрый Режим Accelerator
Переменный шаг или фиксированный шаг
Программное обеспечение Simulink Coder™: Цель RSim*Переменный шаг или фиксированный шаг
Программное обеспечение Simulink Coder: Цели кроме RSimФиксированный шаг только

* Для Цели RSim, программное обеспечение Simscape поддерживает только модуль решателя Simulink. В диалоговом окне модели Configuration Parameters смотрите Code Generation: RSim Target: меню Solver selection. Значением по умолчанию является автоматический выбор, который может не выбрать модуль решателя Simulink.