Você está na página 1de 20

Transformação de coordenadas

Objectivo
3 Conhecer as posições relativas dos diferentes
componentes do robô uns em relação aos outros.

3 Conhecer localização do referencial associado ao


elemento terminal para o poder controlar em
posição e velocidade.

3 Descrever e controlar os esforços em jogo entre o


robô e o meio ambiente.

3 Integrar no comando as informações dos sensores,


já que estes possuem um referencial próprio.
Robótica
Referenciais

Devem ser associados referenciais de


forma que os seus eixos e origens
correspondam a direcções e pontos
privilegiados para a execução de
tarefas.
Exemplos:
direcção de inserção, centro de gravidade das peças,
eixos das articulações, centros das ferramentas, etc.

Permite relacionar entre si elementos


que constituem o robô e os elementos
transportados.

Robótica
Transformação

Se considerarmos dois referenciais podemos definir a sua


posição relativa como o resultado de uma translação e de
uma rotação

Z W

R
T O’
U
O X V
Y

Robótica
Produto externo

Robótica
Ângulos de Euler e RPY

Por três ângulos correspondentes a três rotações sucessivas.

  de rotação em torno de OZ(roll)


  de rotação em torno de OY(pitch)
  de rotação em torno de OX(yaw)
Robótica
Definição da posição dum ponto P:

Os vectores OO’ e O’P têm de estar


expressos no mesmo referencial o que
não é normalmente o caso, impondo a
necessidade de rodar e transladar os
Punho
referenciais em utilização.
Ferramenta
Coordena
das Base

World nx sx ax px nx ny nz -(nxpx+nypy+ nzpz)


ny sy ay py sx sy sz -(sxpx+sypy+ szpz)
nz sz az pz T = a a a -(a p +a p + a p )
-1
x y z x x y y z z

0 0 0 1 0 0 0 1

Robótica
Referenciais ou molduras

• A – Referencial ou moldura A
• AP – Ponto P definido no referencial A
• A R – Matriz de rotação que descreve referencial B
B
relativamente a A

• A
BT-
Matriz de transformação que descreve o referencial B em
relação a A

Robótica
Relação entre dois sistemas de coordenadas – Matriz
de rotação

W
Versores dos eixos K*
O’
i* P
Z U
i de OX j*
j de OY k V
k de OZ O
i* de OU i j Y
X
j* de OV
k* de OW

Robótica
Representação de um ponto num referencial modificado

Coordenadas do  x
ponto no referencial OP =   = i*.i j*.i k*.i . x* = R. x*
primitivo  y i*.j j*.j k*.j y* y*
 z  i*.k j*.k k*.k z* z*
* *

 Xˆ B . Xˆ A YˆB . Xˆ A Zˆ B . Xˆ A 
Craig: BR= 
A

 Xˆ B .YˆA YˆB .YˆA ˆ ˆ
Z B .YA 
Matriz Rotação
 ˆ ˆ ˆ ˆ 
 X B .Z A YB .Z A Zˆ B .Zˆ A 

Robótica
Inversamente se quisermos saber as coordenadas no
referencial rodado
donde R-1 = Rt
[OP]* = x* = =RT. x
y* y
z* z
*
As colunas correspondem a versores dos
eixos de OUVW
expressos em OXYZ
i*.i j*.i k*.i e as linhas a versores dos eixos de OXYZ
R = i*.j j*.j k*.j expressos em OUVW
i*.k j*.k k*.k então:
A soma do quadrado dos elementos das
colunas/linha = 1.
O produto interno de duas linhas ou
colunas é 0.
A det [R] = 1
Robótica
Rotação  em torno de OX

W Z i coincidente com i*

j*. j = |j*||j| cos = cos
V
K* k
j*  j*. k = |j*||k| sin = sin
i=i* Oj Y
k*. j = -|k*||j| sin = -sin
X=U k*.k = |k*||k| cos = cos
restantes versores ortogonais

Logo um ponto p é expresso no referencial oxyz que rodou  em OX por:

i*.i j*.i k*.i pxyz = 1 0 0 . puvw


i*.j j*.j k*.j 0 cos -sin
i*.k j*.k k*.k
0 sin cos

Robótica
Outros casos simples

Rotação  em torno de OY
Z

W
pxyz = cos 0 sin .
puvw
0 1 0
U

O Y=V
-sin 0 cos
X

Rotação  em torno de OZ
Z=W

pxyz = cos -sin 0 . puvw


O sin cos 0
U
 Y 0 0 1

X V
Robótica
Translação pura:

Objectivo:
Relacionar as coordenadas do ponto P no referencial OXYZ com
as suas coordenadas noutro referencial O’UVW, não coincidente
com o primeiro [OO’], mas com a mesma orientação.
Neste caso a matriz R = , donde

O’ P
Z V
U
OP = OO’ + [O’P]
O
Y
X

Robótica
Transformação entre vectores de posição
escritos em coordenadas homogénea:

px px *
[OP]* R OO’
py py* onde T=
=T = T ------
pz pz* 1 [0] 1
1 1 *

Portanto:

px
py R [O’P] + OO’ [OP]
= * =
Translação pz 1 1
1
OP = OO’ + R. [O’P]*

Robótica
Têm-se assim as seguintes matrizes de transformação:

Translação pura:

 OO’
T=
[0] 1

R [0] Rotação pura:


T=
[0] 1

Translação + rotação:
Vector de posição da origem do
Matriz de rotação referencial transladado em relação ao
referencial fixo.
R OO’
T=
[0] 1

Robótica
Propriedades da matriz de transformação:
R OO’
Estrutura T=
[0] 1
R(3x3) p0(3x1) R - matriz de rotação
T= p0- pos. origem O’UVW em OXYZ
f(1x3) e(1x1)
f - transf. de perspectiva = (0 0 0)
e - factor de escala =1 robótica
Inversa Rt -Rt.p0
T-1  T (contrariamente a R) T-1 =
Versores de OUVW [0] 1
(eixos rodados)
nx ny nz nx ny nz -(nxpx+nypy+ nzpz)
nx sx ax px
sx sy sz sx sy sz -(sxpx+sypy+ szpz)
ny sy ay py
ax ay az T= n s a p T = a a a -(a p +a p + a p )
-1
z z z z x y z x x y y z z

0 0 0 1 0 0 0 1
Robótica
Transformações compostas:

Rotação composta:
pretende-se determinar a ordem por que é efectuado o produto das
matrizes de rotação das operações parciais

Rotação de um ângulo  em torno de OX seguido de uma rotação  em


torno de OZ seguida de uma rotação  em torno de OY. O produto de
matrizes não é comutativo e a matriz resultante será:

R  R y .RZ .Rx
1

Robótica
Rotações compostas em torno de OUVW

Considere-se que além da rotação em torno de OXYZ o sistema


de coordenadas OUVW roda em torno de si próprio:

Exemplo – A matriz de rotação que resulta de rodar o sistema


de coordenadas em torno de de Y de uma rotação  seguida de
uma rotação de  em torno em torno de OW e depois uma
rotação  em torno de OU:

R  R y .RW  .Ru
Robótica
Rotação Roll-Pitch-Yaw

Robótica
Ângulos de Euler

Robótica

Você também pode gostar