Baixe o app para aproveitar ainda mais
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
Compartilhar