Решите задачи кинематики для модели мультитела
KinematicsSolver
объекты позволяют пользователям формулировать и численно решать задачи кинематики для своих моделей Simscape™ Multibody™. Можно использовать объект решить стандарт вперед и задачи инверсной кинематики, а также более общие проблемы с кинематическими системами с обратной связью и несколькими целями.
Проблема кинематики формулируется с помощью кинематических переменных. Эти переменные имеют скалярные значения, которые задают отношения между системами координат в соответствующей модели Simscape Multibody. Существует два типа кинематических переменных: соединение и система координат. Объединенные переменные соответствуют объединенным состояниям положения и скорости и автоматически созданы, когда объект создается. Можно просмотреть объединенные переменные с помощью jointPositionVariables
и jointVelocityVariables
функции объекта. Структурируйте переменные, соответствуют отношениям положения и скорости между произвольными системами координат в модели и должен быть задан с помощью addFrameVariables
объектная функция. После того, как заданный, они могут быть просмотрены с помощью frameVariables
объектная функция.
Чтобы сформулировать проблему кинематики, необходимо присвоить роли для соответствующих кинематических переменных. Существует три роли: цели, исходные предположения и выходные параметры. Переменные присвоены этим ролям с помощью addTargetVariables
, addInitialGuessVariables
, и addOutputVariables
объектная функция. Чтобы решить задачу с присвоенными переменными, используйте solve
объектная функция. Начиная с начального состояния, решатель пытается найти конечное состояние системы сопоставимым со значениями целевых переменных. Начальное состояние синтезируется с помощью значений переменных исходного предположения. Начальные состояния, которые не заданы переменными исходного предположения, инициализируются, чтобы обнулить. Значения выходных переменных получены на конечное состояние, возвращенное решателем. Если решатель не может найти конечное состояние, которое удовлетворяет всем целям, он пытается, по крайней мере, возвратить состояние, которое кинематическим образом выполнимо.
создает ks
= simscape.multibody.KinematicsSolver(modelName)KinematicsSolver
объект для модели называют в mdl
. Объект содержит представление модели, подходящей для кинематического анализа. Представление является снимком состояния модели, как это - когда объект создается. Последующие изменения к модели не переносят на объект. Создайте новый объект, при необходимости чтобы получить те изменения.
Модель должна содержать сеть Simscape Multibody. Это должно также загрузиться к памяти — например, при помощи load_system
команда. Если блоки параметрируются в терминах переменных MATLAB, те переменные должны быть численно заданы в рабочем пространстве модели или в рабочем пространстве MATLAB. Объединенные цели и входные параметры приведения в действие проигнорированы, как объединенный режим — расцепленные соединения всегда обрабатываются как нормальные. Набор параметров блоков к Run-Time
оценены при создании объекта и не может быть изменен позже.
KinematicsSolver
объект является объектом указателя. Переменная, созданная из него, содержит не копию объекта, а ссылки на него. Переменная действует как указатель или указатель. Изменение указателя изменяет также объект и все его остающиеся указатели. Копирование объекта KinematicsSolver и добавление переменной системы координат к копии, например, добавляют, что переменная системы координат к объекту и так также к любым другим указателям может иметь.
создает ks
= simscape.multibody.KinematicsSolver(___,Name,Value)KinematicsSolver
объект с дополнительными опциями, заданными одним или несколькими Name,Value
парные аргументы.
addFrameVariables
| addInitialGuessVariables
| addOutputVariables
| addTargetVariables
| clearFrameVariables
| clearInitialGuessVariables
| clearOutputVariables
| clearTargetVariables
| closeViewer
| frameVariables
| generateCode
| initialGuessVariables
| jointPositionVariables
| jointVelocityVariables
| outputVariables
| removeFrameVariables
| removeInitialGuessVariables
| removeOutputVariables
| removeTargetVariables
| setVariableUnit
| solve
| targetVariables
| viewSolution