Это содержимое характерно для программного обеспечения 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 тела точки, смещение тела от оси или центра переключает моменты от нуля до ненулевых значений.
В одном блоке Joint две отличных призматических оси или две отличных закрученных назад оси никогда не должны выравниваться во время симуляции. Если или происходит, переводная или вращательная степень свободы потеряна, и симуляция не может определить последующее движение. Примером таких особенностей является “блокировка карданова подвеса”. Две из трех закрученных назад примитивных осей в блоке Gimbal становятся параллельными, сокращая количество независимого DoFs в Соединении от три до два.
Два или больше физически идентичных тела (имеющий те же массы и тензоры инерции) никогда не должны совпадать на пробеле.
Ваша машина не может переместиться, если она не имеет никаких степеней свободы. Каждое Ограничение, Драйвер и приводящий в действие движение блок Actuator, который вы добавляете в машину, сокращают количество независимого DoFs. (См. Степени свободы Модели подсчета), Исправляют такие ошибки путем удаления одного или нескольких из этих блоков от машины, пока у вас нет по крайней мере одной независимой степени свободы.
Вы не можете запустить 3D машину с симуляцией, ограниченной двумя размерностями. Смотрите Выбор Размерности Вашей Машины.
Некоторые ограничения могут ограничить то, что уже ограничивает другое ограничение. Если избыточные ограничения присутствуют и в конфликте, фиксируют эти ошибки путем идентификации и удаления сокращения. Если симуляция не распознает одно или несколько избыточных ограничений, настройте избыточный допуск ограничения. Смотрите Ограничения Поддержания.
Некоторые движения машины или симуляции не могут смочь поддержать допуски блока на конкретном шаге симуляции, одновременно удовлетворяя ограничения. Одно или несколько соединений могут стать демонтированными. Любое из этих условий приводит к ошибкам.
Можно исправить эту ситуацию несколькими способами. Во-первых, идентифицируйте соединение, ограничение или драйвер, вызывающий ошибку, и исследуйте ее физическую настройку, когда ошибка произойдет, чтобы изолировать конфликт. Затем попробуйте любую комбинацию этих шагов:
Уменьшите допуски решателя Simulink или размер шага.
Переключитесь на более устойчивый решатель Simulink.
Уменьшите ограничительные допуски решателя.
Увеличьте избыточный допуск ограничения.
Переключитесь на ограничительный решатель точности машины.
Увеличьте допуски блока.
Смотрите ограничения поддержания и конфигурирование решателя Simulink.
Вы не можете поместить больше чем один привод на объединенный примитив.
Можно одновременно поместить начальный привод условия и привод силы/крутящего момента на объединенном примитиве.
Блок Joint Stiction Actuator действительно принимает входной сигнал для нефрикционных сил/крутящих моментов, которые блок добавляет в прилипание.
Если ваша машина имеет два или больше приводимых в действие прилипанием (“липких”) соединения, конфликт среди них может поместить симуляцию в бесконечный цикл и предотвратить определение движения машины. Или одно заблокированное соединение может предотвратить другие соединения, липкие или нет, от перемещения. Машина прекращает перемещаться.
Например, одно липкое соединение становится разблокированным и требует, чтобы другой заблокировал, который затем требует, чтобы первое заблокировало.
Удалите эти конфликты путем удаления одного или нескольких приводов прилипания или путем изменения Объединенных порогов блокировки Привода Прилипания.
Определенные ограничения применяются к аналитическим режимам, представленным в Выборе Analysis Mode. Консультируйтесь с отдельными аналитическими режимами для больше: