• Nenhum resultado encontrado

Guião do Trabalho Laboratorial Nº 3 Criação do Programa no ABB RobotStudio

N/A
N/A
Protected

Academic year: 2021

Share "Guião do Trabalho Laboratorial Nº 3 Criação do Programa no ABB RobotStudio"

Copied!
19
0
0

Texto

(1)

ROBIN

Robótica Industrial

Guião do Trabalho Laboratorial Nº 3

Criação do Programa

no ABB RobotStudio 5.15.01

Homepage: http://www.dee.isep.ipp.pt/~mss Email: mss@isep.ipp.pt

Ano Letivo: 2013/2014

(2)
(3)

Criação do Programa

Sumário: Com este guião, pretende-se passar ao aluno a informação básica acerca do

funcionamento automático do robô. É neste guião que se apresenta a forma de sequenciar os movimentos do robô, assim como a definição das velocidades de movimentação, etc.

A criação dos paths é um passo fundamental para a criação de um programa para um robô no ABB RobotStudio. Os paths (caminhos ou trajetos) são sequências de instruções de movimento, sendo usados para fazer o robô mover-se ao longo de uma série de targets. Os paths são convertidos em procedimentos quando sincronizados com o controlador virtual.

O primeiro passo no desenvolvimento de um programa passa por testar se o robô consegue alcançar as posições críticas sobre a peça de trabalho. Se o programador estiver satisfeito com a forma como o robô atinge a posição, a estação está pronta para a programação. Caso contrário, deve-se continuar a ajustar o posicionamento dos targets ou tentar utilizar outros equipamentos. Os targets são definidos e armazenados como um conjunto de coordenadas relativas a um sistema de coordenadas denominado WorkObject. Quando o controlador calcula a posição dos eixos de um robô para chegar ao destino, ele vai encontrar muitas vezes mais do que uma solução (configuração) possível para a configuração dos eixos do robô, como se pode ver na Figura 1.

Figura 1 Diferentes configurações alternativas para um robô alcançar um target

Antes de se iniciar o estudo da criação dos paths propriamente dito, convém dedicar alguma atenção a um aspeto muito importante para o desenvolvimento de programas que se possam executar no robô sem problemas – a questão da configuração associada aos targets. As configurações de um target correspondem às possíveis soluções da cinemática inversa que o

(4)

robô pode adotar para se posicionar sobre um target. Para distinguir entre as diferentes configurações, todos os targets têm associado um valor de configuração que especifica o quadrante em que cada eixo está localizado.

Para targets que são ensinados depois de se deslocar o robô para a posição (efetuando o jog do robô), a configuração utilizada durante o deslocamento é a armazenada no target. Por outro lado, os Targets criados através da especificação ou cálculo das suas posições e orientações ficam com um valor de configuração padrão (0,0,0,0), que pode não ser válido para atingirem o alvo.

É muito provável que os targets criados de outras formas, que não depois de se deslocar o robô para a posição (efetuando o jog do robô), não possam ser alcançados na sua configuração padrão. Mesmo que todos os targets num trajeto (path) apresentem configurações validadas (configurações que tornam possível ao robô deslocar-se para o target), é possível (e muito provável!) encontrar problemas ao executar o path, caso o robô não se consiga mover de uma configuração para a outra. É bastante provável que isto ocorra quando um eixo efetua rotações superiores a 90 graus, durante os movimentos lineares.

Os targets que são reposicionados mantêm a sua configuração, mas as configurações já não se encontram validadas. Como resultado, os problemas descritos acima podem ocorrer quando se movem ou reposicionam targets.

Para resolver os problemas descritos acima, pode-se atribuir uma configuração válida a cada target e verificar que o robô se pode mover ao longo de cada path. É também possível desativar a monitorização das configurações dentro do programa, o que significa que o programa ignora as configurações armazenadas e “deixa” o robô encontrar configurações de trabalho durante a execução. Se isto não for feito da maneira correta, poder-se-ão obter resultados inesperados. Em alguns casos pode mesmo não haver quaisquer configurações válidas. As possíveis soluções para estes casos podem passar por reposicionar a peça de trabalho, reorientar os targets (se for aceitável para o processo) ou adicionar um eixo externo que movimente quer a peça de trabalho quer o robô, para aumentar a acessibilidade.

As configurações dos eixos do robô são indicados por uma série de quatro números inteiros, especificando em que quadrante de uma revolução completa se encontram localizados os eixos significativos. Os quadrantes são numerados a partir de zero para rotação positiva (sentido anti-horário) e de 1 para rotação negativa (sentido anti-horário).

(5)

Para um eixo linear, o inteiro especifica a distância (em metros) a partir da posição neutra em que o eixo está localizado.

A configuração de um robô industrial de seis eixos (como o IRB 140) pode ser parecida com: [0 1 2 1]

 O primeiro número inteiro (0) especifica a posição do eixo 1: encontra-se no primeiro quadrante positivo (entre 0 e 90 graus de rotação).

 O segundo inteiro (1) especifica a posição do eixo 4: encontra-se no primeiro quadrante negativo (entre 0 e 90 graus de rotação).

 O terceiro inteiro (2) especifica a posição do eixo 6: encontra-se no terceiro quadrante positivo (entre 180 e 270 graus de rotação).

 O quarto inteiro (1) especifica a posição do eixo x, um eixo virtual usado para especificar o centro do punho em relação aos outros eixos.

Ao executar um programa do robô, é possível escolher se se pretende monitorizar os valores das configurações. Se a monitorização das configurações estiver desativada, os valores de configuração armazenados com os targets são ignorados, e o robô irá utilizar a configuração mais próxima da sua configuração atual para alcançar o target. Se estiver ativada, ele só irá usar a configuração especificada para atingir os targets.

A monitorização de configurações pode ser ativada e desativada de forma independente para as instruções de movimento a que correspondem interpolações no espaço das juntas e no espaço operacional e é controlada pelas instruções de ação ConfJ e ConfL.

Executar um programa sem monitorização das configurações pode resultar em configurações diferentes de cada vez que um ciclo é executado: significa que quando o robô retorna à posição inicial, depois de completar um ciclo, ele pode adotar uma configuração diferente da original. Para programas com instruções de movimento linear isso pode levar a uma situação em que o robô se aproxima cada vez mais dos seus limites das juntas até que, eventualmente, não será capaz de atingir o target.

Para os programas com instruções de movimento ao nível das juntas isso pode causar movimentos imprevisíveis, curvilíneos e com oscilações.

(6)

Executando um programa com a monitorização de configurações ativa força o robô a usar as configurações armazenadas com os targets. Isto resulta em ciclos previsíveis e movimentos previsíveis. Em algumas situações, no entanto, como quando o robô se move para um target a partir de um ponto desconhecido, a utilização da monitorização de configurações ativa pode limitar a acessibilidade do robô.

Quando se desenvolve um programa em modo offline, deve-se atribuir uma configuração validada a cada target, caso o programa deva ser executado com monitorização de configurações.

Após esta introdução à problemática da definição correta dos targets para efetuar a programação de robôs, passa-se, de seguida, à criação de um programa.

Antes de criar um path para o robô, é necessário criar o modelo do mundo, ou seja configurar a estação, incluindo robôs, peças e utensílios de trabalho, em que o robô vai funcionar e definir um conjunto de targets para onde se pretende que o robô se desloque. Uma vez que estes procedimentos já foram treinados nas duas aulas anteriores, o aluno deverá começar por “abrir” a célula sobre a qual trabalhou na semana anterior.

O primeiro passo a efetuar, para a sequenciação de movimentos, será a criação de um path. Existem duas formas alternativas de criar um path, como se pode ver na Figura 2:

 Criar targets nas posições pretendidas e, em seguida, criar um path vazio (“Empty Path”) e inserir neste os targets criados;

 Criar uma curva que corresponda à forma pretendida para o path. Usar então o comando “AutoPath” para gerar uma trajetória completa, com targets, ao longo da curva criada.

Relativamente à segunda destas opções, quando se criam paths com base na geometria de objetos, os objetos geométricos que o RobotStudio usa são as curvas. Por exemplo, se se pretender que o robô execute um movimento ao longo da periferia de um objeto, pode-se primeiro criar uma curva ao longo da fronteira do objeto e, em seguida, gerar um caminho completo ao longo dessa curva, ao invés de procurar e criar manualmente os targets necessários. Se a geometria / modelo CAD da peça sobre a qual se está a trabalhar não contêm já as curvas, estas podem-se criar no RobotStudio.

(7)

Figura 2 Formas alternativas de criar um path

Como se pode ver na Figura 3, algumas das possibilidades presentes no ABB RobotStudio para criar curvas definidas por modelos gráficos de objetos, são as seguintes:

 Border around Bodies – este comando permite definir uma curva como sendo a fronteira entre dois objetos;

 Border around Surface – este comando permite definir uma curva como sendo a fronteira exterior de uma superfície;

 Border from Points – este comando permite definir uma curva como sendo a fronteira exterior de um, ou mais, objetos ou superfícies, definidos através da seleção de pontos limitadores das fronteiras pelo utilizador.

Neste ponto sugere-se ao aluno que procure criar curvas nos objetos de que disponha no espaço de trabalho, recorrendo às opções anteriores. Caso o aluno não disponha de objetos no espaço de trabalho deve criar ou importar alguns das bibliotecas existentes.

No caso de as curvas não estarem já definidas (por exemplo através das formas gráficas de objetos sobre os quais o robô vai trabalhar) é ainda possível criá-las de raiz, com a forma pretendida pelo utilizador.

(8)

Figura 3 Alternativas disponíveis no ABB RobotStudio para criar curvas definidas por objetos

Algumas das possibilidades presentes no ABB RobotStudio para criar curvas com diferentes formas geométricas, são as seguintes (ver Figura 4):

 Line;  Circle;

 Three Point Circle;  Arc;  Elliptical Arc;  Ellipse;  Rectangle;  Polygon;  Polyline;  Spline.

(9)

Figura 4 Formas alternativas de criar curvas com diferentes formas geométricas no ABB RobotStudio

Depois de criar as curvas, o aluno deve transformá-las em paths para o robô. Para o efeito deve selecionar o comando “Path from Curve” (ver Figura 2) para gerar uma trajetória completa, com os targets dispostos ao longo da curva criada. De forma a selecionar corretamente as opções necessárias a este comando, sugere-se a leitura das páginas 208 – 210 do manual do ABB RobotStudio 5.13.02.

Quanto à primeira alternativa para criar um path, isto consegue-se de duas formas: ou premindo o botão do lado direito do rato em cima da pasta “Paths” (ver Figura 5), que se encontra no separador “Paths & Targets”, e selecionando a opção Create Path, ou então na barra de ferramentas em cima, selecionando a opção “Path” e, dentro desta, a opção “Empty Path” (ver Figura 2). Na Figura 5, estão destacadas as opções para a criação do path, e na Figura 6 o aspeto do ABB RobotSudio com o path criado.

(10)

Figura 5 Opções para criação de um path

Figura 6 Path já criado

Como é possível observar na Figura 6, foi criado o “Path_10”, que será utilizado para a sequenciação dos movimentos que o robô efetuará. A forma de conseguir efetuar essa operação é

(11)

passando os targets para dentro da path, sendo que isso pode ser feito por arrastamento dos targets, ou então premindo o botão do lado direito do rato em cima de um target. Recorrendo a esta segunda opção, é mostrada a lista de opções disponíveis, conforme se pode observar (Figura 7). De salientar que a partir de um target, e usando esta funcionalidade do software, também se pode criar um novo path.

Figura 7 Adição de um target a um path, com a possibilidade de indicação da posição relativa em que o target deve ser adicionado ao path

Observa-se ainda na Figura 7 que é possível definir a posição que o target irá ocupar dentro do path. Este passo é da maior importância, dado que é a forma de introduzir a sequenciação de movimentos.

É, no entanto, possível alterar a ordem dos movimentos do robô, sendo essa alteração feita no path por arrastamento dos targets, para a posição desejada. Fica a cargo do aluno a otimização de movimentos para economia de tempo ou aproveitamento de velocidade, se assim o desejar. Salienta-se que em aplicações reais, a otimização é um fator crucial para o aumento da produção e poupança nos custos de fabrico.

Na Figura 8 é possível observar o aspeto de um robô e o respetivo path (linha representada a amarelo na figura), já com os targets na sequência pretendida para que o robô execute a tarefa pretendida de forma correta.

(12)

Figura 8 Robô com o path já sequenciado

De uma forma geral, ao arrastar os targets para dentro do path, a sequência criada, não será a que se pretende. Caberá ao aluno organizar a sequência dos targets. Após a sequenciação, premindo o botão do lado direito do rato em cima do “Path_10”, aparece uma lista de opções. Nesta fase do trabalho, salientam-se as opções “Configurations”, e dentro desta a subopção “Auto Configuration” (ver Figura 9), para atribuir uma configuração única a todos os targets de um path, e a opção “Move Along Path” (ver Figura 10), para testar/verificar o movimento do robô ao longo do trajeto criado. Estas funcionalidades estão também disponíveis a partir da aba “Modify” (ver Figura 11).

(13)

Figura 9 Funcionalidade “Auto Configuration”

(14)

Figura 11 Funcionalidades “Move Along Path” e “Auto Configuration”

Os paths podem ser interpolados ou lineares e/ou interpolados por secções, isto é, entre targets. Premindo o botão direito do rato em qualquer uma das instruções dentro do path, surge uma lista de opções e funcionalidades bastante extensa (ver Figura 12). Ao selecionar a opção “Modify Instruction” (opção sombreada na Figura 12), fica disponível do lado esquerdo uma janela com vários parâmetros passíveis de serem alterados (Figura 13).

Estão destacados dois parâmetros, nomeadamente “Speed”, que é auto explicativo, e o parâmetro “Zone”. Este último prende-se com o conceito de aproximação ao alvo. O robô poderá ter algumas diferenças nas trajetórias efetuadas mesmo entre dois (mesmos) alvos, quando está a repetir o ciclo do programa.

Consegue-se minimizar essas diferenças com o parâmetro Zone. Quanto menor for o número identificador, mais “apertada” é a trajetória possível para atingir o alvo.

É usual reduzir a velocidade no parâmetro Speed e “apertar” a trajetória com o parâmetro Zone, conforme a ferramenta se vai aproximando do alvo.

(15)

Figura 12 Opções disponíveis para configurar as instruções dentro do path

Figura 13 Parâmetros da funcionalidade “Modify Instruction”

O primeiro parâmetro deste menu, que aparece na caixa de seleção “Motion Type”, pode assumir dois valores, Linear e Joint. No caso do movimento Linear, a trajetória resultante é uma

(16)

interpolação linear no espaço operacional, correspondendo a uma trajetória retilínea efetuada pelo braço do robô. No caso de estar selecionada a opção Joint, a trajetória resultante é uma interpolação linear no espaço das juntas, sendo o movimento resultante da extremidade do robô (punho ou atuador final) “ondulante”. No entanto, após o robô executar a trajetória o resultado final será o mesmo, isto é, a ferramenta irá posicionar-se no alvo escolhido.

Salienta-se, no entanto, que nalgumas aplicações será necessário definir o movimento como Linear, enquanto para outras o movimento do tipo Joint será adequado.

Premindo novamente o botão direito do rato em qualquer uma das instruções dentro do path, e selecionando a segunda opção no menu que surge, “Insert Action Instruction” (ver Figura 12), aparece uma janela do lado esquerdo da aplicação que permite definir algumas instruções para que o robô execute ações no decurso da instrução de movimentação para o target. As ações que se podem programar podem ser do tipo de esperar algum tempo predeterminado, esperar a ativação de um sinal de entrada analógico ou digital, ou ainda ativar algum desses sinais.

Conforme se pode ver na Figura 14, foi inserida uma ação após a instrução de movimentação para o Target_10. Esta instrução de ação corresponde à ativação (colocação ao nível lógico 1) da saída digital “Close_Gripper”.

Depois dos paths estarem criados existem várias opções e comandos que facilitam a sua alteração (ver Figura 15). De entre estes, salientam-se as seguintes opções (ver páginas 96 – 98 do manual do ABB RobotStudio 5.13.02):

 Setting robot axis configuration for paths;  Reversing paths;

 Rotating paths;  Translating a path;

Compensating paths for tool radius;

Compensating paths for tool radius;

(17)

Figura 14 Programação de instruções de ação dentro do path

Figura 15 Algumas opções e comandos que facilitam a alteração dos paths

Como se mostra na Figura 16, Estão também disponíveis comandos que facilitam a tarefa de modificação da orientação dos targets (estes comandos permitem automatizar estas tarefas). De

(18)

entre estes, salientam-se as seguintes opções (ver páginas 99 – 101 do manual do ABB RobotStudio 5.13.02):

 Set normal to surface;  Align target orientation;  Copy / apply orientation.

Figura 16 Algumas opções e comandos que facilitam a alteração dos targets

Sugere-se que os alunos testem estas diferentes possibilidades nos paths que criaram, para verem o seu efeito.

No final deste guião considera-se que o aluno deverá ter entendido e será capaz de diferenciar os seguintes aspectos:

 Os targets são os pontos essenciais a partir dos quais se constrói o programa do robô;  O path, como o próprio nome indica, é o caminho, ou trajetória, que o robô irá executar:

o Existem várias formas de inserir os targets dentro do path; o É possível reorganizar o path;

(19)

o É possível executar testes simples de movimentação do robô.  As instruções dentro do path podem ser alteradas:

o Os parâmetros Speed e Zone devem estar bem assentes;

o O tipo de movimentação Joint ou Linear deve ser considerado.

 Podem ser inseridas instruções para ações que não são de movimento (pelo menos do robô):

o Existem várias ações disponíveis.

Bibliografia

[1] ABB, RobotStudio, Version 5.13,

http://www.abb.com/product/seitp327/78fb236cae7e605dc1256f1e002a892c.aspx [2] ABB—Operating manual RobotStudio 5.13, Revision B, ABB, 2010.

[3] ABB—Technical reference manual, RAPID Instructions, Functions and Data types, RobotWare 5.0, Revision E, ABB, 2007.

Referências

Documentos relacionados

Porém, não é comum encontrar uma abordagem mais abrangente onde os diversos aspectos dos sistemas de acompanhamento de alvos sejam contemplados e apresentados

Centro Caraívas Rodovia Serra dos Pirineus, Km 10 Zona Rural Chiquinha Bar e Restaurante Rua do Rosário Nº 19 Centro Histórico Codornas Bar e Restaurante Rua Luiz Gonzaga

De acordo com estes resultados, e dada a reduzida explicitação, e exploração, das relações que se estabelecem entre a ciência, a tecnologia, a sociedade e o ambiente, conclui-se

A relação dos regimes do imaginário com as respectivas estruturas e esquemas figurativos que levam às formações arquetípicas apontam para os arquétipos

No 8º dia após o último comprimido de DELLAX 20 e DELLAX 30 (ou seja, após os 7 dias da semana de intervalo), inicie a fita seguinte, mesmo que a hemorragia não tenha parado.

É importantíssimo que seja contratada empresa especializada em Medicina do Trabalho para atualização do laudo, já que a RFB receberá os arquivos do eSocial e

Caso jogue uma carta que não deva, se esqueça de gritar UNO cada vez que ficar apenas com uma carta na mão ou tente persuadir um dos jogadores a jogar uma carta que o favoreça, terá

E) CRIE NO SEU CADERNO UM TÍTULO PARA ESSA HISTÓRIA EM QUADRINHOS.. 3- QUE TAL JUNTAR AS SÍLABAS ABAIXO PARA FORMAR O NOME DE CINCO SUGESTÕES DE PRESENTE PARA O DIA