IKFast
AdvancedOpenRAVE's analytical IK generator, auto-producing extremely fast C++ inverse-kinematics code for a specific arm.
IKFast is an inverse-kinematics compiler Rosen Diankov developed within the OpenRAVE robot-planning framework. Inverse kinematics means working backward from a desired end-effector pose to the joint angles that achieve it. Numerical methods rely on iterative approximation, which is slow and can fail to converge; IKFast instead performs a symbolic derivation specific to one arm's kinematic structure and generates an analytical-solution C++ file offline, which at runtime computes every solution directly, usually in microseconds. It works best for 6-degree-of-freedom arms; a 7-DOF redundant arm needs one “free joint” designated and swept over a discrete set of values. MoveIt provides a workflow for wrapping IKFast-generated code as a kinematics plugin, commonly used to replace the default numerical solver.
ExampleGenerate an analytical inverse-kinematics solution for a UR5 arm with IKFast and package it as a MoveIt plugin — each IK solve drops from milliseconds to microseconds, and returns all 8 solutions at once.
- Also called
- OpenRAVE IKFast
- Related
- Inverse Kinematics (IK) · Analytical Inverse Kinematics · Numerical Inverse Kinematics · TRAC-IK · MoveIt Motion Planning Framework · Kinematic Redundancy
- Sources
- OpenRAVE ikfast 文档 (Chinese)
MoveIt IKFast Kinematics Solver 教程 (Chinese)