Phylliade/ikpy

IKPy, an Universal Inverse Kinematics library

解决的问题

IKPy 是一个纯 Python 库,专为解决任意机器人的逆运动学(IK)问题而设计。它允许用户确定机器人末端执行器在三维空间中移动到特定位置和姿态所需的关节角度。

工作原理

该库可对多种表示形式定义的运动学链进行逆运动学计算,包括 URDF、MuJoCo MJCF 文件或自定义的 Denavit-Hartenberg(DH)参数。它支持多种关节类型,如旋转关节和移动关节。

计算方面,提供两种后端:

  • NumPy:适用于简单链和一次性计算。
  • JAX:实验性后端,使用自动微分计算解析雅可比矩阵,提供更快的收敛速度和对局部最小值更强的鲁棒性,尤其适用于具有五个或更多关节的复杂机器人。

适用人群

专为需要快速、易于安装的 Python 工具来计算关节位置的机器人开发者和研究人员设计,无需真实机器人或复杂的模拟器即可进行初步测试。

主要特性

  • 灵活导入:可自动从 URDF 和 MuJoCo MJCF 文件导入运动学链。
  • 多后端支持:提供 JAX 后端以加速逆运动学和轨迹跟踪。
  • 高精度:可达到 7 位有效数字的精度。
  • 可视化:内置绘图功能,可在 3D 中可视化运动学链。
  • 纯 Python:安装无需编译。

相关

  • 项目
  • 项目
  • 项目
  • 项目