Это содержимое характерно для программного обеспечения Simscape™ Multibody™ First Generation. Функции первого поколения намечают, чтобы быть удержанными от использования и нужно избежать.
Симуляции Simscape Multibody могут остановиться перед завершением с одним или несколькими сообщениями об ошибке. В этом разделе рассматриваются типовые ошибочные типы, и большинство ошибок и фиксирующих ошибку стратегий попадают в широкие категории. Эти группировки отражаются в ключевых словах, происходящих в сообщениях об ошибке. Эти разделы обобщают эти группировки.
Каждая числовая запись, которую вы делаете в модели Simscape Multibody, должна быть действительным числовым выражением или эквивалентным MATLAB®. Пространственные векторы являются 3 векторами, такими как [3 4 5]
. Пространственные тензоры имеют размер 3х3 матрицы, такие как матрицы вращения и тензор инерции.
Можно задать двумерную кривую в блоке Point-Curve Constraint с 2 векторами.
Каждая машина должна иметь по крайней мере один блок Ground. Каждый блок Body должен иметь по крайней мере один CS Тела, заданный в центре тяжести тела (CG). Необходимо прямо или косвенно задать системы координат Тела (CSS) машины относительно Земли или к Миру. Вы не можете ввести циклические (круговые) определения CS Тела. Определения CS Тела должны отдельно удовлетворить этим критериям в Position и вкладках Orientation диалогового окна Тела.
Например, определение CS3 относительно CS2, определение CS2 относительно CS1, затем определение CS1 относительно CS3, приводят к определению, которое является и циклическим и недостающим любая ссылка на Землю или Мир. Можно повредить цикл путем ссылки на CS1 к Земле или к Миру.
Чтобы быть отображенным в визуализации, Тело должно быть соединено по крайней мере с одним Соединением, которое соединяется с остальной частью машины. Вы не можете визуализировать с эквивалентными эллипсоидами тело, основные инерционные моменты которого не удовлетворяют треугольным неравенствам.
Геометрическая настройка соединений, ограничений и драйверов может конфликтовать с требованиями блока и ограничениями на определенные блоки.
Собранные соединения должны удовлетворить допускам блока на своем связанном CSS Тела в любом случае. Демонтированные соединения, собранные при инициализации модели, должны также удовлетворить допускам блока во время симуляции. (См. блок Машины Управления.)
Начальное расстояние между двумя источниками CS Тела, соединенными невесомым коннектором, должно быть ненулевым. Невесомый коннектор содержит расстояние между двумя источниками CS Тела, постоянными во время движения.
Определенные составные Блоки соединений устанавливают ограничения для своих примитивных объединенных осей. Например, Подшипник должен иметь свою призматическую ось P1
выровненный к его третьей вращательной оси R3
.
Несоответствия в движении являются результатом неправильного применения ограничений, драйверов и приводов, от конфликтных требований прилипания и неправильной размерности симуляции.
Ошибки симуляции движения часто происходят из-за сингулярности или деления на очень небольшие числа. Решатели Simulink® могут интегрировать определенную сингулярность по стоимости. Другие, как потеря степени свободы (DoF), могут быть критическими. Смотрите Ограничения Поддержания, Конфигурирование Решателя Simulink и Сглаживание Сингулярности Движения и ссылки блока Machine Environment.
Тело, перемещающееся в призматическую ось, должно иметь ненулевую массу, если вы приводите в движение его с силами. Тело, вращающееся о вращательной оси или вертящееся о сферическом, должно иметь ненулевые инерционные моменты об оси или центре, если вы приводите в движение его с крутящими моментами. Если вы хотите невесомое твердое тело, рассматриваете использование Невесомого Коннектора от подбиблиотеки Joints / Massless Connectors.
Можно использовать тела точки (ненулевые массовые, но нулевые моменты) в моделях Simscape Multibody, если связанные вращательные оси и сферические центры нарушены от тела. Несмотря на то, что моментами является нуль о CG тела точки, смещение тела от оси или центра переключает моменты от нуля до ненулевых значений.
В одном Блоке соединений две отличных призматических оси или две отличных вращательных оси никогда не должны выравниваться во время симуляции. Если или происходит, поступательное или вращательная степень свободы потеряны, и симуляция не может определить последующее движение. Примером такой сингулярности является “блокировка карданова подвеса”. Две из трех осей вращательного примитива в блоке Gimbal становятся параллельными, сокращая количество независимого числа степеней свободы в Соединении от три до два.
Два или больше физически идентичных тела (имеющий те же массы и тензоры инерции) никогда не должны совпадать на пробеле.
Ваша машина не может переместиться, если она не имеет никаких степеней свободы. Каждое Ограничение, Драйвер и приводящий в движение движение блок Actuator, который вы добавляете в машину, сокращают количество независимого числа степеней свободы. (См. Степени свободы Модели подсчета), Исправляют такие ошибки путем удаления одного или нескольких из этих блоков из машины, пока у вас нет по крайней мере одной независимой степени свободы.
Вы не можете запустить 3D машину с симуляцией, ограниченной двумя размерностями. Смотрите Выбор Размерности Вашей Машины.
Некоторые ограничения могут ограничить то, что уже ограничивает другое ограничение. Если избыточные ограничения присутствуют и в конфликте, фиксируют эти ошибки путем идентификации и удаления сокращения. Если симуляция не распознает одно или несколько избыточных ограничений, настройте избыточный допуск ограничения. Смотрите Ограничения Поддержания.
Некоторые движения машины или симуляции не могут смочь обеспечить допуски блока на конкретном шаге симуляции, одновременно удовлетворяя ограничениям. Одно или несколько соединений могут стать демонтированными. Любое из этих условий приводит к ошибкам.
Можно откорректировать эту ситуацию несколькими способами. Во-первых, идентифицируйте соединение, ограничение или драйвер, вызывающий ошибку, и исследуйте ее физическую настройку, когда ошибка произойдет, чтобы изолировать конфликт. Затем попробуйте любую комбинацию этих шагов:
Уменьшите допуски решателя Simulink или размер шага.
Переключитесь на более устойчивый решатель Simulink.
Уменьшите ограничительные допуски решателя.
Увеличьте избыточный допуск ограничения.
Переключитесь на ограничительный решатель точности машины.
Увеличьте допуски блока.
Смотрите ограничения поддержания и конфигурирование решателя Simulink.
Вы не можете поместить больше чем один привод на объединенный примитив.
Можно одновременно поместить начальный привод условия и привод силы/крутящего момента на объединенном примитиве.
Блок Joint Stiction Actuator действительно принимает входной сигнал для нефрикционных сил/крутящих моментов, которые блок добавляет в прилипание.
Если ваша машина имеет два или больше приводимых в движение прилипанием (“липких”) соединения, конфликт среди них может поместить симуляцию в бесконечный цикл и предотвратить определение движения машины. Или одно заблокированное соединение может предотвратить другие соединения, липкие или нет, от перемещения. Машина прекращает перемещаться.
Например, одно липкое соединение становится разблокированным и требует, чтобы другой заблокировал, который затем требует, чтобы первое заблокировало.
Удалите эти конфликты путем удаления одного или нескольких приводов прилипания или путем изменения Объединенных порогов блокировки Привода Прилипания.
Определенные ограничения применяются к аналитическим режимам, представленным в Выборе Analysis Mode. Консультируйтесь с отдельными аналитическими режимами для больше: