Movimento de Corpos R´ıgidos e Transformac˜oes Homogˆeneasfkuhne/files/sistrob/ap_cap2.pdf · A...

30
Cap´ ıtulo 2 Movimento de Corpos R´ ıgidos e Transforma¸ c˜oesHomogˆ eneas Boa parte do estudo em cinem´ atica dos manipuladores preocupa-se em definir sistemas de coordenadas de forma que se possa representar posi¸c˜ oes e orienta¸c˜ oes de corpos r´ ıgidos com rela¸c˜ ao a estes sistemas. Ainda, transforma¸ oes entre estes sistemas de coordenadas tamb´ em s˜ ao necess´ arias. De fato, a geometria do espa¸co tridimensional e a mecˆ anica de corpos r´ ıgidos tˆ em um papel central em todos os aspectos durante o estudo de manipuladores rob´ oticos. Neste cap´ ıtulo ser˜ aoestudadasopera¸c˜oesderota¸c˜ ao e transla¸c˜ ao entre sistemas de coordenadas tridimen- sionais, atrav´ es da introdu¸c˜ ao do conceito de transforma¸ oes homogˆ eneas. 2.1 Sistemas de coordenadas tridimensionais Um sistema de coordenadas tridimensional O n x n y n z n (ou simplesmente ne descrito pela sua origem O n e pelos trˆ es eixos cartesianos: x n , y n e z n . Estes eixos s˜ ao perpendiculares entre si. A este sistema de coordenadas associa-se uma base ortonormal, formada pelos vetores i n , j n e k n , respecti- vamente na dire¸ ao de x n , y n e z n (Figura 2.1). Cada vetor tem dimens˜ ao unit´ aria e pode ser escrito na forma vetorial como: i n = 1 0 0 j n = 0 1 0 k n = 0 0 1 Figura 2.1: Vetores i n , j n e k n que formam a base ortonormal. A ordena¸ ao relativa dos eixos ´ e dada pela regra da m˜ ao direita, mostrada na Figura 2.2. O sentido positivo do ˆ angulo de rota¸ c˜aotamb´ em ´ e dado pela mesma regra (Figura 2.3). 7

Transcript of Movimento de Corpos R´ıgidos e Transformac˜oes Homogˆeneasfkuhne/files/sistrob/ap_cap2.pdf · A...

Page 1: Movimento de Corpos R´ıgidos e Transformac˜oes Homogˆeneasfkuhne/files/sistrob/ap_cap2.pdf · A este sistema de coordenadas associa-se uma base ortonormal , formada pelos vetores

Capıtulo 2

Movimento de Corpos Rıgidos e

Transformacoes Homogeneas

Boa parte do estudo em cinematica dos manipuladores preocupa-se em definir sistemas de coordenadas de

forma que se possa representar posicoes e orientacoes de corpos rıgidos com relacao a estes sistemas. Ainda,

transformacoes entre estes sistemas de coordenadas tambem sao necessarias. De fato, a geometria do espaco

tridimensional e a mecanica de corpos rıgidos tem um papel central em todos os aspectos durante o estudo de

manipuladores roboticos.

Neste capıtulo serao estudadas operacoes de rotacao e translacao entre sistemas de coordenadas tridimen-

sionais, atraves da introducao do conceito de transformacoes homogeneas.

2.1 Sistemas de coordenadas tridimensionais

Um sistema de coordenadas tridimensional Onxnynzn (ou simplesmente n) e descrito pela sua origem On e pelos

tres eixos cartesianos: xn, yn e zn. Estes eixos sao perpendiculares entre si.

A este sistema de coordenadas associa-se uma base ortonormal, formada pelos vetores in, jn e kn, respecti-

vamente na direcao de xn, yn e zn (Figura 2.1). Cada vetor tem dimensao unitaria 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 ordenacao relativa dos eixos e dada pela regra da mao direita, mostrada na Figura 2.2.

O sentido positivo do angulo de rotacao tambem e dado pela mesma regra (Figura 2.3).

7

Page 2: Movimento de Corpos R´ıgidos e Transformac˜oes Homogˆeneasfkuhne/files/sistrob/ap_cap2.pdf · A este sistema de coordenadas associa-se uma base ortonormal , formada pelos vetores

8 CAPITULO 2. MOVIMENTO DE CORPOS RIGIDOS E TRANSFORMACOES HOMOGENEAS

Figura 2.2: Regra da mao direita para formacao de sistemas de coordenadas tridimensionais. O dedo polegarcorresponde ao eixo z, o indicador ao eixo x e o dedo medio ao eixo y.

Figura 2.3: Regra da mao direita: o sentido do fechamento dos dedos na mao indica o sentido positivo doangulo de rotacao.

Um ponto p ∈ R3 de um corpo rıgido, pertencente ao espaco 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 combinacao 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 combinacao linear dos vetores da base ortonormal no sistema 0. Os vetoresem vermelho representam i0, j0 e k0.

Page 3: Movimento de Corpos R´ıgidos e Transformac˜oes Homogˆeneasfkuhne/files/sistrob/ap_cap2.pdf · A este sistema de coordenadas associa-se uma base ortonormal , formada pelos vetores

2.2. ROTACAO 9

O subscrito associado ao nome do vetor indica com relacao a qual sistema de coordenadas o ponto esta

representado. Assim, p0 e a representacao do ponto p com relacao ao sistema O0x0y0z0. Da mesma forma, p1

representa p com relacao a um sistema O1x1y1z1, p2 representa p com relacao a um sistema O2x2y2z2, e assim

por diante.

Na expressao (2.2), o componente p0x e a projecao do vetor p0 no eixo x0. Esta projecao pode ser representada

matematicamente atraves 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 modulo do vetor p0: ‖p0‖ =√

p20x + p20y + p20z, e θ e o angulo entre p0 e i0. Como i0

possui magnitude unitaria, a expressao (2.4) resume-se a p0 · i0 = ‖p0‖ cos θ.

Os componentes em y0 e em z0 de p0 sao, respectivamente,

p0y = p0 · j0 (2.5)

p0z = p0 · k0 (2.6)

2.2 Rotacao

Considere agora a existencia 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 combinacao linear dos vetores da base ortonomal do sistema 1:

p1 = p1xi1 + p1yj1 + p1zk1 (2.7)

Figura 2.5: Ponto p descrito como combinacao linear dos vetores da base ortonormal no sistema 1.

Ou, na forma vetorial, p1 = [p1x p1y p1z]T. Observa-se entao que os vetores p0 e p1 descrevem o mesmo

ponto no espaco tridimensional, so que representados em sistemas de coordenadas diferentes, como mostra a

Figura 2.5. Assim, substituindo p0 por p1 nas expressoes (2.3) a (2.6):

p0x = p1 · i0

p0y = p1 · j0

p0z = p1 · k0

Page 4: Movimento de Corpos R´ıgidos e Transformac˜oes Homogˆeneasfkuhne/files/sistrob/ap_cap2.pdf · A este sistema de coordenadas associa-se uma base ortonormal , formada pelos vetores

10 CAPITULO 2. MOVIMENTO DE CORPOS RIGIDOS E TRANSFORMACOES HOMOGENEAS

Substituindo p1 por (2.7) nas tres expressoes 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 entao o seguinte conjunto de tres equacoes:

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 expressoes (2.8) a (2.10) podem tambem ser reescritas matricialmente como:

p0 = R10p1, (2.11)

com

p0 =

p0x

p0y

p0z

, R1

0 =

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 rotacao. Ela representa a rotacao do sistema de coordenadas 1 com

relacao ao sistema 0.

A mesma deducao pode ser feita se considerarmos o sistema de coordenadas 1 como referencia, ou seja, pode-

se determinar a rotacao do sistema 0 com relacao ao sistema 1, atraves da matriz de rotacao 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

Page 5: Movimento de Corpos R´ıgidos e Transformac˜oes Homogˆeneasfkuhne/files/sistrob/ap_cap2.pdf · A este sistema de coordenadas associa-se uma base ortonormal , formada pelos vetores

2.2. ROTACAO 11

p1z = p0 · k1

= (p0xi0 + p0yj0 + p0zk0) · i1

= p0xi0 · k1 + p0yj0 · k1 + p0zk0 · k1

Pode-se escrever as expressoes acima na forma matricial:

p1 = R01p0, (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 expressao (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 = R10p1

(

R10

)−1p0 =

(

R10

)−1R1

0p1

(

R10

)−1p0 = Ip1

(

R10

)−1p0 = p1

Pode-se dizer entao que R01 =

(

R10

)−1, ou seja,

p1 =(

R10

)−1p0

Ainda, comparando as matrizes R10 e R0

1 (expressoes (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 condicao acima e satisfeita e dita ortogonal. Esta propriedade e valida para toda e

qualquer matriz que representa a rotacao 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 rotacao sera sempre unitario. Para o caso de sistemas descritos pela regra da

mao direita (Figura 2.2), o determinante sera, inclusive, positivo.

Propriedade 2.1. Uma matriz R que representa a rotacao entre dois sistemas de coordenadas cartesianos e

ortogonal, ou seja, a matriz inversa de uma matriz de rotacao e igual a sua transposta:

R−1 = RT

Propriedade 2.2. O determinante de uma matriz de rotacao R para sistemas de coordenadas cartesianos

descritos pela regra da mao direita e sempre positivo e unitario:

det (R) = 1,

visto que o modulo de qualquer linha ou coluna de R e sempre positivo e unitario.

Page 6: Movimento de Corpos R´ıgidos e Transformac˜oes Homogˆeneasfkuhne/files/sistrob/ap_cap2.pdf · A este sistema de coordenadas associa-se uma base ortonormal , formada pelos vetores

12 CAPITULO 2. MOVIMENTO DE CORPOS RIGIDOS E TRANSFORMACOES HOMOGENEAS

Exemplo 2.1 Como saber se as matrizes abaixo representam matrizes de rotacao?

R1

0 =

0 −1 0

1 0 0

0 0 1

R

1

2 =

−1 0 0

0 1/2√

3/2

0√3/2

1/2

R

4

0 =

0 0 0

0 1/2−√

3/2

0√

3/21/2

R1

0 e uma matriz de rotacao, ja que seu determinante e unitario e todas as linhas e colunas possuem modulo

unitario; R1

2 possui todas as linhas e colunas com modulo unitario, mas o seu determinante e igual a 0, 5. Logo, R1

2

nao e uma matriz de rotacao; R4

0 possui uma linha e uma coluna com modulos nulos e seu determinante tambem e

nulo. Logo, R4

0 nao representa uma matriz de rotacao.

2.2.1 Matrizes basicas de rotacao

Matrizes basicas de rotacao sao as matrizes cuja rotacao ocorre em torno de um dos tres eixos cartesianos: x,

y ou z. Da definicao do produto interno, temos que, para o primeiro elemento da matriz da expressao (2.12):

i1 · i0 = ‖i1‖‖i0‖ cos (θ) ,

onde θ e o angulo entre i0 e i1. Como ‖i0‖ = ‖i1‖ = 1 (vetores de magnitude unitaria) a expressao acima

resume-se a

i1 · i0 = cos (θ)

A mesma analise e valida para os outros elementos de uma matriz de rotacao.

Considera-se agora a existencia de dois sistemas de coordenadas, chamados de sistema 0 (fixo) e sistema 1

(movel). Ambos possuem as origens O0 e O1 coincidentes. O sistema 1 sofre uma rotacao de θ em torno do

eixo x0. Esta operacao esta representada na Figura 2.6.

Figura 2.6: Rotacao do sistema movel 1 em torno do eixo x0 do sistema fixo 0.

Observa-se entao que os eixos x0 e x1 sao paralelos e coincidentes. Logo, os vetores i0 e i1 sao paralelos e

coincidentes, visto que a rotacao ocorre sobre x0. Assim, o angulo de rotacao entre i0 e i1 e nulo e

i1 · i0 = ‖i1‖‖i0‖ cos (0◦)

= 1

Independente do angulo de rotacao entre os dois sistemas, j0 e i1 serao sempre perpendiculares. Logo,

i1 · j0 = ‖i1‖‖j0‖ cos (90◦)

= 0

Page 7: Movimento de Corpos R´ıgidos e Transformac˜oes Homogˆeneasfkuhne/files/sistrob/ap_cap2.pdf · A este sistema de coordenadas associa-se uma base ortonormal , formada pelos vetores

2.2. ROTACAO 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 (θ). Tambem, tem-se que:

k1 · j0 = cos (90◦ + θ)

= − sin (θ)

j1 · k0 = cos (90◦ − θ)

= sin (θ)

Logo, a matriz que representa a rotacao entre dois sistemas de coordenadas em torno do eixo x por um

angulo θ e

Rx,θ =

1 0 0

0 cos (θ) − sin (θ)

0 sin (θ) cos (θ)

(2.15)

A mesma analise pode ser feita para uma rotacao em torno de y ou em torno de z, como mostrado na

Figura 2.7.

(a) (b)

Figura 2.7: Rotacoes basicas em torno do eixo y0 (a) e em torno do eixo z0 (b).

Assim, as matrizes de rotacao basicas em torno dos eixos y e z sao, 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 atraves de uma notacao 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

notacao sempre que se fizer conveniente conveniente.

As matrizes basicas de rotacao possuem as seguintes propriedades:

Propriedade 2.3. Para um angulo de rotacao nulo, uma determinada matriz de rotacao e igual a identidade.

Page 8: Movimento de Corpos R´ıgidos e Transformac˜oes Homogˆeneasfkuhne/files/sistrob/ap_cap2.pdf · A este sistema de coordenadas associa-se uma base ortonormal , formada pelos vetores

14 CAPITULO 2. MOVIMENTO DE CORPOS RIGIDOS E TRANSFORMACOES HOMOGENEAS

Prova. Substituindo θ por 0◦ em (2.15), obtem-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 valido para Ry,θ e Rz,θ.

Propriedade 2.4. A multiplicacao de duas matrizes, Re,α e Re,θ, cujas rotacoes ocorrem no mesmo eixo e e

igual a uma matriz com rotacao total sobre o eixo e de α+ θ.

Re,αRe,θ = Re,α+θ

Prova. Tomando como exemplo a matrix de rotacao no eixo z e as seguintes propriedades trigonometricas:

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 rotacao Re,θ e Re,−θ.

(Re,θ)−1

= Re,−θ

Prova. Tomando como exemplo a matriz de rotacao 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 rotacao representa a rotacao entre um sistema fixo e um movel, mas tambem pode ser

Page 9: Movimento de Corpos R´ıgidos e Transformac˜oes Homogˆeneasfkuhne/files/sistrob/ap_cap2.pdf · A este sistema de coordenadas associa-se uma base ortonormal , formada pelos vetores

2.2. ROTACAO 15

utilizada para transformar a representacao de um ponto entre dois sistemas de coordenadas, como visto nas

expressoes (2.11) e (2.13):

p0 = R10p1

p1 = R01p0

Exemplo 2.2 Dados p1 e R0

1, calcular p0.

p1 =

3

−2

8

R

0

1 =

1 0 0

0 0 −1

0 1 0

R0

1 representa a rotacao do sistema 0 com relacao ao sistema 1. Como se deseja calcular p0 a partir de p1, e

atraves da Propriedade 2.1, tem-se que R1

0 =(

R0

1

)T. Assim:

p0 = R1

0p1

=(

R0

1

)Tp1

=

1 0 0

0 0 1

0 −1 0

3

−2

8

=

3

8

2

2.2.2 Composicao de rotacoes

Nas secoes anteriores foram discutidas rotacoes de um sistema de coordenadas movel com relacao a um sistema

fixo. Assim, a matrizR10 representa a rotacao do sistema O1x1y1z1 com relacao ao sistema O0x0y0z0. Considera-

se agora a existencia de um terceiro sistema de coordenadas O2x2y2z2 (ou simplesmente sistema 2) e que as

origens dos tres sistemas sao coincidentes. Um dado ponto p no espaco cartesiano tridimensional pode ser

representado nos tres sistemas, sendo ele entao chamado de p0, p1 ou p2. A relacao de p entre os tres sistemas

da-se por:

p0 = R10p1 (2.18)

p0 = R20p2 (2.19)

p1 = R21p2 (2.20)

As matrizes R10 e R2

0 representam rotacoes relativas ao sistema 0, enquanto que R21 representa a rotacao do

sistema 2 com relacao ao sistema 1. Substituindo (2.20) em (2.18), obtem-se:

p0 = R10R

21p2 (2.21)

Comparando (2.19) e (2.21), tem-se a seguinte identidade:

R20 = R1

0R21 (2.22)

A equacao (2.22) representa a regra para a composicao de rotacoes. Ela diz que, para se transformar as

coordenadas de p da sua representacao no sistema 2 (p2) para a representacao no sistema 0 (p0), deve-se,

primeiro, transformar p2 para o sistema 1 atraves de R21 e apos transformar p1 em p0 atraves de R1

0.

Page 10: Movimento de Corpos R´ıgidos e Transformac˜oes Homogˆeneasfkuhne/files/sistrob/ap_cap2.pdf · A este sistema de coordenadas associa-se uma base ortonormal , formada pelos vetores

16 CAPITULO 2. MOVIMENTO DE CORPOS RIGIDOS E TRANSFORMACOES HOMOGENEAS

Pode-se tambem interpretar (2.21) da seguinte forma: Considera-se inicialmente que os tres sistemas de

coordenadas sao coincidentes. Entao, o sistema 1 e rotacionado com relacao ao sistema 0 de acordo com R10.

Apos, o sistema 2 sofre uma rotacao com relacao ao sistema 1 conforme R21. A este tipo de operacao - quando

as rotacoes ocorrem de forma sucessiva, da-se o nome de rotacao em sistemas correntes.

Exemplo 2.3 Determinar a matriz de rotacao total R que representa uma rotacao φ em torno do eixo y e depois

uma rotacao θ 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 multiplicacoes matriciais em geral nao sao comutativas, ou seja, no caso de uma

composicao de rotacoes, a ordem de multiplicacao das matrizes deve ocorrer de acordo com a ordem com que

as rotacoes acontecem. A isto segue o proximo exemplo.

Exemplo 2.4 Determinar a matriz de rotacao total R′ que representa uma rotacao θ em torno do eixo z e depois

uma rotacao φ 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 atraves da

analise das Figuras 2.8 e 2.9.

Figura 2.8: Resultado da composicao R = Ry,φRz,θ.

Page 11: Movimento de Corpos R´ıgidos e Transformac˜oes Homogˆeneasfkuhne/files/sistrob/ap_cap2.pdf · A este sistema de coordenadas associa-se uma base ortonormal , formada pelos vetores

2.2. ROTACAO 17

Figura 2.9: Resultado da composicao R′ = Rz,θRy,φ.

Assim, como regra geral de composicao de rotacoes em sistemas correntes, teremos:

Rnm = Rm+1

m Rm+2m+1 · · ·R

ii−1 · · ·R

n−1n−2R

nn−1, (2.23)

onde n > m.

Exemplo 2.5 Determinar a formula para a composicao de quatro rotacoes, inciando-se pelo sistema 2, e con-

siderando sistemas correntes.

Fazendo m = 2 e n = 6 em (2.23), tem-se que:

R6

2 = R3

2R4

3R5

4R6

5

Em muitas aplicacoes, deseja-se que as rotacoes sejam efetuadas sempre com relacao a um mesmo sistema

de coordenadas, ao inves de sistemas sucessivos. Por exemplo, pode ser necessario realizar uma rotacao em

torno de x0, seguida de uma rotacao em y0 (e nao em y1). A este tipo de rotacao da-se o nome de rotacao

em sistemas fixos. No caso do exemplo, O0x0y0z0 e o sistema fixo (ou inercial) com relacao ao qual todas as

rotacoes serao realizadas. Neste caso, a expressao (2.23) nao e valida. Entretanto, pode ser mostrado que as

sucessivas matrizes de rotacao devem ser mulitplicadas na ordem inversa a mostrada por (2.23).

Exemplo 2.6 Considera-se tres sistemas de coordenadas, inicialmente coincidentes: 0 (sistema fixo), 1 e 2. Uma

matriz R representa uma rotacao φ do sistema 1 em torno do eixo y0, seguido de uma rotacao θ do sistema 2 em

torno de z0. Sejam p0, p1 e p2 representacoes do ponto p. Inicialmente, os sistemas 0 e 1 sao coincidentes. Logo,

pode-se escrever que:

p0 = Ry0,φp1 (2.24)

Agora, como a segunda rotacao e com relacao ao sistema 0 e nao ao sistema 1, e incorreto afirmar que

p1 = Rz0,θp2,

ja que esta expressao so seria valida se Rz0,θ fosse uma rotacao em torno de z1. A solucao e fazer com que z0 e

z1 sejam coincidentes, e isto pode ser obtido se a primeira rotacao dada por Ry0,φ for desfeita, com Ry0,−φ. Apos

isto, esta rotacao precisa ser reinserida. Assim:

p1 = Ry0,−φRz0,θRy0,φp2 (2.25)

Esta e expressao correta, neste caso, para rotacoes em sistemas fixos, e nao (2.23). Agora, substituindo (2.25) em

Page 12: Movimento de Corpos R´ıgidos e Transformac˜oes Homogˆeneasfkuhne/files/sistrob/ap_cap2.pdf · A este sistema de coordenadas associa-se uma base ortonormal , formada pelos vetores

18 CAPITULO 2. MOVIMENTO DE CORPOS RIGIDOS E TRANSFORMACOES HOMOGENEAS

(2.24), tem-se que:

p0 = Ry0,φp1

= Ry0,φRy0,−φRz0,θRy0,φp2

= Rz0,θRy0,φp2

Assim, pode-se sumarizar as rotacoes que ocorrem em sistemas correntes ou sistemas fixos da seguinte forma:

Dado um sistema fixo 0 e um sistema movel (corrente) 1, a matriz de rotacao que relaciona os dois sistemas

e R10. Dado um terceiro sistema movel 2, a matriz de rotacao que relaciona o sistema 2 ao sistema 1 e dada por

R21. Se o sistema 2 e obtido com relacao ao sistema 1 (sistema corrente), R1

0 e pos-multiplicada por R21 para se

obter R20:

R20 = R1

0R21

Esta expressao corresponde a regra dada por (2.23). Se o sistema 2 e obtido com relacao ao sistema 0 (sistema

fixo), R10 e pre-multiplicada por R2

1 para se obter R20:

R20 = R2

1R10

Assim, a regra geral para rotacoes que ocorrem em sistemas fixos e dada por:

Rnm = Rn

n−1Rn−1n−2 · · ·R

ii−1 · · ·R

m+2m+1R

m+1m , (2.26)

onde n > m.

Exemplo 2.7 Determinar a formula para a composicao de quatro rotacoes, inciando-se pelo sistema 2, e con-

siderando sistemas fixos.

Fazendo m = 2 e n = 6 em (2.26), tem-se que:

R6

2 = R6

5R5

4R4

3R3

2

Exemplo 2.8 Calcular a matriz de rotacao R2

0 resultante da sequencia de duas rotacoes, R1

0 = Rz,30◦ e R2

1 =

Ry,60◦ , considerando (a) sistemas correntes e (b) sistemas fixos.

(a) Para sistemas correntes, sabe-se que R2

0 = R1

0R2

1. Assim,

R2

0 = R1

0R2

1

=

√3/2

−1/2 01/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

Page 13: Movimento de Corpos R´ıgidos e Transformac˜oes Homogˆeneasfkuhne/files/sistrob/ap_cap2.pdf · A este sistema de coordenadas associa-se uma base ortonormal , formada pelos vetores

2.2. ROTACAO 19

(b) Para sistemas fixos, R2

0 = R2

1R1

0. Assim,

R2

0 = R2

1R1

0

=

1/2 0√

3/2

0 1 0−√

3/2 0 1/2

√3/2

−1/2 01/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 Angulos de Euler

O metodo de angulos de Euler foi introduzido pelo matematico Leonhard Euler. Atraves deste metodo e possıvel

descrever a rotacao de um corpo rıgido no espaco tridimensional atraves da composicao de tres grandezas

(angulos) independentes.

Dado um sistema fixo 0 e um sistema movel 1, pode-se descrever a rotacao de 1 com relacao a 0 atraves

de tres rotacoes sucessivas, como segue: primeiro rotacione φ em torno do eixo z, depois rotacione θ em torno

do eixo y corrente, e por ultimo rotacione novamente em torno do eixo z corrente por ψ. Esta e a chamada

combinacao ZYZ. Existem outras combinacoes possıveis, mas esta e a mais utilizada em robotica (como sera

visto no estudo da cinematica inversa).

A matriz de rotacao resultante para a combinacao 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 Angulos RPY

Uma matriz de rotacao pode tambem ser descrita como o produto de sucessivas rotacoes em torno dos eixos do

sistema fixo: x0, y0 e z0. Estas rotacoes sao chamadas, respectivamente, de guiagem (yaw), arfagem (pitch) e

rolamento (roll).

As rotacoes ocorre na seguinte ordem: primeiro uma rotacao ψ em torno de x0, seguida de θ em torno de

y0 e por ultimo φ em torno de z0. Considerando que as rotacoes sao obtidas sempre com relacao a um sistema

fixo, a matriz resultante neste caso e:

Page 14: Movimento de Corpos R´ıgidos e Transformac˜oes Homogˆeneasfkuhne/files/sistrob/ap_cap2.pdf · A este sistema de coordenadas associa-se uma base ortonormal , formada pelos vetores

20 CAPITULO 2. MOVIMENTO DE CORPOS RIGIDOS E TRANSFORMACOES HOMOGENEAS

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, alem da matriz de rotacao RPY da expressao (2.28), o mesmo resultado poderia ser obtido

considerando-se uma matriz YPR com relacao aos sistemas correntes, ou ainda atraves de angulos de Euler

ZYX.

2.3 Transformacoes homogeneas

Ate o momento, a composicao 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 sao ditos paralelos entre si, ou

seja, nao existe rotacao relativa entre eles. Adiciona-se entao uma translacao entre as duas origens, fazendo com

que O1 nao seja mais coincidente com O0. Esta transformacao e mostrada na Figura 2.10 e a distancia de O1

com relacao a O0 da-se o nome de d10.

Figura 2.10: Translacao pura entre os sistemas 0 e 1. Nota-se que x1 e paralelo a x0, y1 e paralelo a y0 e z1 eparalelo a z0.

d10 e um vetor da origem O0 ate a origem O1, expresso com relacao ao sistema de coordenadas 0. O mesmo

pode ser escrito tambem como d10 = [dx dy dz]

T, onde dx, dy e dz sao, respectivamente, componentes de d1

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 relacao ao sistema 1 com o vetor p1.

Figura 2.11: Ponto p representado com relacao ao sistema 1.

Page 15: Movimento de Corpos R´ıgidos e Transformac˜oes Homogˆeneasfkuhne/files/sistrob/ap_cap2.pdf · A este sistema de coordenadas associa-se uma base ortonormal , formada pelos vetores

2.3. TRANSFORMACOES HOMOGENEAS 21

Como os dois sistemas de coordenadas sao paralelos (nao ha rotacao entre eles), pode-se obter p com relacao

ao sistema 0 atraves de uma simples soma vetorial, ou seja:

p0 = d10 + p1 (2.29)

Figura 2.12: Ponto p representado com relacao ao sistema 1 (vetor vermelho) e ao sistema 0 (vetor verde).

Quando existe uma rotacao entre os dois sistemas, a soma vetorial da expressao (2.29) nao pode ser realizada

diretamente. Ao inves disto, deve-se multiplicar p1 pela matriz de rotacao entre os dois sistemas para depois

realizar a soma. Ou seja,

p0 = d10 +R1

0p1 (2.30)

Esta transformacao e representada na Figura 2.13. A expressao (2.30) representa a combinacao de uma

rotacao pura e uma translacao pura, e e o caso mais geral do chamado movimento de corpos rıgidos.

Figura 2.13: Composicao de translacao e rotacao.

A multiplicacao por R10 faz com que a representacao do vetor p1 torne-se paralela ao sistema 0, podendo

assim ser somado a d10 como em (2.29).

Exemplo 2.9 Dados d1

0, p1 e R1

0 abaixo, calcular p0.

p1 =

3

−2

1

, d

1

0 =

0

8

5

e R

1

0 = Ry,−30◦

Page 16: Movimento de Corpos R´ıgidos e Transformac˜oes Homogˆeneasfkuhne/files/sistrob/ap_cap2.pdf · A este sistema de coordenadas associa-se uma base ortonormal , formada pelos vetores

22 CAPITULO 2. MOVIMENTO DE CORPOS RIGIDOS E TRANSFORMACOES HOMOGENEAS

Substituindo os dados acima em (2.30), obtem-se:

p0 = d1

0 +R1

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 Representacoes homogeneas

E comum o uso da seguinte representacao:

p′0 = H10p′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 sao representacoes homogeneas dos vetores p0 e p1, e sao obtidas simplesmente aumentando-se a

dimensao do vetor em uma linha com o elemento igual a 1. H10 e a chamada matriz de transformacao homogenea,

e pode ser reescrita como:

H10 =

[

R10 d1

0

0 1

]

(2.31)

Nota-se entao que as duas transformacoes basicas (translacao d10 e rotacao R1

0) estao contidas dentro da

matriz H10. A ultima linha de uma matriz de transformacao homogenea e sempre composta de [0 0 0 1].

De forma a simplificar a notacao, o apostrofe no nome do vetor sera eliminado e a representacao homogenea

do vetor sera utilizada sempre que necessario em uma expressao do tipo p0 = H10p1.

Assim, a matriz H10 representa a transformacao homogenea do sistema de coordenadas 1 com relacao ao

sistema 0. Seguindo a notacao, logo conclui-se que:

p1 = H01p0,

onde H01 e a matriz de transformacao homogenea do sistema 0 com relacao ao sistema 1. Assim,

H01 =

[

R01 d0

1

0 1

]

onde R01 e d0

1 sao, respectivamente, a rotacao e a translacao do sistema 0 com relacao ao sistema 1. H01 pode

tambem ser obtida atraves da matriz inversa de H10:

H01 =

(

H10

)−1

Sabe-se da Propriedade 2.1 que R−1 = RT . Assim,

Page 17: Movimento de Corpos R´ıgidos e Transformac˜oes Homogˆeneasfkuhne/files/sistrob/ap_cap2.pdf · A este sistema de coordenadas associa-se uma base ortonormal , formada pelos vetores

2.3. TRANSFORMACOES HOMOGENEAS 23

H01 =

[

(

R10

)−1−

(

R10

)−1d10

0 1

]

=

[

(

R10

)T−

(

R10

)Td10

0 1

]

(2.32)

=

[

R01 d0

1

0 1

]

Da expressao (2.32), conclui-se que

d01 = −

(

R10

)Td10 (2.33)

Observando a expressao (2.33), e interessante perceber o que a mesma significa. O sinal de negativo indica

que a distancia d10 deve ser revertida para se obter d0

1, mas, antes disto, esta grandeza deve ser escrita com

relacao ao sistema 1, por isso a multiplicacao pela transposta de R10, que e igual a R0

1.

Exemplo 2.10 Atraves de transformacoes homogeneas, calcular p0, dados:

p1 =

1

2

3

, d

0

1 =

4

5

6

e R

0

1 = Rz,90◦

Sabe-se de (2.32) que d1

0 = −(

R0

1

)Td0

1, logo:

d1

0 =

0 1 0

−1 0 0

0 0 1

4

5

6

=

5

−4

6

Entao,

p0 = H1

0p1 =

[

R1

0 d1

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 rotacao, a inversa de uma matriz de transformacao homogenea nao corre-

sponde a sua transposta, ou seja,(

H10

)−16=

(

H10

)T.

Page 18: Movimento de Corpos R´ıgidos e Transformac˜oes Homogˆeneasfkuhne/files/sistrob/ap_cap2.pdf · A este sistema de coordenadas associa-se uma base ortonormal , formada pelos vetores

24 CAPITULO 2. MOVIMENTO DE CORPOS RIGIDOS E TRANSFORMACOES HOMOGENEAS

Exemplo 2.11 Dada a matriz H1

0,

H1

0 =

0 −1 0 −2

1 0 0 1

0 0 1 0

0 0 0 1

,

a sua inversa e:

(

H1

0

)−1

=

0 1 0 −1

−1 0 0 2

0 0 1 0

0 0 0 1

Nota-se que a ultima linha da matriz e [0 0 0 1], o que nao poderia deixar de ser ja que(

H1

0

)−1= H0

1, que

ainda e uma matriz de transformacao homogenea. Calculando a transposta de H1

0, chega-se a:

(

H1

0

)T=

0 1 0 0

−1 0 0 0

0 0 1 0

−2 1 0 1

,

logo,(

H1

0

)−16=

(

H1

0

)T. Ainda, a ultima linha de

(

H1

0

)Te diferente de [0 0 0 1], logo esta nao e uma matriz de

transformacao homogenea.

2.3.2 Matrizes basicas de transformacao homogenea

Na Secao 2.2.1 foram vistas as matrizes basicas de rotacao, ou seja, matrizes que representam rotacoes em torno

de um dos tres eixos cartesianos. Nota-se em(2.31) que para as matrizes de transformacao homogenea existem

duas operacoes (rotacao e translacao) que podem ocorrer, cada uma, em um dos eixos cartesianos. Logo, agora

o total de matrizes que representam operacoes basicas e de seis (tres para rotacao e tres para translacao).

Assim, as matrizes basicas de transformacao homogenea que representam cada uma das rotacoes sao:

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 basicas que representam cada uma das translacoes sao:

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 entao que, para Rotx,θ, Roty,θ e Rotz,θ o vetor de translacao e nulo, e para Transx,d, Transy,d e

Transz,d a matriz de rotacao e igual a matriz identidade.

2.3.3 Composicao de transformacoes homogeneas

Sejam tres sistemas de coordenadas no espaco cartesiano tridimensional, O0x0y0z0, O1x1y1z1 e O2x2y2z2. As

origens destes sistemas nao sao coincidentes e os mesmos nao sao paralelos, como indica a Figura 2.14.

Page 19: Movimento de Corpos R´ıgidos e Transformac˜oes Homogˆeneasfkuhne/files/sistrob/ap_cap2.pdf · A este sistema de coordenadas associa-se uma base ortonormal , formada pelos vetores

2.3. TRANSFORMACOES HOMOGENEAS 25

Figura 2.14: Tres sistemas de coordenadas tridimensionais.

Seja d10 a distancia de O1 para O0, com relacao ao sistema 0. Da mesma forma, tem-se que d2

1 e a distancia

de O2 para O1, com relacao ao sistema 1 e d20 e a distancia de O2 para O0, com relacao ao sistema 0. Um ponto

p pode ser descrito com relacao a qualquer um dos tres sistemas e as seguintes transformacoes existem:

p0 = d10 +R1

0p1 (2.34)

p0 = d20 +R2

0p2 (2.35)

p1 = d21 +R2

1p2 (2.36)

Substituindo (2.36) em (2.34), tem-se que:

p0 = d10 +R1

0d21 +R1

0R21p2 (2.37)

Comparando as equacoes (2.35) e (2.37), conclui-se que:

d20 = d1

0 +R10d

21

R20 = R1

0R21

Usando representacoes homogeneas para os vetores e matrizes, obtem-se:

p0 = H20p2,

onde

H20 =

[

R20 d2

0

0 1

]

O mesmo resultado pode ser obtido atraves da multiplicacao H10H

21. Assim, tem-se que a composicao de

varias transformacoes homogeneas pode ser obtida por:

Hnm = Hm+1

m Hm+2m+1 · · ·H

ii−1 · · ·H

n+1n Hn

n−1, (2.38)

onde n > m. A expressao (2.38) e semelhante a (2.23), obtida para composicao de rotacoes para sistemas

correntes. De fato, a expressao acima so pode ser utilizada considerando-se sistemas correntes, o que em

sistemas robotizados e mais comum, visto que um robo e descrito atraves de varios sistemas de coordenadas

moveis com relacao a um sistema fixo, ou inercial.

A composicao de transformacoes homogeneas para sistemas fixos nao sera estudada.

Page 20: Movimento de Corpos R´ıgidos e Transformac˜oes Homogˆeneasfkuhne/files/sistrob/ap_cap2.pdf · A este sistema de coordenadas associa-se uma base ortonormal , formada pelos vetores

26 CAPITULO 2. MOVIMENTO DE CORPOS RIGIDOS E TRANSFORMACOES HOMOGENEAS

Exemplo 2.12 Determinar a matriz de transformacao homogenea H que representa a rotacao α em torno do eixo

x, seguido de uma translacao b sobre o eixo x corrente, depois sofrendo uma translacao d sobre o eixo z corrente, e

por ultimo seguido de uma rotacao θ 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 distancia da origem do sistema 2 com relacao ao sistema 0, conforme os dados abaixo.

d1

0 =

3

2

−8

d1

2 =

−6

0

1

R

1

0 =

0 −1 0

1 0 0

0 0 1

R

2

1 =

1 0 0

0 0 1

0 −1 0

d2

0 pode ser calculado com d2

0 = d1

0 + R1

0d2

1. Como os dados do exercıcio dao apenas d1

2, e necessario calcular

d2

1:

d2

1 = −(

R1

2

)Td1

2 = −R2

1d1

2

=

−1 0 0

0 0 −1

0 1 0

−6

0

1

=

6

−1

0

Entao,

d2

0 = d1

0 +R1

0d2

1

=

3

2

−8

+

0 −1 0

1 0 0

0 0 1

6

−1

0

=

4

8

−8

Page 21: Movimento de Corpos R´ıgidos e Transformac˜oes Homogˆeneasfkuhne/files/sistrob/ap_cap2.pdf · A este sistema de coordenadas associa-se uma base ortonormal , formada pelos vetores

2.4. EXERCICIOS 27

2.4 Exercıcios

1. Dois sistemas de coordenadas O0x0y0z0 e O1x1y1z1 sao inicialmente coincidentes. O1 sofre uma rotacao

em torno do eixo y0 de θ, e depois uma rotacao em torno do novo eixo z1 de φ. Determine a matriz de

rotacao R10.

2. Dois sistemas de coordenadas O0x0y0z0 e O1x1y1z1 sao inicialmente coincidentes. O1 sofre uma rotacao

em torno do eixo z0 de φ, e depois uma rotacao em torno do eixo y0 de θ. Determine a matriz de rotacao

R10.

3. Para a matriz de rotacao do exercıcio 2, determine R10 para θ = 30◦ e φ = 45◦.

4. Sejam tres sistemas de coordenadas O1x0y1z1, O2x2y2z2 e O3x3y3z3. Suponha que

R21 =

1 0 0

0 1/2−√3/2

0√3/2

1/2

R3

1 =

0 0 −1

0 1 0

1 0 0

(a) Calcule R32;

(b) Determine o eixo e o angulo de rotacao da matriz R21;

(c) Determine o eixo e o angulo de rotacao da matriz R31.

5. No exercıcio 4, seja p1 = [1 − 2 3]T. Calcule:

(a) p2;

(b) p3.

6. Suponha que um sistema movel O1x1y1z1 sofre uma rotacao em apenas um eixo, com relacao a um sistema

fixo O0x0y0z0. Calcule R10 e determine eixo e angulo de rotacao para:

(a) p0 = [1 1 1]Te p1 = [−1 − 1 1]

T;

(b) p0 = [3 − 4 5]Te p1 = [3 5 4]

T.

7. Seja Re,a a matriz que representa a rotacao em torno do eixo e por um angulo 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 rotacao dada por Ry,αRx,θRy,−α.

11. Escreva a matriz de rotacao que representa a transformacao por angulos de Euler ZYZ

RZY Z = Rz,φRy,θRz,ψ.

Page 22: Movimento de Corpos R´ıgidos e Transformac˜oes Homogˆeneasfkuhne/files/sistrob/ap_cap2.pdf · A este sistema de coordenadas associa-se uma base ortonormal , formada pelos vetores

28 CAPITULO 2. MOVIMENTO DE CORPOS RIGIDOS E TRANSFORMACOES HOMOGENEAS

12. Dados:

p1 =

4

1

−3

H1

0 =

1 0 0 −4

0 1 0 −1

0 0 1 3

0 0 0 1

Sendo que H10 e uma matriz de transformacao homogenea. Calcule p0 e interprete o resultado.

13. Dados:

p1 =

3

7

0

d01 =

10

5

0

R1

0 = Rz,30◦

Calcule p0 e desenhe o grafico desta transformacao, considerando os eixos z0 e z1 perpendiculares a folha.

Compare o resultado numerico ao seu desenho.

14. Calcule p0, conforme p1 e H10 abaixo:

p1 =

102

321

99

H1

0 =

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 transformacao homogenea H10 e o vetor p0, conforme os dados abaixo abaixo:

p1 =

1

5

10

R0

1 =

1 0 0

0 0, 6 0, 8

0 −0, 8 0, 6

d01 =

3

−1

1

16. Calcule a matriz de transformacao homogenea que representa uma translacao de 3 unidades ao longo do

eixo x, seguida de uma rotacao de 90 graus em torno do eixo z corrente e seguida de uma translacao 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 transformacao homogenea H que representa uma rotacao de α graus em x, seguido de

uma translacao de b unidades ao longo de x, seguido de uma translacao de d unidades ao longo de z, e

por ultimo uma rotacao em z de θ graus? Assuma eixos correntes.

19. Encontre a matriz de transformacao homogenea H10 descrita pelo desenho da figura abaixo.

Page 23: Movimento de Corpos R´ıgidos e Transformac˜oes Homogˆeneasfkuhne/files/sistrob/ap_cap2.pdf · A este sistema de coordenadas associa-se uma base ortonormal , formada pelos vetores

2.4. EXERCICIOS 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 peca a ser manipulada.

Pela figura, as seguintes transformacoes homogeneas sao conhecidas: HG0 , H

M0 e HF

M . Determine, atraves

da composicao de transformacoes homogeneas, a matriz que representa a transformacao homogenea da

ferramenta com relacao ao centro da garra.

21. A figura abaixo mostra tres sistemas de coordenadas que possuem transformacoes homogeneas entre eles.

(a) Determine as matrizes de transformacao homogenea H10, H

20 e H2

1;

(b) Mostre que H20 = H1

0H21.

22. A figura abaixo representa um robo manipulador com um sistema de coordenadas da base (O0x0y0z0) e

tres sistemas de coordenadas moveis, localizados nas juntas (O1x1y1z1, O2x2y2z2 e O3x3y3z3). Em cada

sistema de coordenadas, os eixos x, y e z estao representados por vetores de cor azul, vermelho e verde,

respectivamente. Determine as matrizes de transformacao homogenea H10, H

21, H

32 e H3

0.

Page 24: Movimento de Corpos R´ıgidos e Transformac˜oes Homogˆeneasfkuhne/files/sistrob/ap_cap2.pdf · A este sistema de coordenadas associa-se uma base ortonormal , formada pelos vetores

30 CAPITULO 2. MOVIMENTO DE CORPOS RIGIDOS E TRANSFORMACOES HOMOGENEAS

RESPOSTAS

1. Para sistemas correntes, 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 01/2

−√3/2 0

(b) Rotacao em x; 60◦ (π/3 rad);

(c) Rotacao em y; −90◦ (−π/2 rad).

5. (a)

p2 =

1

1, 6

3, 23

Page 25: Movimento de Corpos R´ıgidos e Transformac˜oes Homogˆeneasfkuhne/files/sistrob/ap_cap2.pdf · A este sistema de coordenadas associa-se uma base ortonormal , formada pelos vetores

2.4. EXERCICIOS 31

(b)

p3 =

3

−2

−1

6. (a) Rotacao em z; 180◦ (π rad);

(b) Rotacao em x; 90◦ (π/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 trigonometricas 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 tambem que (Rz,θ)−1

= (Rz,θ)T. Logo,

(Rz,θ)−1

=

cθ sθ 0

−sθ cθ 0

0 0 1

Logo, conclui-se que (Rz,θ)−1

= Rz,−θ.

Page 26: Movimento de Corpos R´ıgidos e Transformac˜oes Homogˆeneasfkuhne/files/sistrob/ap_cap2.pdf · A este sistema de coordenadas associa-se uma base ortonormal , formada pelos vetores

32 CAPITULO 2. MOVIMENTO DE CORPOS RIGIDOS E TRANSFORMACOES HOMOGENEAS

10.

Ry,αRx,θRy,−α =

c2α + cθs2α sαsθ cαcθsα − cαsα

−sαsθ cθ −cαsθ

cαcθsα − cαsα cαsθ cθc2α + s2α

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, 161/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

)Td01

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

Page 27: Movimento de Corpos R´ıgidos e Transformac˜oes Homogˆeneasfkuhne/files/sistrob/ap_cap2.pdf · A este sistema de coordenadas associa-se uma base ortonormal , formada pelos vetores

2.4. EXERCICIOS 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 variaveis simbolicas para realizar multiplicacoes deste tipo. Exemplo: syms ca

sa ct st b d cria 6 variaveis simbolicas correspondentes a cosα, sinα, cos θ, sin θ, b e d. Apos, basta

escrever as matrizes e multiplica-las.

Atencao: 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

)−1HMO HF

M .

21. (a)

d10 =

0

0

1

, R1

0 = Rx,90◦Rz,−90◦ =

0 1 0

0 0 −1

−1 0 0

, H1

0 =

0 1 0 0

0 0 −1 0

−1 1 0 1

0 0 0 1

d21 =

1

0

−1

, R2

1 = Rx,90◦Rz,90◦ =

0 −1 0

0 0 −1

1 0 0

, H2

1 =

0 −1 0 1

0 0 −1 0

1 0 0 −1

0 0 0 1

d20 =

0

1

0

, R2

0 = Rz,−90◦Rx,90◦ =

0 0 −1

−1 0 0

0 1 0

, H2

0 =

0 0 −1 0

−1 0 0 1

0 1 0 0

0 0 0 1

(b)

H10H

21 =

0 0 −1 0

−1 0 0 1

0 1 0 0

0 0 0 1

= H20

22.

d10 =

76

0

0

, R1

0 = Rz,90◦Rx,90◦ =

0 0 1

1 0 0

0 1 0

, H1

0 =

0 0 1 76

1 0 0 0

0 1 0 0

0 0 0 1

Atencao: resposta incompleta.

Page 28: Movimento de Corpos R´ıgidos e Transformac˜oes Homogˆeneasfkuhne/files/sistrob/ap_cap2.pdf · A este sistema de coordenadas associa-se uma base ortonormal , formada pelos vetores

34 CAPITULO 2. MOVIMENTO DE CORPOS RIGIDOS E TRANSFORMACOES HOMOGENEAS

23. Exercıcio 23.

Page 29: Movimento de Corpos R´ıgidos e Transformac˜oes Homogˆeneasfkuhne/files/sistrob/ap_cap2.pdf · A este sistema de coordenadas associa-se uma base ortonormal , formada pelos vetores

Referencias Bibliograficas

[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, Automacao industrial e sistemas de manufatura, Pearson Prentice Hall, Sao Paulo, 2011.

[4] Felipe Kuhne, 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] Joao Maurıcio Rosario, Princıpios de mecatronica, Pearson Prentice Hall, Sao Paulo, 2005.

35

Page 30: Movimento de Corpos R´ıgidos e Transformac˜oes Homogˆeneasfkuhne/files/sistrob/ap_cap2.pdf · A este sistema de coordenadas associa-se uma base ortonormal , formada pelos vetores

36 REFERENCIAS BIBLIOGRAFICAS