Matrice Jacobiana, definizione, spiegazione ed esempi: (ChatGPT 4o)
La matrice Jacobiana è uno strumento matematico utilizzato in robotica per descrivere la relazione tra le velocità dei giunti di un robot e la velocità (lineare e angolare) dell’end-effector. La Jacobiana è fondamentale per analizzare e controllare i movimenti dei manipolatori robotici, e permette di calcolare anche le forze e i momenti torcenti sui giunti a partire dalle forze applicate all’end-effector.
Definizione della Matrice Jacobiana: La matrice Jacobiana è una matrice che descrive il tasso di variazione della posizione e dell’orientamento dell’end-effector rispetto ai parametri dei giunti. Essa fornisce una mappatura tra le velocità dei giunti e le velocità dell’end-effector.
In un robot con n gradi di libertà, la matrice Jacobiana J(θ) ha dimensioni 6×n, dove:
Le prime 3 righe descrivono la velocità lineare dell’end-effector rispetto agli assi x, y e z.
Le ultime 3 righe descrivono la velocità angolare dell’end-effector rispetto agli assi x, y e z.
In generale, la matrice Jacobiana si ottiene prendendo le derivate parziali della posizione e dell’orientamento dell’end-effector rispetto agli angoli dei giunti.
Relazione Cinematica:
Se consideriamo q=[q1,q2,...,qn]T come il vettore degli angoli dei giunti e q˙=[q˙1,q˙2,...,q˙n]T come il vettore delle velocità dei giunti, la velocità dell’end-effectorveff è data da:veff=J(q)⋅q˙Dove:
veff è il vettore di velocità dell’end-effector (che include sia velocità lineare che angolare).
J(q) è la matrice Jacobiana che dipende dagli angoli dei giunti.
q˙ è il vettore delle velocità angolari dei giunti.
Esempio Semplice: Braccio Robotico a 2 Giunti:
Consideriamo un braccio robotico a 2 giunti revoluti (simile al caso del piano 2D) con lunghezze dei segmenti L1 e L2. Gli angoli dei giunti sono θ1 e θ2. Vogliamo calcolare la Jacobiana per ottenere la velocità dell’end-effector.
La posizione dell’end-effector (xeff,yeff) è data dalle equazioni di cinematica diretta:xeff=L1cos(θ1)+L2cos(θ1+θ2)yeff=L1sin(θ1)+L2sin(θ1+θ2)La Jacobiana si ottiene derivando la posizione dell’end-effector rispetto agli angoli θ1 e θ2:J(θ)=[∂θ1∂xeff∂θ1∂yeff∂θ2∂xeff∂θ2∂yeff]=[−L1sin(θ1)−L2sin(θ1+θ2)L1cos(θ1)+L2cos(θ1+θ2)−L2sin(θ1+θ2)L2cos(θ1+θ2)]Questa è la matrice Jacobiana del braccio robotico a 2 giunti. La Jacobiana permette di calcolare la velocità dell’end-effector in termini delle velocità angolari dei giunti θ1˙ e θ2˙:[x˙effy˙eff]=J(θ)⋅[θ1˙θ2˙]Dove x˙eff e y˙eff rappresentano le componenti della velocità lineare dell’end-effector.
Forze e Momenti:
La Jacobiana non è utile solo per calcolare le velocità, ma anche per analizzare le forze e i momenti nei giunti del robot. Conoscendo la forza applicata all’end-effector, è possibile calcolare i momenti torcenti (τ) sui giunti.
Dato un vettore di forze applicate all’end-effector Feff, i momenti torcentiτ sui giunti sono calcolati come:τ=JT(q)⋅FeffDove JT(q) è la trasposta della Jacobiana.
Singularità della Matrice Jacobiana: Un concetto importante associato alla Jacobiana è quello delle singolarità. Una singolarità si verifica quando la matrice Jacobiana perde rango (il suo determinante diventa zero). In queste condizioni, il robot perde uno o più gradi di libertà nel movimento, e diventa impossibile controllare completamente l’end-effector.
Esempio di Singolarità: Nel braccio robotico a 2 giunti, una singolarità si verifica quando il braccio è completamente esteso o completamente ripiegato, perché in queste configurazioni il robot non è più in grado di muoversi lungo tutte le direzioni nel piano.
Esempio: Braccio Robotico a 3 Giunti nello Spazio 3D:
Consideriamo ora un braccio robotico a 3 giunti nello spazio tridimensionale. La posizione dell’end-effector è descritta dalle coordinate (x,y,z) nello spazio 3D, e ogni giunto ruota attorno a un asse diverso.
Per un robot a 3 giunti, la Jacobiana sarà una matrice 3×3 che descrive la velocità lineare dell’end-effector in funzione delle velocità angolari dei giunti θ1, θ2, θ3.J(θ)=∂θ1∂x∂θ1∂y∂θ1∂z∂θ2∂x∂θ2∂y∂θ2∂z∂θ3∂x∂θ3∂y∂θ3∂zQuesta Jacobiana consente di calcolare la velocità dell’end-effector e di analizzare le forze e i momenti torcenti sui giunti.
Applicazioni della Jacobiana in Robotica:
Controllo dei Robot: La Jacobiana viene utilizzata nei controllori robotici per convertire le velocità dei giunti in velocità dell’end-effector e viceversa.
Analisi delle Forze: È utilizzata per calcolare i momenti torcenti necessari nei giunti per sostenere le forze applicate all’end-effector.
Cinematica Inversa: La Jacobiana è importante per risolvere problemi di cinematica inversa, poiché può essere utilizzata per iterare verso soluzioni che soddisfano i requisiti di posizione e orientamento dell’end-effector.
Singolarità: Analizzare la Jacobiana aiuta a identificare configurazioni in cui il robot perde gradi di libertà (singolarità) e quindi a evitare queste configurazioni problematiche.
Sintesi: La matrice Jacobiana è un concetto chiave in robotica, utilizzato per collegare le velocità dei giunti con le velocità dell’end-effector e per calcolare le forze e i momenti torcenti. La sua importanza si estende alla cinematica, al controllo dei robot e all’analisi delle singolarità. Questa Jacobiana consente di calcolare la velocità dell’end-effector e di analizzare le forze e i momenti torcenti sui giunti.