Ошибки симуляции Поиска и устранения проблем

Советы Поиска и устранения проблем и методы

Симуляции Simscape™ могут остановиться перед завершением с одним или несколькими сообщениями об ошибке. В этом разделе рассматриваются типовые ошибочные типы и фиксирующие ошибку стратегии. Вы можете найти предыдущий раздел, Как Моделирование Simscape, полезное для идентификации и трассировки ошибок.

Если симуляция перестала работать:

  • Проверьте настройку модели. Если ваше сообщение об ошибке содержит список блоков, сначала проверьте эти блоки. Также проверьте:

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

    • Неправильные модули — директор производства Simscape предлагает большую гибкость в использовании физических единиц измерения. Однако необходимо проявить заботу в определении правильных модулей, особенно в блоках PS-Simulink Converter и Simulink-PS Converter. Начните анализировать схему путем открытия всех блоков конвертера и проверки правильности заданных модулей.

  • Попытайтесь упростить схему. Ненужная сложность схемы является наиболее распространенной причиной ошибок симуляции.

  • Повредите систему в подсистемы и протестируйте каждый модуль, пока вы не положительны, что модуль ведет себя как ожидалось.

  • Создайте систему путем постепенного увеличения ее сложности.

Рекомендуется, чтобы вы создали, симулировали и протестировали свою модель инкрементно. Начните с идеализированной, упрощенной модели своей системы, промоделируйте ее, проверьте, что она работает должным образом. Затем инкрементно сделайте свои более реалистические, включающие эффекты модели, такие как потеря на трение, податливость вала двигателя, жесткие упоры и другие вещи, которые описывают явления реального мира. Моделируйте и проверяйте свою модель на каждом инкрементном шаге. Используйте подсистемы, чтобы получить иерархию модели, поскольку моделировать и тестировать Ваши подсистемы отдельно проще, чем тестировать настройку модели в целом. Этот подход поможет Вам сохранить свои модели хорошо организованными и облегчит их диагностику.

Ошибки конфигурации системы

Недостающий блок Solver Configuration

Каждая топологически отличная блок-схема Simscape требует точно, чтобы один блок Solver Configuration был соединен с ним. Блок Solver Configuration задает глобальную информацию о среде и обеспечивает параметры для решателя, в котором нужна ваша модель, прежде чем можно будет начать симуляцию.

Если вы получаете сообщение об ошибке о недостающем блоке Solver Configuration, открываете библиотеку Simscape Utilities и добавляете блок Solver Configuration где-нибудь на схеме.

Дополнительный жидкий или газовый блок свойств

Если ваша модель содержит гидравлические элементы, каждая топологически отличная гидросхема в схеме требует, чтобы блок Custom Hydraulic Fluid (или блок Hydraulic Fluid, доступный с библиотеками блоков Simscape Fluids™), были соединены с нею. Эти блоки задают свойства жидкости, которые действуют как глобальные параметры для всех блоков, соединенных с гидросхемой. Если никакой гидравлический жидкий блок не присоединен к циклу, блоки Гидравлики в этом цикле используют жидкость по умолчанию. Однако больше чем один гидравлический жидкий блок в цикле генерирует ошибку.

Точно так же больше чем один блок Thermal Liquid Settings (TL) в тепловой жидкой схеме, блок Two-Phase Fluid Properties (2P) в двухфазной жидкой схеме или блок Gas Properties (G) в газовой схеме генерируют ошибку.

Если вы получаете сообщение об ошибке о слишком многих проблемно-ориентированных глобальных блоках параметра, присоединенных к сети, ищете дополнительный блок Hydraulic Fluid, блок Custom Hydraulic Fluid, блок Thermal Liquid Settings (TL), блок Two-Phase Fluid Properties (2P) или блок Gas Properties (G) и удаляете его.

Блок отсутствующей ссылки

Библиотеки Simscape содержат проблемно-ориентированные ссылочные блоки, которые представляют контрольные точки для портов сохранения соответствующего типа. Например, каждая топологически отличная электрическая схема должна содержать по крайней мере один блок Electrical Reference, который представляет связь с землей. Точно так же гидравлические порты всех блоков, на которые ссылаются к атмосфере (например, порты всасывания гидравлических насосов, или возвращают порты клапанов, цилиндров, конвейеров, если они рассматриваются непосредственно соединенными с атмосферой) должны быть соединены с блоком Hydraulic Reference, который представляет связь с атмосферным давлением. Механические поступательные порты, которые твердо фиксируются к системе координат (земля), должны быть соединены с блоком Mechanical Translational Reference и так далее.

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

Основные ошибки в представлении физической системы

Физические системы представлены в среде моделирования Simscape как Физические сети согласно обобщенным законам о схеме Кирхгоффа. Определенные настройки модели нарушают эти законы и поэтому недопустимы. Существует два широких нарушения:

  • Источники проблемно-ориентированной переменной Across соединяются параллельно (например, источники напряжения, гидравлические источники давления или скоростные источники)

  • Источники проблемно-ориентированной переменной Through соединяются последовательно (например, источники электрического тока, гидравлические источники скорости потока жидкости, сила или источники крутящего момента)

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

Пример.  Модель, показанная на следующем рисунке, содержит два Идеальных Поступательных Скоростных Источника, соединенные параллельно. Это производит цикл независимых скоростных источников, и решатель не может создать сопоставимую систему уравнений для схемы.

Когда вы пытаетесь симулировать модель, решатель выдает ошибку сообщение со ссылками на Идеальный Поступательный Скоростной Источник и Идеальную Поступательную Скорость блоки Source1. Чтобы зафиксировать схему, можно или заменить два скоростных источника одним Идеальным Поступательным Скоростным Исходным блоком или добавить Поступательный Демпфер между ними.

Числовые проблемы симуляции

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

Зависимые динамические состояния

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

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

Разрывы параметра

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

Начальные условия решают отказ

Начальные условия решают, который решает для всех системных переменных (с начальными условиями, заданными на некоторых системных переменных), может перестать работать. Это имеет несколько возможных причин:

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

  • Зависимое динамическое состояние. В этом случае окно Simulation Diagnostics также может содержать дополнительные, более определенные, сообщения об ошибке, такие как предупреждение об уравнениях компонента, сопровождаемых списком включенных компонентов. Смотрите Зависимые Динамические состояния для получения дополнительной информации.

  • Остаточный допуск может быть слишком трудным, чтобы произвести единое решение алгебраических ограничений в начале моделирования. Можно попытаться увеличить значение параметров Consistency Tolerance (то есть, ослабить допуск) в блоке Solver Configuration.

Если окно Simulation Diagnostics имеет другой, более определенные, сообщения об ошибке, обратитесь к ним сначала и попытайтесь повторно выполнить симуляцию. См. также Советы Поиска и устранения проблем и Методы.

Переходные проблемы симуляции

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

Переходная инициализация, не сходящаяся

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

Можно также попытаться уменьшить значение параметров Consistency Tolerance (то есть, сжать допуск) в блоке Solver Configuration.

Шаг связанные с размером ошибки — зависимые состояния — высокая жесткость

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

  • Напрягитесь допуск решателя (уменьшите значение параметров Relative Tolerance в диалоговом окне Configuration Parameters),

  • Задайте значение кроме auto, для параметра Absolute Tolerance в диалоговом окне Configuration Parameters. Экспериментируйте с этим значением параметров.

  • Напрягитесь остаточный допуск (уменьшите значение параметров Consistency Tolerance в блоке Solver Configuration),

  • Увеличьте значение параметра Number of consecutive min step size violations allowed в диалоговом окне Configuration Parameters (установите его на значение, больше, чем количество последовательных нарушений размера шага, данных в сообщении об ошибке),

  • Рассмотрите настройку модели и попытайтесь упростить схему или добавить маленькие паразитные условия в вашу схему, чтобы избежать зависимых динамических состояний. Для получения дополнительной информации смотрите Числовые Проблемы Симуляции.