You are on page 1of 67

Robotica e Automacao

http://www.coep.ufrj.br/gscar 1/67

Cinematica Diferencial
Fernando Lizarralde
DEL-POLI/UFRJ e PEE-COPPE/UFRJ

JJ
II
J
I
Rio de Janeiro, 15 de outubro de 2009
Voltar
Fechar
Cinematica Diferencial
2/67
Como observamos na solucao da cinematica inversa utilizando um metodo
iterativo, o Jacobiano da cinematica direta de um manipulador torna
possvel a linearizacao do problema.
O Jacobiano do manipulador estabelece a relacao entre as velocidades
das juntas e a velocidade linear e angular do efetuador.
O Jacobiano do manipulador e um dos mais importantes valores na
analise e controle do movimento de um robo manipulador:
Planejamento e execucao de trajetorias suaves
Determinacao de singularidades JJ
II
Calculo das equacoes dinamicas de movimento J
I
Transformacao de forcas e torques do efetuador para as juntas
Voltar
Fechar
Jacobiano Geometrico
Considere a transformacao homogenea que representa a configuracao
do efetuador com relacao a base do manipulador:
  3/67
R() p()
T () =
0 1
Entao a ideia e relacionar a velocidade das juntas com a velocidade
linear e angular do efetuador:
p velocidade linear do efetuador

velocidade angular do efetuador
Este mapeamento e descrito pelo Jacobiano geometrico do manipulador:
p = Jp() JJ
= Jo() II
J
onde Jp IR3n e o jacobiano de posicao e Jo IR3n e o jacobiano I
de orientacao. Voltar
Fechar
Desta forma temos:  
p
= J()

onde
4/67
 
Jp()
J() =
Jo()

Desta forma, para um melhor entendimento da cinematica diferencial e


necessario o estudo do conceito de velocidade linear e angular de um
corpo rgido.

JJ
II
J
I
Voltar
Fechar
Velocidade de um Corpo Rgido
5/67
Diferenciacao de um vetor
Considere a rotacao do vetor ~e ao redor do vetor ~k fixo no sistema de
coordenadas Ea.
k

e
e + De

JJ
II
Entao tem-se (c.f. figura): J
I
~k
~e + ~e = e ~e Voltar
Fechar
Pela formula de Rodrigues
h i
~e + ~e = I + sin() ~k +(1 cos()) ~k ~k ~e

Considerando 0 entao sin() e cos() 1, tendo 6/67

~e + ~e = ~e + (~k ~e)

Consequentemente
~e ~
~e = (~k ~e) = = (k ~e)
t t
Para t 0, tem-se
d~e
a
= ~k ~e
dt
JJ
Chamando ~ a = ~k a velocidade angular do vetor ~e no sistema de II
coordenadas Ea: J
d~e I
=~ a ~e
dta Voltar
Fechar
Diferenciacao de um Sistema de Coordenadas
Considere os sistemas de coordenadas Ea e Eb. A derivada de Eb com
respeito a um sistema de coordenadas fixo Ea e dada por:
7/67
dEb
~ ab Eb
=
dta

Derivada da Matriz de Rotacao


Considere a matriz de rotacao Rab = EaEb. Derivando com respeito ao
tempo tem-se:
dRab dEa dEb
~ ab EaEb
= a Eb + Ea a = Ea (~ab Eb) = Ea
dt dt dt | {z }
(~ )
|{z}
0 ab a

Portanto JJ
II
Rab = (~ab)a Rab
J
ou simplesmente I
R = R = R Voltar
Fechar
~ ab = ~ba.
Note que

Na literatura aeroespacial: Rba = (~ba)b Rba = (~ab)b Rba ou


simplesmente R = R.
8/67
Exemplo: Considere uma rotacao elementar ao redor do eixo z, i.e.,
Rz (). Se o angulo for funcao do tempo, calculando a derivada no
tempo de Rz ((t) pode-se determinar = RRT :

sin() cos() 0 cos() sin() 0
= cos() sin() 0 sin() cos() 0
0 0 0 0 0 1

0 0 0
= 0 0 = = 0
JJ
0 0 0 II
Que de fato exprime a velocidade angular do sistema de coordenadas ao J
redor do eixo z. I
Voltar
Fechar
Representacao Exponencial: calculo de R
Considere a representacao exponencial da orientacao

Rab = ek = ek 9/67

Suponha que k e fixo em Ea.


Entao, diferenciando Rab tem-se

Rab = k ek = k
c R
ab

Entao define-se
(~ab)a = k
e desta forma tem-se,
\
Rab = (~
ab)a Rab JJ
onde (~ab)a = velocidade angular do sistema de coordenadas Eb com II
J
respeito a Ea, representada em Ea.
I
Voltar
Fechar
Diferenciacao de vetores
Considere a representacao de um vetor ~v nos sistemas de coordenadas
Ea e Eb, relacionados atraves de va = Rab(t) vb(t). Entao
10/67
dRabvb
va =
dt
= Rabvb + Rabvb
va = (~ab)a Rabvb + Rabvb
= (~ab)a va + Rabvb

Diferenciacao de transformacoes
Considere uma transformacao representada em diferentes sistemas de
T
coordenadas: ga = Rab(t) gb(t) Rab (t), e.g. gb = vb. Entao
JJ
T II
dRabgbRab
ga = J
dt
T
= (~ab)a ga ga(~ab)a +RabgbRab I
Voltar
Fechar
Relacao de velocidade em diferentes frames
Considere 2 sistemas de coordenadas Ea e Eb solidarios a um mesmo
corpo rgido:
w 11/67
zA

yA

xA Pab
zB

yB
P0a

xB
z0 P0b

y0

x0

Entao tem-se que JJ



~a =
~b =
~; II
J
onde
~a e ~ b sao as velocidades angulares relativas ao sistema de coor- I
denadas fixo E0. Voltar
Fechar
Por outro lado, a velocidade linear ~vb e obtida derivando p~0b = p~0a + p~ab
no sistema de coordenadas fixo E0:

d~p0b d~p0a d~pab


~vb = = 0 + 0 = ~va + ~ a p~ab 12/67
dt0 dt dt
Nesta situacao pode-se definir a velocidade angular e linear do corpo
rgido numa forma matricial e livre do sistema de coordenadas:
    
~vb I ~pab ~va
=

~b 0 I
~a

I: operador identidade.
Da mesma forma podemos obter a relacao acima representada num dado
sistema de coordenadas. Considerando as seguintes relacoes:
JJ
(~pab)a = Rab (~pab)b II
(~va)a = Rab (~va)b J
(~a)a = Rab (~a)b I
Voltar
Fechar
Apos manipulacoes algebricas pode-se obter
  " # 
(~vb)b T T d (~va)a
Rab Rab (~pab)a
= T
(~b)b 0 Rab (~a)a
| {z } 13/67
ba =AdT
ba

onde, como ja foi apresentado, ab = AdTab e chamada a transformacao


adjunta da transformacao homogenea
 
Rab (~pab)a
Tab =
0 1

O operador adjunto tem as seguintes propriedades:


aa = I
JJ
ba = 1
ab II
ac = abbc J
I
Voltar
Fechar
Dualidade Forca/Velocidade
14/67
Considere a velocidade linear e angular de um corpo rgido em diferentes
sistemas de coordenadas.

JJ
II
Neste caso, se consideramos a forca (f ) e torque ( ) aplicado no corpo J
rgido representada no 2 sistemas de coordenadas, a potencia e a mesma I
naquele 2 pontos. Voltar
Fechar
Desta forma, como a potencia e mantida, tem-se:
~ f~2
       
~v1 f1 ~v2
=

~1 ~t1
~2 ~t2
15/67
Entao considerando a relacao de velocidade entre diferentes sistemas de
coordenadas:     
~v2 I ~p12 ~v1
=

~2 0 I
~1
Chegasse a seguinte relacao:
f~1 f~2
    
I 0
=
~t1 p~12 I ~t2

A relacao de forcas/torques no sistema de coordenada 1 e 2 e dada por:


JJ
" # " # II
(f~1)1 (f~2)1 (f~2)2
   
I 0 R12 0 J
= =
(~t1)1 [
(~
p12)1 I (~t2)1 [
(~
p12)1R12 R12 (~t2)2 I
Voltar
Fechar
Resumo: cinematica dif. de corpo rgido
16/67
Diferenciacao de um Vetor
Vetor ~k fixo no sistema de coordenadas E0.
~ 0 = ~k e a velocidade angular do vetor ~e em E0:

d~e
~ 0 ~e
=
dt0

Diferenciacao de um Sistema de Coordenadas


A derivada de Ea com respeito a E0 fixo:
JJ
dEa II
~ 0a Ea
=
dt0 J
I
Voltar
Fechar
Derivada da Matriz de Rotacao
Rab = EaEb.
Rab = (~ab)a Rab
17/67
ou simplesmente
R = R = R

Diferenciacao de vetores
Considere o vetor va = Rabvb:

va = (~ab)a va + Rabvb

Diferenciacao de vetores e transformacoes


JJ
T
Considere uma transformacao ga = RabgbRab : II
J
T
ga = (~ab)a ga ga (~ab)a +RabgbRab I
Voltar
Fechar
Velocidade de um corpo rgido

zB

yB
18/67
xB
zA Pab

yA

xA
 
R p
T =
0 1
Velocidade espacial:
 
\ pab (~ab)a (~pab)a
Tab = (Vab )a Tab (Vab)a =
(~ab)a JJ
Velocidade do corpo: II
J
T
 
[ Rab pab I
Tab = Tab (Vab )b ; (Vab)b =
(~ab)b Voltar
Fechar
Relacao de velocidade:
 
Rab pabRab
(Vab)a = (Vab)b
0 Rab
| {z }
ab =AdT 19/67
ab

Outras relacoes
w
zA

yA

xA Pab
zB

yB
P0a

xB
z0 P0b

y0

x0
JJ
II
f~a f~b J
         
~vb I ~pab ~va I 0
= ; = I

~b 0 I
~a ~ta p~ab I ~tb
Voltar
Fechar
Cinematica diferencial do manipulador
20/67
No manipulador da figura considere que a junta i e uma junta de re-
volucao. Alem disto, considere que as demais juntas estam congeladas,
i.e., a unica junta que esta movimentando-se e a junta i.

JJ
II
J
I
Voltar
Fechar
Para ficar independente da convencao de DH (standard ou modificada),
o vetor ~hi ficar asendo o eixo de rotacao da junta i.
A velocidade angular i gera uma velocidade espacial no sistema de
coordenadas En (solidario ao ultimo elo) dada por: 21/67

~ n = i~hi

~ n p~in = i~hi p~in
~vn =

Se a junta i for prismatica a velocidade e dada por:


~n = 0
~vn = i~hi

Neste caso ~hi e o eixo de deslocamento da junta prismatica e i e a


velocidade do deslocamento linear. JJ
II
J
I
Voltar
Fechar
Jacobiano Geometrico
Considerando que o Jacobiano pode ser particionado por:
   
~vn Jp1 Jpn
= Jn = 22/67

~n Jo1 Jon

e desta forma a velocidade linear (~vn) e angular (~n) estara composta


por
Jpii = Contribuicao da junta i na velocidade linear do efetuador;
Joii = Contribuicao da junta i na velocidade angular do efetuador;

JJ
II
J
I
Voltar
Fechar
Contribuicao da Junta i
Velocidade Linear (~vn):
Prismatica: iJpi = i~hi = Jpi = ~hi
23/67
Revolucao: iJpi = i~hi p~in = Jpi = ~hi p~in
Velocidade Angular (~n)
Prismatica: iJoi = 0 = Joi = 0
Revolucao: iJoi = i~hi = Joi = ~hi
Entao cada coluna do Jacobiano e composta por:
~hi
   
Jpi
= Prismatica
Joi 0
ou JJ
II
" #
~hi p~in
 
Jpi
= Revolucao J
Joi ~hi
I
Voltar
Fechar
Considerando todas as contribuicoes
 
~vn
= Jn()

~n
24/67
adicionalmente, considerando juntas de revolucao tem-se:
" #
~h1 p~1n ~h2 p~2n ~hn p~nn
Jn() = ~h1 ~h2 ~hn

Para fins de computacao, o Jacobiano deve ser exprimido num sistema
de coordenadas. Por exemplo na base E0:
  " #
(~vn)0 ~ ~ ~
= (Jn)0 = (h1)0(~p1n)0 (h2)0(~p2n)0 (hn)0(~pnn)0
d d d
(~n)0 (~h1)0 (~h2)0 (~hn)0

As quantidades (~hi)0, (~pin)0 podem ser obtidas da cinematica direta do JJ


II
manipulador, e.g. J
(~pin)0 = R0i (~pi,i+1)i + + R0,n1 (~pn1,n)n1 I
Voltar
Fechar
Por exemplo, para DH Standard tem-se que ~zi = ~hi+1.
Tem-se tambem que p~in = p~0n p~0i.
Este vetores representados em E0 podem ser obtidos da tranformacao
homogenea T0i: 25/67

(~zi)0 e a terceira coluna de R0i


(~p0n)0 e a quarta coluna da transformacao homogenea T0n
(~p0i)0 e a quarta coluna da transformacao homogenea T0i
Note que o Jacobiano do manipulador depende do sistema de coorde-
nadas onde a velocidade do efetuador e representada.
Desta forma a relacao entre o Jacobiano representado em E0 e En e
dada por:
JJ
T
 
R0n 0 II
(Jn)n = T (Jn)0 J
0 R0n
I
Voltar
Fechar
O Jacobiano tambem pode ser obtido em outro sistema de coordenadas,
solidario ao ultimo elo.
Considerando
p~0E = p~0n + p~nE 26/67

tem-se as seguintes relacoes de velocidades

         
~vn I p~nE ~vE ~vE I ~pnE ~vn
= ; =

~n 0 I
~E
~E 0 I
~n

Entao o jacobiano no ponto E, JE , em funcao de Jn e dado por:


 
I p~nE
JE = Jn
0 I
JJ
II
J
I
Voltar
Fechar
Exemplo: Manipulador planar 2R
O jacobiano deste manipulador e dado por:
" #
~ ~
(h1)0 (~p13)0 (h2)0 (~p23)0 27/67
(J3)0 =
(~h1)0 (~h2)0

x3

a2 2

x2

a1
x1 1
JJ
II
y J
E0 I
x
z Voltar
Fechar
Por ser um manipulador planar tem-se que:

0
(~h1)0 = (~h2)0 = 0
1 28/67

e
c1 s1 0 c2 s2 0
R01 = s1 c1 0 ; R12 = s2 c2 0
0 0 1 0 0 1
Por outro lado:
p~13 = a1~x1 + a2~x2
e no sistema de coordenadas da base:

(~p13)0 = a1(~x1)0 + a2(~x2)0 = a1R01(~x1)1 + a2R01R12(~x2)2 JJ


II

a1c1 + a2c12
= a1s1 + a2s12 J
0 I
Voltar
Fechar
Da mesma forma,
p~23 = a2~x2
e no sistema de coordenadas da base:
29/67
a2c12
(~p23)0 = a2(~x2)0 = a2R01R12(~x2)2 = a2s12
0

Calculando

a1s1 a2s12 a2s12
(~h1)0 (~p13)0 = a1c1 + a2c12 ; (~h2)0 (~p23)0 = a2c12
0 0

JJ
II
J
I
Voltar
Fechar
tem-se que o jacobiano e dado por:

a1s1 a2s12 a2s12
a c +a c a2c12
1 1 2 12

0 0
30/67
(J3)0 =

0 0



0 0
1 1

O Jacobiano no plano e dado por:


 
a1s1 a2s12 a2s12
(Jp3)0 =
a1c1 + a2c12 a2c12

JJ
II
J
I
Voltar
Fechar
Singularidade do Manipulador
31/67
Considerando  
~v
= J()

~
Uma singularidade acontece quando o Jacobiano perde posto.
Posto de J:
# de colunas linearmente independentes de J;
# de direcoes independentes em SE(3) nas quais o efetuador pode-
se movimentar.
J e singular se: JJ
II
J perde posto (R(J) reduz de dimensao); J
J ganha DOF adicionais em self-motion (N (J) ganha dimensao). I
Voltar
Fechar
A singularidade pode ser produto de:
Mobilidade reduzida em algumas direcoes
Infinitas solucoes da cinematica inversa
32/67
Numa vizinhanca pequenas velocidades do efetuador causam grande
velocidades nas juntas
Uma possvel classificacao e:
Singularidade de Fronteira: devido a se encontrar na fronteira do
workspace
Singularidade internas: quando 2 ou mais eixos estao alinhados

JJ
II
J
I
Voltar
Fechar
Manipulador com Desacoplamento Cinematico
Considere um manipulador de 6DOF com um punho esferico. A posicao
do punho nao varia com os angulos das 3 ultimas juntas.
Desta forma, a velocidade linear e angular do punho e dada por 33/67
    
~vp J11 0 b
=

~p J21 J22 p
onde b e o vetor de angulos das 3 primeiras juntas, e p e o vetor de
angulos das 3 ultimas juntas que compoem o punho esferico.
J12 = 0: dado que as juntas do punho nao contribuem em ~vp.
Mais especificamente, considerando que pp = p4 = p5 = p6:
 " # 
~ ~ ~

~vp h1 p~1p h2 p~2p h3 p~3p 0 0 0 b
= ~h1 ~h2 ~h3 ~h4 ~h5 ~h6

~p p JJ
II
Desta forma, dado que J IRnn tem-se: J
det(J) = det(J11) det(J22) I
Voltar
Fechar
PUMA 560: Configuracao Zero

34/67

JJ
II
J
I
Voltar
Fechar
Singularidade do Punho
Neste caso h i
J22 = ~h4 ~h5 ~h6
J22 e singular (det(J22) = 0) quando ~h4 e ~h6 sao colineares, que acon- 35/67

tece quando 5 = 0, .

Singularidade do Braco
Neste caso, dado que pp = p4 = p5 = p6
h i
J11 = ~h1 p~14 ~h2 p~24 ~h3 p~34
JJ
Notando que p~12 e colinear com ~h1; ~h2 k ~h3; e fazendo (c2=c2-c3), II
tem-se h i J
J11 ~h1 p~24 ~h2 p~23 ~h2 p~34 I
Voltar
Fechar
Entao, em h i
J11 ~h1 p~24 ~h2 p~23 ~h2 p~34
podem ser observadas 2 situacoes onde e perdido o posto:
36/67
1. ~h1 e p~24 colineares
2. p~23 e p~34 colineares

JJ
II
p J
I
Voltar
Fechar
Este resultado pode ser validado numericamente calculando o jacobiano
(por simplicidade nao serao considerados os offsets do PUMA)

h1 = h4 = h6 = z; h2 = h3 = h5 = y; R12 = eh22 ; R23 = eh33


37/67
p01 = p45 = p56 = 0; p12 = a1z; p23 = a2x; p34 = a3z
Representado o Jacobiano em E2
h i
J11 R12h1((~p23)2 + R23(~p34)3) h2(~p23)2 h2R23(~p34)3
\ T


0 0 a3c3
J11 a2c2 a3s23 0 0
0 a2 a3s3
O determinante e dado por:
JJ
det(J11) = a2a3c3(a2c2 a3s23) II
J
Existem 2 casos onde J11 e singular I
1. c3 = 0 = 3 = /2 (Esticado) Voltar
Fechar
38/67

2. a2c2 a3s23 = px = py = 0 (No topo da cabeca)

JJ
II
J
I
Voltar
Fechar
Singularidade Genericas: 6 DOF e juntas de revolucao
1. Duas juntas colineares
Considerando ~zi = ~zj (paralelas ou colineares) e operando colunas
39/67
(col2 = col1 - col2) tem-se
   
~zi ~pin ~zj ~pjn ~zi ~pin ~zi ~pij

~zi ~zj ~zi 0

Perdendo posto e sendo consequentemente linearmente dependentes


quando p~ij ~zi = 0, que implica que as juntas sao colineares.

JJ
II
J
I
Voltar
Fechar
2. Tres juntas paralelas coplanares
Neste caso,
~zi = ~zj = ~zk
e existe um plano comum que contem ~zi, p~ij , p~ik , isto e, existe ~n tal 40/67

que ~n ~zi = 0; ~n p~ij = 0; ~n p~ik = 0.

Operando colunas
   
~zi ~pin ~zj ~pjn ~zk ~pkn ~zi ~pin ~zi ~pij ~zi ~pik JJ
II
~zi ~zj ~zk ~zi 0 0
J
Dado que (~zi, p~ij , p~ik ) sao coplanares, as duas ultimas colunas sao I
linearmente dependentes. Voltar
Fechar
3. Quatro juntas interceptando num ponto
~ tal que ~zi (~pin L)
Existe L ~ = 0, i = 1, 2, 3, 4.
~ .
Implica que ~zi p~in = ~zi L
z1 z2
z3 41/67
z4
p2n
p3n
p4n
p1n
On

q: ponto de intercepcao

Operando colunas
 
~z1 ~p1n ~z2 ~p2n ~z3 ~p3n ~z4 ~p4n JJ
~z1 ~z2 ~z3 ~z4 II
J
~ ~z2 L ~ ~z3 L ~ ~z4 L ~
 
~z1 L I

~z1 ~z2 ~z3 ~z4 Voltar
Fechar
~
   
I L 0 0 0 0
Pre-multiplicando por obtem-se .
0 I ~z1 ~z2 ~z3 ~z4
Que tem Posto maximo = 3.
42/67
Exemplo: Inverse Elbow

JJ
II
J
I
Voltar
Fechar
4. Tres juntas coplanares interceptando num ponto
Com os mesmos argumentos anteriores pode ser obtido que o Jaco-
biano e similar a:
~ ~zj L~ ~zk L~
   
~zi ~pin ~zj ~pjn ~zk ~pkn ~zi L 43/67

~zi ~zj ~zk ~zi ~zj ~zk

~
   
I L 0 0 0
Pre-multiplicando por obtem-se .
0 I ~zi ~zj ~zk
Dado que ~zi, ~zj , ~zk sao coplanares, o maximo posto e 2.

JJ
II
J
I
Voltar
Fechar
Jacobiano Analtico
44/67
Considerando que a orientacao R SO(3) pode ser representada por
uma parametrizacao (e.g., RPY, quaternions, etc), sendo desta forma
a cinematica direta dada
 
p
x= = k()

temos que derivando com respeito ao tempo
k()
x = = Ja()

k() JJ
onde Ja() = .   II
v J
Note que esta expressao e diferente a do Jacobiano Geometrico: =
I
J(). Logo calcularemos uma relacao entre e . Voltar
Fechar
Relacao entre Jacobiano Geometrico e Analtico
Tem-se em condicoes de estabelecer uma relacao entre o Jacobiano
Geometrico e o Jacobiano Analtico.
Tem-se as seguintes 3 relacoes: 45/67
   
v p
V = = J() ; x = = Ja() ; = JR ()

onde Jr () e o Jacobiano da Representacao.
Entao pode-se estabelecer que (v = p)
    
p I 0 v
x = = = TR (x) V
0 JR ()
e portanto
x = Tr (x)J() JJ
II
| {z }
Ja ()
com J
Ja() = TR (x) J() I
Voltar
Fechar
Jacobiano da Representacao
46/67
Relacao entre e a derivada da representacao da orientacao .

Considere uma representacao da orientacao R SO(3). E possvel


estabelecer uma relacao
= JR ()
A funcao JR () depende da representacao escolhida.

Representacao Exponencial
Neste caso tem-se que como R = ek com ||k|| = 1, a representacao e
JJ
dada por {k, }. II
Considerando J
I
R = I + sin() k + (1 cos()) k 2 Voltar
Fechar
Lembrando que a inversa de representacao exponencial e dada por:
2 cos() = tr(R) 1
2 sin() k = F (R) = (R RT )
47/67

Exerccios: Provar que


1. tr(R) = tr(R) = T F (R)
2. F (kR) = [tr(R)I R] k

Entao tendo que tr(R) = 1 + 2 cos() derivando respeito ao tempo:


tr(R) = 2 sin()
Por outro lado, das propriedades acima tem-se:
JJ
tr(R) = tr(R) = T F (R) = 2 sin() T k II
J
Portanto, comparando as 2 equacoes acima conclue-se
I
2 sin() = 2 sin() T k = = T k Voltar
Fechar
Portanto podemos escrever
= T k = k T
Adicionalmente tem-se
48/67

k = 1/2 [ k + cotg(/2) k 2 ]
Prova: (Esboco) Considerando
F (R) = F (R) = [tr(R)I R]
Por outro lado, tem-se que F (R) = 2sk que implica
F (R) = 2sk + 2ck
Portanto comparando as duas equacoes
2sk = 2ck + [tr(R)I R] JJ
II
tendo em conta que = k T , a formula de Rodrigues, as igualdades J
kk T = k 2 + I, c = 1 2s2(/2), s = 2s(/2)c(/2) (portanto I
cotg(/2) = (1 + c)/s), mostra-se a igualdade. Voltar
Fechar
Concluindo, a relacao entre a derivada da representacao e a velocidade
angular e dada por
kT
 
43
JR (, k) = IR
1/2 [ k + cotg(/2) k 2 ] 49/67

O jacobiano e singular para = 0.

JJ
II
J
I
Voltar
Fechar
Representacoes Mnimas: Angulos de Euler (ZYZ)
Considerando as rotacoes dada pelos angulos de Euler

50/67

Rotacao ao redor ~z:


z = [0 0 1]T ;
Apos a rotacao Rz (), segue uma rotacao ao redor ~y 0:
y = [s c 0]T JJ
II
Apos a rotacao Rz ()Ry (), segue uma rotacao ao redor ~z : J
z = [cs ss c]T I
Voltar
Fechar
Geometricamente, tem-se

51/67

Compondo tem-se

0 s cs cc sc 1
1
= 0 c ss ; = ss cs 0 JJ

s II
1 0 c c s 0
J
O jacobiano e singular para = 0, . I
Voltar
Fechar
Roll-Pitch-Yaw
Considerando os angulos (yaw), (pitch) e (roll) tem-se

ctg stg 1
52/67
JR (, , ) = s c 0
c/c s/c 0
O jacobiano e singular para = /2.

Quaternions
O Quaternion e definido por:
 
q0
q= ; q0 = cos(/2) IR qv = sin(/2)k IR3
qv
JJ
onde ||q|| = 1 e a unica restricao. Com R = ek . II
O calculo da derivada de q0 e direta: J
1 1 1 I
q0 = sin(/2) = T k sin(/2) = T qv Voltar
2 2 2
Fechar
Adicionalmente o jacobiano e dado por:
qvT
 
1 1
JR (q) = = E(q)
2 q0I qv 2
53/67
e portanto  
q0 1
= E(q)
qv 2

Exerccio: Provar que 2qv = (q0I qv ) .


Dica: Observe que qv = sin(/2)k + 1/2 cos(/2)k com k e dados
pelo jacobiano da representacao exponencial.
Exerccio: Provar que E(q) e ortonormal, i.e, E T E = I.
Tem-se tambem que
JJ
T
 
1 0 II
q = ()q; () = = T ()
2 J
I
entao q(t) = e1/2()tq(0). Voltar
Fechar
Dualidade Forca/Velocidade
54/67
Considerando um manipulador
f
T3

T2 t

T1

tem-se que a velocidade do efetuador, a F/Ts aplicados ao efetuador e


os torques aplicados nas juntas sao dados por:

 
~n
  1
~
v f
V~n = n
; F~n = ; = ... JJ

~n ~tn
n II
J
Pela conservacao da potencia tem-se que:
I
= F~n V~n = F~n J() Voltar
Fechar
Pela definicao de operador adjunto, V~ J = J V~ , tem-se que

= J ()F~n

Portanto, por comparacao tem-se 55/67

= J () F~n

Consequentemente numa dado sistema de coordenadas, e.g. E0, tem-se

= J0T () (F~n)0

onde J0 e o jacobiano do manipulador representado nos sistema de


coordenadas E0.
Esta equacao relaciona as F/Ts aplicadas no efetuador com o torque
aplicado nas juntas. JJ
II
J
I
Voltar
Fechar
Manipuladores Redundantes
56/67
Um manipulador e redundante se:
# de grau de mobilidade > # DOF da tarefa
Cinematica direta e Jacobiano: igual nao redundantes
Singularidades: perda de posto do Jacobiano
Cinematica Inversa: sempre uma familia de solucoes.
Exemplos:
Manipulador planar com 4 juntas e tarefa de 3 DOF (posicao e
orientacao) JJ
II
Manipulador planar com 3 juntas e tarefa de 2 DOF (posicao) J
I
Braco de 7 juntas e tarefa em SE(3).
Voltar
Fechar
Manipulabilidade
57/67
A manipulabilidade e uma medida da distancia que uma dada confi-
guracao esta da singularidade do Jacobiano do Manipulador J().
No caso de manipuladores redundantes, J() nao e uma matriz qua-
drada. A decomposicao por valores singulares SVD e uma forma de
generalizar os conceito de autovalores e autovetores.
No caso de manipuladores redundante J() IRmn com n > m.
Os valores singulares de J sao definido a partir dos autovalores e auto-
vetores da matriz quadrada JJ T , i.e.,

JJ T ui = i ui JJ
II
de forma que os valores singulares de J sao definidos como:
J
I
p
i = i
Voltar
Fechar
Desta forma a decompisicao SVD e dada por:

J = U V T;
com 58/67
1 0 0 0
= ... ... ... 0 ... 0 = [m 0]
0 m 0 0
onde m i 1;

U = [u1 um] IRmm

satisfazendo U U T = Im e,

V = [v1 vn] = [Vm Vnm] IRnn


JJ
T
sendo qualquer matriz ortogonal (V V = In) com Vm = J T
U 1
m . II
Com isto tem-se que JVm = U m e JVnm = 0. De fato, V sao os J
autovetores de J T J. I
Voltar
Fechar
Em forma geral, a decomposicao SVD deixa em evidencia as seguintes
relacoes:
J*

59/67
N(J)=span(V2) N(J*) = span(U2)

+ +
R(J*)=span(V1) R(J)=span(U1)
=

=
n J 6
R R

onde
V1T JJ
  
1 0
J = [U1 U2] II
0 0 V2T
J
e J e a adjunta de J que no caso se ser uma matriz e a transposta I
J T = V U T . Voltar
Fechar
Desta forma, a decomposicao SVD e uma ferramente util para estudar
a transformacao linear v = J .
Segundo a interpretacao geometrica,
J transforma uma esfera unitaria
em IRn definida como = 1 num conjunto de vetores que definem

60/67
um elipsoide em IRm. Os valores singulares sao os comprimentos dos
eixos do elipsoide.
De fato tem-se
T = v T (J )T J v
com J = J T (JJ T )1 sendo a pseudo-inversa a direita, i.e. JJ = I.
Apos manipulacoes algebricas, considerando que JJ T = (JJ T )T , obtem-
se:
T = v T (JJ T )1v = v T (U V T V U T )1v
e dado que U 1 = U T tem-se JJ
II
T = v T U 2 T
m U v J
I
Voltar
Fechar
Definindo v = U T v tem-se

T = v T 2
m v = 1

que representa um elipsoide alinhado com os eixos v. 61/67

Dado que U T e uma matriz de rotacao (por ser ortogonal), no espaco


v tem-se um elipsoide com os eixos dados pelos vetores iui.

JJ
II
J
I
Voltar
Fechar
1. Cinematica (v = J() )
J
1U1
62/67
V2 V1

2U2

u1: direcao preferencial com respeito ao movimento,


Melhor caso: 1 = 2 6= 0.
JJ
II
J
I
Voltar
Fechar
2. Estatica ( = J T () F )
JT
1 V1
63/67
U2 U1

2 V2

v2: direcao preferencial do ponto de vista mecanico,


Melhor caso: 2 = 0 que implica J singular.
JJ
II
J
I
Voltar
Fechar
Medidas de Manipulabilidade
Considerando J IRmn as possveis medidas de manipulabilidade sao:

64/67
q
det(JJ T ) = 1 n
O problema aqui e que a escolha pode nao ser boas se a relacao
entre o menor e maior valor singular e grande.

min(J)
Numero de condicao:
min(J)
c= JJ
max(J)
II
J
I
Voltar
Fechar
Manipulabilidade: manipulador nao redundante
No caso de manipuladores nao redundantes, i.e., J IRnn tem-se que
q
det(JJ T ) = |det(J)| 65/67

Exemplo: Manipulador de 2 elos.


p
Manipulabilidade w() = det(JJ T ). No caso de m = n tem-se que

w() = |det(J())| = a1a2 |sin(2)|

JJ
II
J
I
Voltar
Fechar
min(J), max(J) em funcao da posicao x:

66/67

Elipsoide de Manipulabilidade de Forca


Considera T = 1 tendo portanto
f T (J()J T ())f = 1

JJ
II
J
I
Voltar
Fechar
Exemplo: Manipulador planar de 3 elos (braco+antebraco+mao).
1. Escrevendo no plano horizontal

67/67

2. Arremessando um peso horizontalmente

JJ
II
J
I
Voltar
Fechar

You might also like