Regole per la cinematica e la Jacobiana
- Per la regola della x: è giusta, ma ce n'è una più comoda che funziona anche quando non c'è una common normal: metterla ortogonale alla z e alla z precedente, tipo X2 deve essere ortogonale a Z2 e Z1. Il verso è a scelta.
- Poi l'end effector non conta come joint, quindi una volta finiti i RFS dei joint si mette l'ultimo al centro dell'end effector, con asse Z allineato all'asse Z precedente e la X sempre perpendicolare alle due Z precedenti.
Moltiplicazione di matrici
Moltiplicazione matrici è riga per colonna:
A = [ a b ] [ c d ]
B = [ e f ] [ g h ]
Matrice finale:
C = [ a·e + b·g a·f + b·h ] [ c·e + d·g c·f + d·h ]
Nota
- T/A è la matrice della trasformazione omogenea DH.
- R è la matrice di rotazione (contenuta in T).
- J è la Jacobiana.
Cinematica differenziale
Nel contesto della robotica, dopo aver studiato la cinematica diretta, che descrive la relazione tra le variabili di giunto o traslazioni) e la posizione e orientazione (angoli dell'end-effector espressa come:, = ()) si introduce il concetto di cinematica differenziale, che riguarda invece le velocità.
In particolare, si vuole capire come le velocità dei giunti influenzano la velocità dell'end-effector.
Per ottenere questa relazione, si deriva la cinematica diretta rispetto al tempo. Applicando la derivata si ottiene: ẋ = ()
Poiché una funzione di più variabili (i giunti), usando la regola della derivata per () è funzioni vettoriali si ottiene: ẋ = () q̇
dove: è la velocità dell'end-effector (sia lineare che angolare),
- q̇ è il vettore delle velocità dei giunti.
- J̇ è la Jacobiana, una matrice che dipende dalla configurazione del robot ().
In forma esplicita: ẋ q̇ = [ ] = () q̇
- Rappresenta la velocità lineare (nelle direzioni ẋ, ẏ, ż).
- Rappresenta la velocità angolare.
A seconda del tipo di giunto si hanno due casi:
Giunto prismatico: zi−1 = [ ] 0
Giunto revoluto: zi−1 × (pe − pi−1) = [ ] zi−1
Ogni colonna è un giunto, ad esempio nel robot RRP: (P=Pe)
Ora si sostituiscono i valori:
- Pe (posizione end effector è l'ultima colonna della matrice A (primi tre valori).
- P0 è [ 0 0 0 ] è il centro