Buscar

ap_cap2

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 30 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 30 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 30 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Cap´ıtulo 2
Movimento de Corpos Rı´gidos e
Transformac¸o˜es Homogeˆneas
Boa parte do estudo em cinema´tica dos manipuladores preocupa-se em definir sistemas de coordenadas de
forma que se possa representar posic¸o˜es e orientac¸o˜es de corpos r´ıgidos com relac¸a˜o a estes sistemas. Ainda,
transformac¸o˜es entre estes sistemas de coordenadas tambe´m sa˜o necessa´rias. De fato, a geometria do espac¸o
tridimensional e a mecaˆnica de corpos r´ıgidos teˆm um papel central em todos os aspectos durante o estudo de
manipuladores robo´ticos.
Neste cap´ıtulo sera˜o estudadas operac¸o˜es de rotac¸a˜o e translac¸a˜o entre sistemas de coordenadas tridimen-
sionais, atrave´s da introduc¸a˜o do conceito de transformac¸o˜es homogeˆneas.
2.1 Sistemas de coordenadas tridimensionais
Um sistema de coordenadas tridimensional Onxnynzn (ou simplesmente n) e´ descrito pela sua origem On e pelos
treˆs eixos cartesianos: xn, yn e zn. Estes eixos sa˜o perpendiculares entre si.
A este sistema de coordenadas associa-se uma base ortonormal, formada pelos vetores in, jn e kn, respecti-
vamente na direc¸a˜o de xn, yn e zn (Figura 2.1). Cada vetor tem dimensa˜o unita´ria e pode ser escrito na forma
vetorial como:
in =


1
0
0

 jn =


0
1
0

 kn =


0
0
1


Figura 2.1: Vetores in, jn e kn que formam a base ortonormal.
A ordenac¸a˜o relativa dos eixos e´ dada pela regra da ma˜o direita, mostrada na Figura 2.2.
O sentido positivo do aˆngulo de rotac¸a˜o tambe´m e´ dado pela mesma regra (Figura 2.3).
7
8 CAPI´TULO 2. MOVIMENTO DE CORPOS RI´GIDOS E TRANSFORMAC¸O˜ES HOMOGEˆNEAS
Figura 2.2: Regra da ma˜o direita para formac¸a˜o de sistemas de coordenadas tridimensionais. O dedo polegar
corresponde ao eixo z, o indicador ao eixo x e o dedo me´dio ao eixo y.
Figura 2.3: Regra da ma˜o direita: o sentido do fechamento dos dedos na ma˜o indica o sentido positivo do
aˆngulo de rotac¸a˜o.
Um ponto p ∈ R3 de um corpo r´ıgido, pertencente ao espac¸o cartesiano tridimensional, pode ser representado
por um vetor que parte da origem do sistema de coordenadas. Assim, em um sistema O0x0y0z0, p e´ descrito
como uma combinac¸a˜o linear dos vetores da base ortonormal {i0, j0,k0} (Figura 2.4):
p0 = p0xi0 + p0yj0 + p0zk0, (2.1)
ou, na forma vetorial,
p0 =


p0x
p0y
p0z

 (2.2)
Figura 2.4: Ponto p descrito como combinac¸a˜o linear dos vetores da base ortonormal no sistema 0. Os vetores
em vermelho representam i0, j0 e k0.
2.2. ROTAC¸A˜O 9
O subscrito associado ao nome do vetor indica com relac¸a˜o a qual sistema de coordenadas o ponto esta´
representado. Assim, p0 e´ a representac¸a˜o do ponto p com relac¸a˜o ao sistema O0x0y0z0. Da mesma forma, p1
representa p com relac¸a˜o a um sistema O1x1y1z1, p2 representa p com relac¸a˜o a um sistema O2x2y2z2, e assim
por diante.
Na expressa˜o (2.2), o componente p0x e´ a projec¸a˜o do vetor p0 no eixo x0. Esta projec¸a˜o pode ser representada
matematicamente atrave´s do produto interno:
p0x = p0 · i0 (2.3)
O operador · indica o produto interno entre dois vetores:
p0 · i0 = ‖p0‖‖i0‖ cos θ, (2.4)
onde ‖p0‖ representa o mo´dulo do vetor p0: ‖p0‖ =
√
p20x + p
2
0y + p
2
0z, e θ e´ o aˆngulo entre p0 e i0. Como i0
possui magnitude unita´ria, a expressa˜o (2.4) resume-se a p0 · i0 = ‖p0‖ cos θ.
Os componentes em y0 e em z0 de p0 sa˜o, respectivamente,
p0y = p0 · j0 (2.5)
p0z = p0 · k0 (2.6)
2.2 Rotac¸a˜o
Considere agora a existeˆncia de um segundo sistema de coordenadas O1x1y1z1 (ou simplesmente sistema 1)
cuja origem e´ coincidente com a origem do sistema 0 (O0 = O1). De forma semelhante ao que foi desenvolvido
anteriormente, o ponto p pode ser descrito pela combinac¸a˜o linear dos vetores da base ortonomal do sistema 1:
p1 = p1xi1 + p1yj1 + p1zk1 (2.7)
Figura 2.5: Ponto p descrito como combinac¸a˜o linear dos vetores da base ortonormal no sistema 1.
Ou, na forma vetorial, p1 = [p1x p1y p1z]
T
. Observa-se enta˜o que os vetores p0 e p1 descrevem o mesmo
ponto no espac¸o tridimensional, so´ que representados em sistemas de coordenadas diferentes, como mostra a
Figura 2.5. Assim, substituindo p0 por p1 nas expresso˜es (2.3) a (2.6):
p0x = p1 · i0
p0y = p1 · j0
p0z = p1 · k0
10 CAPI´TULO 2. MOVIMENTO DE CORPOS RI´GIDOS E TRANSFORMAC¸O˜ES HOMOGEˆNEAS
Substituindo p1 por (2.7) nas treˆs expresso˜es acima, tem-se que:
p0x = p1 · i0
= (p1xi1 + p1yj1 + p1zk1) · i0 (2.8)
= p1xi1 · i0 + p1yj1 · i0 + p1zk1 · i0
p0y = p1 · j0
= (p1xi1 + p1yj1 + p1zk1) · j0 (2.9)
= p1xi1 · j0 + p1yj1 · j0 + p1zk1 · j0
p0z = p1 · k0
= (p1xi1 + p1yj1 + p1zk1) · i0 (2.10)
= p1xi1 · k0 + p1yj1 · k0 + p1zk1 · k0
Temos enta˜o o seguinte conjunto de treˆs equac¸o˜es:


p0x = p1x (i1 · i0) + p1y (j1 · i0) + p1z (k1 · i0)
p0y = p1x (i1 · j0) + p1y (j1 · j0) + p1z (k1 · j0)
p0z = p1x (i1 · k0) + p1y (j1 · k0) + p1z (k1 · k0)
As expresso˜es (2.8) a (2.10) podem tambe´m ser reescritas matricialmente como:
p0 = R
1
0p1, (2.11)
com
p0 =


p0x
p0y
p0z

 , R10 =


i1 · i0 j1 · i0 k1 · i0
i1 · j0 j1 · j0 k1 · j0
i1 · k0 j1 · k0 k1 · k0

 e p1 =


p1x
p1y
p1z

 (2.12)
A matriz R10 e´ chamada matriz de rotac¸a˜o. Ela representa a rotac¸a˜o do sistema de coordenadas 1 com
relac¸a˜o ao sistema 0.
A mesma deduc¸a˜o pode ser feita se considerarmos o sistema de coordenadas 1 como refereˆncia, ou seja, pode-
se determinar a rotac¸a˜o do sistema 0 com relac¸a˜o ao sistema 1, atrave´s da matriz de rotac¸a˜o R01. Lembrando
que p0 = p1 e que p1x = p1 · i1, p1y = p1 · j1 e p1z = p1 · k1 tem-se que:
p1x = p0 · i1
= (p0xi0 + p0yj0 + p0zk0) · i1
= p0xi0 · i1 + p0yj0 · i1 + p0zk0 · i1
p1y = p0 · j1
= (p0xi0 + p0yj0 + p0zk0) · j1
= p0xi0 · j1 + p0yj0 · j1 + p0zk0 · j1
2.2. ROTAC¸A˜O 11
p1z = p0 · k1
= (p0xi0 + p0yj0 + p0zk0) · i1
= p0xi0 · k1 + p0yj0 · k1 + p0zk0 · k1
Pode-se escrever as expresso˜es acima na forma matricial:
p1 = R
0
1p0, (2.13)
onde
R01 =


i0 · i1 j0 · i1 k0 · i1
i0 · j1 j0 · j1 k0 · j1
i0 · k1 j0 · k1 k0 · k1

 (2.14)
A expressa˜o (2.13) pode ser obtida a partir de (2.11). Dada uma matriz identidade I e sabendo que, para
toda e qualquer matriz M, M−1M = I e que para um vetor a, Ia = a, tem-se que:
p0 = R
1
0p1(
R10
)−1
p0 =
(
R10
)−1
R10p1(
R10
)−1
p0 = Ip1(
R10
)−1
p0 = p1
Pode-se dizer enta˜o que R01 =
(
R10
)−1
, ou seja,
p1 =
(
R10
)−1
p0
Ainda, comparando as matrizes R10 e R
0
1 (expresso˜es (2.12) e (2.14)), e considerando que o produto interno
e´ comutativo (i0 · i1 = i1 · i0), nota-se que a matriz inversa e´ igual a` sua transposta:
R01 =
(
R10
)−1
=
(
R10
)T
Uma matriz onde a condic¸a˜o acima e´ satisfeita e´ dita ortogonal. Esta propriedade e´ va´lida para toda e
qualquer matriz que representa a rotac¸a˜o entre dois sistemas de coordenadas cartesianos.
Outra importante propriedade que decorre dos sistemas de coordenadas cartesianos tridimensionais e´ que o
determinante de uma matriz de rotac¸a˜o sera´ sempre unita´rio. Para o caso de sistemas descritos pela regra da
ma˜o direita (Figura 2.2), o determinante sera´, inclusive, positivo.
Propriedade 2.1. Uma matriz R que representa a rotac¸a˜o entre dois sistemas de coordenadas cartesianos e´
ortogonal, ou seja, a matriz inversa de uma matriz de rotac¸a˜o e´ igual a` sua transposta:
R−1 = RT
Propriedade 2.2. O determinante de uma matriz de rotac¸a˜o R para sistemas de coordenadas cartesianos
descritos pela regra da ma˜o direita e´ sempre positivo e unita´rio:
det (R) = 1,
visto que o mo´dulo de qualquer linha ou coluna de R e´ sempre positivo e unita´rio.
12 CAPI´TULO 2. MOVIMENTO DE CORPOSRI´GIDOS E TRANSFORMAC¸O˜ES HOMOGEˆNEAS
Exemplo 2.1 Como saber se as matrizes abaixo representam matrizes de rotac¸a˜o?
R
1
0 =


0 −1 0
1 0 0
0 0 1

 R12 =


−1 0 0
0 1/2
√
3/2
0
√
3/2
1/2

 R40 =


0 0 0
0 1/2
−
√
3/2
0
√
3/2
1/2


R10 e´ uma matriz de rotac¸a˜o, ja´ que seu determinante e´ unita´rio e todas as linhas e colunas possuem mo´dulo
unita´rio; R12 possui todas as linhas e colunas com mo´dulo unita´rio, mas o seu determinante e´ igual a 0, 5. Logo, R
1
2
na˜o e´ uma matriz de rotac¸a˜o; R40 possui uma linha e uma coluna com mo´dulos nulos e seu determinante tambe´m e´
nulo. Logo, R40 na˜o representa uma matriz de rotac¸a˜o.
2.2.1 Matrizes ba´sicas de rotac¸a˜o
Matrizes ba´sicas de rotac¸a˜o sa˜o as matrizes cuja rotac¸a˜o ocorre em torno de um dos treˆs eixos cartesianos: x,
y ou z. Da definic¸a˜o do produto interno, temos que, para o primeiro elemento da matriz da expressa˜o (2.12):
i1 · i0 = ‖i1‖‖i0‖ cos (θ) ,
onde θ e´ o aˆngulo entre i0 e i1. Como ‖i0‖ = ‖i1‖ = 1 (vetores de magnitude unita´ria) a expressa˜o acima
resume-se a
i1 · i0 = cos (θ)
A mesma ana´lise e´ va´lida para os outros elementos de uma matriz de rotac¸a˜o.
Considera-se agora a existeˆncia de dois sistemas de coordenadas, chamados de sistema 0 (fixo) e sistema 1
(mo´vel). Ambos possuem as origens O0 e O1 coincidentes. O sistema 1 sofre uma rotac¸a˜o de θ em torno do
eixo x0. Esta operac¸a˜o esta´ representada na Figura 2.6.
Figura 2.6: Rotac¸a˜o do sistema mo´vel 1 em torno do eixo x0 do sistema fixo 0.
Observa-se enta˜o que os eixos x0 e x1 sa˜o paralelos e coincidentes. Logo, os vetores i0 e i1 sa˜o paralelos e
coincidentes, visto que a rotac¸a˜o ocorre sobre x0. Assim, o aˆngulo de rotac¸a˜o entre i0 e i1 e´ nulo e
i1 · i0 = ‖i1‖‖i0‖ cos (0
◦)
= 1
Independente do aˆngulo de rotac¸a˜o entre os dois sistemas, j0 e i1 sera˜o sempre perpendiculares. Logo,
i1 · j0 = ‖i1‖‖j0‖ cos (90
◦)
= 0
2.2. ROTAC¸A˜O 13
O mesmo vale para j1 · i0, k1 · i0 e i1 · k0. Assim,
j1 · i0 = 0 k1 · i0 = 0 i1 · k0 = 0
Da Figura 2.6, observa-se que j1 · j0 = cos (θ) e k1 · k0 = cos (θ). Tambe´m, tem-se que:
k1 · j0 = cos (90
◦ + θ)
= − sin (θ)
j1 · k0 = cos (90
◦ − θ)
= sin (θ)
Logo, a matriz que representa a rotac¸a˜o entre dois sistemas de coordenadas em torno do eixo x por um
aˆngulo θ e´
Rx,θ =


1 0 0
0 cos (θ) − sin (θ)
0 sin (θ) cos (θ)

 (2.15)
A mesma ana´lise pode ser feita para uma rotac¸a˜o em torno de y ou em torno de z, como mostrado na
Figura 2.7.
(a) (b)
Figura 2.7: Rotac¸o˜es ba´sicas em torno do eixo y0 (a) e em torno do eixo z0 (b).
Assim, as matrizes de rotac¸a˜o ba´sicas em torno dos eixos y e z sa˜o, respectivamente,
Ry,θ =


cos (θ) 0 sin (θ)
0 1 0
− sin (θ) 0 cos (θ)

 (2.16)
Rz,θ =


cos (θ) − sin (θ) 0
sin (θ) cos (θ) 0
0 0 1

 (2.17)
Pode-se facilitar a escrita das matrizes atrave´s de uma notac¸a˜o simplificada. Por exemplo: cos (θ) torna-se
cθ; da mesma forma, sin (α) torna-se sα; Ainda, cos (θ + α) torna-se cθ+α. Daqui por diante sera´ utilizada esta
notac¸a˜o sempre que se fizer conveniente conveniente.
As matrizes ba´sicas de rotac¸a˜o possuem as seguintes propriedades:
Propriedade 2.3. Para um aˆngulo de rotac¸a˜o nulo, uma determinada matriz de rotac¸a˜o e´ igual a` identidade.
14 CAPI´TULO 2. MOVIMENTO DE CORPOS RI´GIDOS E TRANSFORMAC¸O˜ES HOMOGEˆNEAS
Prova. Substituindo θ por 0◦ em (2.15), obte´m-se:
Rx,0◦ =


1 0 0
0 cos (0◦) − sin (0◦)
0 sin (0◦) cos (0◦)

 =


1 0 0
0 1 0
0 0 1

 = I
Obviamente, o mesmo e´ va´lido para Ry,θ e Rz,θ.
Propriedade 2.4. A multiplicac¸a˜o de duas matrizes, Re,α e Re,θ, cujas rotac¸o˜es ocorrem no mesmo eixo e e´
igual a` uma matriz com rotac¸a˜o total sobre o eixo e de α+ θ.
Re,αRe,θ = Re,α+θ
Prova. Tomando como exemplo a matrix de rotac¸a˜o no eixo z e as seguintes propriedades trigonome´tricas:
cos (α) cos (θ)∓ sin (α) sin (θ) = cos (α± θ)
sin (α) cos (θ)± cos (α) sin (θ) = sin (α± θ) ,
tem-se que:
Rz,αRz,θ =


cα −sα 0
sα cα 0
0 0 1




cθ −sθ 0
sθ cθ 0
0 0 1


=


cαcθ − sαsθ −cαsθ − sαcθ 0
sαcθ + cαsθ −sαsθ + cαcθ 0
0 0 1


=


cαcθ − sαsθ − (sαcθ + cαsθ) 0
sαcθ + cαsθ cαcθ − sαsθ 0
0 0 1


=


cα+θ −sα+θ 0
sα+θ cα+θ 0
0 0 1


= Rz,α+θ
Propriedade 2.5. A inversa de uma matriz de rotac¸a˜o Re,θ e´ Re,−θ.
(Re,θ)
−1
= Re,−θ
Prova. Tomando como exemplo a matriz de rotac¸a˜o no eixo x e utilizando a Propriedade 2.1, tem-se que:
Rx,−θ =


1 0 0
0 c−θ −s−θ
0 s−θ c−θ


=


1 0 0
0 cθ sθ
0 −sθ cθ


= (Rx,θ)
T
= (Rx,θ)
−1
Uma matriz de rotac¸a˜o representa a rotac¸a˜o entre um sistema fixo e um mo´vel, mas tambe´m pode ser
2.2. ROTAC¸A˜O 15
utilizada para transformar a representac¸a˜o de um ponto entre dois sistemas de coordenadas, como visto nas
expresso˜es (2.11) e (2.13):
p0 = R
1
0p1
p1 = R
0
1p0
Exemplo 2.2 Dados p1 e R
0
1, calcular p0.
p1 =


3
−2
8

 R01 =


1 0 0
0 0 −1
0 1 0


R01 representa a rotac¸a˜o do sistema 0 com relac¸a˜o ao sistema 1. Como se deseja calcular p0 a partir de p1, e
atrave´s da Propriedade 2.1, tem-se que R10 =
(
R01
)T
. Assim:
p0 = R
1
0p1
=
(
R
0
1
)T
p1
=


1 0 0
0 0 1
0 −1 0




3
−2
8


=


3
8
2


2.2.2 Composic¸a˜o de rotac¸o˜es
Nas sec¸o˜es anteriores foram discutidas rotac¸o˜es de um sistema de coordenadas mo´vel com relac¸a˜o a um sistema
fixo. Assim, a matrizR10 representa a rotac¸a˜o do sistema O1x1y1z1 com relac¸a˜o ao sistema O0x0y0z0. Considera-
se agora a existeˆncia de um terceiro sistema de coordenadas O2x2y2z2 (ou simplesmente sistema 2) e que as
origens dos treˆs sistemas sa˜o coincidentes. Um dado ponto p no espac¸o cartesiano tridimensional pode ser
representado nos treˆs sistemas, sendo ele enta˜o chamado de p0, p1 ou p2. A relac¸a˜o de p entre os treˆs sistemas
da´-se por:
p0 = R
1
0p1 (2.18)
p0 = R
2
0p2 (2.19)
p1 = R
2
1p2 (2.20)
As matrizes R10 e R
2
0 representam rotac¸o˜es relativas ao sistema 0, enquanto que R
2
1 representa a rotac¸a˜o do
sistema 2 com relac¸a˜o ao sistema 1. Substituindo (2.20) em (2.18), obte´m-se:
p0 = R
1
0R
2
1p2 (2.21)
Comparando (2.19) e (2.21), tem-se a seguinte identidade:
R20 = R
1
0R
2
1 (2.22)
A equac¸a˜o (2.22) representa a regra para a composic¸a˜o de rotac¸o˜es. Ela diz que, para se transformar as
coordenadas de p da sua representac¸a˜o no sistema 2 (p2) para a representac¸a˜o no sistema 0 (p0), deve-se,
primeiro, transformar p2 para o sistema 1 atrave´s de R
2
1 e apo´s transformar p1 em p0 atrave´s de R
1
0.
16 CAPI´TULO 2. MOVIMENTO DE CORPOS RI´GIDOS E TRANSFORMAC¸O˜ES HOMOGEˆNEAS
Pode-se tambe´m interpretar (2.21) da seguinte forma: Considera-se inicialmente que os treˆs sistemas de
coordenadas sa˜o coincidentes. Enta˜o, o sistema 1 e´ rotacionado com relac¸a˜o ao sistema 0 de acordo com R10.
Apo´s, o sistema 2 sofre uma rotac¸a˜o com relac¸a˜o ao sistema 1 conforme R21. A este tipo de operac¸a˜o - quando
as rotac¸o˜es ocorrem de forma sucessiva, da´-se o nome de rotac¸a˜o em sistemas correntes.
Exemplo 2.3 Determinar a matriz de rotac¸a˜o total R que representa uma rotac¸a˜o φ em torno do eixo y e depois
uma rotac¸a˜o θ em torno do eixo z corrente.
R = Ry,φRz,θ
=


cφ 0 sφ
0 1 0
−sφ 0 cφ




cθ −sθ 0
sθ cθ 0
0 0 1


=


cφcθ −cφsθ sφ
sθ cθ 0
−sφcθsφsθ cφ


E´ importante destacar que multiplicac¸o˜es matriciais em geral na˜o sa˜o comutativas, ou seja, no caso de uma
composic¸a˜o de rotac¸o˜es, a ordem de multiplicac¸a˜o das matrizes deve ocorrer de acordo com a ordem com que
as rotac¸o˜es acontecem. A isto segue o pro´ximo exemplo.
Exemplo 2.4 Determinar a matriz de rotac¸a˜o total R′ que representa uma rotac¸a˜o θ em torno do eixo z e depois
uma rotac¸a˜o φ em torno do eixo y corrente.
R
′ = Rz,θRy,φ
=


cθ −sθ 0
sθ cθ 0
0 0 1




cφ 0 sφ
0 1 0
−sφ 0 cφ


=


cφcθ −sθ sφcθ
cφsθ cθ sφsθ
−sφ 0 cφ


A partir dos exemplos anteriores, nota-se claramente que R 6= R′, o que fica mais evidente ainda atrave´s da
ana´lise das Figuras 2.8 e 2.9.
Figura 2.8: Resultado da composic¸a˜o R = Ry,φRz,θ.
2.2. ROTAC¸A˜O 17
Figura 2.9: Resultado da composic¸a˜o R′ = Rz,θRy,φ.
Assim, como regra geral de composic¸a˜o de rotac¸o˜es em sistemas correntes, teremos:
Rnm = R
m+1
m R
m+2
m+1 · · ·R
i
i−1 · · ·R
n−1
n−2R
n
n−1, (2.23)
onde n > m.
Exemplo 2.5 Determinar a fo´rmula para a composic¸a˜o de quatro rotac¸o˜es, inciando-se pelo sistema 2, e con-
siderando sistemas correntes.
Fazendo m = 2 e n = 6 em (2.23), tem-se que:
R
6
2 = R
3
2R
4
3R
5
4R
6
5
Em muitas aplicac¸o˜es, deseja-se que as rotac¸o˜es sejam efetuadas sempre com relac¸a˜o a um mesmo sistema
de coordenadas, ao inve´s de sistemas sucessivos. Por exemplo, pode ser necessa´rio realizar uma rotac¸a˜o em
torno de x0, seguida de uma rotac¸a˜o em y0 (e na˜o em y1). A este tipo de rotac¸a˜o da´-se o nome de rotac¸a˜o
em sistemas fixos. No caso do exemplo, O0x0y0z0 e´ o sistema fixo (ou inercial) com relac¸a˜o ao qual todas as
rotac¸o˜es sera˜o realizadas. Neste caso, a expressa˜o (2.23) na˜o e´ va´lida. Entretanto, pode ser mostrado que as
sucessivas matrizes de rotac¸a˜o devem ser mulitplicadas na ordem inversa a` mostrada por (2.23).
Exemplo 2.6 Considera-se treˆs sistemas de coordenadas, inicialmente coincidentes: 0 (sistema fixo), 1 e 2. Uma
matriz R representa uma rotac¸a˜o φ do sistema 1 em torno do eixo y0, seguido de uma rotac¸a˜o θ do sistema 2 em
torno de z0. Sejam p0, p1 e p2 representac¸o˜es do ponto p. Inicialmente, os sistemas 0 e 1 sa˜o coincidentes. Logo,
pode-se escrever que:
p0 = Ry0,φp1 (2.24)
Agora, como a segunda rotac¸a˜o e´ com relac¸a˜o ao sistema 0 e na˜o ao sistema 1, e´ incorreto afirmar que
p1 = Rz0,θp2,
ja´ que esta expressa˜o so´ seria va´lida se Rz0,θ fosse uma rotac¸a˜o em torno de z1. A soluc¸a˜o e´ fazer com que z0 e
z1 sejam coincidentes, e isto pode ser obtido se a primeira rotac¸a˜o dada por Ry0,φ for desfeita, com Ry0,−φ. Apo´s
isto, esta rotac¸a˜o precisa ser reinserida. Assim:
p1 = Ry0,−φRz0,θRy0,φp2 (2.25)
Esta e´ expressa˜o correta, neste caso, para rotac¸o˜es em sistemas fixos, e na˜o (2.23). Agora, substituindo (2.25) em
18 CAPI´TULO 2. MOVIMENTO DE CORPOS RI´GIDOS E TRANSFORMAC¸O˜ES HOMOGEˆNEAS
(2.24), tem-se que:
p0 = Ry0,φp1
= Ry0,φRy0,−φRz0,θRy0,φp2
= Rz0,θRy0,φp2
Assim, pode-se sumarizar as rotac¸o˜es que ocorrem em sistemas correntes ou sistemas fixos da seguinte forma:
Dado um sistema fixo 0 e um sistema mo´vel (corrente) 1, a matriz de rotac¸a˜o que relaciona os dois sistemas
e´ R10. Dado um terceiro sistema mo´vel 2, a matriz de rotac¸a˜o que relaciona o sistema 2 ao sistema 1 e´ dada por
R21. Se o sistema 2 e´ obtido com relac¸a˜o ao sistema 1 (sistema corrente), R
1
0 e´ po´s-multiplicada por R
2
1 para se
obter R20:
R20 = R
1
0R
2
1
Esta expressa˜o corresponde a` regra dada por (2.23). Se o sistema 2 e´ obtido com relac¸a˜o ao sistema 0 (sistema
fixo), R10 e´ pre´-multiplicada por R
2
1 para se obter R
2
0:
R20 = R
2
1R
1
0
Assim, a regra geral para rotac¸o˜es que ocorrem em sistemas fixos e´ dada por:
Rnm = R
n
n−1R
n−1
n−2 · · ·R
i
i−1 · · ·R
m+2
m+1R
m+1
m , (2.26)
onde n > m.
Exemplo 2.7 Determinar a fo´rmula para a composic¸a˜o de quatro rotac¸o˜es, inciando-se pelo sistema 2, e con-
siderando sistemas fixos.
Fazendo m = 2 e n = 6 em (2.26), tem-se que:
R
6
2 = R
6
5R
5
4R
4
3R
3
2
Exemplo 2.8 Calcular a matriz de rotac¸a˜o R20 resultante da sequeˆncia de duas rotac¸o˜es, R
1
0 = Rz,30◦ e R
2
1 =
Ry,60◦ , considerando (a) sistemas correntes e (b) sistemas fixos.
(a) Para sistemas correntes, sabe-se que R20 = R
1
0R
2
1. Assim,
R
2
0 = R
1
0R
2
1
=


√
3/2
−1/2 0
1/2
√
3/2 0
0 0 1




1/2 0
√
3/2
0 1 0
−
√
3/2 0
1/2


=


0, 43 −0, 5 0, 75
0, 25 0, 87 0, 43
−0, 87 0 0, 5


2.2. ROTAC¸A˜O 19
(b) Para sistemas fixos, R20 = R
2
1R
1
0. Assim,
R
2
0 = R
2
1R
1
0
=


1/2 0
√
3/2
0 1 0
−
√
3/2 0
1/2




√
3/2
−1/2 0
1/2
√
3/2 0
0 0 1


=


0, 43 −0, 25 0, 87
0, 5 0, 87 0
−0, 75 0, 43 0, 5


Como era de se esperar, (a) e (b) apresentam resultados diferentes.
2.2.3 Aˆngulos de Euler
O me´todo de aˆngulos de Euler foi introduzido pelo matema´tico Leonhard Euler. Atrave´s deste me´todo e´ poss´ıvel
descrever a rotac¸a˜o de um corpo r´ıgido no espac¸o tridimensional atrave´s da composic¸a˜o de treˆs grandezas
(aˆngulos) independentes.
Dado um sistema fixo 0 e um sistema mo´vel 1, pode-se descrever a rotac¸a˜o de 1 com relac¸a˜o a 0 atrave´s
de treˆs rotac¸o˜es sucessivas, como segue: primeiro rotacione φ em torno do eixo z, depois rotacione θ em torno
do eixo y corrente, e por u´ltimo rotacione novamente em torno do eixo z corrente por ψ. Esta e´ a chamada
combinac¸a˜o ZYZ. Existem outras combinac¸o˜es poss´ıveis, mas esta e´ a mais utilizada em robo´tica (como sera´
visto no estudo da cinema´tica inversa).
A matriz de rotac¸a˜o resultante para a combinac¸a˜o ZYZ e´ dada por:
R10 = Rz,φRy,θRz,ψ
=


cφ −sφ 0
sφ cφ 0
0 0 1




cθ 0 sθ
0 1 0
−sθ 0 cθ




cψ −sψ 0
sψ cψ 0
0 0 1

 (2.27)
=


cφcθcψ − sφsψ −cφcθsψ − sφcψ cφsθ
sφcθcψ + cφsψ −sφcθsψ + cφcψ sφsθ
−sθcψ sθsψ cθ


2.2.4 Aˆngulos RPY
Uma matriz de rotac¸a˜o pode tambe´m ser descrita como o produto de sucessivas rotac¸o˜es em torno dos eixos do
sistema fixo: x0, y0 e z0. Estas rotac¸o˜es sa˜o chamadas, respectivamente, de guiagem (yaw), arfagem (pitch) e
rolamento (roll).
As rotac¸o˜es ocorre na seguinte ordem: primeiro uma rotac¸a˜o ψ em torno de x0, seguida de θ em torno de
y0 e por u´ltimo φ em torno de z0. Considerando que as rotac¸o˜es sa˜o obtidas sempre com relac¸a˜o a um sistema
fixo, a matriz resultante neste caso e´:
20 CAPI´TULO 2. MOVIMENTO DE CORPOS RI´GIDOS E TRANSFORMAC¸O˜ES HOMOGEˆNEAS
R10 = Rz,φRy,θRx,ψ
=


cφ −sφ 0
sφ cφ 0
0 0 1




cθ 0 sθ
0 1 0
−sθ 0 cθ




1 0 0
0 cψ −sψ
0 sψ cψ

 (2.28)
=


cφcθ −sφcψ + cφsθsψ sφsψ + cφsθcψ
sφcθ cφcψ + sφsθsψ −cφsψ + sφsθcψ
−sθ cθsψ cθcψ


Obviamente que, ale´m da matriz de rotac¸a˜o RPY da expressa˜o (2.28), o mesmo resultado poderia ser obtido
considerando-se uma matriz YPR com relac¸a˜o aos sistemas correntes, ou ainda atrave´s de aˆngulos de Euler
ZYX.
2.3 Transformac¸o˜es homogeˆneas
Ate´ o momento, a composic¸a˜o de diversos sistemas de coordenadas foi realizada de forma que as origens eram
sempre coincidentes (O0 = O1 = O2...).
Considera-se agora dois sistemas: O0x0y0z0 e O1x1y1z1. Os dois sistemas sa˜o ditos paralelos entre si, ou
seja, na˜o existe rotac¸a˜o relativa entre eles. Adiciona-se enta˜o uma translac¸a˜o entre as duas origens, fazendo com
que O1 na˜o seja mais coincidentecom O0. Esta transformac¸a˜o e´ mostrada na Figura 2.10 e a` distaˆncia de O1
com relac¸a˜o a O0 da´-se o nome de d
1
0.
Figura 2.10: Translac¸a˜o pura entre os sistemas 0 e 1. Nota-se que x1 e´ paralelo a x0, y1 e´ paralelo a y0 e z1 e´
paralelo a z0.
d10 e´ um vetor da origem O0 ate´ a origem O1, expresso com relac¸a˜o ao sistema de coordenadas 0. O mesmo
pode ser escrito tambe´m como d10 = [dx dy dz]
T
, onde dx, dy e dz sa˜o, respectivamente, componentes de d
1
0
nos eixos x0, y0 e z0. Considera-se agora um ponto p no sistema de coordenadas tridimensional. A Figura 2.11
mostra este ponto descrito com relac¸a˜o ao sistema 1 com o vetor p1.
Figura 2.11: Ponto p representado com relac¸a˜o ao sistema 1.
2.3. TRANSFORMAC¸O˜ES HOMOGEˆNEAS 21
Como os dois sistemas de coordenadas sa˜o paralelos (na˜o ha´ rotac¸a˜o entre eles), pode-se obter p com relac¸a˜o
ao sistema 0 atrave´s de uma simples soma vetorial, ou seja:
p0 = d
1
0 + p1 (2.29)
Figura 2.12: Ponto p representado com relac¸a˜o ao sistema 1 (vetor vermelho) e ao sistema 0 (vetor verde).
Quando existe uma rotac¸a˜o entre os dois sistemas, a soma vetorial da expressa˜o (2.29) na˜o pode ser realizada
diretamente. Ao inve´s disto, deve-se multiplicar p1 pela matriz de rotac¸a˜o entre os dois sistemas para depois
realizar a soma. Ou seja,
p0 = d
1
0 +R
1
0p1 (2.30)
Esta transformac¸a˜o e´ representada na Figura 2.13. A expressa˜o (2.30) representa a combinac¸a˜o de uma
rotac¸a˜o pura e uma translac¸a˜o pura, e e´ o caso mais geral do chamado movimento de corpos r´ıgidos.
Figura 2.13: Composic¸a˜o de translac¸a˜o e rotac¸a˜o.
A multiplicac¸a˜o por R10 faz com que a representac¸a˜o do vetor p1 torne-se paralela ao sistema 0, podendo
assim ser somado a d10 como em (2.29).
Exemplo 2.9 Dados d10, p1 e R
1
0 abaixo, calcular p0.
p1 =


3
−2
1

 , d10 =


0
8
5

 e R10 = Ry,−30◦
22 CAPI´TULO 2. MOVIMENTO DE CORPOS RI´GIDOS E TRANSFORMAC¸O˜ES HOMOGEˆNEAS
Substituindo os dados acima em (2.30), obtem-se:
p0 = d
1
0 +R
1
0p1
=


0
8
5

+


0, 87 0 −0, 5
0 1 0
0, 5 0 0, 87




3
−2
1


=


2, 11
6
7, 37


2.3.1 Representac¸o˜es homogeˆneas
E´ comum o uso da seguinte representac¸a˜o:
p′0 = H
1
0p
′
1,
onde
p′0 =


p0x
p0y
p0z
1

 , p′1 =


p1x
p1y
p1z
1

 e H10 =


r11 r12 r13 dx
r21 r22 r23 dy
r31 r32 r33 dz
0 0 0 1


p′0 e p
′
1 sa˜o representac¸o˜es homogeˆneas dos vetores p0 e p1, e sa˜o obtidas simplesmente aumentando-se a
dimensa˜o do vetor em uma linha com o elemento igual a 1. H10 e´ a chamada matriz de transformac¸a˜o homogeˆnea,
e pode ser reescrita como:
H10 =
[
R10 d
1
0
0 1
]
(2.31)
Nota-se enta˜o que as duas transformac¸o˜es ba´sicas (translac¸a˜o d10 e rotac¸a˜o R
1
0) esta˜o contidas dentro da
matriz H10. A u´ltima linha de uma matriz de transformac¸a˜o homogeˆnea e´ sempre composta de [0 0 0 1].
De forma a simplificar a notac¸a˜o, o apo´strofe no nome do vetor sera´ eliminado e a representac¸a˜o homogeˆnea
do vetor sera´ utilizada sempre que necessa´rio em uma expressa˜o do tipo p0 = H
1
0p1.
Assim, a matriz H10 representa a transformac¸a˜o homogeˆnea do sistema de coordenadas 1 com relac¸a˜o ao
sistema 0. Seguindo a notac¸a˜o, logo conclui-se que:
p1 = H
0
1p0,
onde H01 e´ a matriz de transformac¸a˜o homogeˆnea do sistema 0 com relac¸a˜o ao sistema 1. Assim,
H01 =
[
R01 d
0
1
0 1
]
onde R01 e d
0
1 sa˜o, respectivamente, a rotac¸a˜o e a translac¸a˜o do sistema 0 com relac¸a˜o ao sistema 1. H
0
1 pode
tambe´m ser obtida atrave´s da matriz inversa de H10:
H01 =
(
H10
)−1
Sabe-se da Propriedade 2.1 que R−1 = RT . Assim,
2.3. TRANSFORMAC¸O˜ES HOMOGEˆNEAS 23
H01 =
[ (
R10
)−1
−
(
R10
)−1
d10
0 1
]
=
[ (
R10
)T
−
(
R10
)T
d10
0 1
]
(2.32)
=
[
R01 d
0
1
0 1
]
Da expressa˜o (2.32), conclui-se que
d01 = −
(
R10
)T
d10 (2.33)
Observando a expressa˜o (2.33), e´ interessante perceber o que a mesma significa. O sinal de negativo indica
que a distaˆncia d10 deve ser revertida para se obter d
0
1, mas, antes disto, esta grandeza deve ser escrita com
relac¸a˜o ao sistema 1, por isso a multiplicac¸a˜o pela transposta de R10, que e´ igual a R
0
1.
Exemplo 2.10 Atrave´s de transformac¸o˜es homogeˆneas, calcular p0, dados:
p1 =


1
2
3

 , d01 =


4
5
6

 e R01 = Rz,90◦
Sabe-se de (2.32) que d10 = −
(
R01
)T
d01, logo:
d
1
0 =


0 1 0
−1 0 0
0 0 1




4
5
6

 =


5
−4
6


Enta˜o,
p0 = H
1
0p1 =
[
R10 d
1
0
0 1
]
=


0 1 0 5
−1 0 0 −4
0 0 1 6
0 0 0 1




1
2
3
1


=


7
−5
9
1


Ainda, diferente das matrizes de rotac¸a˜o, a inversa de uma matriz de transformac¸a˜o homogeˆnea na˜o corre-
sponde a` sua transposta, ou seja,
(
H10
)−1
6=
(
H10
)T
.
24 CAPI´TULO 2. MOVIMENTO DE CORPOS RI´GIDOS E TRANSFORMAC¸O˜ES HOMOGEˆNEAS
Exemplo 2.11 Dada a matriz H10,
H
1
0 =


0 −1 0 −2
1 0 0 1
0 0 1 0
0 0 0 1

 ,
a sua inversa e´:
(
H
1
0
)−1
=


0 1 0 −1
−1 0 0 2
0 0 1 0
0 0 0 1


Nota-se que a u´ltima linha da matriz e´ [0 0 0 1], o que na˜o poderia deixar de ser ja´ que
(
H10
)−1
= H01, que
ainda e´ uma matriz de transformac¸a˜o homogeˆnea. Calculando a transposta de H10, chega-se a:
(
H
1
0
)T
=


0 1 0 0
−1 0 0 0
0 0 1 0
−2 1 0 1

 ,
logo,
(
H10
)−1
6=
(
H10
)T
. Ainda, a u´ltima linha de
(
H10
)T
e´ diferente de [0 0 0 1], logo esta na˜o e´ uma matriz de
transformac¸a˜o homogeˆnea.
2.3.2 Matrizes ba´sicas de transformac¸a˜o homogeˆnea
Na Sec¸a˜o 2.2.1 foram vistas as matrizes ba´sicas de rotac¸a˜o, ou seja, matrizes que representam rotac¸o˜es em torno
de um dos treˆs eixos cartesianos. Nota-se em(2.31) que para as matrizes de transformac¸a˜o homogeˆnea existem
duas operac¸o˜es (rotac¸a˜o e translac¸a˜o) que podem ocorrer, cada uma, em um dos eixos cartesianos. Logo, agora
o total de matrizes que representam operac¸o˜es ba´sicas e´ de seis (treˆs para rotac¸a˜o e treˆs para translac¸a˜o).
Assim, as matrizes ba´sicas de transformac¸a˜o homogeˆnea que representam cada uma das rotac¸o˜es sa˜o:
Rotx,θ =


1 0 0 0
0 cθ −sθ 0
0 sθ cθ 0
0 0 0 1

 Roty,θ =


cθ 0 sθ 0
0 1 0 0
−sθ 0 cθ 0
0 0 0 1

 Rotz,θ =


cθ −sθ 0 0
sθ cθ 0 0
0 0 1 0
0 0 0 1


E as matrizes ba´sicas que representam cada uma das translac¸o˜es sa˜o:
Transx,d =


1 0 0 d
0 1 0 0
0 0 1 0
0 0 0 1

 Transy,d =


1 0 0 0
0 1 0 d
0 0 1 0
0 0 0 1

 Transz,d =


1 0 0 0
0 1 0 0
0 0 1 d
0 0 0 1


Nota-se enta˜o que, para Rotx,θ, Roty,θ e Rotz,θ o vetor de translac¸a˜o e´ nulo, e para Transx,d, Transy,d e
Transz,d a matriz de rotac¸a˜o e´ igual a` matriz identidade.
2.3.3 Composic¸a˜o de transformac¸o˜es homogeˆneas
Sejam treˆs sistemas de coordenadas no espac¸o cartesiano tridimensional, O0x0y0z0, O1x1y1z1 e O2x2y2z2. As
origens destes sistemas na˜o sa˜o coincidentes e os mesmos na˜o sao paralelos, como indica a Figura 2.14.
2.3. TRANSFORMAC¸O˜ES HOMOGEˆNEAS 25
Figura 2.14: Treˆs sistemas de coordenadas tridimensionais.
Seja d10 a distaˆncia de O1 para O0, com relac¸a˜o aosistema 0. Da mesma forma, tem-se que d
2
1 e´ a distaˆncia
de O2 para O1, com relac¸a˜o ao sistema 1 e d
2
0 e´ a distaˆncia de O2 para O0, com relac¸a˜o ao sistema 0. Um ponto
p pode ser descrito com relac¸a˜o a qualquer um dos treˆs sistemas e as seguintes transformac¸o˜es existem:
p0 = d
1
0 +R
1
0p1 (2.34)
p0 = d
2
0 +R
2
0p2 (2.35)
p1 = d
2
1 +R
2
1p2 (2.36)
Substituindo (2.36) em (2.34), tem-se que:
p0 = d
1
0 +R
1
0d
2
1 +R
1
0R
2
1p2 (2.37)
Comparando as equac¸o˜es (2.35) e (2.37), conclui-se que:
d20 = d
1
0 +R
1
0d
2
1
R20 = R
1
0R
2
1
Usando representac¸o˜es homogeˆneas para os vetores e matrizes, obte´m-se:
p0 = H
2
0p2,
onde
H20 =
[
R20 d
2
0
0 1
]
O mesmo resultado pode ser obtido atrave´s da multiplicac¸a˜o H10H
2
1. Assim, tem-se que a composic¸a˜o de
va´rias transformac¸o˜es homogeˆneas pode ser obtida por:
Hnm = H
m+1
m H
m+2
m+1 · · ·H
i
i−1 · · ·H
n+1
n H
n
n−1, (2.38)
onde n > m. A expressa˜o (2.38) e´ semelhante a` (2.23), obtida para composic¸a˜o de rotac¸o˜es para sistemas
correntes. De fato, a expressa˜o acima so´ pode ser utilizada considerando-se sistemas correntes, o que em
sistemas robotizados e´ mais comum, visto que um roboˆ e´ descrito atrave´s de va´rios sistemas de coordenadas
mo´veis com relac¸a˜o a um sistema fixo, ou inercial.
A composic¸a˜o de transformac¸o˜es homogeˆneas para sistemas fixos na˜o sera´ estudada.
26 CAPI´TULO 2. MOVIMENTO DE CORPOS RI´GIDOS E TRANSFORMAC¸O˜ES HOMOGEˆNEAS
Exemplo 2.12 Determinar a matriz de transformac¸a˜o homogeˆnea H que representa a rotac¸a˜o α em torno do eixo
x, seguido de uma translac¸a˜o b sobre o eixo x corrente, depois sofrendo uma translac¸a˜o d sobre o eixo z corrente, e
por u´ltimo seguido de uma rotac¸a˜o θ em torno do eixo z corrente.
H = Rotx,αTransx,bTransz,dRotz,θ
=


1 0 0 0
0 cα −sα 0
0 sα cα 0
0 0 0 1




1 0 0 b
0 1 0 0
0 0 1 0
0 0 0 1




1 0 0 0
0 1 0 0
0 0 1 d
0 0 0 1




cθ −sθ 0 0
sθ cθ 0 0
0 0 1 0
0 0 0 1


=


cθ −sθ 0 b
cαsα cαcθ −sα −sαd
sαsθ sαcθ cα −cαd
0 0 0 1


Exemplo 2.13 Calcular a distaˆncia da origem do sistema 2 com relac¸a˜o ao sistema 0, conforme os dados abaixo.
d
1
0 =


3
2
−8

 d12 =


−6
0
1

 R10 =


0 −1 0
1 0 0
0 0 1

 R21 =


1 0 0
0 0 1
0 −1 0


d20 pode ser calculado com d
2
0 = d
1
0 + R
1
0d
2
1. Como os dados do exerc´ıcio da˜o apenas d
1
2, e´ necessa´rio calcular
d21:
d
2
1 = −
(
R
1
2
)T
d
1
2 = −R
2
1d
1
2
=


−1 0 0
0 0 −1
0 1 0




−6
0
1

 =


6
−1
0


Enta˜o,
d
2
0 = d
1
0 +R
1
0d
2
1
=


3
2
−8

+


0 −1 0
1 0 0
0 0 1




6
−1
0

 =


4
8
−8


2.4. EXERCI´CIOS 27
2.4 Exerc´ıcios
1. Dois sistemas de coordenadas O0x0y0z0 e O1x1y1z1 sa˜o inicialmente coincidentes. O1 sofre uma rotac¸a˜o
em torno do eixo y0 de θ, e depois uma rotac¸a˜o em torno do novo eixo z1 de φ. Determine a matriz de
rotac¸a˜o R10.
2. Dois sistemas de coordenadas O0x0y0z0 e O1x1y1z1 sa˜o inicialmente coincidentes. O1 sofre uma rotac¸a˜o
em torno do eixo z0 de φ, e depois uma rotac¸a˜o em torno do eixo y0 de θ. Determine a matriz de rotac¸a˜o
R10.
3. Para a matriz de rotac¸a˜o do exerc´ıcio 2, determine R10 para θ = 30
◦ e φ = 45◦.
4. Sejam treˆs sistemas de coordenadas O1x0y1z1, O2x2y2z2 e O3x3y3z3. Suponha que
R21 =


1 0 0
0 1/2
−
√
3/2
0
√
3/2
1/2

 R31 =


0 0 −1
0 1 0
1 0 0


(a) Calcule R32;
(b) Determine o eixo e o aˆngulo de rotac¸a˜o da matriz R21;
(c) Determine o eixo e o aˆngulo de rotac¸a˜o da matriz R31.
5. No exerc´ıcio 4, seja p1 = [1 − 2 3]
T
. Calcule:
(a) p2;
(b) p3.
6. Suponha que um sistema mo´vel O1x1y1z1 sofre uma rotac¸a˜o em apenas um eixo, com relac¸a˜o a um sistema
fixo O0x0y0z0. Calcule R
1
0 e determine eixo e aˆngulo de rotac¸a˜o para:
(a) p0 = [1 1 1]
T
e p1 = [−1 − 1 1]
T
;
(b) p0 = [3 − 4 5]
T
e p1 = [3 5 4]
T
.
7. Seja Re,a a matriz que representa a rotac¸a˜o em torno do eixo e por um aˆngulo a. Mostre que
Rx,0 = Ry,0 = Rz,0 =


1 0 0
0 1 0
0 0 1


8. Mostre que Rz,θRz,φ = Rz,θ+φ.
9. Mostre que (Rz,θ)
−1
= Rz,−θ.
10. Determine a matriz de rotac¸a˜o dada por Ry,αRx,θRy,−α.
11. Escreva a matriz de rotac¸a˜o que representa a transformac¸a˜o por aˆngulos de Euler ZYZ
RZY Z = Rz,φRy,θRz,ψ.
28 CAPI´TULO 2. MOVIMENTO DE CORPOS RI´GIDOS E TRANSFORMAC¸O˜ES HOMOGEˆNEAS
12. Dados:
p1 =


4
1
−3

 H10 =


1 0 0 −4
0 1 0 −1
0 0 1 3
0 0 0 1


Sendo que H10 e´ uma matriz de transformac¸a˜o homogeˆnea. Calcule p0 e interprete o resultado.
13. Dados:
p1 =


3
7
0

 d01 =


10
5
0

 R10 = Rz,30◦
Calcule p0 e desenhe o gra´fico desta transformac¸a˜o, considerando os eixos z0 e z1 perpendiculares a` folha.
Compare o resultado nume´rico ao seu desenho.
14. Calcule p0, conforme p1 e H
1
0 abaixo:
p1 =


102
321
99

 H10 =


1 0 0 −36
0
√
3/2
−1/2 81
0 1/2
√
3/2 81
0 0 0 1


15. Determine a matriz de transformac¸a˜o homogeˆnea H10 e o vetor p0, conforme os dados abaixo abaixo:
p1 =


1
5
10

 R01 =


1 0 0
0 0, 6 0, 8
0 −0, 8 0, 6

 d01 =


3
−1
1


16. Calcule a matriz de transformac¸a˜o homogeˆnea que representa uma translac¸a˜o de 3 unidades ao longo do
eixo x, seguida de uma rotac¸a˜o de 90 graus em torno do eixo z corrente e seguida de uma translac¸a˜o de
uma unidade ao longo do eixo y corrente.
17. No exerc´ıcio 16, calcule p0, sendo que p1 = [0 12 9]
T
.
18. Qual a matriz de transformac¸a˜o homogeˆnea H que representa uma rotac¸a˜o de α graus em x, seguido de
uma translac¸a˜o de b unidades ao longo de x, seguido de uma translac¸a˜o de d unidades ao longo de z, e
por u´ltimo uma rotac¸a˜o em z de θ graus? Assuma eixos correntes.
19. Encontre a matriz de transformac¸a˜o homogeˆnea H10 descrita pelo desenho da figura abaixo.
2.4. EXERCI´CIOS 29
20. Considere a figura abaixo:
O0 e´ a origem do sistema fixo de coordenadas do manipulador (base), OG e´ a origem do sistema da garra,
OM e´ a origem do sistema da mesa e OF e´ a origem do sistema da ferramenta ou pec¸a a ser manipulada.
Pela figura, as seguintes transformac¸o˜es homogeˆneas sa˜o conhecidas: HG0 , H
M
0 e H
F
M . Determine, atrave´s
da composic¸a˜o de transformac¸o˜es homogeˆneas, a matriz que representa a transformac¸a˜o homogeˆnea da
ferramenta com relac¸a˜o ao centro da garra.
21. A figura abaixo mostra treˆs sistemas de coordenadas que possuem transformac¸o˜es homogeˆneas entre eles.
(a) Determine as matrizes de transformac¸a˜o homogeˆnea H10, H
2
0 e H
2
1;
(b) Mostre que H20 = H
1
0H
2
1.
22. A figura abaixo representa um roboˆ manipulador com um sistema de coordenadas da base (O0x0y0z0) e
treˆs sistemas de coordenadas mo´veis, localizados nas juntas (O1x1y1z1, O2x2y2z2 e O3x3y3z3). Em cada
sistema de coordenadas, os eixos x, y e z esta˜o representados por vetores de cor azul, vermelho e verde,
respectivamente. Determine as matrizes de transformac¸a˜o homogeˆnea H10, H
2
1, H
3
2 e H
3
0.
30 CAPI´TULO 2. MOVIMENTO DE CORPOS RI´GIDOS E TRANSFORMAC¸O˜ES HOMOGEˆNEAS
RESPOSTAS
1. Para sistemascorrentes, temos que:
R10 = Ry,θRz,φ =


cθcφ −cθsφ sθ
sφ cφ 0
−sθcφ sθsφ cθ


2. Para sistemas fixos, temos que:
R10 = Ry,θRz,φ =


cθcφ −cθsφ sθ
sφ cφ 0
−sθcφ sθsφ cθ


3.
R10 =


0, 61 −0, 61 0, 5
0, 7 0, 7 0
−0, 35 0, 35 0, 87


4. (a)
R32 =


0 0 −1
√
3/2
1/2 0
1/2
−
√
3/2 0


(b) Rotac¸a˜o em x; 60◦ (pi/3 rad);
(c) Rotac¸a˜o em y; −90◦ (−pi/2 rad).
5. (a)
p2 =


1
1, 6
3, 23


2.4. EXERCI´CIOS 31
(b)
p3 =


3
−2
−1


6. (a) Rotac¸a˜o em z; 180◦ (pi rad);
(b) Rotac¸a˜o em x; 90◦ (pi/2 rad).
7.
Rz,θ =


cθ −sθ 0
sθ cθ 0
0 0 1


Como cos(0) = 1 e sin(0) = 0, temos que:
Rz,0 =


1 0 0
0 1 0
0 0 1


Obviamente, o mesmo vale para Rx,0 e Ry,0.
8.
Rz,θRz,φ =


cθ −sθ 0
sθ cθ 0
0 0 1




cφ −sφ 0
sφ cφ 0
0 0 1

 =


cθcφ − sθsφ −cθsφ − sθsφ 0
sθcφ + cθsφ −sθsφ + cθcφ 0
0 0 1


Utilizando as identidades trigonome´tricas abaixo,
cos θ cosφ± sin θ sinφ = cos (θ ∓ φ)
cos θ sinφ± sin θ cosφ = sin (θ ± φ)
temos que:
Rz,θRz,φ =


cθcφ − sθsφ − (cθsφ + sθsφ) 0
sθcφ + cθsφ −sθsφ + cθcφ 0
0 0 1

 =


cθ+φ −sθ+φ 0
sθ+φ cθ+φ 0
0 0 1

 = Rz,θ+φ
9. Como sin(−θ) = − sin θ, temos que
Rz,−θ =


cθ −s(−θ) 0
s(−θ) cθ 0
0 0 1

 =


cθ sθ 0
−sθ cθ 0
0 0 1


Sabe-se tambe´m que (Rz,θ)
−1
= (Rz,θ)
T
. Logo,
(Rz,θ)
−1
=


cθ sθ 0
−sθ cθ 0
0 0 1


Logo, conclui-se que (Rz,θ)
−1
= Rz,−θ.
32 CAPI´TULO 2. MOVIMENTO DE CORPOS RI´GIDOS E TRANSFORMAC¸O˜ES HOMOGEˆNEAS
10.
Ry,αRx,θRy,−α =


c2α + cθs
2
α sαsθ cαcθsα − cαsα
−sαsθ cθ −cαsθ
cαcθsα − cαsα cαsθ cθc
2
α + s
2
α


11.
RZY Z = Rz,φRy,θRz,ψ =


cψcφcθ − sψsφ −cψsφ − cφcθsψ sφsθ
cφsψ + cψcθsφ cψcφ − cθsψsφ sφsθ
−cψsθ sψsθ cθ


12.
p0 =


1 0 0 −4
0 1 0 −1
0 0 1 3
0 0 0 1




4
1
−3
1

 =


0
0
0
1


13.
p0 =


√
3/2
−1/2 0 −6, 16
1/2
√
3/2 0 −9, 33
0 0 1 0
0 0 0 1




3
7
0
1

 =


−7, 06
−1, 77
0
1


14.
p1 =


66
309, 49
327, 24


15.
H10 =
[ (
R01
)T
−
(
R01
)T
d01
0 1
]
=


1 0 0 −3
0 0, 6 −0, 8 1, 4
0 0, 8 0, 6 0, 2
0 0 0 1

 , p0 =


−2
−3, 6
10, 2


16.
H = Transx,3Rotz,90◦Transy,1 =


0 −1 0 2
1 0 0 0
0 0 1 0
0 0 0 1


17.
p0 =


0 −1 0 2
1 0 0 0
0 0 1 0
0 0 0 1

 =


−10
0
9
1


2.4. EXERCI´CIOS 33
18.
H = Rotx,αTransx,bTransz,dRotz,θ
=


1 0 0 0
0 cα −sα 0
0 sα cα 0
0 0 0 1




1 0 0 b
0 1 0 0
0 0 1 0
0 0 0 1




1 0 0 0
0 1 0 0
0 0 1 d
0 0 0 1




cθ −sθ 0 0
sθ cθ 0 0
0 0 1 0
0 0 0 1


Dica: no Matlab, utilize varia´veis simbo´licas para realizar multiplicac¸o˜es deste tipo. Exemplo: syms ca
sa ct st b d cria 6 varia´veis simbo´licas correspondentes a cosα, sinα, cos θ, sin θ, b e d. Apo´s, basta
escrever as matrizes e multiplica´-las.
Atenc¸a˜o: a resposta deste exerc´ıcio esta´ incompleta.
19.
H10 =


1 0 0 0
0 0 −1 10
0 1 0 0
0 0 0 1


20. HFG =
(
HGO
)−1
HMO H
F
M .
21. (a)
d10 =


0
0
1

 , R10 = Rx,90◦Rz,−90◦ =


0 1 0
0 0 −1
−1 0 0

 , H10 =


0 1 0 0
0 0 −1 0
−1 1 0 1
0 0 0 1


d21 =


1
0
−1

 , R21 = Rx,90◦Rz,90◦ =


0 −1 0
0 0 −1
1 0 0

 , H21 =


0 −1 0 1
0 0 −1 0
1 0 0 −1
0 0 0 1


d20 =


0
1
0

 , R20 = Rz,−90◦Rx,90◦ =


0 0 −1
−1 0 0
0 1 0

 , H20 =


0 0 −1 0
−1 0 0 1
0 1 0 0
0 0 0 1


(b)
H10H
2
1 =


0 0 −1 0
−1 0 0 1
0 1 0 0
0 0 0 1

 = H20
22.
d10 =


76
0
0

 , R10 = Rz,90◦Rx,90◦ =


0 0 1
1 0 0
0 1 0

 , H10 =


0 0 1 76
1 0 0 0
0 1 0 0
0 0 0 1


Atenc¸a˜o: resposta incompleta.
34 CAPI´TULO 2. MOVIMENTO DE CORPOS RI´GIDOS E TRANSFORMAC¸O˜ES HOMOGEˆNEAS
23. Exerc´ıcio 23.
Refereˆncias Bibliogra´ficas
[1] Jorge Angeles, Fundamentals of robotic mechanical systems: theory, methods and algorithms, Springer, New
York, NY, 2007.
[2] John J. Craig, Introduction to robotics: mechanics and control, Prentice Hall, Upper Saddle River, 2005.
[3] M. P. Groover, Automac¸a˜o industrial e sistemas de manufatura, Pearson Prentice Hall, Sa˜o Paulo, 2011.
[4] Felipe Ku¨hne, Web site da disciplina, 2012, http://www.ee.pucrs.br/~fkuhne.
[5] Bruno Siciliano Lorenzo Sciavicco, Modelling and control of robot manipulators, Springer, London, 2005.
[6] M. Vidyasagar Mark. W. Spong, Robot dynamics and control, John Wiley, New York, NY, 1989.
[7] N. S. Nise, Engenharia de sistemas de controle, LTC, Rio de Janeiro, 2002.
[8] Joa˜o Maur´ıcio Rosa´rio, Princ´ıpios de mecatroˆnica, Pearson Prentice Hall, Sa˜o Paulo, 2005.
35
36 REFEREˆNCIAS BIBLIOGRA´FICAS

Outros materiais