Open Source Robotics

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

Foothold Planning

  • Aussi appelé: footstep planning, foothold selection
  • Catégorie: Control › Locomotion control
  • Mots-clés: legged-locomotion, motion-planning, terrain, contact-planning, quadrupeds

Choisir où chaque pied d'un robot à pattes se posera, à l'aide de données sur le terrain et de la dynamique du robot, pour que chaque pas soit stable, accessible et sûr.

Définition

Planification des appuis (foothold planning) : problème qui consiste à choisir les emplacements de contact des pieds d'un robot à pattes. Un bon appui se trouve sur un sol ferme, raisonnablement plat et offrant assez de frottement, loin des bords et des trous, accessible à la jambe depuis la position prévue du corps, et compatible avec le maintien de l'équilibre du robot tout au long du pas. Pour les bipèdes, le problème est souvent appelé planification des pas (footstep planning) et inclut l'orientation de chaque pied ; pour les quadrupèdes, il porte généralement sur la position de chaque pied dans une séquence de démarche.

Les systèmes classiques découpent la locomotion en couches. La perception construit une carte d'élévation, l'analyse du terrain note chaque cellule selon la pente, la rugosité et la distance aux bords, le planificateur d'appuis choisit des cellules, et un contrôleur de plus bas niveau planifie le mouvement du corps et les trajectoires de transfert qui les atteignent. Les méthodes de planification courantes consistent à ajuster un appui nominal, donné par une heuristique comme la règle de Raibert, vers la cellule voisine la mieux notée ; à effectuer une recherche dans un graphe sur des séquences de pas discrets ; et à optimiser, par exemple avec des programmes en nombres entiers mixtes qui affectent chaque pas à l'une de plusieurs régions sûres convexes. Certains planificateurs optimisent conjointement les appuis et le mouvement du corps afin de traiter ensemble l'accessibilité et l'équilibre dynamique.

L'apprentissage a changé la donne. Des politiques entraînées en simulation peuvent prendre des échantillons de hauteur ou des images de profondeur brutes et produire directement des commandes articulaires, en choisissant les appuis implicitement, ce qui évite les erreurs qui s'accumulent entre des modules séparés de cartographie, de planification et de commande. La planification explicite des appuis reste utile là où les garanties, l'interprétabilité ou un placement précis comptent, comme sur des pierres de gué, et des systèmes hybrides utilisent des modèles appris pour noter ou proposer des appuis à un contrôleur fondé sur un modèle.

Pourquoi c'est important

Sur un terrain accidenté, l'endroit où se pose un pied décide si le robot garde l'équilibre. La planification des appuis transforme la perception du terrain en décisions de contact concrètes, et le fait qu'elle soit explicite ou intégrée à une politique apprise détermine la fiabilité avec laquelle un robot à pattes franchit escaliers, décombres et trous.

Applications principales

  • Montée d'escaliers et locomotion en terrain accidenté pour les quadrupèdes
  • Planification des pas d'humanoïdes dans des espaces encombrés
  • Franchissement de trous et de pierres de gué
  • Robots planétaires et d'inspection sur sol non structuré
  • Références fondées sur un modèle pour comparer des politiques de locomotion apprises

En pratique

Un quadrupède qui traverse un champ de pierres de gué utilise une carte d'élévation construite à partir de ses caméras de profondeur. Un filtre de terrain marque comme invalides les cellules à forte pente, à forte rugosité ou proches d'un bord. Pour chaque pas à venir, le planificateur part de l'appui nominal donné par la démarche et la vitesse souhaitée, cherche dans un petit voisinage la cellule valide de coût le plus faible et vérifie que la jambe peut l'atteindre depuis la pose prévue du corps. Les appuis choisis sont transmis à un contrôleur prédictif qui planifie le mouvement du corps et les forces de contact, tandis que le contrôleur de transfert lève chaque pied assez haut pour franchir les bords des pierres. Là où la carte est incertaine, la fonction de coût favorise les appuis plus proches du centre de chaque pierre.

Idées reçues

  • La planification des appuis ne sert qu'à la marche lente et statiquement stable — les planificateurs modernes gèrent les démarches dynamiques en planifiant conjointement les appuis et le mouvement du corps sur un court horizon
  • Les politiques de locomotion apprises ne choisissent pas les appuis — elles décident quand même où les pieds se posent, mais implicitement à partir de la perception plutôt que par un planificateur séparé
  • La cellule la plus plate est toujours le meilleur appui — l'accessibilité, la distance aux bords, les pas suivants et la quantité de mouvement du corps influent tous sur la qualité d'un appui

Qui devrait le savoir

  • Ingénieurs en locomotion à pattes
  • Ingénieurs en perception qui construisent des cartes de terrain pour robots à pattes
  • Chercheurs en planification de mouvement
  • Développeurs en robotique humanoïde

Technologies associées

  • Cartographie d'élévation (Elevation Mapping)
  • Heuristique de Raibert (Raibert Heuristic)
  • Optimisation convexe en nombres entiers mixtes (Mixed-Integer Convex Optimization)
  • Recherche A (A Search)
  • Commande prédictive (Model Predictive Control)

Termes associés

  • Elevation Map
  • Terrain Traversability
  • Mixed-Integer Programming
  • Quadruped
  • Gait
  • Model Predictive Control

Projets associés

  • DimOS: Python robotics runtime with agents, SLAM and teleop, no ROS required
  • OMPL: Sampling-based motion planning library powering MoveIt and countless robotics applications
  • MoveIt 2: Motion planning framework for ROS 2 robot arms, with kinematics and collision checking
  • PyRoki: Modular Python toolkit for kinematic optimization across CPU, GPU, and TPU via JAX
  • mink: Python inverse kinematics library built on MuJoCo supporting 20+ robot platforms
  • Ruckig: Real-time jerk-constrained time-optimal trajectory generation for robots and machines

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