Main Content

Inverse Kinematics

Manipulator inverse kinematics, kinematic constraints

Inverse kinematics (IK) determines joint configurations of a robot model to achieve a desired end-effect position. Robot kinematic constraints are specified in the rigidBodyTree robot model based on the transformation between joints. You can also specify external constraints, like an aiming constraint for a camera arm or a Cartesian bounding box on a certain rigid body link. Specify parameters for these constraints with the Robot Constraints objects and pass them to a generalizedInverseKinematics object.


expand all

analyticalInverseKinematicsSolve closed-form inverse kinematics
inverseKinematicsCreate inverse kinematic solver
generalizedInverseKinematicsCreate multiconstraint inverse kinematics solver
constraintAimingCreate aiming constraint for pointing at a target location
constraintJointBoundsCreate constraint on joint positions of robot model
constraintCartesianBoundsCreate constraint to keep body origin inside Cartesian bounds
constraintOrientationTargetCreate constraint on relative orientation of body
constraintPoseTargetCreate constraint on relative pose of body
constraintPositionTargetCreate constraint on relative position of body


Inverse KinematicsCompute joint configurations to achieve an end-effector pose


Inverse Kinematics Algorithms

Description of inverse kinematics solver algorithms and solver parameters

2-D Path Tracing with Inverse Kinematics

Calculate inverse kinematics for a simple 2-D manipulator.

Solve Inverse Kinematics for a Four-Bar Linkage

This example shows how to solve inverse kinematics for a four-bar closed-chain linkage.

Plan a Reaching Trajectory With Multiple Kinematic Constraints

This example shows how to use generalized inverse kinematics to plan a joint-space trajectory for a robotic manipulator.

Position Delta Robot Using Generalized Inverse Kinematics

Model a delta robot using the a rigidBodyTree robot model.

Control PR2 Arm Movements Using ROS Actions and Inverse Kinematics

This example shows how to send commands to robotic manipulators in MATLAB®.