Phylliade/ikpy
IKPy, an Universal Inverse Kinematics library
What it solves
IKPy is a pure-Python library designed to solve the Inverse Kinematics (IK) problem for any robot. It allows users to determine the joint angles required to move a robot's end-effector to a specific position and orientation in 3D space.
How it works
The library computes IK for kinematic chains defined by various representations, including URDF, MuJoCo MJCF files, or custom Denavit-Hartenberg (DH) parameters. It supports different joint types, such as revolute and prismatic joints.
For computation, it offers two backends:
- NumPy: Suitable for simple chains and one-off calculations.
- JAX: An experimental backend that uses automatic differentiation to compute an analytical Jacobian, providing faster convergence and better robustness against local minima, especially for complex robots with five or more joints.
Who it’s for
It is intended for robotics developers and researchers who need a fast, easy-to-install Python tool for calculating joint positions without needing a real robot or a complex simulator for initial testing.
Highlights
- Flexible Import: Automatically imports kinematic chains from URDF and MuJoCo MJCF files.
- Multi-Backend Support: Offers a JAX backend for accelerated IK and trajectory tracking.
- High Precision: Capable of precision up to 7 digits.
- Visualization: Includes built-in plotting capabilities to visualize the kinematic chain in 3D.
- Pure Python: No compilation required for installation.
Related
- Project
- Project
- Project
- Project