corso di controllo dei robot cinematica differenziale · velocità dei giunti e le corrispondenti...
TRANSCRIPT
![Page 1: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/1.jpg)
Controllo dei Robot P. Lino
Corso di Controllo dei Robot
Cinematica differenziale
Paolo LinoDipartimento di Ing. Elettrica e dell’Informazione (DEI)
![Page 2: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/2.jpg)
Controllo dei Robot P. Lino
Cinematica differenziale
La cinematica differenziale caratterizza i legami tra levelocità dei giunti e le corrispondenti velocità lineare eangolare dell’organo terminale.
Tali legami sono espressi da una matrice di trasformazione,dipendente dalla configurazione del manipolatore,denominata Jacobiano geometrico.
Per altra via, se la postura dell’organo terminale è espressafacendo riferimento ad una rappresentazione in formaminima dello spazio operativo, è possibile calcolare loJacobiano direttamente, mediante operazione didifferenziazione della funzione cinematica diretta rispettoalla variabile di giunto; lo Jacobiano che ne viene fuori èdenominato Jacobiano analitico ed è in generale diverso daquello geometrico.
![Page 3: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/3.jpg)
Controllo dei Robot P. Lino
Jacobiano geometricoEquazione cinematica diretta per manipolatore a n gradi di libertà:
10
)()()(
T
qpqRqT
qqJ
qqJp
o
p
)(
)(
velocità lineare dell’organo terminale
Jp rappresenta la matrice (3xn) relativa al contributo delle velocità dei giunti alla velocità
lineare dell’organo terminale, mentre Jo è la matrice (3xn) relativa al contributo delle
velocità dei giunti alla velocità angolare dell’organo terminale
qqJp
v
)(
o
p
J
JJ
equazione cinematica
differenziale del
manipolatore
Jacobiano geometrico
del manipolatore
velocità angolare dell’organo terminale
![Page 4: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/4.jpg)
Controllo dei Robot P. Lino
(Alcune) Proprietà di una matrice anti-simmetrica
• La matrice S contiene solo 3 elementi
indipendenti𝑆 =
0 −𝑠3 𝑠2𝑠3 0 −𝑠1−𝑠2 𝑠1 0
• Per il generico vettore
𝜔 = 𝜔𝑥 𝜔𝑦 𝜔𝑧 𝑇 si definisce la matrice:𝑆 𝜔 =
0 −𝜔𝑧 𝜔𝑦
𝜔𝑧 0 −𝜔𝑥
−𝜔𝑦 𝜔𝑥 0
• Per ogni vettore 𝜔, 𝑝 ∈ ℝ3 vale la
relazione:
𝑆 𝜔 𝑝 = 𝜔 ∧ 𝑝
• Per ogni vettore 𝜔 ∈ ℝ3 , 𝑅 matrice
ortogonale, vale la relazione:𝑅𝑆 𝜔 𝑅𝑇 = 𝑆 𝑅𝜔
𝑅𝑆 𝜔 𝑅𝑇𝑏 = 𝑅 𝜔 ∧ 𝑅𝑇𝑏 = 𝑅𝜔 ∧ 𝑅𝑅𝑇𝑏 = 𝑅𝜔 ∧ 𝑏 = 𝑅𝑆 𝜔 𝑏𝐷𝑖𝑚.
![Page 5: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/5.jpg)
Controllo dei Robot P. Lino
Derivata di una matrice di rotazione
Si supponga che la matrice di rotazione vari nel tempo, in altre parole R = R(t). Dalla
proprietà di ortogonalità di R si ha la relazione R(t)RT(t) = I che, derivata rispetto al
tempo, fornisce l’identità
0)()()()( tRtRtRtR TT
)()()( tRtRtS T
Poniamo :
Anti-simmetrica : 0)()( tStS T
Moltiplichiamo a destra ambo i membri dell’espressione di S(t) per R(t):
)()()()()( tRtRtRtRtS T )()()( tRtStR
𝑠𝑖𝑗 = −𝑠𝑗𝑖𝑠𝑖𝑖 = 0
![Page 6: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/6.jpg)
Controllo dei Robot P. Lino
Interpretazione fisicaSi consideri un vettore 𝑝′ costante ed il vettore 𝑝 𝑡 = 𝑅 𝑡 𝑝′.
La derivata temporale di 𝑝 𝑡 risulta:
ptRtp )()( ptRtStp )()()(
Dalla meccanica classica risulta che la velocità di
un vettore applicato si esprime nella forma:
ptRttp )()()(
con (t) velocità angolare della terna R(t)
rispetto alla terna di riferimento.
Uguagliando le due espressioni si osserva che la matrice 𝑆 𝑡 esprime il prodotto
vettoriale tra il vettore velocità angolare (t) ed il vettore 𝑅 𝑡 𝑝′.
x
y
x’
y’
Pp
𝜔
![Page 7: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/7.jpg)
Controllo dei Robot P. Lino
Velocità angolare
0)()(
)(0)(
)()(0
)(
00
00
00
0
tt
tt
tt
tS
xy
xz
yz
S(t) = S((t)).
ptRtSptRttp )()()()()(
𝑝 solidale a 𝑂𝑥’y’𝑂𝑥′𝑦′ruota con velocità angolare
𝜔 𝑡 = 𝜔𝑥 , 𝜔𝑦, 𝜔𝑧𝑇
x
y
x’
y’
Pp
𝜔
![Page 8: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/8.jpg)
Controllo dei Robot P. Lino
EsempioConsideriamo la matrice di rotazione elementare intorno all’asse z:
100
0cossen
0sencos
)(
zR
Supponiamo che vari nel tempo. Calcolando la derivata rispetto al tempo di Rz((t)),
la matrice S(t) è data da:
000
00
00
100
0
0
000
0
0
)()()(
cs
sc
sc
cs
tRtRtS T
0
0
0
)(
xy
xz
yz
tS
![Page 9: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/9.jpg)
Controllo dei Robot P. Lino
quindi il vettore velocità angolare della terna ruotata rispetto alla terna base vale:
0
0
)()()( tRtStR
000
0
0
000
0
0
100
00
00
)()(
sc
cs
cs
sc
tRtS
![Page 10: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/10.jpg)
Controllo dei Robot P. Lino
Composizione di velocità
10
1
0
1
0 pRop
10
1
10
1
0
1
0 pRpRop
10
1
0
1
10
1
0
1
0 )( pRSpRop
10
1
0
1 pRr 0
1
0
1
10
1
0
1
0 rpRop
se p1 è costante nel tempo (fisso rispetto alla terna 1): 0
1
0
1
0
1
0 rop
𝑝 = 𝑅𝑧 𝛼 𝑝1
α
Ppy
pxx
y
x’
y’
p’yp’x
zz’
![Page 11: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/11.jpg)
Controllo dei Robot P. Lino
Velocità di un braccio
1
,111
i
iiiii rRpp
1
,111
1
,111 )(
i
iiii
i
iiiii rRSrRpp
iiiiiii rvpp ,11,11
vi-1,i indica la velocità dell’origine della terna i
rispetto all’origine della terna i – 1, espressa nella
terna baseLa terna i è solidale al
braccio (conv. DH)
Velocità Traslazionale
0
1
0
1
10
1
0
1
0 rpRop
![Page 12: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/12.jpg)
Controllo dei Robot P. Lino
Velocità angolare
1
1
i
iii RRR
1
1
1
1
i
ii
i
iii RRRRR
11
,11
1
11 )()()(
i
i
i
iii
i
iiiii RSRRRSRS
11
,111 )()()(
i
i
i
iiiiiii RSRRSRS
Derivando:
![Page 13: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/13.jpg)
Controllo dei Robot P. Lino
Velocità angolarePer l’ortogonalità delle matrici di rotazione si può ancora scrivere
11
,111 )()()(
i
i
i
iiiiiii IRSRRSRS
1
11
1
,111 )()()(
i
ii
T
i
i
iiiiiii RRRSRRSRS
i
T
i
i
iiiiiii RRSRRSRS 1
1
,111 )()()(
Osserviamo che per le matrici di rotazione vale la relazione, RS()RT = S(R), quindi:
i
i
iiiiiii RRSRSRS )()()( 1
,111
1
,111
i
iiiii R iiii ,11
![Page 14: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/14.jpg)
Controllo dei Robot P. Lino
Composizione di velocità
iiii
iiiiiii rvpp
,11
,11,11
Le relazioni trovate possono
essere particolareggiate per
giunti prismatici o rotoidali
![Page 15: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/15.jpg)
Controllo dei Robot P. Lino
Giunto prismatico
i-1,i = 0
1,1 iiii zdv
1
,1111
ii
iiiiii rzdpp
Giunto rotoidale
11
,11,1,11
iiii
iiiiiiiii
z
rrpp
11
,1,111
iiii
iiiiiii
z
rpp
11
,11
iiii
iiiii
z
rpp
iiii
iiiiiii rvpp
,11
,11,11
![Page 16: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/16.jpg)
Controllo dei Robot P. Lino
Calcolo dello Jacobiano
n
n
oo
pp
o
p
jj
jj
J
JJ
1
1
qqJ
qqJp
o
p
)(
)(
qqJ
p
)(
𝑝 = 𝑝 𝑞 𝑡 𝑝 =𝜕𝑝
𝜕𝑞 𝑞 =
𝑖=1
𝑛𝜕𝑝
𝜕𝑞𝑖 𝑞𝑖 =
𝑖=1
𝑛
𝑗𝑝𝑖 𝑞𝑖
n
oo
pp
q
q
q
jj
jjp
n
n
2
1
1
1
velocità lineare
velocità angolare 𝜔 =
𝑖=1
𝑛
𝜔𝑖−1,𝑖 =
𝑖=1
𝑛
𝑗𝑜𝑖 𝑞𝑖
(ciascun termine rappresenta il contributo del singolo giunto alla velocità dell’end effector)
![Page 17: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/17.jpg)
Controllo dei Robot P. Lino
Calcolo dello Jacobiano
Giunto prismatico
1
1,1
,1
00
ip
o
ii
iiiipii
ioii
zj
j
dq
zdqjv
qj
i
i
i
Giunto rotoidale
)()(
11
1
11,1
1
,1,1,1
1,1
iip
io
ii
iiiipei
iiio
iiiiii
iiioii
ppzj
zj
q
ppzqjv
zqj
rv
zqj
i
i
i
ii
velocità lineare dell’organo terminale
quando gli altri giunti sono fermi
![Page 18: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/18.jpg)
Controllo dei Robot P. Lino
Calcolo dello jacobiano
z
)(z
0
1-i
11-i
1
i
i
i
i
pp
z
Jo
JpJ
𝑧𝑖−1 è dato dalla terza colonna della matrice di rotazione 𝑅𝑖−10
, e quindi
01
2
11
0
11 )()( zqRqRz i
i
ii
z0 = [0, 0, 1]T Vettore di selezione
della terza colonna
giunto prismatico
giunto rotoidale
![Page 19: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/19.jpg)
Controllo dei Robot P. Lino
0
1
1
0
1~)()(~ pqAqAp n
n
n
1
0
0
0
~0p
01
2
11
0
11~)()(~ pqAqAp i
i
ii
Si osserva che lo Jacobiano dipende dalla terna rispetto alla quale viene espressa la
velocità dell’organo terminale.
JRo
oRJ
p
Ro
oRpu
u
u
u
u
u
u
𝑝 è dato dai primi tre elementi della quarta colonna della matrice di trasformazione 𝑇𝑛0
𝑝𝑖−1 è dato dai primi tre elementi della quarta colonna della matrice di
trasformazione 𝑇𝑛−10
![Page 20: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/20.jpg)
Controllo dei Robot P. Lino
Esempio: Manipolatore a tre bracci
1
2
3
1
11 )()(
i
ii
z
ppzqJ
con i = 1, 2, 3
210
221100)(
zzz
ppzppzppzqJ
y3x3
![Page 21: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/21.jpg)
Controllo dei Robot P. Lino
1
0
0
0
1000
0100
0
0
~~)(~ 1233123211123123
123312211123123
0
2
3
1
2
0
10
0
3
ssscs
cccsc
pAAApqTp
0
123312211
123312211
sss
ccc
p
01
2
11
0
11~)()(~ pqAqAp i
i
ii
01
2
11
0
11 )()( zqRqRz i
i
ii
𝐴10 𝜃1 = 𝐴2
1 𝜃2 = 𝐴32 𝜃3 =
𝑐𝑖 −𝑠𝑖 0 ℓ𝑖𝑐𝑖𝑠𝑖 𝑐𝑖 0 ℓ𝑖𝑠𝑖0 0 1 00 0 0 1
![Page 22: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/22.jpg)
Controllo dei Robot P. Lino
𝑝1 = 𝐴10 𝜃1 𝑝0 =
𝑐1 −𝑠1 0 ℓ1𝑐1𝑠1 𝑐1 0 ℓ1𝑠10 0 1 00 0 0 1
0001
=
ℓ1𝑐1ℓ1𝑠101
𝑝1 =ℓ1𝑐1ℓ1𝑠10
𝑝0 = 𝐴00 𝜃1 𝑝0 =
1 0 0 00 1 0 00 0 1 00 0 0 1
0001
=
0001
𝑝0 =000
𝑝2 = 𝐴10 𝜃1 𝐴2
1 𝜃2 𝑝0 =
𝑐12 −𝑠12 0 ℓ1𝑐1 + ℓ2𝑐12𝑠12 𝑐12 0 ℓ1𝑠1 + ℓ2𝑠120 0 1 00 0 0 1
0001
=
ℓ1𝑐1 + ℓ2𝑐12ℓ1𝑠1 + ℓ2𝑠12
01
𝑧0 =001
𝑧1 =001
𝑧2 =001
𝑝2 =ℓ1𝑐1 + ℓ2𝑐12ℓ1𝑠1 + ℓ2𝑠12
0
![Page 23: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/23.jpg)
Controllo dei Robot P. Lino
Prodotto vettoriale tra due vettori 𝑃 ≡ 𝑃𝑥, 𝑃𝑦, 𝑃𝑧 e 𝑄 ≡ 𝑄𝑥 , 𝑄𝑦 , 𝑄𝑧
0
)( 123312211
123312211
00 ccc
sss
ppz
0
)( 1233122
1233122
11 cc
ss
ppz
0
)( 1233
1233
22 c
s
ppz
𝑃 ∧ 𝑄 =
𝑄𝑦𝑃𝑧 − 𝑄𝑧𝑃𝑦𝑄𝑧𝑃𝑥 − 𝑄𝑥𝑃𝑧𝑄𝑥𝑃𝑦 − 𝑄𝑦𝑃𝑥
![Page 24: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/24.jpg)
Controllo dei Robot P. Lino
111
000
000
000)(
12331233122123312211
12331233122123312211
cccccc
ssssss
qJ
111
)( 12331233122123312211
12331233122123312211
cccccc
ssssss
qJ
Nel piano x-y :
![Page 25: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/25.jpg)
Controllo dei Robot P. Lino
Jacobiano analitico
qqJqq
pp P
)(
qqJqq
)(
La derivata rispetto al tempo di non coincide, in generale, con il vettore velocità
angolare definito in precedenza
: rappresentazione minima dell’orientamento
qqJqqJ
qJpx A
P
)(
)(
)(
q
qkqJ A
)()(
p origine della terna utensile rispetto alla terna base
![Page 26: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/26.jpg)
Controllo dei Robot P. Lino
Legame tra Jacobiano analitico e jacobiano geometrico
csscs
ssccscsscccs
sccssccssccc
RRRR zyzEUL
Velocità di rotazione in terna corrente di angoli di Eulero ZYZ
![Page 27: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/27.jpg)
Controllo dei Robot P. Lino
1
0
0
0
0
z
y
x
00
0
c
s
z
y
x
c
ss
sc
z
y
x
0
0
)(
01
0
0
T
c
ssc
scs
![Page 28: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/28.jpg)
Controllo dei Robot P. Lino
Singolarità di rappresentazione di
Il determinante della matrice T è pari a -s, il che significa che la relazione non è
invertibile per = 0, .
Ciò significa che, sebbene ogni velocità di rotazione della terna possa essere espressa
mediante un opportuno vettore di velocità angolare , esistono velocità angolari che
non possono essere espresse mediante , quando l’orientamento della terna utensile
impone s = 0.
In questa situazione, infatti, le velocità angolari che possono essere descritte da sono
vincolate ad avere componenti nelle direzioni ortogonali all’asse z tra di loro
dipendenti
Gli orientamenti che annullano il determinante della matrice di trasformazione sono
dette singolarità di rappresentazione di .
222 yx
![Page 29: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/29.jpg)
Controllo dei Robot P. Lino
Significati fisici di e di
Da un punto di vista fisico il significato di è piùintuitivo di quello di
Tuttavia l’integrale di corrisponde a ed esprimequindi le variazioni impresse sugli angoli di Eulero perpassare da un orientamento ad un altro, mentrel’integrale di non ammette alcuna interpretazionefisica
![Page 30: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/30.jpg)
Controllo dei Robot P. Lino
Legame tra Jacobiano analitico e jacobiano geometrico
xTxT
Iv A
)(0
0
qqJp
v
)(
qqJq
qJ
qJpx A
P
)(
)(
)(
J = TA()JA
![Page 31: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/31.jpg)
Controllo dei Robot P. Lino
Singolarità Cinematiche Tutte quelle configurazioni, per le quali J diminuisce il
suo rango sono chiamate singolarità cinematiche.
La caratteristica delle singolarità è di notevole interesseper i seguenti motivi:
a) Le singolarità rappresentano configurazioni in corrispondenzadelle quali si ha una perdita di mobilità della struttura, ovveronon è possibile imporre all’organo terminale leggi di motoarbitrarie.
b) Quando la struttura è in una configurazione singolare, possonoesistere infinite soluzioni al problema cinematico inverso
c) Nell’intorno di una singolarità, velocità ridotte nello spaziooperativo possono indurre velocità molto alte nello spazio deigiunti.
![Page 32: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/32.jpg)
Controllo dei Robot P. Lino
Singolarità cinematiche
Singolarità ai confini dello spazio di lavoro raggiungibileche si presentano quando il manipolatore è tutto steso otutto ripiegato su se stesso. Queste singolarità possonoessere evitate.
Singolarità all’interno dello spazio di lavoro raggiungibileche sono generalmente causate dall’allineamento di dueo più assi di moto, in altre parole dall’assunzione diconfigurazioni particolari da parte dell’organo terminale.Queste costituiscono un problema serio in quanto,essendo all’interno dello spazio di lavoro, possonoessere interessate da traiettorie pianificate nello spaziooperativo.
![Page 33: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/33.jpg)
Controllo dei Robot P. Lino
1
02
1
0
0
2
Esempio
12212211
12212211
cacaca
sasasaJ
det(J) = a1a2s2
Il determinante si annulla per 2 = 0, , mentre 1 è ininfluente ai fini delle
determinazioni di posizioni singolari.
Le due configurazioni trovate corrispondono ai casi in cui l’organo terminale del
manipolatore è situato al confine esterno (2 = 0, rappresentato in figura) o interno
(2 = ).
12121
12121
cacaa
sasaaJ
![Page 34: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/34.jpg)
Controllo dei Robot P. Lino
Analisi della ridondanza
qqJv )(
• v è da intendersi come il vettore (rx1) delle velocità dell’organo terminale necessarie
per specificare il compito;
• J come la corrispondente matrice Jacobiana (rxn) estratta dallo Jacobiano
geometrico;
• 𝑞 è il vettore (nx1) delle velocità dei giunti.
Se r < n, il manipolatore risulta ridondante da un punto di vista cinematico ed esistono
(n-r) gradi di mobilità ridondanti.
![Page 35: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/35.jpg)
Controllo dei Robot P. Lino
ee
L’immagine di J è il sottospazio R(J) in r che individua le velocità dell’organo
terminale che possono essere generate dalle velocità di giunto, nella configurazione
assegnata al manipolatore;
Il nullo di J è il sottospazio N(J) a cui appartengono le velocità di giunto che non
producono alcuna velocità all’organo terminale, nella configurazione assegnata al
manipolatore.
qqJv )(
![Page 36: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/36.jpg)
Controllo dei Robot P. Lino
Se lo Jacobiano è a rango pieno, si ha:
dim(R(J)) = r dim(N(J)) = n – r
e l’immagine di J ricopre l’intero spazio
Al contrario, se lo Jacobiano degenera in una singolarità, la dimensione dell’immagine
diminuisce e, allo stesso tempo, la dimensione del nullo aumenta, in quanto vale la
relazione:
dim(R(J)) + dim(N(J)) = n (n è la dimensione dello spazio dei giunti)
indipendentemente dal rango della matrice J.
Manipolatore ridondante, quando N(J) 0
Sia 𝑞∗ soluzione della 𝜈 = 𝐽 𝑞 𝑞 e P matrice tale che 𝑅 𝑃 ≡ 𝑁 𝐽
Sia 𝑞𝑎 vettore arbitrario di velocità nello spazio dei giunti
𝑞 = 𝑞∗ + 𝑃 𝑞𝑎 𝐽 𝑞 = 𝐽 𝑞∗ + 𝐽𝑃 𝑞𝑎 = 𝐽 𝑞∗ = 𝜈
![Page 37: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/37.jpg)
Controllo dei Robot P. Lino
qqJqqJ
qJpx A
P
)(
)(
)(
vqJq )(1
t
dqqtq0
)()0()(
Inversione della cinematica differenziale
Si intende determinare le velocità di giunto che permettono di ottenere le velocità
(lineare ed angolare) 𝑣 dell'organo terminale desiderate, a partire da una postura iniziale
Invertendo l'equazione cinematica differenziale (𝑱 quadrata e di rango pieno) è
possibile determinare una possibile traiettoria ai giunti 𝑞 𝑡 , 𝑞 𝑡 che riproduca la
traiettoria assegnata
Regola di integrazione di Eulero – Velocità dei giunti all’istante 𝑡𝑘+1=𝑡𝑘 + ∆𝑡
con 𝑞 𝑡𝑘 = 𝐽−1 𝑞 𝑡𝑘 𝑣 𝑡𝑘𝑞 𝑡𝑘+1 = 𝑞 𝑡𝑘 + 𝑞 𝑡𝑘 ∆𝑡
𝑣 = 𝐽 𝑞 𝑞
![Page 38: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/38.jpg)
Controllo dei Robot P. Lino
Cinematica inversa dei manipolatori ridondanti
Se il manipolatore è ridondante (r < n), lo Jacobiano è una matrice
rettangolare bassa e si pone il problema significativo di trovare le soluzioni
(ne esisterà più di una) all’equazione 𝜈 = 𝐽 𝑞 𝑞.
qWqqg T 2
1)(
dove W è un’opportuna matrice (n x n) di peso, simmetrica e definita
positiva.
Minimizzare qqJv )(Con il vincolo
Un possibile metodo di soluzione è quello di formulare il problema d’ottimo
vincolato:
![Page 39: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/39.jpg)
Controllo dei Robot P. Lino
Metodo dei moltiplicatori di Lagrange
)(2
1),( qJvqWqqg TT funzionale di costo modificato, con 𝜆
vettore incognito 𝑟x1 di moltiplicatori
Soluzione :
T
T
JWqq
qg 10),(
qJvqg
T
0
),(
𝑞 = 𝑊−1𝐽𝑇𝜆
𝑣 = 𝐽 𝑞
Sistema nelle due
incognite 𝑞 e 𝜆
![Page 40: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/40.jpg)
Controllo dei Robot P. Lino
Sostituendo in 𝑞 = 𝑊−1𝐽𝑇𝜆
Caso particolare: la matrice di peso W coincide con la matrice identità I
Pseudo inversa destra
La soluzione ottenuta è quella che minimizza localmente la norma delle velocità ai giunti
𝑞 = 𝑊−1𝐽𝑇𝜆
𝑣 = 𝐽 𝑞𝑣 = 𝐽𝑊−1𝐽𝑇𝜆
𝜆 = 𝐽𝑊−1𝐽𝑇 −1𝑣 Se 𝐽 è di rango pieno
𝑞 = 𝑊−1𝐽𝑇 𝐽𝑊−1𝐽𝑇 −1𝑣
𝐽+ = 𝐽𝑇 𝐽𝐽𝑇 −1
𝑞 = 𝐽+𝑣
![Page 41: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/41.jpg)
Controllo dei Robot P. Lino
Tutte (le infinite) soluzioni della cinematica differenziale inversa
𝑅 𝑃 ≡ 𝑁 𝐽 , quindi 𝑞𝑛 ∈ 𝑁 𝐽 , ovvero 𝐽 𝑞𝑛 = 0
𝐽 𝑞 = 𝐽 𝐽+ 𝑝 + 𝑞𝑛 = 𝐽𝐽+ 𝑝 + 𝐽 𝑞𝑛 = 𝑝
In generale, anche il vettore così ottenuto è una soluzione:
Sia 𝑞∗ = 𝐽+ 𝑝 soluzione dell’equazione 𝑣 = 𝐽 𝑞 che
minimizza 𝑞 per una assegnata 𝑣 ≡ 𝑝
𝑞∗ = 𝐽+ 𝑝 = 𝐽𝑇 𝐽𝐽𝑇 −1 𝑝
𝑞 = 𝑞∗ + 𝑃 𝑞𝑑 = 𝐽+ 𝑝 + 𝑞𝑛
con
Infatti:
![Page 42: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/42.jpg)
Controllo dei Robot P. Lino
Scelta possibile:
con 𝑞𝑑 velocità di giunto qualsiasi
L’espressione è quella che ci assicura il minor discostamento
di 𝑞 da 𝑞𝑑, poiché è anche la soluzione di un problema
modificato di ottimizzazione vincolata (polarizzato su 𝑞𝑑)
𝑃 ≡ 𝐽∗ = 𝐼 − 𝐽+𝐽
Infatti, per qualsiasi 𝑞 vale 𝐽 𝐽∗ 𝑞 = 𝐽 𝐼 − 𝐽+𝐽 𝑞 = 0
𝑞 = 𝐽+ 𝑝 + 𝐼 − 𝐽+𝐽 𝑞𝑑
𝑞 = 𝑞∗ + 𝑃 𝑞𝑑 = 𝐽+ 𝑝 + 𝑞𝑛
min𝐻 =1
2 𝑞 − 𝑞𝑑 𝐽 𝑞 − 𝑣 = 0con vincolo
Tutte (le infinite) soluzioni della cinematica differenziale inversa
![Page 43: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/43.jpg)
Controllo dei Robot P. Lino
velocità di giunto in corrispondenza della quale e solo in
corrispondenza della quale si ha una variazione di 𝑝
velocità di giunto in corrispondenza della quale non può
aversi variazione di 𝑝 moti interni che riconfigurano
manipolatore lasciando inalterata posizione ed orientamento
dell’organo terminale
𝑞 = 𝐽+ 𝑝 + 𝐼 − 𝐽+𝐽 𝑞𝑑
soluzione a norma
minima (unica)
soluzione dell’equazione
omogenea associata
𝐼 − 𝐽+𝐽 𝑞𝑑
𝐽+ 𝑝
Come scegliere 𝑞𝑑?
![Page 44: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/44.jpg)
Controllo dei Robot P. Lino
Minimizzazione di obiettivi
Se riusciamo mediante 𝑞𝑑 ad imporre 𝐻 < 0potremmo avvicinarci ad un minimo assoluto per 𝐻
Sia 𝐻 𝑞 funzione obiettivo (secondario) derivabile
𝐻 𝑞 𝑡 definita positiva
𝐻 =𝜕𝐻
𝜕𝑞 𝑞 =
𝜕𝐻
𝜕𝑞𝐽+ 𝑝 +
𝜕𝐻
𝜕𝑞𝐼 − 𝐽+𝐽 𝑞𝑑
![Page 45: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/45.jpg)
Controllo dei Robot P. Lino
𝐻 =𝜕𝐻
𝜕𝑞 𝑞 =
𝜕𝐻
𝜕𝑞𝐽+ 𝑝 +
𝜕𝐻
𝜕𝑞𝐼 − 𝐽+𝐽 𝑞𝑑
𝑞𝑑 = −𝐾𝜕𝐻
𝜕𝑞
𝑇
con 𝐾 > 0Scelta tipica:
𝐻 = −𝐾𝜕𝐻
𝜕𝑞𝐼 − 𝐽+𝐽
𝜕𝐻
𝜕𝑞
𝑇
+𝜕𝐻
𝜕𝑞𝐽+ 𝑝
Il primo addendo è sicuramente negativo, mentre sul
segno del secondo non si può dire niente
![Page 46: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/46.jpg)
Controllo dei Robot P. Lino
Esempi di task
oqpqHop
)(min,
p: generico punto del manipolatore
0: punto su di un ostacolo
Massimizzando H si può riuscire ad aggirare un ostacolo.
2
12
1
n
i imiM
ii
nqH
q qiM im( ): rappresenta la massima (minima)
escursione per la rispettiva variabile giunto
e qi è il valore medio della corsa .
Minimizzando H si può riuscire a starelontano dai fine corsa.
)()(det)( qJqJqH TLa H così definita rappresenta una misuradella manipolabilità.
Massimizzando H si può riuscire a stare lontani dalle singolarità.
𝑞 = 𝐽+ 𝑝 + 𝐼 − 𝐽+𝐽 𝑞𝑑 = 𝐽+ 𝑝 − 𝐾 𝐼 − 𝐽+𝐽𝜕𝐻
𝜕𝑞
𝑇
![Page 47: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/47.jpg)
Controllo dei Robot P. Lino
Inversione cinematica
xxe d
qqJxxxe Add )(
Deriva numerica:
E’ necessario, nella definizione di un algoritmo di inversione, far
dipendere 𝑞 da 𝑒 in modo tale che l’equazione differenziale precedente
produca un 𝑒(𝑡) convergente (asintoticamente) a zero
𝑞 𝑡𝑘+1 = 𝑞 𝑡𝑘 + 𝐽−1 𝑞 𝑡𝑘 𝑣 𝑡𝑘 ∆𝑡
𝑞 𝑡𝑘+1 ≠ 0
𝑡𝑘+1
𝑞 𝜉 𝑑𝜉 + 𝑞 0
![Page 48: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/48.jpg)
Controllo dei Robot P. Lino
(Pseudo-)inversa dello Jacobiano
KexqJq dA )(1
0 Kee
0)()( qJJIKexqJq AAdA
qqJxe Ad )(
Per un manipolatore ridondante:
![Page 49: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/49.jpg)
Controllo dei Robot P. Lino
Trasposta dello Jacobiano
KeeeV T
2
1)( 0)0(,00)( VeeV
qqKJexKexKexKeV A
T
d
TT
d
T )(
KeqJq T
A )(
KeqJqKJexKeV T
AA
T
d
T )()(
Per un riferimento costante ( 𝒙𝒅 = 𝟎) risulta definita negativa.
( 𝑽 < 𝟎; 𝑽 > 𝟎 sistema asintoticamente stabile)
Scegliamo le velocità dei giunti come:
![Page 50: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/50.jpg)
Controllo dei Robot P. Lino
KeqJq T
A )(
![Page 51: Corso di Controllo dei Robot Cinematica differenziale · velocità dei giunti e le corrispondenti velocità lineare e ... Derivata di una matrice di rotazione Si supponga che la matrice](https://reader038.vdocuments.pub/reader038/viewer/2022103013/5c69530d09d3f29b758d0068/html5/thumbnails/51.jpg)
Controllo dei Robot P. Lino
Trasposta dello Jacobiano
Richiede solo il computo di funzioni cinematiche dirette
Se il riferimento non è nullo la derivata della funzione diLyapunov può essere resa definita negativa tramite untermine dipendente dalla (pseudo)inversa dello jacobiano(perdo i vantaggi)
In ogni caso, anche utilizzando lo schema basato sulcalcolo della traposta, l’errore di inseguimento si puòmantenere limitato. Esso sarà tanto più piccolo quanto piùgrande è la norma della matrice dei guadagni K
Tuttavia l’implementazione a tempo discretodell’algoritmo impone limiti superiori della norma di K