Open Source Robotics

Una raccolta curata di progetti, strumenti e software di robotica open source di alta qualità per la comunità della robotica.

Configuration Space

  • Detto anche: C-space, joint space, configuration manifold
  • Categoria: Foundations & spatial maths › Kinematics
  • Tag: motion-planning, kinematics, collision-avoidance, path-planning, robot-arms

Lo spazio di tutte le configurazioni possibili di un robot, in cui ogni punto specifica il valore di ogni giunto o la posa del corpo, trasformando la pianificazione del movimento nella ricerca di un percorso per un singolo punto.

Definizione

Spazio delle configurazioni (configuration space), o C-space, è l'insieme di tutte le configurazioni che un robot può assumere, dove una configurazione è l'insieme minimo di valori che specifica completamente la posizione di ogni parte del robot. Per un braccio robotico è il vettore degli angoli dei giunti; per un robot mobile su un pavimento sono la sua posizione e il suo orientamento. La dimensione dello spazio delle configurazioni è uguale al numero di gradi di libertà del robot.

Il concetto è diventato centrale nella pianificazione del movimento con il lavoro del 1983 di Tomás Lozano-Pérez sulla pianificazione spaziale. La sua idea chiave è che gli ostacoli nell'area di lavoro fisica possono essere riportati nello spazio delle configurazioni come C-ostacoli: l'insieme delle configurazioni in cui il robot entrerebbe in collisione. Ciò che resta è lo spazio libero. Pianificare un moto privo di collisioni per un robot di forma complessa diventa allora il problema di trovare un percorso per un singolo punto attraverso lo spazio delle configurazioni libero.

Gli spazi delle configurazioni hanno una forma propria. Un giunto rotoidale senza limiti si richiude su sé stesso come un cerchio, quindi un braccio con diversi giunti di questo tipo ha un C-space a forma di toro anziché una scatola piatta. Un corpo rigido che si muove in un piano ha uno spazio delle configurazioni che combina due traslazioni con una rotazione. Questa struttura conta per il modo in cui si misurano le distanze e si interpolano i percorsi.

Nei C-space ad alta dimensione, calcolare esplicitamente i C-ostacoli non è praticabile. I pianificatori basati sul campionamento, come le probabilistic roadmap (PRM) e i rapidly-exploring random tree (RRT), lo evitano: campionano configurazioni, usano la cinematica diretta per collocare la geometria del robot nell'area di lavoro ed eseguono un controllo delle collisioni. Anche i pianificatori basati sull'ottimizzazione lavorano nel C-space mentre valutano i costi nell'area di lavoro.

Perché è importante

Lo spazio delle configurazioni è il linguaggio comune della pianificazione del movimento. Comprenderlo spiega perché un percorso che sembra breve nell'area di lavoro può essere lungo o impossibile per il robot, e perché i pianificatori campionano valori dei giunti anziché posizioni dell'end effector.

Applicazioni principali

  • Pianificazione del movimento senza collisioni per bracci robotici e manipolatori mobili
  • Pianificatori basati sul campionamento come PRM e RRT
  • Analisi della raggiungibilità e dei vincoli dei limiti dei giunti
  • Pianificazione del percorso per robot mobili che devono tenere conto del proprio ingombro e del proprio orientamento

In pratica

Quando un team di manipolazione pianifica i movimenti del braccio con un framework come MoveIt, il pianificatore lavora nello spazio dei giunti del braccio: campiona vettori di giunti, verifica ciascuno rispetto al modello di collisione del robot e della scena e collega i campioni validi in un percorso. Gli ingegneri impostano i limiti dei giunti e decidono quali giunti si richiudono su sé stessi, scelgono una metrica di distanza che pesi in modo appropriato i grandi giunti prossimali e regolano la risoluzione del controllo delle collisioni lungo ogni segmento del percorso, così che gli ostacoli sottili non vengano saltati tra un campione e l'altro.

Idee sbagliate comuni

  • Lo spazio delle configurazioni è la stessa cosa dell'area di lavoro — l'area di lavoro è la regione fisica che l'end effector può raggiungere, mentre lo spazio delle configurazioni è lo spazio dei valori dei giunti o delle pose del corpo
  • I pianificatori calcolano l'insieme completo dei C-ostacoli — in più di poche dimensioni questo non è praticabile, quindi la maggior parte dei pianificatori verifica invece configurazioni campionate
  • Lo spazio delle configurazioni è sempre una scatola piatta di intervalli dei giunti — i gradi di libertà rotazionali si richiudono su sé stessi, dandogli una struttura curva e periodica

Chi dovrebbe saperlo

  • Ingegneri della pianificazione del movimento
  • Studenti di robotica che imparano cinematica e pianificazione
  • Ingegneri software che integrano pianificatori come MoveIt

Tecnologie correlate

  • Pianificazione del movimento (Motion Planning)
  • Probabilistic Roadmap (PRM)
  • Rapidly-exploring Random Tree (RRT)
  • MoveIt
  • Controllo delle collisioni (Collision Checking)
  • Cinematica diretta (Forward Kinematics)

Termini correlati

  • Motion Planning
  • Workspace
  • DOF
  • Inverse Kinematics

Progetti correlati

  • Nav2: ROS 2 navigation stack with path planning and obstacle avoidance for mobile robots
  • ROS Motion Planning: One repo implementing 40+ classic and learning-based robot path planners as ROS plugins
  • 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

Video

  • Modern Robotics, Chapter 2.3.1: Configuration Space Topology: Northwestern Robotics

Wikipedia

  • Spazio delle configurazioni

Questo sito richiede JavaScript. Attiva JavaScript per esplorare i nostri progetti di robotica open source.