addTargetVariables

Присвойте кинематические переменные из объекта KinematicsSolver как цели

Синтаксис

Описание

addTargetVariables(ks,ids) присвоения как целевые переменные кинематические переменные перечислены в KinematicsSolver объект ks под именами, данными в ids аргумент. Те, которые действительно служат ограничениями, чтобы применяться во время анализа. Их значения должны быть позже заданы для того, чтобы запустить анализ. Решатель, когда названо, ищет решение, совместимое с целенаправленным соединением и переменными системы координат.

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

Большинство переменных может быть присвоено индивидуально. Некоторые должны быть присвоены в группах — компоненты оси вместе с углом поворота в сферических примитивах; изогните угол вместе с углом азимута в примитивах постоянной скорости. (Угол поворота может быть присвоен индивидуально, но угол азимута не может.)

Рисунок показывает переменные общего KinematicsSolver объект. Цель (T), угадайте (G) и выведите переменные (O), может быть объединенные переменные (J) или структурировать переменные (F). Та же переменная может служить целью и вывести, но если это служит целью, это не может удвоиться как предположение. При присвоении переменной предположения, когда цель очищает его как предположение.

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

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

Добавление целевой переменной, которая сверхограничивает причины блока addTargetVariables перестать работать с ошибкой. Полагайте, что переменные исходного предположения для последнего соединения кинематической замкнутой цепи, при необходимости, ведут соединение в место, не сверхограничивая блок. Используйте addInitialGuessVariables возразите функции, чтобы присвоить кинематическую переменную как исходное предположение.

Входные параметры

свернуть все

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

Пример: ks = simscape.multibody.KinematicsSolver ('sm_double_pendulum')

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

Идентификаторы кинематических переменных, чтобы использовать. Введите идентификаторы как показано в столбец ID jointPositionVariables или jointVelocityVariables, для объединенных переменных, или frameVariables, для переменных системы координат.

Пример: 'j1. Rz.q'

Типы данных: char | string

Введенный в R2019a