Processamento de Alto Desempenho Aplicado ao Cálculo de Trajetórias de Manipuladores Danielle Passos de Ruchkys Orientador: Prof. Dr. André Riyuiti Hirakawa
Robôs Manipuladores Um robô industrial é um manipulador automático, servo-controlado, livremente programável, com múltiplos propósitos [ISO] Manipulação de peças, ferramentas e dispositivos especiais Robôs manipuladores apresentam um ou mais braços manipuladores, unidos por junções articuláveis que se movimentam através de atuadores
Robôs Manipuladores Espaço de atuação compreende todos os pontos possíveis de serem alcançados pela extremidade do manipulador
Robôs Manipuladores O tipo e o número de articulações definem o grau de liberdade associado ao manipulador
Robôs Manipuladores Manipulador é redundante caso o grau de liberdade seja maior do que a dimensão do seu espaço de atuação Dessa forma, cada ponto da trajetória pode ser alcançado por mais de uma configuração das articulações
Planejamento de Trajetórias Uma trajetória é composta pelo conjunto de coordenadas cartesianas dos pontos que a extremidade do manipulador deve percorrer
Planejamento de Trajetórias Um planejamento de trajetória visa especificar a movimentação necessária das articulações do robô para se percorrer uma dada trajetória Cinemática de Manipuladores Cinemática Direta Cinemática Inversa
Planejamento de Trajetórias Comum obter a cinemática inversa através da matriz Jacobiana inversa Se o manipulador é redundante, torna-se impossível a inversão da matriz Jacobiana, já que essa não é quadrada Isso dificulta a sua utilização para o cálculo da cinemática inversa Utilização de outro método
Planejamento de Trajetórias Método variacional, através do cálculo de aproximações sucessivas
Trabalho Correlato Denis Hamilton Nomiyama – mestrado Cada processador toma um ponto da trajetória e calcula os ângulos das articulações para chegar até esse ponto através de aproximações
Trabalho Correlato
Nosso Problema Exemplo para manipulador de 2 eixos Cada uma das articulações possui equações pra cada movimento de cada um de seus dois ângulos
Nosso Problema Como exemplo, mostraremos as equações abaixo A primeira, seria correspondente ao ângulo da articulação que está mais próxima da base g (l1 m1 Cos[f1[t]] + l2 m2 Cos[f1[t] + f2[t]]) – 2 l1 m2 r2 Sin[f2[t]] f1’[t] f2’[t] – l1 m2 r2 Sin[f2[t]]2 + (iz1 + iz2 + l12 m2 + m1 r12 + m2 r22 + 2 l1 m2 r2 Cos[f2[t]]) f1’’[t] + (iz2 + m2 r22 + l1 m2 r2 Cos[f2[t]]) f2’’[t]
Nosso Problema A segunda, seria correspondente ao ângulo da articulação que está mais distante da base g l2 m2 Cos[f1[t] + f2[t]] + l1 m2 r2 Sin[f2[t]] f1’[t]2 + (iz1 + m2 r2 Cos[f2[t]]) f1’’[t] + (iz2 + m2 r22) f2’’[t]
Nosso Problema Fazendo a comparação das duas: g (l1 m1 Cos[f1[t]] + l2 m2 Cos[f1[t] + f2[t]]) – 2 l1 m2 r2 Sin[f2[t]] f1’[t] f2’[t] – l1 m2 r2 Sin[f2[t]]2 + (iz1 + iz2 + l12 m2 + m1 r12 + m2 r22 + 2 l1 m2 r2 Cos[f2[t]]) f1’’[t] + (iz2 + m2 r22 + l1 m2 r2 Cos[f2[t]]) f2’’[t] g l2 m2 Cos[f1[t] + f2[t]] + l1 m2 r2 Sin[f2[t]] f1’[t]2 + (iz1 + m2 r2 Cos[f2[t]]) f1’’[t] + (iz2 + m2 r22) f2’’[t]
Nosso Problema Qual seria a idéia mais óbvia para a paralelização desse problema? Ela seria boa?
Nosso Problema
Nosso Problema Essas equações são basicamente formadas da mesma forma que as mostradas no exemplo: por operações com senos e cossenos Gostaríamos então de “quebrar” essas equações de forma a balancear os trabalhos de todos os processadores
Nosso Problema Nossa pesquisa vai em direção a olhar os operadores presentes nas equações e criar “padrões” de objetos através dos quais possamos “quebrar” essas equações de forma a equilibrar as cargas dos processadores