Introdução à RobóticaIntrodução à RobóticaPROF. ANDRÉ LUÍS MARQUES MARCATO
E-mail: [email protected] – Sala 206 – 2102 3460
Aula Número: 03CinemáticaCinemática
Composição de Matrizes de RotaçãoÂngulos de EulerTransformação Homogênea
Curso de “Introdução à Robótica” – Aula Número: 03 – Prof. André Marcato
Composição de Matrizes de Rotação(1)
• Para derivar as regras de composição de matrizes de rotação, é importante considerar a expressão de um vetor em três frames diferentes com origem comum O: Frame O-x0y0z0
Frame O-x1y1z1
Frame O-x2y2z2
• O vetor p descrevendo a posição de um ponto qualquer no espaço pode ser expresso em cada um dos frames acima por p0, p1, p2.
Curso de “Introdução à Robótica” – Aula Número: 03 – Prof. André Marcato
Composição de Matrizes de Rotação(2)
• Qual é a relação entre a expressão p2 do vetor p relativa ao frame 2 e a expressão p1 do vetor p relativa ao frame 1??
• Analogamente: Denota a matriz de rotação R do Frame i em relação ao Frame j21
201
0 pRRp
Curso de “Introdução à Robótica” – Aula Número: 03 – Prof. André Marcato
Composição de Matrizes de Rotação(3)
• Esta relação pode ser interpretada como uma composição de rotações sucessivas.
• Considere um frame inicialmente alinhado com o frame O-x0y0z0. A rotação expressa por R2
0 pode ser obtida em dois passos:1. Primeiro rotacione a frame dada de acordo com R1
0, o que a alinhará com o frame O-x1y1z1.
2. Então, rotacione a frame, agora alinhada com O-x1y1z1, de acordo com R21
fazendo com que fica alinhada com O-x2y2z2
Curso de “Introdução à Robótica” – Aula Número: 03 – Prof. André Marcato
Composição de Matrizes de Rotação(4)
• Observe que toda rotação pode ser expressa como uma seqüência de rotações parciais. Cada rotação é definida em relação a sua precedente.
• Frame corrente: Frame em relação a qual a rotação será realizada.
• Propriedade:
Curso de “Introdução à Robótica” – Aula Número: 03 – Prof. André Marcato
Sucessivas Rotação de Um Objeto Sobre o Frame Corrente (1)
Curso de “Introdução à Robótica” – Aula Número: 03 – Prof. André Marcato
Sucessivas Rotação de Um Objeto Sobre o Frame Corrente (2)
Curso de “Introdução à Robótica” – Aula Número: 03 – Prof. André Marcato
Rotações Sucessivas de um Objeto em Torno de um Frame Fixo (1)
Curso de “Introdução à Robótica” – Aula Número: 03 – Prof. André Marcato
Rotações Sucessivas de um Objeto em Torno de um Frame Fixo (2)
Curso de “Introdução à Robótica” – Aula Número: 03 – Prof. André Marcato
Composição de Matrizes de Rotação(5)
• Rotações sucessivas também podem ser constantemente referenciadas ao frame inicial.
• Neste caso as rotações são feitas em relação a um frame fixo.
10
Matriz de rotação do frame O-x1y1z1 em relação ao frame fixo O-x0y0z0
Matriz de rotação caracterizando o frame O-x2y2z2 em relação ao frame O-x0y0z0, a qual é obtida como uma rotação do frame 1 de acordo com a matriz
Curso de “Introdução à Robótica” – Aula Número: 03 – Prof. André Marcato
Composição de Matrizes de Rotação(6)
11
• Considerando a regra de composição de matrizes através de transformações no frame corrente, a rotação total pode ser calculada através dos seguintes passos:1. Primeiro, realinhe o Frame 1 com o Frame 0 através da
rotação R01
2. Então, faça a rotação expressa por ___ em relação ao frame corrente.
3. Finalmente, compense a rotação de realinhamento do passo 1 através da rotação inversa ____.
Curso de “Introdução à Robótica” – Aula Número: 03 – Prof. André Marcato
Ângulos de Euler (1)
• As matrizes de rotação fornecem uma descrição redundante da orientação do frame. R é composta por nove elementos (matriz 3x3) que não são independentes, mas relacionados por 6 restrições devido as condições de ortogonalidade.
Isto implica que três parâmetros são suficientes para descrever a orientação de
um corpo rígido no espaço.
Curso de “Introdução à Robótica” – Aula Número: 03 – Prof. André Marcato
Ângulos de Euler (2)
• A representação da orientação através de três parâmetros independentes constitui a chamada representação mínimarepresentação mínima.
• De fato, a representação mínima no espaço ortonormal requer m(m-1)/2 parâmetros. SO(3): 3 parâmetros SO(2): 1 parâmetro
Curso de “Introdução à Robótica” – Aula Número: 03 – Prof. André Marcato
Ângulos de Euler (3)
• Uma representação mínima de orientação pode ser obtida através da utilização de um conjunto de três ângulos:
ZYX (Roll-Pitch-Yaw Angles)ZYX (Roll-Pitch-Yaw Angles)roll (balanceio – )
pitch (empinamento – )yaw (cabeceio – )
• Considerando uma matriz de rotação expressando uma rotação elementar em torno de um eixo. Então, uma matriz de rotação genérica pode ser obtida pela composição de três rotações elementares seguidas, tomando o cuidado de não permitir duas rotações consecutivas em torno do mesmo eixo.
• 27 combinações total. 12 possíveis (descontando-se rotações consecutivas no mesmo eixo).
• CADA CONJUNTO REPRESENTA UMA TRIPLA DE ÂNGULOS DE EULER.• Dois conjuntos serão analisados: ZYZ e ZYX
Curso de “Introdução à Robótica” – Aula Número: 03 – Prof. André Marcato
Ângulos ZYZ
• É obtida pela composição das seguintes rotações elementares1. Rotação do frame de referência pelo ângulo em torno do eixo z; esta
rotação é descrita pela matriz ____.2. Rotação do frame corrente pelo ângulo em torno do eixo y’; esta
rotação é descrita pela matriz ____.3. Rotação do frame corrente pelo ângulo em torno do eixo z’’; esta
rotação é descrita pela matriz _____.
15
Curso de “Introdução à Robótica” – Aula Número: 03 – Prof. André Marcato
Ângulos ZYZ – Problema Inverso
16
tan
cs
scss
tan122222222
cs
cs
cscs
csssc
tan
cs
csss
Curso de “Introdução à Robótica” – Aula Número: 03 – Prof. André Marcato
Ângulos RPY (Roll, Pitch e Yaw)• É obtido através da rotação em relação a um frame fixo
anexado ao centro de massa do corpo.1. Rotação do frame de referência pelo ângulo em torno do eixo x
(yaw ou cabeceio); esta rotação é descrita pela matriz ____.2. Rotação do frame de referência pelo ângulo em torno do eixo y
(pitch ou empinamento); esta rotação é descrita pela matriz ____.3. Rotação do frame de referência pelo ângulo em torno do eixo z
(roll ou balanceio); esta rotação é descrita pela matriz _____.
Curso de “Introdução à Robótica” – Aula Número: 03 – Prof. André Marcato
Ângulos RPY (Problema Inverso)
A seqüência de rotações ordenadas XYZ em torno dos eixos de um frame fixo é equivalente à seqüência ZYX em
torno do frame corrente.
Curso de “Introdução à Robótica” – Aula Número: 03 – Prof. André Marcato
Ângulo e Eixo (1)
• Uma representação não mínima de orientação pode ser obtida com 4 parâmetros expressando a rotação de um dado ângulo em torno de um eixo no espaço. Seja o vetor unitário r de um eixo de rotação em relação ao frame de
referência: Ângulo de rotação em torno do eixo r:
Curso de “Introdução à Robótica” – Aula Número: 03 – Prof. André Marcato
Ângulo e Eixo (2)
• Primeiro alinhe r com z, através de uma seqüência de rotações – em torno de z e uma rotação – em torno de y.
• Rotacione por em torno de z.• Realinhe com a direção inicial r, com uma rotação em
torno de y e uma rotação em torno de z.
Curso de “Introdução à Robótica” – Aula Número: 03 – Prof. André Marcato
Ângulo e Eixo (3)
Duas representações diferentes levam a mesma matriz de rotação.
Curso de “Introdução à Robótica” – Aula Número: 03 – Prof. André Marcato
Ângulo e Eixo (Problema Inverso)
Curso de “Introdução à Robótica” – Aula Número: 03 – Prof. André Marcato
Quartenion Unitário (Unit Quaternion)
Parte Escalar do Parte Escalar do QuartenionQuartenion
Parte Vetorial do Parte Vetorial do QuartenionQuartenion
Curso de “Introdução à Robótica” – Aula Número: 03 – Prof. André Marcato
Quartenion Unitário (2)
Curso de “Introdução à Robótica” – Aula Número: 03 – Prof. André Marcato
Quarternion Unitário (3)
Curso de “Introdução à Robótica” – Aula Número: 03 – Prof. André Marcato
Transformações Homogêneas (1)
• Posicionamento de um corpo rígido no espaço: TranslaçãoTranslação: Posição de um determinado ponto do corpo rígido em
relação ao frame de referência. OrientaçãoOrientação: Componentes dos vetores unitários do frame anexado
ao corpo rígido (origem) em relação ao frame de referência.
Curso de “Introdução à Robótica” – Aula Número: 03 – Prof. André Marcato
Transformações Homogêneas (2)
• Considere um ponto P arbitrário no espaço p0 é o vetor com as coordenadas P em relação ao frame O0-x0y0z0,
o10 é o vetor descrevendo a origem do Frame 1 em relação ao
Frame 0. R1
0 é a matriz de rotação do Frame 1 em relação ao Frame 0. p1 é o vetor com as coordenadas P em relação ao frame O1-x1y1z1,
Curso de “Introdução à Robótica” – Aula Número: 03 – Prof. André Marcato
Transformações Homogêneas (3)
Curso de “Introdução à Robótica” – Aula Número: 03 – Prof. André Marcato
Transformações Homogêneas (4)
• Como a operação de translação não é linear, é adicionada uma coordenada extra em cada vetor:
• Com isto, a transformação de coordenadas pode ser através de uma matriz 4x4.
Curso de “Introdução à Robótica” – Aula Número: 03 – Prof. André Marcato
Transformações Homogêneas (5)