Нахождение сил от движений

Предупреждение

Это содержимое характерно для программного обеспечения Simscape™ Multibody™ First Generation. Функции первого поколения намечают, чтобы быть удержанными от использования и нужно избежать.

Об обратной динамике

Режимы Simscape Multibody Kinematics и Inverse Dynamics позволяют вам найти все силы на машине с обратной связью или открытой машине, соответственно, учитывая модель, которая полностью задает движения системы. (См. Выбор Аналитического Режима),

Можно использовать режим Forward Dynamics, чтобы анализировать обратную динамику, но эти два альтернативных режима более эффективны: различающийся режим Forward Dynamics, они не должны вычислять положения, скорости и ускорения компонентов модели, потому что модель задает их. Следовательно, режимы Kinematics и Inverse Dynamics занимают меньше времени, чем Прямая Динамика, чтобы вычислить силы в системе. Экономия времени зависит от размера и сложности моделируемой системы.

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

Создавание кинематических моделей

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

Приведение в действие независимых степеней свободы

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

Предупреждение

Попытка моделировать сверхограниченную модель заставляет Simulink® останавливать симуляцию с ошибкой.

Обратный режим динамики с двойным маятником

Внимание

Режим Inverse Dynamics работает только над открытой топологией и требует приведения в действие движения каждая независимая степень свободы (см. Степени свободы Модели подсчета).

Рассмотрите двойной маятник, состоящий из двух тонких стержней каждый 1 метр длиной и весящий 1 килограмм. Верхний стержень первоначально вращается 15 градусов перпендикуляра.

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

  • Модель должна представлять геометрию двойного маятника и задать его траекторию движения в течение симуляции.

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

    Кроме простых случаев, можно найти эти вычисленные крутящие моменты только как аппроксимированные функции времени.

Кинематическая модель может проявить разные подходы к определению начального состояния маятника.

  • Один подход использует параметры блоков Тела, чтобы задать начальные состояния.

  • Другой подход использует блоки-сигналы Привода.

Используя блоки тела, чтобы задать начальные условия

Откройте модель mech_dpend_invdyn1. Это иллюстрирует подход блока Body к моделированию начальных состояний.

Эта модель представляет маятник двумя блоками Тела и двумя блоками Шарнирного соединения.

  • Ось CS1 верхней части тела (B1) маятника вращается 15 градусов перпендикуляра (см. аннотацию для блока B1).

  • Системы координат для более низкого блока (B2) выравниваются с CS1 верхнего блока. CS1 B2 вращается-15 градусов относительно CS1 B1, т.е. это перпендикулярно системе Мировой координаты.

Используя блоки привода, чтобы задать начальные состояния

Откройте модель mech_dpend_invdyn2. Это показывает использование Объединенных блоков Привода, чтобы задать начальное кинематическое состояние. Используя приводы, чтобы задать смещение немного упрощает настройку блоков Тела.

Определение движения и измерение вычисленных крутящих моментов

В любой модели Объединенные блоки Привода, соединенные с Объединенными блоками, указывают, что верхние и более низкие соединения ускоряются на двух отличных уровнях, 2 и-1 degrees/second2, соответственно. Блоки датчика, соединенные с К блокам Рабочей области, измеряют вычисленные крутящие моменты на верхних и более низких соединениях как переменные torque_upper и torque_lower рабочей области MATLAB®, соответственно. Эти векторы получают верхние и более низкие вычисленные крутящие моменты на каждом главном временном шаге. Необходимо моделировать любую модель в режиме Inverse Dynamics, чтобы вычислить объединенные крутящие моменты, требуемые поддержать маятник в его движении.

Используя вычисленные крутящие моменты в прямой динамике

Если вы знаете вычисленные крутящие моменты как функции времени, можно проверить, что это правильные ответы путем создания версии модели, которая применяет вычисленные крутящие моменты к соединениям и симуляции что модель в режиме Forward Dynamics.

Откройте модель mech_dpend_act. Это иллюстрирует прямую версию динамики кинематической модели, которая использует объединенные приводы, чтобы задать начальное угловое смещение корпусов маятника.

Эта модель использует Начальные блоки Условия, чтобы задать начальные 15 смещений степени верхней части тела от вертикали в системе мировой координаты и соответствующие начальные-15 смещений степени нижней части тела от вертикали в системе координат верхней части тела. Отрицательное смещение нижней части тела эквивалентно расположению его как вертикальное в системе мировой координаты.

Из MAT-файла модель загружает верхние и более низкие крутящие моменты, torque_lower_fcn и torque_upper_fcn, как две матрицы, представляющие дискретные функции времени. Симуляция этой модели в режиме Forward Dynamics приводит к следующему отображению на верхнем объединенном осциллографе.

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

Делание более точных измерений крутящего момента

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

Режим кинематики с четырьмя машинами панели

Внимание

Режим Kinematics работает только над закрытой топологией и требует приведения в действие движения каждая независимая степень свободы (см. Степени свободы Модели подсчета).

Кроме того, не должно быть никаких Объединенных Приводов Прилипания и никаких неголономных ограничений.

Считайте четыре системы панели проиллюстрированными примером названная Модель и Моделируйте Машину С обратной связью. Моделью является mech_four_bar.

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

Чтобы ответить на этот вопрос, необходимо создать кинематическую модель стационарных четырех систем панели, начиная с учебной модели. Кинематическая модель должна задать, как система перемещается в зависимости от времени. В этом случае четыре панели остаются стационарными. Можно использовать Объединенный Привод, чтобы реализовать это требование.

Преобразование вперед в обратную динамику

Откройте модель mech_four_bar_kin, вывел from mech_four_bar.

  • Модель использует блок Joint Actuator, управляемый блоком Constant, чтобы задать движение на соединении Revolute1. Блок Constant выводит трехэлементный вектор, который задает угловое положение, скорость и ускорение, соответственно, соединения как 0.

  • Модель использует блок Joint Sensor, соединенный с блоком Scope, чтобы отобразить получившийся крутящий момент на соединении и блоке To Workspace, чтобы сохранить сигнал крутящего момента в рабочее пространство MATLAB.

Нахождение и проверка необходимого крутящего момента

Теперь получите и проверьте обратное решение для динамики вопроса.

  1. Запустите эту модель в режиме Kinematics. Вывод показывает, что крутящий момент на соединении Revolute1 составляет 27,9 ньютон-метров, с точностью допусков блока, заданных в блоке Machine Environment.

  2. Чтобы проверить, что вычисленный крутящий момент является, действительно, крутящим моментом, требуемым сохранить систему стационарной, создают модель прямой динамики, которая применяет вычисленный крутящий момент к соединению Revolute1. Откройте такую модель, содержавшуюся в mech_four_bar_stat.

  3. Запустите модель в режиме Forward Dynamics с Угловым открытым Осциллографом Revolute1.

    Отображение Осциллографа показывает, что машина действительно, действительно, остается стационарной, несмотря на то, что только в течение приблизительно 0,4 секунд. Выведенная вычисленная сила не точна, и модель, начинает нелинейные колебания после этого периода.

Совет

Можно уменьшать погрешность выведенной вычисленной силы путем повторного выполнения mech_four_bar_kin модели с более ограниченным решателем, блоком и допусками ограничения. Для самой высокой точности (по большей вычислительной стоимости), рассмотрите переход к ограничительному решателю точности машины. См. Методы Конфигурирования Решения.

Для просмотра документации необходимо авторизоваться на сайте