Baixe o app para aproveitar ainda mais
Prévia do material em texto
CENTRO UNIVERSITÁRIO UNICURITIBA ENGENHARIA ELÉTRICA ANDRE PACCELLI DE OLIVEIRA MARCEL BARBOZA DE SOUZA APOSTILA: ROBÓTICA INDUSTRIAL CURITIBA 1. Sumário 1 INTRODUÇÃO .......................................................................................... 3 2 ROBÓTICA INDUSTRIAL ......................................................................... 4 3 COMPONENTES DO ROBÔ .................................................................... 5 3.1 TEACH PENDANT (TP) ......................................................................... 5 3.2 ARMÁRIO – CONTROLADOR ROBO .................................................. 7 3.3 BRAÇO ROBÔ ....................................................................................... 8 3.4 EIXOS DO ROBÔ .................................................................................. 8 4 CONFIGURAÇÕES DO ROBÔ............................................................... 11 4.1 MASTERIZAÇÃO ................................................................................. 11 4.2 TOOL CENTER POINT (TCP) ............................................................. 13 4.3 OBJETO DE TRABALHO .................................................................... 16 4.4 PLANO CARTESIANO ........................................................................ 18 5 PROGRAMAÇÃO DO ROBÔ ................................................................. 20 5.1 LINHA DE MOVIMENTO ..................................................................... 24 5.1.1 TIPOS DE MOVIMENTO ................................................................... 24 5.1.2 PONTO DA TRAJETÓRIA ................................................................ 26 5.1.3 VELOCIDADE DE MOVIMENTO ...................................................... 27 5.1.4 ZONA DE MOVIMENTO ................................................................... 28 5.1.5 TCP ................................................................................................... 29 5.1.6 OBJETO DE TRABALHO ................................................................. 30 6 PROJETO E PROGRAMAÇÃO OFF-LINE ............................................ 32 7 QUESTIONÁRIO ..................................................................................... 35 8 CONCLUSÃO ......................................................................................... 36 3 1 INTRODUÇÃO Oferecemos essa apostila a pessoas que tenham interesse de aprender conceitos da robótica de uma maneira menos técnica e mais didática, com uma linguagem acessível com o objetivo de qualquer pessoa com qualquer nível técnico consiga compreender o que está sendo abordado. Fizemos essa apostila pensando em facilitar o primeiro contato com o robô, desde seus componentes até mesmo a linha de programação e lógicas utilizadas, para que quando se deparar com um, consiga identificar os itens e ler o que está acontecendo no robô, ou ao menos simplesmente conseguir procurar no manual com mais facilidade. A primeira parte é citada todos os componentes principais que há no robô, como se estivéssemos fazendo um “Unboxing” do mesmo, é o que vemos a partir do momento que abrimos a caixa e o que é necessário para ligar o robô e fazer a sua manipulação com toda segurança. Depois na segunda parte, partiremos para a compreensão da programação do robô, todos robôs utilizam linguagem de programação muito parecidas, aqui iremos nos basear na linguagem do robô ABB. Para finalizar iremos mostrar algumas coisas de simulação dos robôs, e até mesmo como podemos utilizar o software do robô ABB, o RobotStudio. Esse é um material que esperamos que ajude a compreensão de todos no assunto e que possamos passar um pouco do nosso conhecimento ao leitor. 2 ROBÓTICA INDUSTRIAL Tecnicamente robô é um dispositivo ou um grupo de dispositivos eletromecânico que ao ser programado realiza atividades a qual foi designada, ou seja, são ferramentas moldadas ou fabricadas que podem ser programadas para realizar algum tipo especifico de trabalho ou todas que o mesmo consegue desempenhar. Há vários tipos de robôs, ao pesquisar podem ser encontrados robôs que executam tarefas domesticas, como o limpador de chão, robôs de análise e proteção de softwares, brinquedos, entre outros. Na indústria, os mais comuns são os robôs como braço mecânico, como podemos ver na figura 1, esse tipo de robô pode ser utilizado em processo de solda, manipulação de ferramentas e peças (quando o robô pega algo e conduz para uma posição), pintura, aplicação de cola e seladores entre outros. FIGURA 1 – ROBÔ ABB IRC5 5 3 COMPONENTES DO ROBÔ O robô por sua vez quando retirado da caixa quando vem da fábrica é composto pelo braço mecânico (o manipulador, Figura1), o seu armário elétrico, também chamado de controlador e o Teach Pendant, que o controle do robô e onde o programador utiliza para editar programas e trajetórias. FIGURA 2 – ROBÔ “SAINDO CAIXA” 3.1 TEACH PENDANT (TP) O Teach Pendant ou comumente chamado no “chão de fábrica” TP, é um dispositivo que faz a interface entre o programador de robô à máquina, é por ele que há a possibilidade de visualizar as trajetórias do robô, edita-las, carregar novas 6 trajetórias, criar módulos de programação, configurar o robô etc. ou seja, tudo que envolve a parte de programação, configuração e gerenciamento de funcionamento pode ser feito pelo TP. Abaixo na Figura 3, é demonstrado alguns TPs das principais fabricantes de robôs: FIGURA 3 – TP ROBÔ Como pode ser notado, os TPs variam de fabricante para fabricante, mas todas tem a mesma finalidade. Umas das principais perguntas levantadas pelos iniciantes em robótica é em relação a programação, se é a mesma linguagem para todos robôs. Cada fabricante tem seu software e plataforma de programação com variáveis algumas vezes 7 especificas da marca, mas a linguagem em si de quase todos os robôs é semelhante a C++ e Python, onde seguem uma linguagem estruturada, o que significa que o programa é lido linha-a-linha. Mas esse assunto será abordado com mais ênfase no capito de programação. 3.2 ARMÁRIO – CONTROLADOR ROBO O armário do robô ou também chamado de controlador, é onde estão localizadas a CPU (computador do robô), modulo de gerenciamento dos eixos e de potência elétrica, módulos de entrada e saída, os quais são as que o robô recebe e envia sinais para um controlador externo, módulos de segurança do robô, barramento elétrico, contatores de potência, módulos de rede, etc. FIGURA 4 – CONTROLADOR ROBÔ ABB Depois de instalado, não há a necessidade de alterar nada no controlado, o qual geralmente já vem configurado e conectado como solicitado pela fábrica, não 8 sendo necessário à sua configuração. Os componentes como o TP e o braço mecânico são interligados ao controlador. 3.3 BRAÇO ROBÔ O braço mecânico é a parte que é chamada de Robô, e a que é executa as tarefas nele programado. Há tipos variados de robôs, o principal modelo encontrado na indústria é o braço mecânico, como o da Figura 5, com variados tamanhos e capacidade. Nele pode ser acoplado qualquer tipo de ferramenta respeitando a sua capacidade de peso suportado, cuja as ferramentas são acopladas na ponta do robô o qual é chamado de “flange” e ali feito a programação. FIGURA 5 – BRAÇO MECÂNICO ROBÔ ABB 3.4 EIXOS DO ROBÔ Os robôs são compostos geralmente por seis eixos, porem há modelos que são de apenas três eixos e os mais novos com sete eixos. Cada eixo auxilia o robô em sua movimentação e para movimentar os eixos é utilizado um servo motor, como se fosse os músculos do braço mecânico, é ele que fará com que as partesmoveis do 9 robô se mova, a figura 6 irá auxiliar a compreensão das partes do robô para entendimento dos eixos. • Eixo 1: Rotaciona em relação a base do robô; • Eixo 2: Inclina o braço inferior para frente e para trás; • Eixo 3: Inclina o braço superior para cima e para baixo; • Eixo 4: Rotaciona o braço superior em relação ao Eixo 3; • Eixo 5: Inclina o punho do robô para cima e para baixo; • Eixo 6: Rotaciona o punho do robô em relação ao Eixo 5; A figura 7 exemplifica o que foi explicado a cima em relação aos eixos FIGURA 6 – ESTRUTURA DO ROBÔ 10 FIGURA 7 – EIXOS DO ROBÔ Deixando claro novamente, o que fará com que os eixos se movimentem são os servos motores, é importante essa parte pois será necessário para a explicação da calibração. 11 4 CONFIGURAÇÕES DO ROBÔ Assim que o robô chega na indústria ele precisa ser configurado para a sua aplicação, de fábrica ele já vem com algumas configurações inicias de software e algumas variáveis padrões, entre ele o Objeto Zero e a Ferramenta Zero, iremos mencionar o que significa cada uma dessas informações mais adiante ainda nesse capitulo. Mas além disso o sistema do robô precisa entender qual é a posição dos seus eixos, qual a sincronização dos mesmo para depois ter a possibilidade de programar algo. A configuração do robô é bem simples, geralmente ao inicializar o robô pela primeira vez o próprio software te induz a um passo-a-passo, onde ali é inserido o número do endereço na rede (IP), qual robô está sendo utilizado, parâmetros dos eixos, entre outras informações que pode ser conferido no manual do fabricante. Logo depois é necessário fazer a Masterização do robô, criação de ferramentas (TCP) e Objeto de Trabalho, os quais será abordado abaixo. 4.1 MASTERIZAÇÃO A masterização do robô ou calibração do robô é uns dos passos mais importantes de sua configuração, pois é nessa hora que o robô sincroniza a parte mecânica, com a parte eletrônica e com a sua programação, ou seja, caso for feita a masterização de forma errada, todo o trabalho de ajuste de trajetória estará errado, pois sistema do robô entenderá que a posição definida é a posição zero de cada servo motor. O servo motor é um motor que consegue identificar a sua posição de rotação atual, ou seja, ele consegue informar a posição precisa em graus que o eixo está rotacionado, isso é de suma importância, pois o controlador do robô precisa saber a posição de rotação de cada eixo para calcular como fará o deslocamento de ponto a ponto na trajetória. A figura 9 mostra cada componente do servo motor, a ideia não é entender o servo motor por completo, porém é importante saber que o servo faz o eixo girar, agora imaginamos que ele consiga marcar uma posição inicial do eixo como se fosse dois riscos, um no eixo (parte móvel) e outro na parte fixa do componente como exemplifica a figura 8, e até dar um giro completo o controlador do servo consegue identificar a posição do risco da parte móvel, é assim que é feito a calibração do robô, 12 cada eixo (1 ao 6) tem suas marcações com uma tolerância (figura 10), essa tolerância mostra o giro completo do eixo do servo motor, ou seja, se for calibrado o robô fora dessas tolerâncias, o sistema entenderá que o zero do servo é em outra posição e com isso toda a trajetória assumirá o zero naquela posição, onde da próxima vez que for necessário fazer a calibração e for feita na tolerância correta, a trajetória inteira ajustada na calibração errada será perdida. FIGURA 8 – MARCAÇÃO EIXO (PARTE FIXA E MOVEL) FIGURA 9 – SERVO MOTOR 13 O programador precisa levar o robô na posição que se encontra essas marcações de cada eixo, essa posição de calibração é também chamada de posição zero, pois depois de calibrado, todos os eixos do robô se mostrarão como 0° (zero graus), por isso novamente, é importante que a calibração seja correta, pois se for errada, a posição zero graus do eixo, pode estar na posição que na verdade seria por exemplo 2 graus, havendo uma defasagem. FIGURA 10 – POSIÇÃO DE CALIBRAÇÃO Na figura 10, está mostrando onde estão as marcações e tolerâncias de cada eixo, sendo A para eixo 1, B para eixo 2, C para eixo 3, D para eixo 4, E para eixo 5 e F para eixo 6. Cada fabricante tem um modo de fazer a calibração, no caso o passo a passo para chegar até a página de calibração, porem todos seguem o mesmo padrão, levar até a posição zero e calibrar. 4.2 TOOL CENTER POINT (TCP) O Tool Center Point (TCP) em português Ponto Central da Ferramenta, é a informação da ferramenta que o robô irá utilizar, ou seja, ele pode usar uma pinça de solda, um Griper (Estrutura para manipulação de peças e objetos), ferramentas para 14 aplicação de material como cola, tinta, produtos de tratamento, etc. Como mencionado anteriormente, a maioria das informações do robô são números, e no caso do TCP a sua declaração (o modo que o robô sabe que a variável existe) é o valor da distância entre a Flange do robô até um ponto central da ferramenta definido pelo programador, como mostrado na figura 11, geralmente esse ponto é um lugar fixo de fácil identificação e que seja importante para ferramenta, no caso de uma pinça de solda o TCP seria em um eletrodo fixo, no Griper, seria em um piloto fixo, em um aplicador de material ou produto, na ponta da ferramenta. Na figura 11, a ferramenta utilizada é um aplicador de solda MIG, logo seu TCP será na ponta da ferramenta. FIGURA 11 – FLANGE E TCP Anteriormente foi mencionado que o robô vem de fábrica com algumas informações e uma delas é o Tool0 (Tool zero). O Tool0 é uma variável que se encontra na flange do robô (Figura 12). O valor que é declarado no TCP é a distância 15 entre o Tool0 e o Frame do TCP, no item de programação será abordado como é declarado o TCP, então ficará mais claro os valores, aqui o objetivo por enquanto é saber o conceito. Para saber se o TCP está no lugar certo, depois de ser declarado ou feito direto no robô, é de costume reorientar o robô (girar o robô) em relação ao TCP criado, todo o robô irá se movimentar em relação a esse ponto, ou seja, ao girar o robô, o ponto criado como TCP ficará parado e todo o resto se movendo. FIGURA 12 – TOOL 0 O TCP pode ser criado no robô utilizando o passo-a-passo de cada fabricante (ver no manual), onde são gravados no mínimo três posições com o ponto central (o qual será o TCP) sendo gravado na mesma posição de todas posições escolhidas, ou seja, ao reorientar o robô, o ponto que será o TCP não pode ficar em diferentes posições nessas gravações. Então o robô entenderá que o ponto que não se mexeu será o ponto central e ali terá os valores do TCP. E também o TCP pode ser declarado com informações teóricas, ou seja, vindas da programação Off-line, será citado como é feito um projeto robótico no ultimo capitulo, porem quando é feito o estudo inicial, todas as rotinas do projeto são feitas no computador e depois é passado para o robô e o TCP é uma dessas informações que são passadas para o robô, não sendo necessário fazer a gravação dos três pontos, o único detalhe é que nem sempre o 16 valor teórico corresponde ao prático, tendo uma divergência nos pontos, podendo ocorrer problemas na programação. Só dando um exemplo, se um TCP for declarado na mesma posição do Tool0, a sua declaração ficará com os valores inteiros zerados, sendo aproximadamente assim: TCP_Exemplo = [[0,0,0],[1,0,0,0]....] Sendo os primeiros três números no primeiro colchete referente a X, Y e Z e os quatro últimos dígitos no segundo colchete referente a orientação do frame em relação ao Tool. Lembrando que o modelo baseado é da fabricante ABB. 4.3 OBJETO DE TRABALHO O objeto de trabalho dorobô é outra informação muito importante, pois é a referência para haver uma trajetória, antes foi mencionado que na robótica tudo são valores de distância de algo para algo, ou seja, de um frame para outro, pois bem, na trajetória do robô é utilizado o objeto como referência onde o ponto que é o local que o robô se moverá sendo a distância entre o Objeto de Trabalho e o TCP, assim o robô se movimenta de um ponto a outro utilizando essas duas variáveis. FIGURA 13 – OBJETO DE TRABALHO 17 O objeto de trabalho pode ser fixo em um local definido como mostra na Figura 13, onde como pode ser notado é um frame (posição com três coordenadas X, Y e Z) que se localiza em um espaço. Assim como no TCP a declaração é feita com valores, porém quando o objeto é fixo esses valores são a distância da Base do robô até o frame do Objeto de Trabalho. FIGURA 14 – BASE DO ROBÔ Um dos valores mencionados anteriormente que já vinham da configuração de fabrica era o Wobj0 (Objeto Zero), o qual está localizada no base do robô, como ser visualizado na figura 14. Se um objeto fosse declarado no mesmo frame da base do robô a declaração ficaria aproximadamente assim: Objeto_Exemplo:= [........[0,0,0],[1,0,0,0]] 18 Lembrando que o exemplo se baseia na fabricante ABB, e que mais detalhes sobre declarações será abordado no capitulo de programação. Para criar o Objeto de Trabalho, assim como TCP pode ser feito de duas formas, a pratica e a teórica. Na forma prática é gravado 3 pontos no mínimo com o TCP conhecido, com isso o primeiro ponto gravado será a base do frame, é onde o frame será localizado, e o outros pontos seriam de referência para obter um plano (plano é como se fosse uma linha imaginaria quadrada formada a partir de três pontos), como pode ser conferido na figura 13, sendo Pontos 1, 2 e 3. O TCP nem sempre precisa ser móvel, ele pode ser fixo em alguma parte da ilha e o Objeto de Trabalho também não precisa ser fixo, podendo ser móvel no caso o robô movimentará, ou seja, nessa configuração o TCP utiliza o conceito apresentado acima do Objeto de Trabalho e o Objeto de Trabalho o conceito do TCP. 4.4 PLANO CARTESIANO Aqui será apresentado um pouco do plano cartesiano, que é a forma que o robô entende todas as localizações desde um ponto até o objeto utilizado. Basicamente o plano cartesiano tem três variáveis, X, Y e Z. Por essas variáveis o robô pode saber onde está localizado o ponto e o que ele precisa fazer para chegar até o mesmo. Foi abordado anteriormente que o TCP e o Objeto de Trabalho é a distancia de um ponto ao outro, sendo essa distância dada milímetros nas coordenadas X, Y e Z. FIGURA 15 – PLANO CARTESIANO 19 Como pode ser visto na figura 15, o plano cartesiano é composto pelos elementos X, Y e o Z que não aparece na figura, mas é perpendicular aos dois eixos, e cada um tem uma medida e com isso o robô se orienta do espaço atual que ele está até o ponto onde ele precisa ir. Para ajudar a não se esquecer qual é a orientação de cada eixo, X, Y e Z, utilizamos uma ferramenta muito prática que é “A Regra da Mão Direita”, onde cada dedo representa a orientação, como podemos ver na figura 16. FIGURA 16 – REGRA DA MÃO DIREITA 20 5 PROGRAMAÇÃO DO ROBÔ O funcionamento do robô se dá por linhas de programação que são lidas linha- a-linha, onde o mesmo irá executando as informações que estão em cada linha, essa leitura funciona semelhante a uma pessoa que lê um guia de instruções de destinos ao se orientar a se dirigir para algum lugar, sendo parecido com o seguinte: siga em frente por 200 metros, vire à esquerda, depois de 100 metros vire à direita. Na robótica basicamente tudo é resumido na distância de algo até algo, ou seja, o robô faz a leitura das linhas de programação onde nelas estão contidas informações que serão a distância de um ponto a outro ponto de referência. Para começar a entender como funciona a programação do robô precisamos saber como é a gestão do programa do mesmo, sabemos por enquanto que o robô lê linha por linha e que a trajetória nada mais é do que um conjunto de linhas que nela são indicadas a distância que o TCP estará em referência ao Objeto de Trabalho. Sabendo disso então agora iremos entender como o robô entra nas trajetórias, para isso será rapidamente explicado como funciona uma ilha robotizada. FIGURA 17 – ILHA ROBOTIZADA 21 A ilha robotizada é composta por vários componentes mecânicos, elétricos e eletrônicos, além do robô, todos esses equipamentos são gerenciados por um controlador chamado CLP (Controlador Lógico Programável), é por ele que passa todas informações da ilha para ser produzido algo. É o CLP que enviará um comando para o robô começar a trabalhar e qual trajetória ele deverá executar, e quando o robô termina uma rotina, o mesmo envia um sinal para o CLP, avisando que o trabalho já foi executado e que pode dar sequência na produção com outras etapas do processo. Inicialmente o robô fica em uma rotina padrão chamada de Main (Principal em português) aguardando um código do CLP para começar a realizar seu trabalho, a rotina é a tarefa que o robô vai cumprir naquele programa, podendo conter apenas instruções de movimento (MoveL, MoveJ) ou troca de sinais ou os dois casos. O robô pode conter várias rotinas e sub-rotinas (rotinas chamadas dentro de uma rotina), e essas rotinas são declaradas com um valor numérico, quando o CLP envia o código (que também é um valor numérico) o robô recebe esse valor e entra na rotina referente a esse número, por exemplo: o CLP envia o Código 11 para o robô, assim que o robô receber o código 11, ele entrará na Rotina 11 e fará tudo que tem naquela rotina e depois de terminar a rotina 11 volta para a Rotina Main. O fluxograma da figura 18 exemplifica o que foi explicado acima. FIGURA 18 – FLUXOGRAMA GESTÃO DE PROGRAMAS DO ROBÔ 22 Como pode-se notar na figura 17, ao ser inicializado o robô começa na Rotina Main, ao receber o código do CLP ele entra em uma Case que pode ser entendida como uma Rotina, ou pra facilitar como uma pasta que o programa do robô acessa, nessa Case, estão as Rotinas e Sub-rotinas que foram colocadas para o robô executar. Ao concluir todas tarefas e rotinas dentro da Case, o programa volta para o programa Main. Exemplo de Programas de Robô: Observação: as linhas com “!” são linhas comentadas, assim chamadas, onde o robô ignora essa linha e pula. ! Exemplo de um programa robô ! ! O ponteiro do robô ficará em MAIN até receber o código ! MAIN; ! Case1 ! ! Programa da Peça 1 ! DI_1; ! Rotina_Pega_Peça1; ! DO_1; D1_1; ! Rotina_Deposita_Peça1; ! DO_2; ! Endcase ! Case2 ! ! Programa da Peça 2 ! DI_1; ! Rotina_Pega_Peça2; ! DO_1; D1_1; ! Rotina_Deposita_Peça2; ! DO_2; ! Endcase 23 No exemplo do programa acima temos dois cases, Case 1 e Case 2. Se o robô receber do CLP o código 1 ele fará as rotinas do Case 1 referentes a Peça 1, caso receba o código 2, entrará no Case 2 referentes a Peça 2. Entendendo um pouco melhor o programa, ao receber o código, entrará no case, logo depois há uma informação chamada DI_1, que é um sinal que o robô precisa receber para continuar a leitura do programa, quando o sinal é uma DI (Digital Input), sempre é uma entrada, ou seja, um sinal que o robô irá receber e quando é uma DO (Digital Output), sempre será uma saída, um sinal que o robô envia ao CLP ou componente da ilha. Ao receber a DI_1 o robô entra em uma rotina chamada “Rotina_Pega_Peça1”, onde irá executar todos os pontos do programa e ao finalizar, enviará a DO_1 e irá ficar aguardando a DI_2 para depois entrar na rotina “Rotina_Deposito_Peça1”, ao finalizar essa rotina ele envia o DO_2, e como não haverá mais rotinas paraser executada, o ponteiro do robô voltará para o programa MAIN. A seguir será demonstrado como é programado a rotina: ! ! Exemplo de uma Rotina ! Proc Rotina_Pega_Peça1() ! !Programa de Pega Peça 1 ! MoveJ p1, v1000, z0, garra1, mesa1; MoveJ p2, v1000, z100, garra1, mesa1; MoveJ p_pega, v1000, z0, garra1, mesa1; MoveJ p3, v1000, z100, garra1, mesa1; MoveJ p5, v1000, z0, garra1, mesa1; ! Endproc ! ! Proc Rotina_Pega_Peça1() ! !Programa de Deposito Peça 1 ! MoveJ p10, v1000, z0, garra1, mesa3; MoveJ p20, v1000, z100, garra1, mesa3; MoveJ p_dep, v1000, z0, garra1, mesa3; MoveJ p30, v1000, z100, garra1, mesa3; MoveJ p40, v1000, z0, garra1, mesa3; ! Endproc ! ! 24 No exemplo acima, está citada a trajetória de pega e de deposito da peça 1, como pode ser notado, a trajetória de pega há 5 pontos, sendo o p1 e p2, pontos de aproximação para pegar a peça, o p_pega é o ponto que o robô pega a peça e os pontos p3 e p4 são pontos de afastamento. Semelhante é o que acontece na rotina de deposito. Repare que no começo há uma variável “proc” é assim que o robô entende que é uma rotina e ao lado está o nome da rotina, no final da mesma se encontra o “Endproc”, sinalizando o final daquela rotina. Como citado no exemplo os pontos são chamados de p1, p2...pn. logo após há outras variáveis que serão abordadas a seguir com mais detalhes, sendo a variável logo após o nome do ponto a velocidade (v1000), a zona de trabalho (z100), TCP (garra1) e Objeto de Trabalho (mesa1). Como pode ser observado, todas as linhas são seguidas com “;” onde é uma sintaxe de programação no robô ABB para que o mesmo entenda que é uma variável que deve ser lida e chamada, como linhas de movimentação, códigos, entradas e saídas, etc. 5.1 LINHA DE MOVIMENTO Como já abordado anteriormente, o programa do robô é lido linha-a-linha. Para o robô se movimentar o programa lê as linhas de movimento onde estão instruções de movimentação e informação do deslocamento, como a velocidade que o robô irá para o ponto, a zona que o robô irá utilizará, a ferramenta e o objeto utilizado. FIGURA 18 – LINHA DE MOVIMENTO 5.1.1 TIPOS DE MOVIMENTO Basicamente há três tipos de movimento: • MoveJ: movimento em Joint, onde o robô se move ao ponto utilizando o mínimo de eixos possíveis, tornando um movimento mais rápido porem 25 não linear. É utilizado geralmente em pontos que não precisam de uma precisão e que não colidam com nenhum objeto. FIGURA 20 - MOVEJ • MoveL: movimento Linear, onde o robô se move ao ponto em linha reta, com máxima precisão, isso faz com que a velocidade seja afetada, já que para corrigir a linearidade ele utiliza todos os eixos. Utilizado em pontos que necessitam de máxima precisão, onde há risco de colisão com objeto e onde o movimento necessita ser em movimento linear. FIGURA 21 – MOVEL • MoveC: movimento Circular, onde o robô se move em círculo, é gravado um ponto intermediário e um ponto final, assim o robô fará um semicírculo perfeito (metade de um círculo). Utilizado em lugares que precisam de formas circulares, aplicação de produto, etc. 26 FIGURA 22 - MOVEC 5.1.2 PONTO DA TRAJETÓRIA O ponto da trajetória é uma coordenada declarada no robô onde ao ser executada ele se dirige a essa localização, lembrando que esse ponto da trajetória é um valor em X, Y e Z, cujo é a distancia que há do Objeto de Trabalho, na qual o robô chegará com o TCP nessas coordenadas. A declaração do ponto de movimento é feita como mostrado na figura 23, lembrando que cada fabricante tem a sua forma de declaração, no caso está sendo usado a declaração do robô ABB, porem a maneira de se declarar é muito parecida ou até mais fácil de compreender. Os primeiros valores da coordenada como mostra a figura são de X, Y e Z em milímetros, em seguida no segundo colchete são os valores de orientação do robô no caso usando números quaternários, sendo Q1, Q2, Q3 e Q4, há modelos de robôs que usam RX, RY e RZ em graus para orientação. O como mencionado anteriormente, o valor do ponto é em relação a distancia do Objeto de Trabalho qual a orientação que estará nesse ponto, se estará inclinado, de ponta cabeça, na horizontal, etc. FIGURA 23 – DECLARAÇÃO DO PONTO 27 FIGURA 24 – EXEMPLO COORDENADA DO PONTO Para o exemplo da figura 24, se tem um Objeto de Trabalho indicado na posição que é mostrada e o Ponto 1 onde está a ponta do TCP, cujo o mesmo está a uma distância de 200 mm em X, 300 mm em Y e – 50 mm em Z, e a sua orientação está igual ao do Objeto de trabalho, ou seja, os eixos X, Y e Z do ponto 1 estão no mesmo sentido no Objeto de Trabalho. Na qual a declaração do ponto 1 no Robo ABB ficaria da seguinte forma: CONST robtarget P1:=[[200, 300, -50],[1,0,0,0],[0,0,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]; Podemos notar que há mais valores após os valores que abordamos acima (em negrito), onde os valores [0,0,0,0] são referentes a configuração do robô e o restante em relação a posição de eixos externos. A nível de programação básica não será abordado esses itens por necessitar de um domínio e uma convivência um pouco maior em um canteiro ou em programação, porém é valido saber o que significam esses valores, para uma necessidade saber procurar com mais eficiência. 5.1.3 VELOCIDADE DE MOVIMENTO A velocidade inserida na linha de movimentação é a que o robô irá assumir ao se direcionar para o ponto, sendo o valor em milímetros por segundo (mm/s), na figura 28 25 está sendo demonstrada uma velocidade “v1000”, onde o robô irá para o ponto p1 com a velocidade de 1000 mm/s. FIGURA 25 – VELOCIDADE 5.1.4 ZONA DE MOVIMENTO A zona de movimento é o valor da zona de proximidade que o robô terá em relação ao ponto, ou seja, o valor da zona determina um raio de distância ao redor do ponto, determinando uma área com o valor inserido na linha, que será em milímetros. A figura 26 demonstra como o robô se comporta em relação a zona quando há mais pontos no programa. A zona do ponto 2 é de 100 mm, ou seja, o raio será de 100 mm. FIGURA 26 – ZONA DE MOVIMENTO Um detalhe importante em relação a zona, é que quando há troca de sinais no meio da trajetória é sempre recomendado inserir uma zona chamada de “fine” (fino em português), seria o “z0” (Z zero), onde o robô não passa próximo ao ponto e sim em cima dele. Caso seja inserido um valor diferente de zero, o robô lerá a informação 29 posterior ao ponto assim que o TCP chegar a zona do ponto, no caso da figura 27, essa informação seria lida a 100 mm antes do ponto p2, ou seja, se o robô precisar soltar uma peça no ponto p2, ele soltará a peça a 100 mm de onde realmente deveria ter sido soltada, podendo causar problemas na peça e colisão com componentes do robô e da ilha. 5.1.5 TCP O conceito teórico do TCP já foi abordado anteriormente no primeiro capítulo, aqui dedicaremos a forma que é declarado o TCP no robô e quais são as informações nele inseridas e necessárias. FIGURA 27 – DECLARAÇÃO TCP Como pode ser conferido acima, na declaração temos os seguintes componentes: • Nome da Ferramenta: onde pode qualquer nome; • Status: Denomina se o robô segura ou não a ferramenta, “True” quando segura a ferramenta ou “False” quando não segura; • Coordenadas: são a distância que o TCP está da flange do robô; • Massa: É a massa da ferramenta em quilograma; • Centro de Gravidade: localização em milímetro do centro da gravidade da ferramenta; • Centro de Inercia As informações de Massa, Centro de Gravidade e Inercia é importante pelo fato que se o robô fizer um movimento com mais esforço do que ele calculaser necessário para a execução do ponto ele irá dar um erro chamado de Supervisão de Movimento, 30 que é a quando ele entende que pode haver colisão na movimentação, assim o robô para de executar o programa com o propósito de não danificar nenhum componente do robô e nem da ilha. 5.1.6 OBJETO DE TRABALHO Assim como o TCP, nesse capitulo vamos focar em como o Objeto de Trabalho é declarado. Na figura 28 pode-se ver com mais detalhes a sua declaração. FIGURA 28 – DECLARAÇÃO OBJETO DE TRABALHO Como apresentado na figura acima, o Objeto de Trabalho é comporto pelas seguintes informações: • Nome do Objeto de Trabalho: pode ser qualquer nome. • Status: consiste em duas informações, podendo ser “True” ou “False”, a primeira informação é em relação se o robô segura o objeto, ou seja, se o objeto acompanha a flange do robô. E a segunda informação é a se um sistema fixo de coordenada é utilizado (não será abordado nessa apostila pela complexibilidade). • Coordenadas Uframe: valores que representam a localização do objeto em relação a base do robô, esses valores são dados em milímetros. • Coordenadas Oframe: caso houver um valor, o objeto é realocado na coordenada declarada nesse espaço em relação aos valores de Uframe, logo o Objeto de Trabalho se localizará a essa distância do Uframe, ou seja, a posição do Objeto de Trabalho será a soma do valor das coordenadas do Uframe e Oframe. 31 Nesse capitulo pode-se aprender um pouco mais em relação a programação do robô, seu fluxo de programa e suas atribuições em cada linha de programação, assim se compreendido terás o básico para analisar um programa e poder editar e criar. 32 6 PROJETO E PROGRAMAÇÃO OFF-LINE Em um projeto industrial onde serão instalados robôs, é necessário que haja um estudo antes da instalação, onde se projeta a necessidade de automatizar um processo, os gastos que terá, a viabilidade e a definição dos trabalhos a serem executados em cada estação, com isso, é possível saber a quantidade de robôs que serão necessários na linha, o que cada um fará, quais dispositivos necessários para suportar o processo entre outras variedades. Sendo assim, é feito projeto em programas computacionais que simulam e auxiliam a ter todos detalhes bem alinhados, e atualmente esses softwares são capazes de demonstrar com exatidão os processos até mesmo a quantidade de tempo que é necessário para o robô executar. Muitas vezes as fabricantes tem o seu próprio software para simulação como a ABB tem o RobotStudio, a Fanuc o RoboGuide, entre outras. Porem um programa que é muito comum entre os projetistas e que trabalham com simulação é um programa da Siemens, o Process Simulate, onde nele é possível importar projetos inteiros feitos em outros softwares como o CATIA e AutoCAD e fazer a simulação. Então agora vamos falar do processo de um projeto ligado ao Programador de Robô em geral. Primeiramente, a fábrica começa o estudo de implementação de robô em sua linha de produção com os afazer que a estação terá, assim define-se quantos robôs serão instalados e o que cada um deles farão, esse processo é feito junto a definição de Lay-Out da ilha (desenho e organização da linha, onde cada componente irá ficar) com o estudo do alcance do robô e as possibilidades de cada um, ou seja, o estudo de qual robô pega uma peça por exemplo, qual a distância que ele terá do dispositivo, onde ele depositará a peça, qual a distância do lugar de deposito, se o robô consegue fazer as tarefas dele naquele local que foi definido no lay-out, também entram nessa etapa a definição dos dispositivos que compõem a ilha, isso é importante pois é nesses dispositivos que o robô trabalham e também a que define o desenho da ferramenta que manipulam as peças, é com essas informações que o programador de robô fará as trajetórias do robô se adequando a ilha. Na figura 29, há um exemplo do que seria o Lay-out de uma ilha robotizada. 33 FIGURA 29 – LAYOUT ILHA Com o Lay-out aprovado, a ilha é direcionada para o programador de robô que fará as trajetórias em cada um deles visando melhor eficiência no tempo de ciclo. Com as trajetórias e troca de sinais finalizado, o projeto entra no passo de “Comissionamento Virtual”, é onde é testado tudo que acontece na ilha pela simulação e com troca de sinais com o CLP, tudo o que acontecerá na ilha real é simulada na ilha virtual, até mesmo com os tempos de ciclo próximos da realidade. Na simulação é possível prever tudo o que pode acontecer na pratica, além do tempo de ciclo, possíveis colisões com dispositivos e outros robôs, acesso de trajetória, melhorias, edições de trajetórias, entre outras coisas que podem serem feitas no canteiro. Após a aprovação do comissionamento e tempos de ciclo o projeto segue para o canteiro onde será implementado todos os programas feitos na simulação, tanto de robôs quanto de CLP. Onde a simulação facilita e agiliza a implementação de novos projetos e alterações nas linhas que já existem, minimizando erros e deixando a parte de programação pronta muito mais rápido do que se fosse feito apenas no local, deixando essa parte pronta antes mesmo da linha ser instalada fisicamente na fábrica. 34 Se a simulação off-line for bem programada, as trajetórias em canteiro sofrerão poucos ou mínimas alterações ao serem descarregadas no robô. FIGURA 30 – LAYOUT NO PROCESS Na figura 30, temos a ilha no software de simulação (Process Simulate) do lay- out da figura 29. Contudo a simulação do processo facilita e agiliza muito no projeto fazendo com que o trabalho e os erros da instalação sejam mínimos. 35 7 QUESTIONÁRIO 1. O que é o robô? 2. Quantos eixos geralmente o robô industrial é composto? E qual a função de cada um? 3. O que é Masterização e para que serve? 4. O que acontece se a Masterização for feita de forma equivocada? 5. Como se faz a Masterização do robô? 6. Qual é a função do servo motor para o robô? 7. O que é o TCP? De um exemplo como é declarado o TCP. 8. O que são os valores das coordenadas do TCP? 9. O que é um Objeto de trabalho? De um exemplo de como é declarado o Objeto de Trabalho. 10. O que são os valores das coordenadas do Objeto de Trabalho? 11. O que é um ponto de movimento? Essas coordenadas do ponto são a distância entre quais frames. 12. Quais tipos de movimento do robô? Cite as suas características e a recomendação de uso. 13. Em relação a velocidade, o que significa o valor inserido por exemplo em “v1000”? 14. Em relação a zona, o que é esse valor? O que acontece se inserir um sinal após a linha com essa zona uma zona “z100”? 15. Cite apenas as etapas de um projeto onde serão inseridos robôs. 36 8 CONCLUSÃO A robótica é uma área que atribui várias engenharias em comum, sendo uma unificação da engenharia da computação, mecânica e elétrica. E é uma área que há muita curiosidade por parte de pessoas comuns e as que estudam tecnologia, porem o acesso a essa tecnologia é limitado e não há muitas fontes acessíveis com linguajar de fácil entendimento disponível. O intuito dessa apostila foi facilitar a compreensão da robótica industrial com assuntos pertinentes a pessoas que terão o primeiro contato com a robótica em campo ou em uma escola, para que a mesma não precise começar do zero seu conhecimento e para que tenha disponível um material a todo momento. Contudo foi possível abordar de forma simples conceitos pertinentes ao robô em geral, as suas configurações, sua lógica de programão e sua a programação em si e como funciona o projeto e ferramentas que são utilizadas para a elaboração do mesmo. Antes da publicação da mesma, a apostila foi lida por pessoas leigas a qualpuderam ter um entendimento simplificado dos conceitos abordados.
Compartilhar