48
1 1 1 Master in Informatica Medica , Corso di Robotica, Parte 8 ALTAIR -- Computer Science Department – University of Verona http://metropolis.sci.univr.it 1 CINEMATICA DIFFERENZIALE Paolo Fiorini Dipartimento di Informatica Università degli Studi di Verona

CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

Embed Size (px)

Citation preview

Page 1: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

111Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it1

CINEMATICA DIFFERENZIALE

Paolo Fiorini Dipartimento di Informatica

Università degli Studi di Verona

Page 2: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

222Master in Informatica Medica , Corso di Robotica, Parte 8

ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it2

IntroduzioneCinematica DifferenzialeEsprime il legame che intercorre tra le velocità ai giunti e le corrispondenti velocità lineare ed angolare dell’organo terminaleper la posa data

I legami sono espressi da una matrice di trasformazione

Page 3: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

333Master in Informatica Medica , Corso di Robotica, Parte 8

ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it3

JacobianoJacobiano GeometricoMatrice dipendente dalla configurazione (geometria) corrente del manipolatore

Jacobiano AnaliticoSfrutta operazioni di differenziazione in caso in cui la configurazione sia espressa con rappresentazioni minime

Page 4: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

444Master in Informatica Medica , Corso di Robotica, Parte 8

ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it4

Proprietà dello Jacobiano

Strumento di analisi delle caratteristiche del manipolatore:• Identifica le singolarità• Analisi della ridondanza• Calcolo dell’inversione cinematica• Evidenzia il legame tra forze al polso e coppie ai giunti

Page 5: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

555Master in Informatica Medica , Corso di Robotica, Parte 8

ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it5

Jacobiano Geometrico

Consideriamo l’equazione cinematica diretta nella forma classica

In cui

è il vettore delle variabili di giunto

( ) ( ) ( )

=

10TqpqR

qT

[ ]Tnqqq K1=

Page 6: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

666Master in Informatica Medica , Corso di Robotica, Parte 8

ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it6

Jacobiano GeometricoSi vuole esprimere la velocità lineare e la velocitàangolare ω del tool in funzione delle velocità ai giuntiQuindi:

Dove JP è la matrice (3xn) del contributo della velocitàlineare, mentre JO è la matrice (3xn per la velocitàangolare)

( )( )qqJqqJp

O

P

&

&&

==

ω

p&q&

( )qqJpv

JJ

JO

P &&

=

=

=

ω

Page 7: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

777Master in Informatica Medica , Corso di Robotica, Parte 8

ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it7

Altre Proprietà della Matrice RDato che R rappresenta posizione e orientazionedell’organo terminale in funzione dei parametri di giunto, l’analisi della velocità porta allo studio della derivata rispetto al tempo della matrice R

Sia R funzione del tempo:

( )tRR =

Page 8: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

888Master in Informatica Medica , Corso di Robotica, Parte 8

ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it8

Altre Proprietà della Matrice RValgono i seguenti passaggi:

( ) ( )

( ) ( ) ( ) ( )

( ) ( ) ( )

( ) ( )

( )( ) ( ) ( )tRtStR

tR

tStS

tRtRtS

tRtRtRtR

ItRtR

T

T

TT

T

=

=+

=

=+

=&

&

&&

per ndomoltiplica

0proprietà la valecuiper

posto0

derivando

Questo permette di esprimere la derivata temporale in funzione della matrice stessa

Page 9: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

999Master in Informatica Medica , Corso di Robotica, Parte 8

ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it9

Interpretazione dell’operatore di trasformazione S(t)Consideriamo quanto segue:

( ) ( )

( ) ( )

( ) ( ) ( )( )( ) ( ) ( ) '

angolare velocitàla detta' di edefinizion laper

'derivando

'

ptRtωtptω

ptRtStp(t)R

ptRtp

ptRtp

×=

=

=

=

&

&

&

&&

L’operatore S(t) ammette la seguente interpretazione fisica:è l’operatore che descrive il prodotto vettoriale tra il vettore ω e il vettore R(t)p’

Page 10: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

101010Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it10

Interpretazione dell’operatore di trasformazione S(t)Se si considera il vettore di velocità angolare

La matrice equivalente che descrive il prodotto è data dalla seguente

( ) [ ]zyx ωωωtω =

−−

−=

00

0

xy

xz

yz

ωωωωωω

S

Page 11: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

111111Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it11

Consideriamo la matrice di rotazione elementare attorno all’asse Z con α funzione del tempo

Calcoliamo la derivatain funzione di t

Esempio

( )( )

−=

10000

αααα

α cssc

tRz

( )( )

−−−

=00000

αααααααα

α sccs

tRz &&

&&

&

Page 12: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

121212Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it12

Applicando la defiizione dell’operatore S(t) si ha

e quindi

Esempio

( ) ( ) ( )

−−−

==10000

00000

αααα

αααααααα

cssc

sccs

tRtRtS T &&

&&

&

−−

−⇒⇒

−=

00

0

0000000

xy

xz

yz

ωωωωωω

αα

&

&

[ ]Tαω &00=

Page 13: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

131313Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it13

Si consideri la trasformazione omogenea (non compatta)

La derivata rispettoal tempo diventa

Uso dell’operatore S(t)

BAB

AOrigB

A pRpp += _

BAB

BAB

AOrigB

A pRpRpp &&&& ++= _

Page 14: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

141414Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it14

Applicando ancora la definizione della derivata della matrice di rotazione si ottiene

Indicando con il vettore

Uso dell’operatore S(t)

BAB

AB

BAB

AOrigB

A

BAB

BAB

AOrigB

A

pRSpRpp

pRpRpp

)(_

_

ω++=

++=

&&&

&&&&

ABr BA

B pR

AB

AB

BAB

AOrigB

A rpRpp ×++= ω&&& _

Page 15: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

151515Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it15

Consideriamo il generico braccio i della catena cinematica del manipolatore

•Il braccio i connette i giunti i e i+1•La terna i è solidale al braccio•Pi-1 e Pi sono i vettoridi posizione delleorigini dei sistemi

Consideriamo

Velocità di un Braccio

1,111

−−−− += iiiiii rRpp

Page 16: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

161616Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it16

Per quanto già visto si può calcolare la derivata rispetto al tempo ottenendo

E quindi

Che esprime la velocità lineare del braccio i in funzione delle velocità lineare ed angolare del braccio i-1

Velocità di un Braccio

1,111

1,111

1,111

−−−−

−−−−

−−−−

×++=⇓+=

iiiii

iiiiii

iiiiii

rRrRpp

rRpp

ω&&&

iiiiiii rvpp ,11,11 −−−− ×++= ω&&

Page 17: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

171717Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it17

In considerazione del fatto che vale la relazione

La formula generale

Può essere “particolarizzata” a seconda che si tratti di un giunto di tipo prismatico o rotoidale

Velocità di un Braccio

iiiiiii rvpp ,11,11 −−−− ×++= ω&&

iiii ,11 −− += ωωω

Page 18: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

181818Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it18

L’orientamento della terna non varia

La velocità lineare risulta definita come

Di conseguenza le velocità angolari e lineari diventano

Velocità - Giunto Prismatico

1,1 −− = iiii zdv &

0,1 =− iiω

iiiiiii

ii

rzdpp ,111

1

−−−

×++==

ωωω

&&&

Page 19: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

191919Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it19

In questo caso abbiamo

La velocità lineare risulta definita come

Di conseguenza le velocità angolari e lineari diventano

Velocità - Giunto Rotoidale

iiiiii rv ,1,1,1 −−− ×=ω

1,1 −− = iiii zθ&ω

iiiii

iiii

rppz

,11

11

−−

−−

×+=+=ωθωω

&&

&

Page 20: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

202020Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it20

Consideriamo l’operatore Jacobiano partizionato secondo vettori colonna (3x1)

E indichiamo con

Calcolo dello Jacobiano

=

n

n

jOjO

jPjPJ

1

1

L

angolare velocitàalla contributo il lineare velocitàalla contributo il

ii

ii

jOqjPq

&

&

Page 21: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

212121Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it21

Per quanto visto prima si puo’ scrivere

Giunto prismatico

Giunto rotoidale

Calcolo dello Jacobiano

0011

=⇒==⇒= −−

iii

iiiiii

jOjOqzjPzdjPq

&

&&

( ) ( )11

1111,1,1

−−

−−−−−−

=⇒=−×=⇒−×=×=

iiiiii

iiiiiiniiiii

zjOzjOqppzjPppzrjPq

θθω&&

&&

Page 22: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

222222Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it22

In definitiva

Dove:•Zi-1 è dato dalla terza colonna della matrice•P è dato dai primi tre elementi della quarta colonna di•Pi-1 dai primi tre elementi della quarta colonna di

Calcolo dello Jacobiano

( )

−×

=

−−

rotoidale giuntoun per

prismatico giuntoun per 0

1

11

1

i

ii

i

i

i

zppz

z

jOjP

01−iR

0nT0

1−iR

Page 23: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

232323Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it23

Torniamo a considerare il manipolatore planare a tre bracci

Applicando le regole di costruzione dello Jacobiano

Esempio

( ) ( ) ( ) ( )

−×−×−×=

210

221100

zzzppzppzppz

qJ

Page 24: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

242424Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it24

I vettori di posizione dei vari bracci si ottengono dalla composizione delle matrici di trasformazione

Mentre i versori degli assi sono dati da

Esempio

++++

=

++

=

=

=

000000

123312211

123312211

312211

12211

211

11

10 sasasacacaca

psasacaca

psaca

pp

===

100

210 zzz

Page 25: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

252525Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it25

Svolgendo i calcoli, la matrice del Jacobiano risulta essere data dalla seguente

Esempio

+−−

++−−−

=

100

100

100

0001233

1233

1233122

1233122

123312211

123312211

casa

cacasasa

cacacasasasa

J

Page 26: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

262626Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it26

Nota:Solo tre righe non sono nulle (rango 3 della matrice)

•Le prime due righe caratterizzano le componenti di velocità lineare lungo gli assi X0 e Y0

•L’ultima riga rappresenta invece la componente angolare rispetto all’asse Z0

Avendo solo 3 DOF si possono specificare solo 3 componenti di velocità

Esempio

Page 27: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

272727Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it27

E’ calcolabile se posizione e orientamento sono espressi tramite rappresentazioni minime (angoli di Eulero ZYZ)

In questo caso è possibile ricavare lo Jacobianodirettamente dalla derivazione della funzione k della cinematica diretta

Jacobiano Analitico

( )qkx =

Page 28: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

282828Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it28

Velocità di traslazione della terna utensile =

Derivata rispetto al tempo del vettore di posizione del tool

Jacobiano AnaliticoRotazione e Traslazione

( )qqJqqpp P &&& =∂∂

=

Page 29: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

292929Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it29

Velocità di rotazione della terna utensile =

Derivata rispetto al tempo della rappresentazione minima (ZYZ) dell’orientazione del tool

Nota: Solitamente non coincide con la controparte dello Jacobiano geometrico

Jacobiano AnaliticoRotazione e Traslazione

( )qqJqq

&&&φ

φφ =∂∂

=

Page 30: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

303030Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it30

Per quanto visto possiamo rappresentare in modo compatto lo Jacobiano analitico

E quindi

Jacobiano Analitico

( )( ) ( )qqJqqJqJp

x AP

&&&

&& =

=

=

φφ

( ) ( )qqkqJA ∂

∂=

Page 31: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

313131Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it31

Velocità di rotazione in terna corrente di Eulero ZYZ

Jacobiano Analitico

Composizione delle velocità di rotazione in terna di Eulero ZYZ

Page 32: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

323232Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it32

Se si considerano le velocità riportate in figura per la terna ZYZ si hanno le seguenti

•Per effetto di

•Per effetto di

•Per effetto di

Relazione Tra ω e φ

[ ] [ ][ ] [ ][ ] [ ]TT

zyx

TTzyx

TTzyx

csssc

cs

ϑϑϕϑϕψωωωψ

ϕϕϑωωωϑ

ϕωωωϕ

&&

&&

&&

=

−=

=

:

0 :

100 :

Page 33: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

333333Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it33

La relazione che lega le velocità angolari nelle due rappresentazioni è la seguente

Relazione Tra ω e φ

( )φφφϑϑϕϕϑϕϕ

ω && Tcsscscs

=

−=

0100

Page 34: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

343434Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it34

Una volta definita la trasformazione T(φ) si può scrivere

e quindi

Relazione Tra i Due Jacobiani

( ) ( )xTxT

Iv A && φ

φ=

=

00

( ) AA JTJ φ=

Page 35: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

353535Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it35

Lo Jacobiano definisce una trasformazione tra il vettore delle velocità ai giunti e il vettore delle velocità dell’organo ternimale

Lo Jacobiano è funzione della configurazione qassunta nello spazio dei giunti

I valori di q per cui lo Jacobiano J diminuisce di rango identificano delle singolarità cinematiche

Singolarità Cinematiche

( )qqJv &=

Page 36: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

363636Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it36

Importanza delle singolarità cinematiche:

• Rappresentano configurazioni per cui si ha perdita di mobilità della struttura• Per la data configurazione si possono presentare infinite soluzioni per il calcolo della cinematica inversa• Nell’intorno di una singolarità, velocità minime nello spazio operativo possono portare a velocitàelevate nello spazio dei giunti

Singolarità Cinematiche

Page 37: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

373737Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it37

Classificazione dell singolarità cinematiche:• Ai confini dello spazio di lavoroSi presentano nelle configurazioni in cui il manipolatore è completamente esteso o completamente ripiegato su se stessoNon rappresentano un grosso inconveniente• All’interno dello spazio di lavoroCausate solitamente dall’allineamento di qualche asse di giuntoSono un problema perchè possono interessare traiettorie di lavoro del manipolatore

Singolarità Cinematiche

Page 38: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

383838Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it38

Manipolatore planare a due bracci

Il determinante della matrice risulta essere

Esempio

+

−−−=

12212211

12212211

cacacasasasa

J

( ) 221det saaJ =

Page 39: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

393939Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it39

Nell’ipotesi in cui i bracci del manipolatore non abbiano lunghezza nulla

Il determinante si annulla per

Sono le due configurazioni di singolarità

Esempio

0, 21 ≠aa

πϑϑ

==

2

2 0

Page 40: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

404040Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it40

Per strutture complesse l’analisi in base al comportamento del determinante non è banale

Come per l’inversione cinematica si tende a dividere il problema distinguendo tra:

•Singolarità della struttura portante

•Singolarità del polso

Disaccoppiamento delle Singolarità

Page 41: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

414141Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it41

Consideriamo il caso del manipolatore antropomorfo con polso sferico

Lo Jacobiano risulta una matrice (6x6)•3 colonne per la struttura•3 colonne per il polso

Disaccoppiamento delle Singolarità

Page 42: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

424242Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it42

Partizioniamo la matrice dello Jacobiano

Dove

Le singolarità non dipendono dalle scelte fatte per descrivere la cinematica ma dalla meccanica del manipolatore

Disaccoppiamento delle Singolarità

=

2221

1211

JJJJ

J

[ ][ ]54322

55443312 )()()(zzzJ

ppzppzppzJ=

−×−×−×=

Page 43: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

434343Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it43

Imponiamo che il sistema di riferimento dell’organo teriminale abbia origine sul punto di intersezione degli assi del polsoIn tal caso si ottiene

E quindi il calcolo deldeterminante diventa

Disaccoppiamento delle Singolarità

[ ]00012 =J

( ) ( ) ( )2211 detdetdet JJJ =

Page 44: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

444444Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it44

In definitiva il determinante dello Jacobiano si annulla se uno dei due “sotto-determinanti” è nullo

• La condizione

Conduce alle singolarità della struttura portante

• La condizione

Conduce alle singolarità di polso

Disaccoppiamento delle Singolarità

( ) ( ) ( )2211 detdetdet JJJ =

( ) 0det 11 =J

( ) 0det 22 =J

Page 45: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

454545Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it45

Le singolarità di polso solo legate quindi all’annullamento del determinante del blocco J22

Che per costruzione sappiamo essere

I versori Z devono quindi essere linearmente dipendentiData la struttura questo accade solo quando Z3 e Z5sono allineati

Singolarità di Polso

( ) 0det 22 =J

[ ]54322 zzzJ =

Page 46: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

464646Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it46

La singolarità di polso è data quindi per

In particolare, per un angolo pari a π la perdita di mobilità ha due conseguenze:

• Rotazioni uguali e opposte su θ4 e θ6 non hanno effetto

• Nessuna rotazione è possibile sull’asse ortogonale a Z4 e Z6

Singolarità di Polso

πθθ == 55 0

Page 47: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

474747Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it47

Consideriamo ora il determinante del blocco J11 per il manipolatore antropomorfo

L’annullamento del determinante si ha in due casi

Singolarità della Struttura Portante

( ) )(det 2332233211 cacasaaJ +−=

00 233223 =+= cacas

Page 48: CINEMATICA DIFFERENZIALE - profs.sci.univr.itprofs.sci.univr.it/~fiorini/materiale_robotica/parte8.pdf · Se si considera il vettore di velocità angolare La matrice equivalente che

484848Master in Informatica Medica , Corso di Robotica, Parte 8ALTAIR -- Computer Science Department – University of Verona

http://metropolis.sci.univr.it48

Caso 1:Il manipolatore è tuttosteso o tutto ritratto

Caso 2:Il polso si trova sull’assegi rotazione del primogiunto (∞ soluzioni)

Singolarità della Struttura Portante

03 =s

023322 =+ cacaπθθ == 33 0

0== yx pp