cinematica differenziale e statica - intranet deibhome.deib.polimi.it/magnani/fdrobotica/cinematica...
TRANSCRIPT
Fondamenti di robotica
Cinematica differenziale e statica
Prof. G. Magnani ([email protected])
Nota:Diversi disegni riportati in queste slide sono tratti dal testo:L.Sciavicco, B.SicilianoRobotica industriale –Modellistica e controllo di robot manipolatori(2a ed.) Mc Graw-Hill, 2000
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [2]
Cinematica differenziale e statica
Parte I
Cinematica differenziale
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [3]
Velocità di un puntoConsideriamo un punto P in moto rispetto ad un osservatore in O. Siano:
P la posizione all’istante t (ossia il vettore P−O)
P' la posizione all’istante t+Δt
ΔP = P'−P lo spostamento del punto nell’intervallo Δt
P
P'ΔP
O
Consideriamo il vettore ΔP/Δt e valutiamone il limite per Δt tendente a 0.
Otteniamo il vettore velocità del punto:
( ) ( )dt
tdt Pv =
Il vettore è diretto come la tangente alla traiettoria nel punto P.
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [4]
Velocità di un punto in moto rotatorioSi supponga che il punto P sia in moto lungo una circonferenza. Sia Δϕ l’angolo che ne descrive il moto nel passaggio dal punto P a P'.
Sia r il versore di un asse ortogonale al piano della circonferenza, passante per il centro O ed uscente dal foglio.
Se l’angolo Δϕ è infinitesimo, risulta:
( )OPrP −×ϕΔ=Δ
Dividendo per Δt e prendendo il limite per Δt tendente a 0 si ha la velocità del punto:
P
P'
ΔP
O Δϕ
( )OPrv −×ϕ= &
N.B.: Prodotto vettoriale c=a×b Direzione: ortogonale al piano di a e bVerso: regola della mano destraModulo: |c|=|a| |b| sin(ϑ), ϑ: angolo tra a e b
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [5]
Moto rotatorio intorno ad asse fissoSi abbia un corpo rigido in rotazione intorno ad un asse fisso. Sia r il versore dell’asse di rotazione e:
O un punto sull’asse
P un punto solidale con il corpo in moto
ϕ l’angolo formato rispetto ad un riferimento
La velocità del punto P si ottiene, qualunque sia O, come:
( )OPv −×= ω
con ω vettore velocità angolare, genericamente funzione del tempo.
Risulta inoltre:
PO
ϕ
r
rϕ= &ω
(la direzione ed il verso di ω sono quelli del versore r).
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [6]
Moto rotatorio con punto fissoSi abbia un corpo rigido in rotazione con un punto O fisso (moto polare).
E’ noto che la rotazione di una terna solidale con il corpo rispetto ad una terna fissa con origine in O è sempre rappresentabile con una rotazione di un angolo ϕ intorno ad un asse r (rappresentazione asse-angolo).
La velocità di un punto P del corpo si ottiene allora come:
( )OPv −×= ω
con ω vettore velocità angolare, funzione del tempo, ma non del punto P (è la stessa per tutti i punti del corpo).
Risulta inoltre:rϕ= &ω
La direzione ed il verso di ω sono quelli del versore r, e cambiano ad ogni istante (r=r(t): asse di istantanea rotazione).
P
O
ϕ
r
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [7]
Jacobiano geometricoLo Jacobiano geometrico di un manipolatore robotico esprime il legame tra le velocità dei giunti e la velocità dell’organo terminale (della terna utensile solidale con l’organo terminale).
Velocità della terna• velocità lineare dell’origine della terna (derivata temporale della posizione)• velocità angolare
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [8]
Moto rototraslatorio – velocità angolareIl più generale moto di un corpo rigido è quello in cui la velocità di un generico punto P si possa esprimere come:
O è un punto prefissato solidale al corpo
( )OPvv −×+= ωo
ω è il vettore velocità angolare del corpo funzione del tempo:
non dipende né da P, né da O.
Se poi consideriamo una terna solidale con il corpo:
vo è la velocità (lineare) dell’origine O della terna rispetto ad un osservatore fisso
ω è definibile come velocità angolare della terna stessa
P
O
ϕ
r
P
O
ϕ
r
xy
z
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [9]
Cinematica relativaConsideriamo un osservatore che diciamo “fisso” ed un secondo osservatore in moto rispetto al primo. Sia P un punto mobile: i due osservatori descriveranno il moto di P con leggi diverse.
Associamo a ciascun osservatore una terna. Siano:
V la velocità di P rispetto all’osservatore fisso
v la velocità di P rispetto all’osservatore mobile
Risulta (regola del parallelogramma delle velocità):
( )111 OPVV −×+= ωos
velocità di trascinamento (velocità che avrebbe P se si muovesse solidalmente con la terna mobile).
ω1 è la velocità angolare della terna mobile rispetto alla terna fissa.
O0
x0
y0
z0 x1
y1
z1
O1
P
sVvV +=con:
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [10]
Cinematica relativaConsideriamo la trasformazione di coordinate di un punto P dalla terna 1 alla terna 0:
Derivando:
101
01
0 pRop +=
101
101
01
0 pRpRop &&&& ++=
velocità relativa
velocità di trascinamento10
10
1 pRr =101
01 pRo && +
101
01
01
101
101
01
0 pRropRpRop &&&&&& +×+=++= 01ω
kji,ωSecondo pedice per il vettore ω?
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [11]
Jacobiano geometricoRitorniamo al manipolatore robotico ed analizziamo il moto della terna utensile (solidale con l’organo terminale).Come visto, possiamo definire la velocità lineare e la velocità angolare di tale terna: p e ω.
Obiettivo della cinematica differenziale è di esprimere queste velocità in funzione delle velocità delle variabili di giunto.
( )( )qqJ
qqJp&
&&
O
P
==
ω
.
In forma compatta possiamo scrivere:
( )qqJp
v &&
=⎥⎦
⎤⎢⎣
⎡=
ω
La matrice (6 n): ( ) ( )( )⎥⎦
⎤⎢⎣
⎡=
qJqJ
qJO
P
Prende il nome di Jacobiano geometrico del manipolatore.
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [12]
Jacobiano geometrico
Come ottenere e ?
vettori colonna (3×1)
matrice (3 n) – n coordinate libere[ ]PnPP jjJ ...1=
Pij
matrice (3 n) – n coordinate libere[ ]OnOO jjJ ...1=
Oij
Pij Oij
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [13]
Jacobiano geometrico
Equazione cinematica diretta ( )( )( )( )⎥
⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡=
qqq
qP
z
y
x
PPP
( ) ( ) ( )⎥⎦
⎤⎢⎣
⎡=
1T0qpqR
qT
( )
( )
( )
( )⎥⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢⎢
⎣
⎡
∂∂
∂
∂∂
∂
=
qJ
z
y
x
P
P
P
P
( )qqJqqPp &&& P=
∂∂
=( )
( )
( )
( )q
qP d
P
P
P
d
z
y
x
⎥⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢⎢
⎣
⎡
∂∂
∂
∂∂
∂
=
Differenziando
dividendo per dt
da cui
Un modo per ottenere (per differenziazione) Pij
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [14]
Jacobiano geometrico
è ottenibile da passando attraverso la sua derivata rispetto
al tempo
Evitiamo questo calcolo seguendo un approccio intuitivo.
L’approccio intuitivo fornisce anche
La è una funzione della velocità angolare ω
( )qR
( )qR&
OJ
Meno immediato ottenere Oij
PJ
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [15]
Velocità lineare di un braccio
Derivando:
1,111
−−−− += i
iiiii rRpp
velocità dell’origine della terna i rispetto alla terna i−1, espressa in terna base
origine della terna i rispetto alla terna i−1, espressa nella terna i−1
(si omette l’indicazione esplicita del riferimento alla terna 0)
iiiiii
iiiii
iiiiii
,11,11
1,111
1,111
−−−−
−−−−
−−−−
×++=
=×++=
rvprRrRpp
ω
ω
&
&&&
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [16]
Velocità angolare di un braccio
Partiamo dalla relazione: 11
−−= i
iii RRRVelocità angolare della terna i rispetto alla terna i−1, espressa nella terna i−1
Derivando:
( ) ( ) ( )( ) ( )( ) ( ) i
iiiiii
iii
Ti
iiiiii
ii
iiiiiiii
RRSRS
RRRSRRS
RSRRSRS
1,111
111
1,111
11,111
−−−−
−−−
−−−−
−−−−−
+=
=+=
=+=
ωω
ωω
ωωω
Pertanto:
iii
iiiiii
,11
1,111
−−
−−−−
+=
=+=
ωω
ωωω R
(si può dimostrare)
ovvero le velocità angolari si sommano.
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [17]
Giunto prismatico e giunto rotoidale
• Giunto prismatico
Pertanto:1,1
,1
−−
−
=
=
iiii
ii
d zv &
0ω
iiιiiii
ii
d ,111
1
−−−
−
×++=
=
rzpp ω
ωω&&&
• Giunto rotoidale
Pertanto:iiiiii
iiii
,1,1,1
1,1
−−−
−−
×=
ϑ=
rvz
ω
ω &
iiiii
iiii
,11
11
−−
−−
×+=ϑ+=
rppz
ωωω&&
&
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [18]
Calcolo dello Jacobiano - approccio intuitivo
Ritorniamo all’espressione dello Jacobiano partizionato in n colonne di 6 elementi, ciascuna delle quali, a sua volta, partizionata in due di 3:
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡=
OnO
PnP
jj
jjJ
1
1
Lqi jPi: contributo del giunto i alla velocità lineare
qi jOi: contributo del giunto i alla velocità angolare
.
.
Possiamo calcolare separatamente le sottocolonne OiPi jj e perché il legame tra le velocità dei giunti e quelle della terna è lineare e quindi vale la sovrapposizione degli effetti.
Il contributo del giunto i-esimo alla velocità dell’end effector non dipende dal moto / non moto degli altri. Si può quindi calcolare muovendo il solo giunto i-esimo, con gli altri tutti fermi.I contributi dei singoli giunti si possono poi sommare
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [19]
Calcolo dello Jacobiano - approccio intuitivo
.
ii dq =
n
sa
zi-1
z0
y0
x0
di
P
[ ]
iOi
Pii
qjj
&&
⎥⎦
⎤⎢⎣
⎡=⎥
⎦
⎤⎢⎣
⎡ωp
ijqq
j
i
≠=≠ 0
0&
&
[ ]
ii
i
d&&
⎥⎦
⎤⎢⎣
⎡=⎥
⎦
⎤⎢⎣
⎡ −
0zp 1
ω 01
== −
Oi
iPi
jj z
Giunto i prismatico
Confrontando con laRisulta
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [20]
Calcolo dello Jacobiano - approccio intuitivo
.
iiq ϑ=a
zi-1
z0
y0
x0
iθ
[ ]
iOi
Pii
qjj
&&
⎥⎦
⎤⎢⎣
⎡=⎥
⎦
⎤⎢⎣
⎡ωp
ijqq
j
i
≠=≠ 0
0&
&
ii
nii
ii
niii ϑϑ
ϑ &&
&&⎥⎦
⎤⎢⎣
⎡ ×=⎥
⎦
⎤⎢⎣
⎡ ×=⎥
⎦
⎤⎢⎣
⎡
−
−−
−
−−
1
,11
1
,11
zrz
zrzp
ω
Giunto i rotoidale
1
,11
−
−−
=×=
iOi
niiPi
JJ
zrz
ri-1,n
P
Pi-1
Confrontando con
Risulta
Oi-1
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [21]
Calcolo dello Jacobiano
• Velocità lineare
Giunto i prismatico:
11 −− =⇒= iPiiiPii dq zjzj &&
Giunto i rotoidale:
( )
( )11
11
,1,1
−−
−−
−−
−×=⇓
−×ϑ==×=
iiPi
iii
niiiPiiq
ppzj
ppzrj
&
& ω
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [22]
Calcolo dello Jacobiano - approccio intuitivo
Possiamo esprimere lo Jacobiano geometrico per colonne:
( )⎪⎪⎪
⎩
⎪⎪⎪
⎨
⎧
⎥⎦
⎤⎢⎣
⎡ −×
⎥⎦
⎤⎢⎣
⎡
=⎥⎦
⎤⎢⎣
⎡
−
−−
−
rotoidale giunto
prismatico giunto
1
11
1
i
ii
i
Oi
Pi
zppz
z
jj 0
Gli elementi per il calcolo di queste colonne si ricavano da relazioni cinematiche dirette:
( ) ( )
( ) ( )
( ) ( ) 01211
011
01
101
01211
011
~~
~~
pAAp
pAAp
zRRz
−−−−
−
−−−−
=
=
=
iiii
nnn
iiii
K
K
K dove:
⎥⎦
⎤⎢⎣
⎡=
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
=⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡=
1~,
1000
~,100
00p
ppz
(coordinate omogenee)
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [23]
Calcolo dello Jacobiano
Dall’equazione cinematica diretta si estrae ( )( )( )( )⎥
⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡=
qqq
qP
z
y
x
PPP
Per la sola parte relativa alla posizione, lo Jacobiano può essere ricavato per differenziazione. In casi semplici è un modo più diretto ed immediato e può essere conveniente
[ ]PnPP jjJ ...1=
( )
( )
( )
qP d
qP
qP
qP
qP
qP
qP
qP
qP
qP
d
P
P
P
d
n
zzz
n
yyy
n
xxx
z
y
x
⎥⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢⎢
⎣
⎡
∂∂
∂∂
∂∂
∂
∂
∂
∂
∂
∂∂∂
∂∂
∂∂
=
⎥⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢⎢
⎣
⎡
∂∂
∂
∂∂
∂
=
...
...
...
21
21
21
( )qqJqqPp &&& P=
∂∂
=
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [24]
Manipolatore planare a due link
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡++
=0
12211
12211
sasacaca
p
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡+
−−−=
⎥⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢⎢
⎣
⎡
∂
∂
∂
∂∂∂
∂∂
=0000
12212211
12212211
21
21
cacacasasasa
PP
PP
yy
xx
P ϑϑ
ϑϑ
J
y0
x0
a1
a2
θ1
θ2
Esempio di calcolo dello Jacobiano nel secondo modo (modo differenziale),
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [25]
Calcolo dello Jacobiano
Problema
Disegnare un meccanismo a tre gradi di libertà nello spazio 3D il cui Jacobiano JP (relativo alla sola velocità lineare) sia una matrice identità 3×3 per ogni configurazione del meccanismo
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [26]
Manipolatore planare a tre bracci
( ) ( ) ( ) ( )⎥⎦
⎤⎢⎣
⎡ −×−×−×=
210
221100
zzzppzppzppz
qJ
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡===
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡++++
=
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡++
=⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡=
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡=
100
0
00000
210123312211
123312211
12211
12211
211
11
10
zzzp
ppp
sasasacacaca
sasacaca
saca
⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢
⎣
⎡+++
−−−−−−
=
11100000000012331233122123312211
12331233122123312211cacacacacacasasasasasasa
J
N.B.:
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡
−−−
=×
1221
3113
2332
babababababa
ba
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [27]
Manipolatore antropomorfo
( ) ( ) ( ) ( )⎥⎦
⎤⎢⎣
⎡ −×−×−×=
210
221100
zzzppzppzppz
qJ
( )( )
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
++−−+−
==
10000 233222323
2332211231231
2332211231231
23
12
01
03 sasacs
cacascsscscacacssccc
AAAA
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡−
=
100000100000
11
11
01
cssc
A
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡−−
−
==
10000 2222
12212121
21212121
12
01
02 sacs
scacsscsccassccc
AAA
11 pz
22 pz
3p
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [28]
Manipolatore antropomorfo
( ) ( ) ( ) ( )⎥⎦
⎤⎢⎣
⎡ −×−×−×=
210
221100
zzzppzppzppz
qJ
( )( )
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡−==
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡=
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡
+++
=
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡=
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡==
0100
000
1
1
210
23322
233221
233221
22
212
212
210
cs
sasacacascacac
sacsacca
zzzp
ppp
( ) ( )( ) ( )
⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢
⎣
⎡
−−
+−+−+−+−+−
=
001000
11
11
23323322
2313233221233221
2313233221233221
ccsscacaca
ssasasascacacscasasaccacas
J
Fondamenti di robotica - Cinematica -G. Magnani [29]
Manipolatore sferico
( ) ( ) ( )⎥⎦
⎤⎢⎣
⎡ −×−×=
010
21100
zzzppzppz
qJ
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [30]
Manipolatore di Stanford
( ) ( ) ( )
( ) ( ) ( )⎥⎦⎤−×−×−×
⎢⎣⎡ −×−×=
543
554433
10
21100
zzzppzppzppz
zzzppzppzqJ 0
( )( )
( ) ⎥⎥
⎦
⎤
⎢⎢
⎣
⎡
−+++++−++−
=
⎥⎥
⎦
⎤
⎢⎢
⎣
⎡+−
===⎥⎥⎦
⎤
⎢⎢⎣
⎡==
52452632
2155142541621321
5412515421621321
32
21321
21321
54310000
sscccddcsscssccsscddcdssssssccscccddsdsc
dcdcdssdsdsc
p
ppppp
⎥⎥
⎦
⎤
⎢⎢
⎣
⎡
−++−+
=⎥⎥
⎦
⎤
⎢⎢
⎣
⎡+−−−
=⎥⎥
⎦
⎤
⎢⎢
⎣
⎡==
⎥⎥
⎦
⎤
⎢⎢
⎣
⎡−=
⎥⎥⎦
⎤
⎢⎢⎣
⎡=
52452
2155142541
5412515421
5
42
41421
41421
4
2
21
21
32
1
1
1001
00
sscccsscssccsscssssccsccc
ssccscscsscc
csssc
cs
zzzz
zz
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [31]
Rappresentazione in una terna differente
L’espressione dello Jacobiano dipende dalla terna rispetto alla quale si esprime la velocità dell’organo terminale. Supponiamo di esprimere tale velocità in una nuova terna t:
Pertanto lo Jacobiano riferito alla nuova terna t è legato allo Jacobiano originario dalla relazione:
qJR00Rp
R00Rp
&&&
⎥⎥⎦
⎤
⎢⎢⎣
⎡=⎥
⎦
⎤⎢⎣
⎡
⎥⎥⎦
⎤
⎢⎢⎣
⎡=
⎥⎥⎦
⎤
⎢⎢⎣
⎡t
t
t
t
t
t
ωω
JR00RJ
⎥⎥⎦
⎤
⎢⎢⎣
⎡= t
tt
Nota. Secondo la definizione di velocità angolare, quando se ne considerano le componenti, sono in gioco tre terne: la terna di cui si assegna la velocità rispetto alla terna di riferimento e la terna rispetto alla quale si definiscono le componenti
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [32]
Jacobiano analiticoConsideriamo l’equazione cinematica diretta di un manipolatore:
( ) ( )( )⎥⎦
⎤⎢⎣
⎡==
qqp
qkxφ
dove φ costituisce una rappresentazione minima dell’orientamento. Derivando rispetto al tempo otteniamo:
( ) ( )qqJqqqkx &&& A=
∂∂
=
( )qJ A è detto Jacobiano analitico del manipolatore
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡++
=0
12211
12211sasacaca
x
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡+
−−−=
0012212211
12212211cacacasasasa
AJ
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [33]
Jacobiano analitico
( ) ( )( )⎥⎦
⎤⎢⎣
⎡=
φ qJqJ
qJ PA
( )( )( )( )
( )( ) qqJqJ
qqqqqqpp
x &&
&
&
&& ⎥
⎦
⎤⎢⎣
⎡=⎥
⎦
⎤⎢⎣
⎡∂∂∂∂
=⎥⎦
⎤⎢⎣
⎡=
φ
P
φφ
( )qJ AAnche è costituito di due parti
( )qJ AQual è il legame tra e ?( )qJ
La parte relativa alla velocità lineare è la stessa
( )qJOQual è il legame tra e ?( )qJΦ
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [34]
Legame tra ω e φEsprimiamo l’orientamento con gli angoli di Eulero ZYZ, e consideriamo il vettore velocità angolare derivante da ciascuna rotazione elementare:
.
ψ⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡=
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡
ωωω
ϑ
ϑϕ
ϑϕ
&
csssc
z
y
x
ϕ⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡=
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡
ωωω
&
100
z
y
x
ϑ⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡−=
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡
ωωω
ϕ
ϕ&
0cs
z
y
x
Componendo le rotazioni elementari:
( )φφφω && T=⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡ −=
ϑ
ϑϕ
ϑϕ
ϕ
ϕ
csssc
cs
0100
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [35]
Legame tra ω e φ.
( )φφφω && T=⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡ −=
ϑ
ϑϕ
ϑϕ
ϕ
ϕ
csssc
cs
0100
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [36]
Jacobiano analitico e Jacobiano geometrico
Esprimiamo la velocità (lineare ed angolare) della terna utensile in termini delle derivate di p e φ:
Esprimendo l’orientamento con gli angoli di Eulero ZYZ:
( ) ( ) ( ) qJTxTp
T00Ip
v &&&
&&AAA φφ
φφω==⎥
⎦
⎤⎢⎣
⎡⎥⎦
⎤⎢⎣
⎡=⎥
⎦
⎤⎢⎣
⎡=
Ne consegue:
( ) AA JTJ φ=
( )( ) ( )( ) ϑ−== sA φφ TT detdet
Per ϑ=0, ϑ=π, la matrice è singolare: si parla in questo caso di singolarità di rappresentazione.
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [37]
OsservazioniLe velocità angolari si sommano, posto che siano espresse nello stesso sistema di riferimento
0,1
03,2
02,1
01,0
0,0 ... nnn −++++= ωωωωω
Utensile (tool) fissato alla flangia terminale del robot
⎥⎦
⎤⎢⎣
⎡=
1
66
Ttool
tooldR
oT
tooltool rvv ,66,06,0,0 ×+= ω
6,0,0 ωω =tooltooltool
tool 6,0,0 ωω = 06,0
0,0 ωω =tool
come sopra
Tutti i vettori espressi nello sistema di riferimento
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [38]
OsservazioniJacobiano per un punto arbitrario di un link
( ) ( ) ( )⎥⎦
⎤⎢⎣
⎡ −×−×=
00
10
1100
zzpOzpOz
qJ cc
Oc
p0
p1
Oc dev’essere calcolato
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [39]
Singolarità cinematicheRiprendiamo la relazione che definisce lo Jacobiano geometrico:
( )qqJv &=
I valori di q per cui la matrice J diminuisce di rango (non è massimo) prendono il nome di singolarità cinematiche.
nnqJqJqJ &&& +++= ...2211v
Poiché v ha sei componenti, per poter attuare v arbitrari ci devono essere almeno 6 colonne di J linearmente indipendenti (dev’essere rango J = 6)
rango J ≤ min(6,n)
Manipolatore planare rango J ≤ 2 Manipolatore antropomorfo rango J ≤ 6
rango J(q) dipende da q
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [40]
Singolarità cinematiche
In presenza di singolarità cinematiche si può avere:
1. Perdita di mobilità (non è possibile imporre leggi di moto arbitrarie) (movimenti in certe direzioni sono inattuabili).
2. Possibilità di infinite soluzioni al problema cinematico inverso3. Velocità elevate nello spazio dei giunti (nell’intorno di singolarità) per
velocità normali dell’end-effector (o nello spazio operativo)
Le singolarità possono essere:
1. Ai confini dello spazio di lavoro raggiungibile2. All’interno dello spazio di lavoro raggiungibile
Queste ultime sono più problematiche, perché ci si può incorrere con traiettorie pianificate nello spazio operativo.
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [41]
Singolarità cinematiche: esempioConsideriamo un manipolatore planare a due bracci:
Si tratta di singolarità ai confini dello spazio di lavoro.
⎥⎦
⎤⎢⎣
⎡+
−−−=
12212211
12212211
cacacasasasa
J
Determiniamone le singolarità:
( )⎩⎨⎧
π=ϑ⇔==
00det 2221 saaJ
2112112 ssccs =−( ) βαβαβα sincoscossinsin −=−
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [42]
Singolarità cinematiche: esempio
In queste configurazioni, le due colonne dello Jacobiano non sono indipendenti.
( )( ) ⎥
⎦
⎤⎢⎣
⎡+
−+−=
12121
12121
cacaasasaa
J02 =ϑ
( )( ) ⎥
⎦
⎤⎢⎣
⎡⎥⎦
⎤⎢⎣
⎡+
−+−=
⎥⎥⎦
⎤
⎢⎢⎣
⎡
2
1
12121
12121
cacaasasaa
PP
y
x
&
&
&
&
1
1
cs
PP
y
x −=&
&
Perdita di mobilità.
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [43]
Disaccoppiamento di singolarità
Il problema si semplifica per un manipolatore con polso sferico
Si può suddividere la ricerca delle singolarità in due sottoproblemi:
1. Calcolo delle singolarità della struttura portante2. Calcolo delle singolarità del polso
Può essere difficile risolvere l’equazione det J(q)=0
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [44]
Disaccoppiamento di singolaritàConsideriamo per semplicità il caso n = 6: struttura portante di 3-DOF e polso sferico di 3_DOF.Lo Jacobiano è 6×6 e una configurazione q è singolare se e solo se
Partizioniamo lo Jacobiano
⎥⎦
⎤⎢⎣
⎡=
2221
1211
JJJJ
J
( ) ( ) ( )[ ][ ]54322
55443312
zzzJppzppzppzJ
=−×−×−×=
( )( ) 0det =qJ
Poiché gli ultimi tre giunti sono tutti di rotazione:
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [45]
Disaccoppiamento di singolarità
La cinematica di un robot può essere descritta scegliendo terne in modo largamente arbitrario. La convenzione di DH è solo un modo sistematico per sceglierle.Le singolarità sono configurazioni caratteristiche della struttura meccanica e non dipendono dalle scelte relative alle terne.Se il polso è sferico tutti gli assi di rotazione si intersecano nel centro del polso. Se scegliamo l’origine della terna associata al (solidale al) organo terminale con origine nel centro del polso si ha p = pW e quindi risulta
[ ]000=12J
( ) ( ) ( ) ( )( )⎩
⎨⎧
==
⇔==polso di àsingolarit0det
portante struttura di àsingolarit0det0detdetdet
22
112211 J
JJJJ
Ne consegue che:
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [46]
Singolarità di polso
[ ]54322 zzzJ =
Lo Jacobiano è singolare se z3 è parallelo a z5 (ϑ5=0, ϑ5=π ):
Rotazioni uguali e opposte di ϑ4 e ϑ6 non producono alcuna rotazione dell’organo terminale. Inoltre il polso non è in grado di effettuare rotazioni attorno all’asse ortogonale a z3 e z4.
È una singolarità difficile da individuare in una pianificazione del moto nello spazio operativo.
La cinematica inversa ha infinite soluzioni
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [47]
Singolarità di polso
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [48]
Singolarità di struttura portante
Manipolatore antropomorfo:
Singolarità di gomito
( ) ( )⎩⎨⎧
=+==
⇔=+−=spalla di àsingolarit0gomito di àsingolarit,0
0det23322
3323322332 caca
cacasaaP
πϑϑJ
[ ] ( )1
1111
)
−
−− −×=
i
iWii
zppz
J Una configurazione è singolare se e solo se le tre colonne non sono linearmente indipendenti:
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [49]
Singolarità di struttura portante
Singolarità di gomito
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [50]
Singolarità di struttura portanteManipolatore antropomorfo:
( ) ( )⎩⎨⎧
=+==
⇔=+−=spalla di àsingolarit0gomito di àsingolarit,0
0det23322
3323322332 caca
cacasaaP
πϑϑJ
Singolarità di spalla
( )( ) 0
0
233221
233221
=+==+=
cacaspcacacp
y
x
Dalla cinematica diretta:
Sono singolarità che si caratterizzano facilmente nello spazio operativo.
Infinite soluzioni alla cinematica inversa.
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [51]
Singolarità di struttura portante
Singolarità di spalla
Nelle vicinanze:velocità nei giunti elevate per piccole velocità lineari
( )qqJp && PW =
( ) WP pqJq && 1−=
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [52]
Inversione della cinematica differenziale
L’equazione cinematica differenziale è lineare per un dato valore di q:
( )qqJv &=
Se lo Jacobiano è quadrato e non singolare per un dato q si può trovare la velocità dei giunti necessaria per ottenere una data velocità dell’organo terminale
( ) vqJq 1−=&
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [53]
Inversione cinematica
Data la velocità v nello spazio operativo e una condizione iniziale su q si può pensare di risolvere il problema della cinematica inversa invertendo la cinematica differenziale ed integrando. Se lo Jacobiano è quadrato (n = r, numero di coordinate dello spazio operativo necessarie per descrivere il compito):
( ) ( ) ( ) ( )00
1 qqqvqJq +σσ=⇒= ∫−t
dt &&
Discretizzando con una formula di integrazione numerica:
( ) ( ) ( ) tttt kkk Δ+=+ qqq &1
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [54]
Algoritmi per l’inversione cinematica
( ) ( ) ( )( ) ( ) ttttt kkkk Δ+= −+ vqJqq 1
1
Utilizzando la velocità nello spazio operativo l’espressione ricorsiva diventa
Utilizzando direttamente questa formula si incorre in derive della soluzione.
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [55]
Algoritmi per l’inversione cinematica
Supponiamo sia assegnato traiettoria desiderata nello spazio operativo (con rappresentazione minima dell’orientamento)
xxe −= d
Come fare in modo che l’errore nello spazio operativo converga a zero?
e la sua derivata:
( )qqJxxxe &&&&& Add −=−=.
( )tdx
( ) ( ) ( ) ( )00
1 qqqqJq +=⇒= ∫−t
dA dtX σσ&&&
Errore, nello spazio operativo, commesso dall’algoritmo di inversione cinematica:
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [56]
Inversa dello Jacobiano
Se adottiamo la seguente legge di dipendenza:( )( )KexqJq += −
dA && 1
otteniamo:
0=+ Kee&
cui corrisponde lo schema:
( ) ( ) ( )( )exqJqJxqqJxxxe ΚdAAdAdd +−=−=−= − &&&&&&& 1
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [57]
Inversa dello Jacobiano
Se 0=+ Kee&Prendendo la matrice K diagonale e definita positiva il sistema è asintoticamente stabile e l’errore decade a zero.La velocità di convergenza dipende dal modulo dei (autovalori di K).
Se xd = 0 il metodo corrisponde al metodo di Newton per la soluzione di sistemi non lineari.
.
iik
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [58]
Esercizi ed esempi
Manipolatore antropomorfo con offset (es. Puma) – inversione cinematica (SHV)
Manipolatore cilindrico: calcolo jacobiano e singolarità
.
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [59]
Trasposta dello JacobianoSoluzione alternativa ( )KeqJq T
A=&
Utilizzando il metodo di Lyapunov si può dimostrare (con xd costante) che l’errore e è limitato e decade a zero.Il vantaggio è che si usano solo funzioni cinematiche dirette
Corrisponde al metodo del gradiente per la soluzione di sistemi non lineari..
NO 2009/10
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [60]
Trasposta dello Jacobiano
Condizione di stallo
( )qJTA
Esempio – manipolatore antropomorfo
L’evoluzione si arresta per e=0 e per e nello spazio nullo diche non è vuoto in generale: condizione di stallo – condizione di equilibrio con e≠0
diagonale K
Nullo di TPJ
NO 2009/10
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [61]
Trasposta dello JacobianoCondizione di stallo
NO 2009/10
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [62]
Cinematica differenziale e statica
Parte II
Statica
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [63]
Sistemi di forze
Consideriamo un sistema di forze agenti su un corpo rigido.Ciascuna forza è rappresentabile da un vettore applicato in un punto.
Come si riduce questo sistema di forze? C’è un modo per ridurlo ad un sistema di forze più semplice?
Siamo interessati in particolare alla statica del corpo ovvero alle condizioni in base alle quali il sistema di forze, applicato al corpo rigido, lo lascia nella stessa condizione di quiete che aveva prima dell’applicazione delle forze (si dice in questo caso che il corpo è in equilibrio).
F1
F2
F3
P1
P2
P3
Fn
Pn
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [64]
Postulati fondamentali
1. Non si altera l’equilibrio di un corpo sostituendo ad un insieme di forze applicate in un punto il risultante (cioè la forza rappresentata dal vettore somma vettoriale delle singole forze) applicato allo stesso punto, oppure se si sostituisce ad una forza applicata in un punto altre forze aventi per somma vettoriale la prima ed applicate nel punto.
2. Non si altera l’equilibrio di un corpo rigido se si trasporta il punto di applicazione di una forza lungo la sua retta di applicazione (postulato valido solo per i corpi rigidi).
Due sistemi di forze applicate al corpo rigido ottenuti passando dall’uno all’altro eseguendo, anche in sequenza, le suddette operazioni, si dicono equipollenti: il passaggio da un sistema all’altro non altera lo stato di equilibrio del corpo.
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [65]
Riduzione dei sistemi di forze
Con semplici ragionamenti si conclude che:• un sistema di forze le cui rette di applicazione concorrono in un punto• un sistema di forze parallele a risultante non nullo• un sistema di forze piane a risultante non nullosono tutti equipollenti ad un’unica forza.
Con un ragionamento un po’ più complesso, si dimostra che un sistema generale di forze può sempre ridursi a due forze, una delle quali applicate in un punto prefissato.
F1
F2
A
B
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [66]
Coppia
Consideriamo ora un sistema di forze a risultante nullo. Esso è equipollente a due forze opposte F e − F, applicate in due punti A e B. Se le due forze hanno la stessa retta di applicazione, possono sopprimersi, altrimenti, se le rette di applicazione sono parallele, costituiscono una coppia.
FA
B−F
bSono facilmente definibili il piano della coppia (piano cui appartengono le due rette d’applicazione), il braccio b (distanza tra le due rette) ed il verso.
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [67]
Riduzione ad una forza e una coppia
Aggiungendo una coppia, è possibile spostare una forza da un punto di applicazione ad un altro.
Si abbia la forza F applicata nel punto A. Aggiungiamo le due forze opposte F e −F, applicate nel punto B. Si ottiene la forza Fapplicata nel punto B, e la coppia di forze F e −F, applicate in A e B.
FA
B−F
bF
Per quanto detto finora, si conclude che un generico sistema di forze agenti su un corpo rigido, è equipollente ad una forza, applicata in un punto prefissato, e ad una coppia.
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [68]
Momento di una forza rispetto ad un polo
Sia F una forza applicata in un punto P. Il momento della forza rispetto al polo O è definito dal prodotto vettoriale:
Il modulo del vettore momento è dato dal prodotto del modulo di F per la distanza b del polo dalla retta di applicazione della forza.
Di fatto il momento non dipende dalla scelta di Psulla retta di applicazione della forza F.
Se invece del polo O si considera il polo O', si ottiene:
( ) ( ) FOPM ×−=O
Pb F
O
M(O)
( ) ( ) ( ) FOOMM ×′−+=′ OO
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [69]
Momento di una forza rispetto ad un asse
Sia F una forza applicata in un punto P e consideriamo un asse caratterizzato dal versore a. Siano O e O' due punti sull’asse. Valutiamo la componente sull’asse del vettore momento, rispetto ai due poli:
Poiché O−O' e a sono paralleli, risulta:
Pertanto la componente secondo un asse del momento di una forza rispetto ad un polo costituito da un punto dell’asse è indipendente dalla posizione del punto stesso sull’asse.Questo giustifica il nome di momento della forza rispetto all’asse dato allo scalare:
( ) ( ) ( ) aFOOaMaM ⋅×′−+⋅=⋅′ OO
( ) ( ) aMaM ⋅=⋅′ OO
( ) aM ⋅= OaM
P
FO
a
O'
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [70]
Momento di un sistema di forze
Consideriamo ora un sistema di forze F1, F2, … Fn, applicate rispettivamente nei punti P1, P2, … Pn. Dato un polo O, il momento del sistema di forze rispetto al polo è dato da:
Se in particolare tutte le forze sono applicate nel medesimo punto P:
essendo R il risultante delle forze (teorema di Varignon).Il momento del sistema di forze è quindi uguale al momento del risultante.
( ) ( ) ( ) ( ) ( )∑=
×−=+++=n
iiiOnOOO
121 FOPMMMM L
( ) ( ) ROPM ×−=O
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [71]
Momento di una coppia
Se il sistema di forze è costituito da una coppia si ha:F
AB
−F
b
O ( ) ( ) ( ) ( )( ) FBA
FOBFOAM
×−=
−×−+×−=O
Il momento della coppia è quindi indipendente dal polo.
Potremo allora rappresentare una coppia con il suo vettore momento che avrà:• direzione ortogonale al piano della coppia• modulo pari al prodotto Fb, essendo b il braccio della coppia• verso congruente con il verso della coppia
In particolare quando si parla di coppia τ agente su un elemento in rotazione (per esempio un giunto) su cui sia stato fissato un asse, si intende lo scalare ottenuto proiettando il momento della coppia sull’asse.
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [72]
Massima riduzione di un sistema di forze
Sappiamo che nel caso più generale possiamo ridurre un sistema qualsiasi di forze ad una forza applicata in un punto (il risultante) e ad una coppia. Ne consegue che potremo sempre rappresentare un sistema di forze con due vettori:
Teorema fondamentale: CNS perché due sistemi di forze applicate ad un corpo rigido siano equipollenti è che abbiano lo stesso risultante e lo stesso momento rispetto ad un polo.
• Un vettore forza applicata in un punto O (di fatto il risultante)• Un vettore momento (di fatto il momento della coppia, ovvero il momento del sistema originario di forze rispetto al polo O)
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [73]
Condizioni di equilibrio
Corpo rigido liberoCNS perché un corpo rigido libero sia in equilibrio è che sia nullo il risultante delle forze esterne e nullo il momento del sistema costituito da tali forze, rispetto a qualunque polo:
0,0 == MR
Corpo rigido vincolatoCNS perché un corpo rigido vincolato sia in equilibrio è che sia nullo il risultante delle forze esterne (sia quelle attive che quelle di reazione vincolare) e nullo il momento del sistema costituito da tali forze, rispetto a qualunque polo:
0,0 =′+=′+ MMRR
R' e M': risultante e momento delle forze di reazione vincolare.
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [74]
Sistemi di corpi
Si consideri un sistema di r corpi rigidi (quali, per esempio, i bracci di un robot). Se tutti i corpi sono liberi di muoversi nello spazio, il moto del sistema è ad ogni istante descrivibile per mezzo di 6r coordinate x.Supponiamo ora che che esistano delle limitazioni al moto dei corpi che costituiscono il sistema (quali quelle indotte dalla connessione di un braccio con il successivo tramite un giunto, che elimina cinque su sei gradi di mobilità relativi tra i due bracci).Diciamo che sul moto dei corpi esiste un vincolo, che esprimeremo con la relazione:
( ) 0=xh
Un vincolo rappresentato da un’equazione di questo tipo si dice olonomo(perché dipende solo dalle coordinate di posizione e non dalle velocità) e stazionario (perché non dipende dal tempo).
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [75]
Coordinate libere( ) 0=xh
Se il vincolo h è costituito da s componenti scalari e tutte sono continue e differenziabili con continuità, è possibile, per mezzo del vincolo, eliminare scoordinate dalle equazioni del sistema.
Le rimanenti n=6r – s coordinate prendono il nome di coordinate libere, o lagrangiane, o generalizzate, e n è il numero di gradi di libertà del sistema meccanico.
Per esempio, in un robot a 6 giunti, delle 36 coordinate originarie, se ne eliminano 30 in virtù dei vincoli imposti dai 6 giunti e ne rimangono 6 che costituiscono le coordinate lagrangiane: tipicamente si scelgono le coordinate di giunto (l’angolo ϑ o la distanza d, rispettivamente per giunto rotazionale o prismatico).
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [76]
Spostamento virtuale
Consideriamo ora un sistema di corpi rigidi soggetto a vincoli di mobilità, per il quale si possano esprimere le coordinate x in termini di un vettore λ di coordinate generalizzate: x=x(λ). Definiamo spostamento virtuale la quantità:
Definiamo lavoro elementare compiuto da un sistema di forze agenti su un corpo rigido e aventi risultante f e momento μQ rispetto ad un qualsiasi punto Qdel corpo, la quantità:
dtddW TQQ
T ωμ+= pfdove ω è la velocità angolare del corpo.
λλ
δ∂∂
=δxx
ovvero uno spostamento elementare conforme ai vincoli.
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [77]
Principio dei lavori virtualiIn corrispondenza di uno spostamento virtuale, possiamo definire il lavoro virtuale, ovvero il lavoro elementare compiuto dalle forze agenti sul sistema di corpi per lo spostamento virtuale.Poiché le forze di reazione vincolare non producono lavoro, essendo ortogonali ai vincoli, e ipotizzando vincoli privi di attrito, il lavoro virtuale si riduce al lavoro δWa delle forze attive.Si può dimostrare che condizione per l’equilibrio del sistema di corpi rigidi è che il lavoro virtuale delle forze attive sia nullo per qualunque spostamento virtuale:
0λ =δ=δ TaW ζ
dove ζ è un vettore di forze generalizzate.
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [78]
Statica del manipolatoreConsideriamo ora un manipolatore soggetto ad un insieme di forze all’organo terminale avente risultante f e momento, rispetto all’origine della terna utensile, μ.
( )γτ qJ T=
e detto τ [n×1] il vettore delle forze o coppie applicate ai singoli giunti, si ha
⎥⎦
⎤⎢⎣
⎡=
μγ
f
[ ]Tfff 321=f
[ ]T321 μμμ=μ
Posto
Fondamenti di robotica - Cinematica differenziale e statica- G. Magnani [79]
Statica del manipolatoreCome si ricava? Si può ricavare utilizzando il principio dei lavori virtuali.
qδ=δ τTW τ
Per il principio dei lavori virtuali il manipolatore è in equilibrio statico se e solo se:
Il lavoro virtuale delle forze/coppie ai giunti è:
( ) ( ) ( ) qqJqqJqqJfpf δ=δ+δ=+δ=δ γT
OT
PTTT dtW γμωμ
Il lavoro virtuale delle forze all’organo terminale è:
γτ δ=δ WW e quindi: ( )γτ qJ T=
qδ=δ τTW τ