Создайте мультиограничительный решатель инверсной кинематики
Система GeneralizedInverseKinematics
object™ использует набор кинематических ограничений, чтобы вычислить объединенную настройку для модели дерева твердого тела, заданной объектом RigidBodyTree
. Объект GeneralizedInverseKinematics
использует нелинейный решатель, чтобы удовлетворить ограничения или достигнуть наилучшего приближения.
Задайте типы ограничения, ConstraintInputs
, прежде, чем вызвать объект. Чтобы изменить ограничительные входные параметры после вызова объекта, вызовите
.release(gik)
Задайте ограничительные входные параметры, когда ограничение возражает, и вызовите GeneralizedInverseKinematics
с этими объектами, переданными в него. Чтобы создать ограничительные объекты, используйте эти классы:
Если ваше единственное ограничение является положением исполнительного элемента конца и ориентацией, рассмотрите использование InverseKinematics
как своего решателя вместо этого.
Решить обобщенные ограничения инверсной кинематики:
Создайте объект robotics.GeneralizedInverseKinematics
и установите его свойства.
Вызовите объект с аргументами, как будто это была функция.
Чтобы узнать больше, как Системные объекты работают, смотрите то, Что Системные объекты? MATLAB.
gik = robotics.GeneralizedInverseKinematics
gik = robotics.GeneralizedInverseKinematics('RigidBodyTree',rigidbodytree,'ConstraintInputs',inputTypes)
gik = robotics.GeneralizedInverseKinematics(Name,Value)
возвращает обобщенный решатель инверсной кинематики без заданной модели дерева твердого тела. Задайте модель gik
= robotics.GeneralizedInverseKinematicsRigidBodyTree
и свойство ConstraintInputs
перед использованием этого решателя.
возвращает обобщенный решатель инверсной кинематики с моделью дерева твердого тела и ожидаемыми ограничительными заданными входными параметрами.gik
= robotics.GeneralizedInverseKinematics('RigidBodyTree
',rigidbodytree,'ConstraintInputs
',inputTypes)
возвращает обобщенный решатель инверсной кинематики с каждым заданным набором имени свойства к заданному значению одним или несколькими аргументами пары gik
= robotics.GeneralizedInverseKinematics(Name,Value
)Name,Value
. Имя должно находиться внутри одинарных кавычек (' ').
Можно задать несколько аргументов пары "имя-значение" в любом порядке как
Name1,Value1,...,NameN,ValueN
.
[configSol,solInfo]
= gik(initialguess,constraintObj,...,constraintObjN)
[
находит объединенную настройку, configSol
,solInfo
]
= gik(initialguess
,constraintObj,...,constraintObjN
)configSol
, на основе исходного предположения и списка, разделенного запятыми ограничительных объектов описания. Количество ограничительных описаний зависит от свойства ConstraintInputs
.
Чтобы использовать объектную функцию, задайте Системный объект как первый входной параметр. Например, чтобы выпустить системные ресурсы Системного объекта под названием obj
, используйте этот синтаксис:
release(obj)