In Quanti Modi Può Muoversi?
Gradi di Libertà: La Geometria del Movimento
Un grado di libertà (GDL) è un modo indipendente in cui un oggetto può muoversi. Comprendere i GDL è il primo passo per capire come i robot interagiscono con lo spazio.
La posizione nello spazio 3D richiede 3 GDL: x (sinistra/destra), y (avanti/indietro), z (su/giù). Un punto nello spazio ha 3 GDL.
L'orientamento aggiunge 3 altri: roll (rotazione attorno all'asse in avanti), pitch (rotazione attorno all'asse laterale), yaw (rotazione attorno all'asse verticale). Un corpo rigido nello spazio ha 6 GDL: 3 di posizione + 3 di orientamento.
Braccia robotiche e GDL:
- Un braccio articolato a 6 assi (come un robot industriale) ha 6 giunti, ciascuno che aggiunge 1 GDL. Con 6 GDL, l'effettore finale può raggiungere qualsiasi posizione e orientamento all'interno dell'area di lavoro: ha piena libertà spaziale.
- Un robot SCARA a 4 assi ha 4 GDL: può posizionarsi ovunque in un piano e ruotare, ma non può inclinare il suo utensile. Buono per operazioni di pick-and-place su superfici piane.
- Un robot Cartesiano/gantry a 3 assi ha 3 GDL: può posizionarsi ovunque in un volume a forma di scatola ma non può orientare affatto il suo utensile. Buono per stampanti 3D.
Più di 6 GDL: Un robot a 7 assi è ridondante: ha più GDL del necessario per il posizionamento spaziale completo. I GDL extra gli permettono di raggiungere intorno agli ostacoli, come un braccio umano che raggiunge dietro qualcosa. La ridondanza è un vantaggio geometrico.
GDL e Requisiti del Compito
Una fabbrica ha bisogno di un robot per tre compiti diversi: (A) dispensare colla lungo un percorso curvo 3D su un pannello carrozzeria automobilistica, (B) raccogliere chip da un nastro trasportatore e posizionarli su una scheda circuitale piatta, e (C) saldare un giunto 3D complesso da più angoli.
Due Direzioni della Geometria Robotica
Cinematica: Geometria in Movimento
La cinematica è lo studio del movimento senza considerare le forze. In robotica, è pura geometria: la relazione tra gli angoli dei giunti e la posizione e orientamento dell'effettore finale.
Cinematica diretta (FK): Dati tutti gli angoli dei giunti → calcola la posizione e l'orientamento dell'effettore finale. Questa è la direzione 'facile'.
Per un braccio planare a 2 link: se il giunto 1 è all'angolo θ₁ e il giunto 2 è all'angolo θ₂, con lunghezze dei link L₁ e L₂, l'effettore finale è a:
- x = L₁ cos(θ₁) + L₂ cos(θ₁ + θ₂)
- y = L₁ sin(θ₁) + L₂ sin(θ₁ + θ₂)
Per un braccio a 6 assi, FK utilizza una catena di matrici di trasformazione omogenee: ogni giunto contribuisce una matrice 4×4 che codifica rotazione e traslazione. Moltiplica tutte e sei le matrici insieme per ottenere la posa dell'effettore finale. È meccanico ma produce sempre un'unica risposta.
Cinematica inversa (IK): Data una posizione e orientamento desiderati dell'effettore finale → calcola gli angoli dei giunti che la raggiungono. Questa è la direzione 'difficile'.
L'IK è difficile perché:
- Soluzioni multiple: Un braccio a 6 assi può spesso raggiungere lo stesso punto in più configurazioni (gomito su vs. gomito giù, polso capovolto vs. no). Possono esserci 8 o più soluzioni valide.
- Nessuna soluzione: Se il bersaglio è fuori dall'area di lavoro, nessun angolo di giunto funziona.
- Singolarità: A certi posa, due assi dei giunti si allineano e il robot perde un GDL: come il gimbal lock. Vicino alle singolarità, piccoli movimenti cartesiani richiedono enormi velocità dei giunti.
Cinematica Inversa: Perché È Difficile?
Considere un semplice braccio planare a 2 link con L₁ = L₂ = 1 metro. L'effettore finale deve raggiungere il punto (1.0, 1.0).
La distanza dalla base al bersaglio è sqrt(1² + 1²) = sqrt(2) ≈ 1.414 m. Poiché L₁ + L₂ = 2 m > 1.414 m, il punto è raggiungibile.
Forma della Raggiungibilità
Area di Lavoro: Il Volume Geometrico che un Robot Può Raggiungere
L'inviluppo dell'area di lavoro è l'insieme di tutti i punti che l'effettore finale può raggiungere. La sua forma dipende interamente dalla geometria del robot.
Braccio articolato (6 assi): L'area di lavoro è all'incirca una sfera vuota. Il confine esteriore è alla portata massima (tutti i link estesi). Il confine interno esiste perché il braccio non può piegarsi abbastanza indietro per raggiungere punti troppo vicini alla base. La sezione trasversale sembra una ciambella (toro).
SCARA: L'area di lavoro è un cilindro. Il braccio spazza orizzontalmente (generando una sezione trasversale circolare) e l'asse Z si muove verticalmente. Il risultato è un volume cilindrico piatto: ampia portata orizzontale, limitata verticalmente.
Cartesiano/Gantry: L'area di lavoro è una scatola rettangolare. Ogni asse si muove linearmente lungo una dimensione. Semplice, prevedibile, facile da programmare: ma voluminoso perché il robot deve essere grande quanto la sua area di lavoro.
Singolarità nell'area di lavoro: A certe pose, il robot perde un GDL. Un braccio articolato completamente esteso (al confine esteriore della sua area di lavoro) è in una singolarità: non può muovere l'effettore finale più verso l'esterno. Le singolarità del polso si verificano quando due assi dei giunti del polso si allineano. In una singolarità, la matrice jacobiana perde rango, e il GDL effettivo del robot diminuisce temporaneamente.
Area di lavoro destra vs. area di lavoro raggiungibile: L'area di lavoro raggiungibile è dove l'effettore finale può raggiungere in almeno un orientamento. L'area di lavoro destra è dove può raggiungere qualsiasi orientamento arbitrario. L'area di lavoro destra è sempre un sottoinsieme dell'area di lavoro raggiungibile: e spesso molto più piccola.
Scelta di un Robot in Base all'Area di Lavoro
Una cella di fabbrica ha tre stazioni disposte a forma di L. La stazione A è a sinistra, la stazione B è direttamente avanti, la stazione C è a destra e leggermente elevata (300 mm più in alto). Il robot deve raccogliere pezzi da A, eseguire un'operazione a B e posizionare i pezzi finiti a C: tutto da un'unica posizione di montaggio.
Spazio di Configurazione: La Geometria Astratta del Robot
Spazio di Configurazione: Dove Vive la Pianificazione del Movimento
Lo spazio di configurazione (C-space) è una delle più potenti astrazioni geometriche della robotica. Invece di pensare alla forma fisica del robot, rappresenta l'intero stato come un singolo punto in uno spazio N-dimensionale.
Per un robot con N giunti, lo C-space ha N dimensioni: un asse per ogni angolo dei giunti. Ogni possibile posa del robot è un singolo punto nello C-space. Un movimento (sequenza di pose) è una curva attraverso lo C-space.
Ostacoli nello C-space: Un ostacolo fisico nel mondo reale diventa una regione proibita nello C-space. Se posizionare il robot con angoli dei giunti (θ₁, θ₂, ..., θN) causerebbe una collisione, quel punto è all'interno di un ostacolo dello C-space. La forma degli ostacoli dello C-space è complessa: una semplice scatola nel mondo reale diventa una regione strangamente sagomata nello C-space.
Pianificazione del percorso = trovare una curva priva di collisioni: Dati una configurazione iniziale (punto nello C-space) e una configurazione obiettivo (un altro punto), trova una curva continua che le collega senza entrare in alcuna regione proibita.
Algoritmi:
- A* (basato su griglia): Discretizza lo C-space in una griglia, cerca il percorso più breve. Funziona bene in basse dimensioni (2-3 GDL) ma la dimensione della griglia esplode esponenzialmente con la dimensione.
- RRT (Albero Che Esplora Rapidamente): Costruisce un albero di campioni casuali nello C-space, crescendo verso regioni inesplorate. Funziona in alte dimensioni (6+ GDL). Non ottimale ma veloce nel trovare percorsi realizzabili.
- PRM (Mappa Probabilistica di Strada): Pre-calcola un grafo di configurazioni casuali prive di collisioni, poi cerca il grafo. Buono per query ripetute nello stesso ambiente.
L'intuizione geometrica: il problema di pianificazione del percorso di un robot a 6 GDL è un problema di curva-attraverso-spazio-6D. La dimensionalità rende le soluzioni esatte non fattibili: i metodi probabilistici (RRT, PRM) sono l'approccio pratico.
Pensiero dello Spazio di Configurazione
Un braccio planare a 2 link (2 GDL) opera in una stanza con un singolo ostacolo rettangolare. Il giunto 1 spazia da 0° a 360°, il giunto 2 spazia da 0° a 360°. Lo spazio di configurazione è un quadrato 2D: θ₁ su un asse, θ₂ sull'altro.