Professional Documents
Culture Documents
qi
(n )
i-1
q2
2
1
Il manipolatore si schematizza come un sistema multicorpo seriale a catena cinematica aperta con membri rigidi connessi da accoppiamenti elementari
q1 0 (0)
prismatici rotoidali
ogni giunto i collega i membri i-1 e i la variabile di giunto qi indica la posizione relativa di i rispetto a i-1 prismatico lunghezza dipende dallaccoppiamento elementare rotoidale angolo 1
(n )
qn n i
qi
i-1
q2
2
1
q1 0 (0)
Le equazioni cinematiche per la posizione si scrivono tenendo conto che la posizione relativa tra due membri i j ij tra i membri i k , note le posizioni tra i j e j k, ik = ijjk tra lorgano terminale n e la base (0)
M 0 n = M 01M12 LM i 1,i M i ,i +1 LM n 2, n 1M n 1, n
definire una procedura conveniente per scrivere i-1,i (qi )
2
Equazioni cinematiche per velocit e accelerazione Le equazioni cinematiche per la velocit e accelerazione si ricavano considerando q2 q3 q1 3 corpi 1, 2 e 3 un sistema di riferimento fisso (0) Nota la cinematica di 1 (0) , 2 1 e 3 2 si scrive
(0 ) (0 ) (0 ) W13 =W12 + W23 (0 ) (0 ) (0 ) (0 ) W = W + W + W (0 ) 03 01 12 23 (0 ) (0 ) W03 =W01 + W13
Velocit
W (0 ) =
0n
(0 ) W i 1,i
i =1
Accelerazione
0) (0 ) (0 ) (0 ) (0 ) H13 = H12 +2W12 W23 + H (23 (0 ) (0 ) (0 ) (0 ) (0 ) H 03 = H 01 +2W01 W13 + H13 W ( 0 ) =W ( 0 ) + W ( 0 ) 12 23 13
(0 ) (0 ) (0 ) (0 ) (0 ) (0 ) (0 ) (0 ) (0 ) H 03 = H 01 +2W01 W12 + W23 + H12 + 2W12 W23 + H 23 0) (0 ) 0) (0 ) (0 ) (0 ) (0 ) (0 ) = H (01 + H12 + H (23 + 2 W01 + W12 W12 + W01 W23
) (
0) (0 ) + 2 H( = H 0n i 1,i i =1
j = 2 k =1
) Wk(0)1,k W (j0 1, j
3
j 1
(n )
qn n i
qi
4
2
i-1
q2
2
1
q1 0 (0)
Le equazioni cinematiche per la velocit e laccelerazione possono assumere una diversa forma usando le le relazioni W (i ) = L(i )q &,
2 2 && + L(i ) q & H (i ) =L(i )q
n (0 ) (0 ) W0 n = Wi 1,i i =1 n ( ) (0 ) q 0 W &i L = n i i 0 1 , i =1
qi-1
Consideriamo i membri contigui i-1 i
qi i
qi+1
i+1
i-1
La matrice Mi-1,i dipende dalla posizione reciproca delle terne (i-1) (i) e quindi dipende dalla geometria dei membri dal movimento relativo tra i membri i i-1 e quindi dalla coordinata del giunto qi che definisce la posizione relativa dei membri i i-1 Un posizionamento adeguato produce una semplificazione di Mi-1,i Conviene quindi stabilire delle regole di posizionamento delle terne
1o asse (Zi) coincidente con lasse del giunto i+1 tra i membri i i+1 2o asse (Xi o Yi) normale allasse Zi-1 della terna (i-1) 3o asse (Yi o Xi) terna destra 5
Definisce il posizionamento standard delle terne solidali ai membri di un manipolatore seriale. Si considerano giunti elicoidali. Posizionamento della terna (i ) La terna (i) solidale al membro i si posiziona secondo le seguenti regole asse Zi coincidente lasse del giunto i+1
Joint i
Joint i+1
asse Xi lungo la normale comune agli assi Zi-1 e Zi dal giunto i a i+1 se Zi-1 e Zi sono sghembi Xi lungo la normale comune a Zi-1 e Zi
r r se Zi-1 e Zi si intersecano normale al piano di Zi-1 e Zi ki 1 ki se Zi-1 e Zi sono paralleli se possibile conviene Xi parallelo a Xi -1 se il giunto i prismatico Zi-1 parallelo al membro i e interseca Zi in Oi
origine Oi intersezione tra Zi e la normale comune tra gli assi Zi-1 e Zi asse Yi terna destra
6
Parametri di D&H
Joint i
Il posizionamento delle terne secondo la convenzione esposta definisce dei parametri che costituiscono la descrizione geometrica del robot
Joint i+1
I parametri di e i fornendo la descrizione del giunto i dipendono dalla posizione del giunto. I parametri ai e i fornendo la descrizione del braccio i sono costanti. Per il giunto elicoidale i
Joint i
la rotazione modifica i la traslazione modifica di La variabile qi di giunto unica e indica lampiezza del movimento relazioni tra la coordinata del giunto qi e i e di
i Joint i+1
i = rqi + 0i d i = pi qi + d 0i
Joint i
4
2
di distanza O(i-1) Xi, lungo Zi-1 i angolo tra Xi-1 Xi, intorno Zi-1 ai distanza O(i) Zi-1, lungo Xi i angolo tra Zi-1 Zi, intorno Xi
Joint i+1
In generale
i = ri qi + 0i di = pi qi + d 0i
terna (0) origine coincidente con lintersezione tra lasse Z0 e la normale comune agli assi Z0 e Z1, con questa scelta d1 sempre nullo; X0 e Y0 arbitrari terna (n) origine coincidente con
i Joint i+1
Ou
Anche se non fa esplicitamente parte della convenzione di Denavit e Hartenberg, si riporta una convenzione esistente per la collocazione della terna utensile (u)
Xu Yu
(u)
Zu
la terna utensile (u) si sceglie in relazione al tipo di organo terminale per un organo di presa tipo pinza
Ou centro pinza Zu direzione di approccio Yu direzione di scivolamento Xu normale a Zu e Yu per formare una terna destra
ci comporta che in genere la terna (n) (u) si introduce unulteriore matrice di posizione Mn,u che per costante
11
di distanza O(i-1) Xi, lungo Zi-1 i angolo tra Xi-1 Xi, intorno Zi-1 ai distanza O(i) Zi-1, lungo Xi i angolo tra Zi-1 Zi, intorno Xi
Joint i+1
esprime la posizione della terna (i) rispetto alla terna (i-1) e quindi del braccio i rispetto il braccio i-1 pu essere pensata come derivante da 4 rototraslazioni successive (i 1) (i 1) (i 1) (i 1) (i ) dalla relazione Q (i 1) = Q (i ) = M i 1,i e dalla regola di composizione di Q(i ) secondo una terna corrente si ha
1 ) M i 1,i = Q (zi 1) (0, di ) Q (zi1 ) ( i ,0 ) Q (xi1 ) (0, ai ) Q (xi ( i ,0 )
12
8
2
Ponendo
1 0 R T 1 1 i 1) Q( ( 0, di ) = 0 1 = z 0 0 1 T3 0 = 1 0 0
Q x
( i 1 ) 0, a = R 3 ( i)
0
0 0 ai 1 0 0 0 1 0 0 0 1
Q x
( i 1) , 0 = R 4 ( i )
0
1 0 T4 0 c i = 1 0 s i 0 0
0 s i c i 0
Eseguendo i prodotti si ha
I T1 R 2 0 M i 1, i = 0 1 1 0 R 2 R 4 R 2 T3 + T1 = 1 0 I 0 T3 R 4 0 1 0 R 2 = 1 0 T1 1 R 4 0 T3 = 1
13
Esplicitando le sottomatrici
R R M i 1, i = 2 4 0 R 2 T3 + T1 1
c i s i 0 s c R = 0 i i 2 0 1 0 0 1 0 R = 0 c s i i 4 0 s i c i
0 T1 = 0 d i ai T3 = 0 0
M i 1,i
c i s = i 0 0
s i c i c i c i s i 0
s i s i c i s i c i 0
ai c i ai s i di 1
la matrice Mi-1,i dipende da 4 grandezze di , i , ai i, i mentre la posizione relativa di 2 corpi nello spazio dipende da 6 gradi di libert la scelta della terna (i) rispetto alla terna (i-1) vincolata dalla convenzione di D&H la convenzione di D&H descrive geometricamente un robot con una tabella dei valori di di , i , ai , i
14
di distanza O(i-1) Xi, lungo Zi-1 i angolo tra Xi-1 Xi, intorno Zi-1 ai distanza O(i) Zi-1, lungo Xi i angolo tra Zi-1 Zi, intorno Xi
c i s = i 0 0 s i c i c i c i s i 0 s i s i c i s i c i 0 ai c i ai s i di 1
6
5
4
3
M i 1,i
2 1
Manipolatore con 6 gradi di libert e costituito da struttura portante sferica polso sferico
di , O(i-1) Xi, lungo Zi-1 i , Xi-1 Xi, intorno Zi-1 ai , O(i) Zi-1, lungo Xi i , Zi-1 Zi, intorno Xi
6
5
4
3 2 1
terna 0
X0 O0
Y0
terna 1
O0 O1 X0 X1
Z0 Z1 Y0 Y1
Z1 coincidente asse rotoidale tra 1 e 2 X1 normale al piano di Z0 e Z1 c1 0 s1 0 s O1 intersezione tra Z0 e Z1 0 0 c 1 M 01 = 1 d1 = 0, 1 = variabile q1 0 1 0 0 a1 = 0 , 1 = -90
0 0 0 1
16
ci si ci si si ai ci s c c c s a s i i i i i i Mi1,i = i 0 si ci di 0 0 0 1
di , O(i-1) Xi, lungo Zi-1 i , Xi-1 Xi, intorno Zi-1 ai , O(i) Zi-1, lungo Xi i , Zi-1 Zi, intorno Xi
5
6 4
Z2 d2
3 O2 2 1
terna 2
O1 X1 Y1
Z1 Y2 X2
Z2 coincidente asse prismatico tra 2 e 3 X2 normale al piano di Z1 e Z2 O2 intersezione tra Z1 e Z2 d2 = d2, 2 = variabile q2 a2 = 0, 2 = 90
M12
c 2 s = 2 0 0
s 2
0 c 2 1 0 0 0
0 0 d2 1
17
4
3
ci si ci si si ai ci s c c c s a s i i i i i i Mi1,i = i 0 si ci di 0 0 0 1
di , O(i-1) Xi, lungo Zi-1 i , Xi-1 Xi, intorno Zi-1 ai , O(i) Zi-1, lungo Xi i , Zi-1 Zi, intorno Xi
6
5
4
3
terna 3
X3 d3
Z3 Y3 O3 Z2 Y2 X2 O2
M 23
1 0 = 0 0
0 1 0 0 0 1 d3 0 0 1 0 0
2 1
Z3 coincidente asse rotoidale tra 3 e 4 X3 parallelo a X2 O3 posizione di riferimento per la traslazione d3 = variabile q3 , 3 = 0 a3 = 0 , 3 = 0
18
ci si ci si si ai ci s c c c s a s i i i i i i Mi1,i = i 0 si ci di 0 0 0 1
di , O(i-1) Xi, lungo Zi-1 i , Xi-1 Xi, intorno Zi-1 ai , O(i) Zi-1, lungo Xi i , Zi-1 Zi, intorno Xi
6
5
4
3 2 1
Z3
terna 4
O3 O4 X3 X4 Y4
Y3 Z4
Z4 coincidente asse rotoidale tra 4 e 5 X4 normale al piano di Z3 e Z4 O4 intersezione tra Z3 e Z4 d4 = 0, 4 = variabile q4 a4 = 0 , 4 = -90
M 34
c 4 s = 4 0 0
0 0 1 0
s 4 c 4 0 0
0 0 0 1
19
ci si ci si si ai ci s c c c s a s i i i i i i Mi1,i = i 0 si ci di 0 0 0 1
di , O(i-1) Xi, lungo Zi-1 i , Xi-1 Xi, intorno Zi-1 ai , O(i) Zi-1, lungo Xi i , Zi-1 Zi, intorno Xi
5
6 4
Z5
3 Y5 Z4 Y4 1 2
terna 5
X4
O4 O5 X5
M 45
c 5 s = 5 0 0
0 s 5 0 c 5 1 0 0 0
0 0 0 1
20
M i 1,i
c i s = i 0 0
s i c i c i c i s i 0
s i s i c i s i c i 0
ai c i ai s i di 1
7
6
6
5
4
3
Z5
terna 6
Z6 O5 O6 Y6 Y5
X5
X6
M 56
c 6 s = 6 0 0
0 s5
s 6 c 6 0 0
0 0 0 0 1 0 0 1
0 c6 s6 0 0 s 0 0 c 0 c5 0 6 6 0 1 0 1 0 0 0 0 0 1 0 0 1 0 q5 = 5 q6 = 6 21
SPOSTAMENTO INFINITESIMO DELLEFFETTORE Per esprimere il legame tra gli spostamenti infinitesimi dei giunti e dellorgano terminale utile ricordare che la matrice M0k descrive la posizione del membro k rispetto al riferimento (0) M 0k (q1,L qk ) = M 01(q1 ) M12 (q2 ) L M i 2,i 1 (qi 1 ) M i 1,i (qi ) M i ,i +1 (qi +1 ) L M k 1, k (qk ) e quindi M0k dipende dalle variabili ai giunti generica solo se i k ricordando 9 lespressione dP( 0 ) = L( 0 ) P( 0 )dq dello spostamento infinitesimo 9 che M0n contiene i punti notevoli della terna utensile rispetto a (0) 9 che le rototraslazioni infinitesime successive si sommano 9 si pu dire che lo spostamento infinitesimo dellorgano terminale la somma delle rototraslazioni infinitesime dei giunti
dM 0 n
n (0 ) = L i 1,i dqi M 0n i =1
22
PROBLEMA CINEMATICO DIRETTO E INVERSO Per mostrare limpostazione e i metodi di soluzione dei vari problemi cinematici opportuno stabilire alcune posizioni
Per semplicit consideriamo il moto del solo organo terminale Adottiamo una rappresentazione in forma minima della posa dellorgano terminale La terna utensile (u) si sceglie in base al tipo di organo terminale Per esempio per un organo di presa tipo pinza si sceglie
Ou Xu Yu (u) Zu
In genere la terna (n) (u) si introduce quindi unulteriore matrice di posizione Mn,u costante
23
Rappresentazione nello spazio esterno Le grandezze di interesse nel sistema cartesiano esterno si scrivono
yp
zp
}T
s1s2 c1s2 c2
matrice di rotazione
xp
( )
( )
xp R y p E M 0n (S ) = zp 0 0 0 1 1 & S,S M 0n (S )
}T
0) & && && & && 1 Matrice delle accelerazioni H( 0n S, S, S = M0n S, S, S M0n (S )
24
Coordinate dei giunti Q g = { q1 Matrice di posizione M 0n Q g Matrice della velocit Matrice della accelerazione
q2 L qn
}T
( )
( )
M 0 n Q g = M i 1,i ( qi )
( )
i =1
1 M0 n Qg
( )
1 M0 n Qg
( )
25
Cinematica diretta
Consiste nel calcolo del moto dellorgano terminale a partire dalle coordinate dei giunti
Si indichi con
Q g = { q1 q2 L qn } ,
S = {s1 s2 L s6 }
26
5
2
Per la posizione si ha
Incognita
Termini noti
M0n(S)
Qg
Risulta completamente determinato una volta definite le matrici di posizione Mi-1,i(qi) tra i membri contigui i -1 i Si risolve con procedure completamente automatiche
n
M 0n Q g = M 01 ( q1 ) L M i 1,i ( qi ) L M n 1, n ( qn ) = M i 1,i ( qi )
i =1
( )
M 0n ( S ) = M 0n Q g
( )
27
Per la velocit
Incognita
Termini noti
6
3
(0 ) S,S & W0 n
( )
dQg /dt
Risulta completamente determinato una volta definite le matrici dellasse elicoidale Li-1,i tra i membri contigui i -1 i rispetto a una terna locale ricordando
Li 1,i = M 0,i 1 ( q1, q2 ,L , qi 1 ) Li 1,i M i 1,0 ( q1, q2 ,L , qi 1 )
( 0)
( i 1)
si ha
)
28
Per laccelerazione si ha
Incognita
0) & && H( 0 n S,S, S
Termini noti
d 2Qg /d t 2
j = 2 k =1
j 1
Wk 1, k W j 1, j =
(0)
(0)
= i 1,i Q g i =1 +2
n j = 2 k =1
(0) L
( )
(0)
j 1
L k 1, k Q g
( )
L j 1, j Q g
(0)
( )
&k q &j q
H 0n
( 0 ) S, S && ( &, S
29
Cinematica inversa
&i , q &&i calcolo delle coordinate dei giunti e delle loro derivate qi , q (0 ) S, S & , H (0 ) S, S &,S && noto il moto dellorgano terminale M 0 n (S ), W0 n 0n Per la posizione in genere si risolve con procedure laboriose
( )
Per la soluzione importante la scelta delle coordinate esterne impiegate per descrivere la posa dellorgano terminale
il numero di elementi di
il centro pinza
lorientamento offre pi possibilit di scelte, ma nessuna soddisfacente
le rappresentazioni minime hanno delle singolarit la matrice di rotazione necessita di vincoli matematici le derivate non corrispondono alle velocit angolari le scelte ottimali sono diverse per la progettazione e per il controllo
30
Equazioni GdL
9
2
Per la posizione si ha
Incognita
M 0n Q g = M 0n ( S )
Termini noti
( )
Qg
M0n(S)
GdL equazioni non lineari nelle n incognite qi (0) Q , Q ( 0 ) S, S & &) W = W Per la velocit si ha g) 0n ( g 0n (
Incognita Termini noti
dQg /dt
(0 ) S,S & W0 n
( )
GdL equazioni lineari nelle n incognite dqi /dt (0 ) & , Q && ) = H ( 0 ) ( S , S &, S && ) Per laccelerazione si ha H 0n (Q g , Q g g 0n
Incognita Termini noti
0) & && H( 0 n S,S, S
d 2Qg /dt 2
)
31
Problema diretto
Z1 X1
di , O(i-1) Xi, lungo Zi-1 i , Xi-1 Xi, intorno Zi-1 ai , O(i) Zi-1, lungo Xi i , Zi-1 Zi, intorno Xi d1 = h, 1 = variabile, a1 = a, 1 = 0 d2 = 0, 2 = variabile, a2 = b, 2 = 0 d3 = variabile, 3 = 0, a3 = 0, 3 = 0
32
Z1 X1
Z2 X2 Y1 Z3 Y3 Y2 l
M i 1,i
c i s = i 0 0
s i c i c i c i s i 0
s i s i c i s i c i 0
ai c i ai s i di 1
2
2
Z0 X0 Y0
X3
si = sin i ci = cos i
M 01
c1 s = 1 0 0
s 1 c 1 0 0
0 0 1 0
a c1 c 2 s a s 1 M 12 = 2 0 h 1 0 0 0 1 0
M 03
c1c2 s1 s2 c s + c s = 2 1 1 2 0 0
c2 s1 c1 s2 c1c2 s1 s2 0 0
b (c1c2 s1 s2 ) + a c1 b (c2 s1 + c1 s2 ) + a s1 hl 1
33
Problema inverso
2 1
O
c1c2 s1s2 c s + c s = 2 1 1 2 0 0
calcolo di 1 , 2 e l nota la matrice M03(Q) la pinza ha 3 GDL quindi le 4 coordinate x p , y p , z p , non sono indipendenti
M 03
La 5a identifica da sola la coordinata l Dalle prime 2, non indipendenti, e dalla struttura di M03 che definisce una rotazione intorno a Z si ha
A = c1 c 2 s1 s 2 = cos ( 1 + 2 ) B = c 2 s1 + c1 s 2 = sin ( 1 + 2 )
A = c1c2 s1s2 = cos(1 + 2 ) B = c s + c s = sin ( + ) 2 1 1 2 1 2 x p = b(c1c2 s1s2 ) + ac1 y = b(c s + c s ) + as 2 1 1 2 1 p l = h zp z p = h l A = cos = 1 + 2 B = sin 34
4
2
2 = arccos
2 2 2 + x2 y a b p p
2ab
35
5
3
Y yp
a b 2 b sin 2 b cos 2
1
9
xp
Risulta quindi
Le relazioni precedenti insieme allequazione ripetuta a fianco confermano, che una volta stabiliti xp e yp , resta fissato lorientamento della pinza
= 1 + 2
36
Soluzione del problema cinematico diretto e inverso per la posizione per una struttura portante sferica
3 gradi di mobilit 2 accoppiamenti rotoidali con assi normali tra loro 1 accoppiamento prismatico con asse normale allasse del giunto
rotoidale precedente
37
X1 a
1 Z 0
2 1
b 2
Y2
l
c 3
Per la soluzione del problema cinematico diretto e inverso per la posizione assumiamo posizionamento arbitrario delle terne coordinate dei giunti Q 1 , 2 e l coordinate esterne S M03
X1 Z1 Y1
2
Z2 Y2
l
Z3 Y3 X3
Z0 X0
X2
1 Y0
38
Problema diretto Calcolo della matrice M03 note le coordinate dei giunti 1 , 2 e l
X1 Z1 Y1
2
Z2 Y2
l
Z3 Y3 X3
Z0
X2
Ponendo
c1 s = 1 0 0 c1 s = 1 0 0
s1 c1 0 0 s1c 2 c1c 2 s2 0 0 0 1 0
si = sin i ci = cos i 0 0 a 1 s1 s2 c1 s2 c2 0 1 0 = 0 0 0 c2 s2 0
1 Y0
X0
M 01
M 12
0 s2 c2 0
0 b c2 b s2 1
M 23
1 0 = 0 0
0 1 0 0
0 0 1 0
0 l + c 0 1
M 03
s1c 2 (l + c ) b s1 c 2 c1c 2 (l + c ) + b c1 c 2 s2 (l + c ) + b s2 + a 1
Z2 Y2
l
Z3 Y3 X3
Z0 X0
X2
1 Y0
xp , yp , zp
1,2
2 l = x2 + y p p + zp a
cb
4 valori
)2
yp xp 1 = atan2 c (l + c + b) , c (l + c + b) 2 2
41
Il problema cinematico inverso per la posizione fornisce 4 soluzioni Assegnati xp , yp e zp 4 insiemi di 1, 2 e l soddisfano la posa, cio esistono 4 posture del robot che soddisfano la posa della pinza Questo risultato pu essere visto geometricamente
6
3
2 1
0
1, + , 1
2 , 2 ,
1 1
2 l = x2 + y p p + zp a
( (
) )
2 2
cb cb
l=
x2 p
y2 p
+ zp a
2 1
0
1, 1 + ,
2 + ,
2 ,
2 2
l = 1l 2 ( c + b ) l = 1l 2 ( c + b )
42
CINEMATICA INVERSA PER LA POSIZIONE: SOLUZIONE ANALITICA La soluzione del problema cinematico inverso per la posizione richiede operazioni non standardizzate e a volte complesse e non sempre pu essere risolto analiticamente. utile quindi fornire ulteriori nozioni. conveniente, se possibile, la soluzione analitica calcolo pi veloce delle qi se si dispone di equazioni determinazione del numero di soluzioni Il metodo di soluzione del problema inverso per la posizione va ricercato caso per caso Per i manipolatori che ammettono una soluzione analitica opportuno stabilire delle procedure il pi possibile automatiche La ricerca della soluzione in forma analitica pu essere facilitata da alcune metodologie
43
Metodo del Grafo di Paul una procedura che aiuta a scrivere le equazioni necessarie alla soluzione Consideriamo un manipolatore con 6 gradi di mobilit e 6 GdL
Rappresentiamo la catena cinematica di un manipolatore con un grafo Tagliamo il grafo per esempio con una linea passante per i membri 2 e 6
M12
M23
3 M 34
M45
M01
0
M06
M56
6
Per un manipolatore con n gradi di mobilit n (n -1) /2 tagli diversi Si hanno n(n -1) relazioni matriciali equivalenti con forma diversa tra le quali si possono cercare le relazioni scalari pi convenienti
44
q4
q3
4
q5 q6
5 6
q4 u4 Z3
4
q5 u5 Z4
q2 q1
0
2
1
La sottomatrice di rotazione di M34 R34 contiene quattro 0 e un 1, se si adottata per esempio la convenzione di Denavit-Hartenberg per la collocazione delle terne si ha, essendo i = q4 e i = 4 = 0
c i s = i 0 0 s i c i
M i 1,i
c i c i s i 0
s i s i c i s i c i 0
ai c i ai s i di 1
R 34
cq4 = sq4 0
sq4 cq4 0
0 0 1
M i 1,i
c i s = i 0 0
s i c i c i c i s i 0
s i s i c i s i c i 0
ai c i ai s i di 1
RT 45
0 s 5 c 5
46
5
3
si ha
cq4 sq 4 0
sq4 cq4 0
0 r11 r 0 = 21 1 r31
0 s 5 c 5
Dalla relazione matriciale precedente si ricavano le relazioni scalari, non tutte indipendenti, in cui non compaiono le variabili di giunto q4 e q5
6
4
in virt di elementi nulli o indipendenti dalle variabili di giunto, consente di ottenere relazioni semplici che non dipendono da q4 e q5 del tipo
1 = f1 [q1, q2 , q3 , q6 , S ] 0 = f 2 [q1, q2 , q3 , q6 , S ]
Ci deriva dal fatto che gli assi dei giunti 4 e 5 restano sempre paralleli. Si pu ricavare la seguente regola: lestrazione del membro i consente di trovare equazioni che non dipendono da qi e qi+1 Questa tecnica pu estendersi nel modo seguente: se due giunti qualsiasi i e j del manipolatore mantengono sempre lo stesso orientamento reciproco, scindere la catena cinematica in corrispondenza di i e j , cio in corrispondenza dei membri i e j-1, permette di trovare equazioni in cui non compaiono le variabili di giunto qi , qi+1 , , qj-1 , qj .
48
CINEMATICA DIFFERENZIALE INVERSA utile richiamare il problema cinematico inverso prima di introdurre il problema cinematico inverso per la velocit e laccelerazione
&i e q &&i per ogni giunto partendo dalla Consiste nel calcolare le qi , q posizione, velocit e accelerazione assolute della pinza espresse nelle
coordinate esterne
&, S && S, S
(0 ) & (0 ) & ,S && in funzione Esprimendo le matrici M 0 n (S ) , W0 n S,S e H 0 n S,S delle matrici di posizione, velocit e accelerazione relative tra i membri &i e q &&i , si ottengono le relazioni funzioni delle qi , q
( )
M 0 n (S ) = M i 1,i (qi ) ,
i =1
( )
&i ) L(i0)1,i (Q ) q
i =1
n n j 1 (0) 0 ( ) ( 0 ) Q, Q &,S && = & ,Q && + 2 & W ( 0 ) Q, Q & = H 0 n S, S H Q , Q W i 1,i j 1, j k 1, k i =1 j = 2 k =1 n j 1 n (0) 0) 2 ( (0) (0) 2 &&i + Li 1,i ( Q ) q &i + 2 L k 1, k ( Q ) L j 1, j ( Q ) q &k q &j = Li 1,i ( Q ) q i =1 j = 2 k =1
49
0 uz 0) ( Li 1,i = u y 0
0
u z 0 ux 0
uy u x 0 0
t x ( ) ty tz 0 i 1,i
0 0)
x
0
V0 x ( ) x V0 y 0 V0 z 0 0 i 1,i
2 & + 0) ( Hi 1,i = 0 0 0
A0 x ( A0 y A0 z 0
i 1,i
Risolto il problema inverso della posizione Q , i problemi inversi della velocit e dellaccelerazione sono rispettivamente lineari && & e Q rispetto a Q
W H
& Q && Q
50
CINEMATICA INVERSA PER LA VELOCIT Consideriamo per le prossime relazioni un sistema di riferimento generico (k) anzich (0)
&i per ogni giunto partendo dalla posizione e Consiste nel calcolare le q velocit della pinza, una volta che le qi sono state gi determinate n & si ottiene & = W (k ) S , S Dalla relazione L(k ) (Q ) q
i =1
i 1,i
0n
( )
u z1 u y1 t x1 0 u u t 0 x1 y1 z1 u y1 u x1 t z1 0 0 0 0 0 0 u +L+ zn u yn 0 u zn 0 u xn 0 u yn u xn 0 0
(k )
Le matrici che compaiono nellespressione precedente possono essere riorganizzate in un funzione delle V0 x ,V0 y ,V0 z e x , y , z
51
t x2
txi
(k )
( )
& = J (k ) (Q )1 V (k ) S , S & Q
( )
Unopportuna scelta del riferimento (k) pu semplificare i calcoli. ( k ) , V ( k ) e V ( k ) non hanno un significato specifico terna (k) V 0x 0y 0z
terna ausiliaria (a) cio riferimento con orientamento fisso e origine ( k ) ,V ( k ) V ( k ) V nel centro pinza 0x 0y e 0 z rappresentano la velocit del centro pinza, mentre rimane invariato
52
CINEMATICA INVERSA PER LACCELERAZIONE Anche in questo caso consideriamo per le relazioni un sistema di riferimento generico (k) anzich (0)
&&i per ogni giunto partendo dalla posizione, Consiste nel calcolare le q &i sono state velocit e accelerazione della pinza, una volta che le qi e q gi determinate
Dalla relazione
j 1
j = 2 k =1
j 1
~ (k ) (k ) (Q) q & , S, S & ,S && & & L = H Q, Q 9 Il secondo membro noto, si ha i 1,i i
i =1
( )
53
&&i analoga a quella della velocit, si 2 La relazione nei confronti delle q pu quindi riorganizzare lespressione matriciale in modo da utilizzare i ~ (k ) risultati gi ottenuti h14 ~ h 24 ~ h 1 ~ ~ ~ (k ) ~ ~ (k ) 34 && = A (k ) Q && = J (k )(Q ) A (k ) con A (k ) = J (k )(Q )Q = h H ~ ij h 32 ~ n ~ (k ) h ( k) & , S, S & ,S && ) 13 &&i = H (Q , Q L i 1,i (Q ) q ~ h i =1 21
La rielaborazione delle matrici permette di utilizzare la matrice J(k) gi calcolata; se J(k) invertibile il problema risolto
& = V si ha Derivando lespressione della velocit J Q ~ & & & & & 1 ~ & & J 1V A = V & + JQ && = J & +A & =J &Q &Q JQ = V JJ V = A J A=V V ~ & J 1V A =AJ 9 dalla quale
Se scegliamo come riferimento la terna ausiliaria (a) (con origine nel centro pinza e traslante ) i valori che compaiono nellultima colonna della a) H( 0 n sono le accelerazioni del centro pinza
54
Z1 Z0 X1 l1
X2 l2 Y1 X3
Z2 Z3 Y2
l
Y3
X0
Y0
s c 0 0 0 l1c c s 0 l1 s M12 = 0 h 1 0 1 0 s c 0 0 0 l2 c 1 0 0 l 2 s M 23 = 0 1 0 0 1 0
c s M 01 = 0 0
0 1 0 0
0 0 0 0 1 l 0 1
c( + ) s ( + ) s( + ) c( + ) M 03 = 0 0 0 0
0 l2 c( + ) + l1c 0 l2 s( + ) + l1s 1 hl 0 1
55
Z1 Z0 X1 l1 Y1 X3
0
Z2 Z3 l2 Y2
utile per gli sviluppi successivi la determinazione delle matrici L degli assi elicoidali
9 2 giunti rotoidali L01 e L12 9 1 giunto prismatico L23
h X0 Y0
Y3
0 1 1 0 0) 1) = L(12 = L(01 0 0 0 0
0 0 0 0 0 0 0 0
0 0 2) = L(23 0 0
0 0 0 0 0 0 1 0 0 0 0 0
l1 s 0 1 0 1 0 0 l c 1 = 0 0 0 0 0 0 0 0
2) 0) = M 02 L(23 L(23 M 20
0 0 = 0 0
0 0
0 0 0 0 0 0 1 0 0 0 56
W (0 ) =
03
(0 ) q L i 1,i &i
i =1
0 0 0 0 & 0 0 0 0
0 0 0 0 l& 0 0 1 0 0 0
La matrice che permette di conoscere la distribuzione di velocit dellorgano terminale & 0 & s & l1 0 & & & l c 0 0 + V0 ( ( ( ( 0) 0) 0) 0) 1 W03 = W01 + W12 + W23 = = & 0 0 0 0 0 l 0 0 0 0
57
4
2
& ( 0 ) = W ( 0 ) P( 0 ) = W( 0 ) M P( 3) P P 03 P 03 03 P c ( + ) s ( + ) 0) 3 ) s ( + ) c ( + ) ( ( PP = M 03PP = 0 0 0 0
l2 c ( + ) + l1 c + + l s l s ( ) ( 0) 2 1 PP = h l 1
( 0)
0 l2 c ( + ) + l1 c 0 ( 3) 0 l2 s ( + ) + l1s 0 0 1 hl 0 1 1
0 0 0 0
58
Lo stesso risultato si ottiene usando la terna ausiliaria (a) avente origine sempre nel centro pinza, ma traslante
I (a) ( 0) W03 = M a 0 W03 M 0a M 0a = 3 0 1 3 O( 0 ) 0 3 = 0 1 0 0 0 l2 c ( + ) + l1 c 1 0 l2 s ( + ) + l1 s 0 1 hl 0 0 1
3 O( 0 ) 3 =
5
3
( 0) 3O3 + V0 = 0
( (
) )
& Vx = l1sin & l2 sin ( + ) &+ & & + l2 cos( + ) &+ V y = l1cos & Vz = l & &+ z =
( (
) )
59
Velocit: problema inverso Sono assegnate le velocit dellorgano terminale VPx , VPy , VPz e e & si vogliono trovare le Q Equivale a conoscere W (a ) cio la matrice di velocit nel riferimento ausiliario (a)
03
Utilizziamo lespressione
( )
Applicando lespressione
0 1 0 0 1 0 0 0
( )
si ha il risultato
7
2
0 1 0 l 2 s ( + ) l2 s ( + ) l1 s 0 0 0 0 0 0 0 0 l2 c ( + ) + l1 c l c 1 0 0 + ( ) 2 l& = &+ &+ 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 z y VPx 0 V 0 z x Py = nel caso specifico solo le velocit del V 0 x Pz y centro pinza sono assegnate e comunque 0 0 0 0 solo z sarebbe diverso da zero
H (0 ) =
03
0 )2 2 0 )2 & 2 0 ) 2 &2 0) 0 ) && 0 )&& 0 ) (0 ) & 0 ) (0 ) & 0 ) (0 ) & & && + L(01 & + L(12 & + L(01 & l + L(12 =L(01 + L(12 + L(23 l + L(23 l + 2 L(01 L12 L 23 L 23 l 1 4 24 3 1 1 2 3 42 4 3
0 0 0
Risultano nulli
0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 =0 0 1 0 0 0 1 0 ) ( 0 ) 1 0 ( L01 L 23 = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 =0 0 1 0 0
0 0 0 ( ) L 23 2 = 0 0
0 1 0) ( 0) 1 0 ( L12 L 23 = 0 0 0 0
0 l1 s 0 0 0 0 0 l1 c 0 0 0 0 0 0 0 0
0 0 0 0 = 0 0 1 0 0
62
9
2
0 1 1 0 ( 0) L01 2 = 0 0 0 0
0 1 1 0 0 0 0 0
0 1 0 ) ( 0 ) 1 0 ( L01 L12 = 0 0 0 0
0 0 0 0
0 0 0 0
0 1 1 0 0 0 0 0
0 l1s 1 0 0 1 0 l1c = 0 1 0 0 0 0 0 0
0 l1c 0 l1s 0 1 0 0
63
10
3
( ) & )2 & + (
&& && +
0 0
2 && && 2 cos & & && & + + + + + l sin cos l sin ( ) ( ) 2 1 2 3 A( 0 ) = 3 P 2 sin && & && ( 0 ) = && & && & + + + + + l cos sin l cos ( ) ( ) 2 p p 1 && l
Lo stesso risultato si raggiunge esprimendo la matrice delle accelerazioni a) a rispetto alla terna ausiliaria (a) H( 03 la cui 4 colonna fornisce direttamente laccelerazione del centro pinza
64
Accelerazione: problema inverso Assegnate le accelerazioni dellorgano terminale Ax , Ay , Az , si && vogliono trovare le Q Equivale a conoscere H (a ) cio la matrice di accelerazione nel riferimento ausiliario (a)
03
11
( ( 0 )2 & 2 0 )2 2 ( ( ( ( 0 ) (0 ) & 0) 0) 0 ) && 0 )&& & + L12 + 2L(01 & && + L12 + L 23l + L 01 H 03 = L 01 L12
pre- e post-moltiplicando per Ma0 e M0a e ordinando opportunamente ( ( a )2 2 a )2 & 2 ( ( ( ( a) a ) && a ) && a) & & L 2 L(a ) L(a ) & && + L + L l = H L L
01 12 23 03 01 12 01 12
a) a) a) , L(12 , L(23 L(01 sono state gi calcolate risolvendo il problema inverso
0 1 0 l2 s ( + ) l1s 1 0 0 ( ) l c l c + + 2 1 ( a )2 L 01 = 0 0 0 0 0 0 0 0
12
2
0 l2 s( + ) 0 l2 c( + ) 0 0 0 0
0 1 1 0 0 0 0 0
0 l2 s( + ) 1 0 0 1 0 l2 c( + ) = 0 0 0 0 0 0 0 0
0 l2 c( + ) 0 l2 s ( + ) 0 0 0 0
0 l2 c( + ) 0 l2 s( + ) 0 0 0 0
0 l2 s( + ) l1s 0 1 1 0 0 l2 c( + ) + l1c 0 0 0 0 0 0 0 0
0 l2 s ( + ) 0 1 1 0 0 l2 c( + ) = 0 0 0 0 0 0 0 0
( ( a )2 2 a )2 & 2 ( ( ( ( a) a ) && a )&& a) a ) (a ) & && + L12 + L 23 l = H 03 L 01 & L12 2L(01 & L 01 L12
si ottiene
66
&&l sin ( + ) &&( l2 sin ( + ) l1 sin ) 0 2 &&l cos( + ) &&( l2 cos( + ) + l1 cos ) + 0 2 = & 0 l& 0 0 &2 + & &2 + & 2 + 0 0 & 0 0 0 0
13
3
&2 + & l cos( + ) + &2 + & & 2l1 cos Ax + 2 2 2 2 & & & & & Ay + + + l2 sin ( + ) + l1 sin Az 0
( (
) )
( (
) )
67