Open Source Robotics

Une collection organisée de projets, outils et logiciels robotiques open source de haute qualité.

IKPy

Bibliothèque de cinématique inverse en pur Python qui construit les chaînes directement depuis l'URDF

Licence

Apache-2.0

Aperçu

IKPy est une bibliothèque de cinématique inverse légère, en pur Python, développée par Pierre Manceron. Elle analyse les chaînes cinématiques directement depuis des fichiers URDF, résout la cinématique directe et inverse avec un optimiseur numérique construit sur SciPy, et inclut une visualisation 3D simple basée sur Matplotlib. N'ayant aucune dépendance compilée, elle s'installe partout où Python fonctionne, ce qui en a fait une favorite pour l'enseignement, les bras de loisir et l'écosystème humanoïde Poppy dont elle est issue à l'origine.

IKPy modélise un robot comme une Chain de segments analysée depuis l'URDF (avec des utilitaires pour les définitions manuelles de type DH). La cinématique directe est une chaîne de matrices ; la cinématique inverse s'exécute comme une optimisation aux moindres carrés bornée sur les valeurs articulaires, avec prise en charge des cibles en position et en orientation, des masques de segments actifs et des limites articulaires. La bibliothèque fournit des utilitaires de tracé qui affichent les chaînes et les cibles en 3D dans Matplotlib, et des tutoriels qui vont d'un bras à deux segments jusqu'à des robots complets comme Baxter. Elle échange délibérément la vitesse brute contre la portabilité et la bidouillabilité : tout est en NumPy/SciPy, il n'y a aucune extension C à compiler, et une chaîne est un simple objet Python que l'on peut sous-classer. Cette conception a fait d'IKPy la couche cinématique de l'écosystème humanoïde open source Poppy et un choix courant pour l'enseignement de l'IK, le prototypage rapide et le pilotage de bras de loisir là où une pile MoveIt complète serait disproportionnée.

Pourquoi c'est important

IKPy est la bibliothèque standard « l'IK en cinq lignes » du monde de la robotique Python : depuis une décennie, c'est le chemin le plus direct d'un fichier URDF vers une cinématique inverse fonctionnelle, utilisée dans l'enseignement, la communauté humanoïde Poppy et d'innombrables projets de bras de loisir.

Le problème résolu

Les piles complètes de planification de mouvement sont de la grosse artillerie quand on a juste besoin d'angles articulaires pour une pose cible. IKPy donne à n'importe quel programme Python une cinématique directe et inverse fidèle à l'URDF avec un simple pip install — pas de ROS, pas de solveurs compilés, pas de cérémonie de configuration.

Points clés

  • Construit les chaînes cinématiques directement depuis les fichiers URDF (plus une définition manuelle de type DH)
  • IK numérique avec limites articulaires, masques de segments actifs, cibles en position et en orientation
  • Pur Python sur NumPy/SciPy — s'installe partout, aucune dépendance compilée
  • Visualisation 3D intégrée des chaînes et des cibles avec Matplotlib
  • Couche cinématique de l'écosystème humanoïde Poppy ; largement utilisée dans l'enseignement

Pour qui

  • Étudiants en robotique apprenant la cinématique
  • Constructeurs de bras robotiques de loisir
  • Développeurs Python scriptant le mouvement de robots
  • Enseignants concevant des cours de robotique

Limites

  • L'optimisation numérique est plus lente que les solveurs IK analytiques ou compilés — pas pour les boucles de commande à haute fréquence
  • Pas de détection de collision ni de planification de mouvement — solutions articulaires uniquement
  • L'IK contrainte en orientation peut nécessiter des réglages (positions initiales, segments actifs) pour bien converger

Ce site nécessite JavaScript. Veuillez activer JavaScript pour explorer nos projets de robotique open source.