Solve closed-form inverse kinematics
The analyticalInverseKinematics
object generates functions that
computer all closed-form solutions for inverse kinematics (IK) for serial-chain manipulators.
The object generates a custom function to find multiple distinct joint configurations that
achieve the desired end-effector pose. The object supports six-degree-of-freedom (DOF) rigid
body tree robot models with compatible kinematic parameters. These are the key elements of the
solver:
Robot model — Rigid body tree model that defines the
kinematics of the robot. Specify this model as a rigidBodyTree
object when creating the solver.
Kinematic group — Base and end-effector body names
for a 6-DOF serial chain that is part of the robot model. To set this parameter, use the
showdetails
function.
Kinematic group type — Classification of joints connecting base to end effector.
To see all possible supported kinematic groups for your robot, use the showdetails
object function. To set a specific group from the list, click the Use this
kinematic group link for a kinematic group in the returned list.
To calculate inverse kinematics for a specific kinematic group, use the generateIKFunction
object function. To ensure your robot model and kinematic
group are compatible, check the IsValidGroupForIK property after selecting a kinematic group.
To generate numeric solutions, use the inverseKinematics
and generalizedInverseKinematics
objects.
analyticalIK = analyticalInverseKinematics(
creates an analytical inverse kinematics solver for a rigid body tree robot model,
specified as a robotRBT
)rigidBodyTree
object. The end effector is
the final body listed in the Bodies property of the robot
model. The robotRBT
argument sets the RigidBodyTree property.
analyticalIK = analyticalInverseKinematics(
sets the KinematicGroup property to the robotRBT
,'KinematicGroup',kinGroup)kinGroup
argument,
specified as a structure.
generateIKFunction | Generate function for closed-form inverse kinematics |
showdetails | Display overview of available kinematic groups |