exponenta event banner

решить

Выполнение кинематического анализа для объекта KinematicsSolver

Описание

[outputs,statusFlag,targetFlags,targets] = solve(ks,targets,initialGuesses) решает или пытается решить кинематическую задачу, поставленную в KinematicsSolver объект ks. Неизвестные - это переменные, назначенные в качестве выходных данных в ks. Их решение зависит от ограничений исходного положения модели и от целей положения объекта. Когда существует несколько решений, позиция предполагает смещение решателя к одному из них.

Входные аргументы

свернуть все

A KinematicsSolver объект является представлением модели Simscape Multibody, используемой для кинематического анализа.

Пример: ks = simscape.multibody.KinematicsSolver ('sm _ double _ pendulum')

Типы данных: KinematicsSolver object

Требуемые значения целевых переменных ks. Укажите значения в порядке переменных, как показано в targetVariables таблица. Значения интерпретируются в единицах измерения, перечисленных в таблице. Если целевые переменные отсутствуют, введите пустой вектор. Если не существует ни целевых, ни начальных переменных приближения, введите пустой вектор или опустите аргумент полностью.

Пример: '[0 45 30]'

Типы данных: double

Ценности начальных переменных предположения ks. Укажите значения в порядке переменных, как показано в initialGuessVariables таблица. Значения интерпретируются в единицах, перечисленных в этой таблице. Если начальных переменных приближения не существует, введите пустой вектор или опустите аргумент полностью.

Пример: '[10 25]'

Типы данных: double

Выходные аргументы

свернуть все

Вычисленные значения выходных переменных. Переменные показывают в порядке их ранжирования в outputVariables таблица. Каждый из них находится в перечисленных там подразделениях.

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

Типы данных: double

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

  • 1 - Выполняются все ограничения модели и целевые переменные.

  • 2 - Все ограничения модели и целевые переменные удовлетворяются, но механизм находится в сингулярной конфигурации.

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

  • -2 - Все ограничения модели удовлетворяются, но одна или несколько целевых переменных не удовлетворяются, и механизм находится в сингулярной конфигурации.

  • -3 - Решение недопустимо, поскольку одно или несколько ограничений модели не могут быть выполнены. Выходные переменные имеют значение NaN.

  • -4 - Решение недопустимо, поскольку механизм находится в сингулярной конфигурации. Выходные переменные имеют значение NaN.

Примечание

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

Типы данных: double

Логические флаги со статусом каждой целевой переменной. Логическое 1 указывает, что цель удовлетворена. Логическое 0 указывает, что он был пропущен. Флаги отображаются в порядке, указанном в targetVariables таблицы объекта. Вектор пуст в кинематических задачах без целевых переменных.

Типы данных: double

Вычисленные значения целевых переменных ks. Это те же целевые переменные, которые указаны во входных аргументах. Переменные показывают в порядке их ранжирования в targetVariables таблица. Каждый из них находится в перечисленных там подразделениях.

Типы данных: double

См. также

Представлен в R2019a