Você está na página 1de 154
MObULLORM FeRAgéo Modular Programagao de Robots Guia do Formando COMUNIDADE EUROPEIA INSNTUTO DO EVERESO | Fundo Social Europeu E FORMAGAO PRO' IEFP - Isa Ee Colecpic—- MODULFORM-Formagao Modular Titulo Programagéo de Robois Suporte Didéctico Guia do Formando Goordenagao Técnico-Pedagégica —_IEFP- Instituto do Emprego e Formagao Protissional Departamento de Formagao Piotissional Direczac-de Servigos de Recursos Forativos Apoio Téenico-Pedagigico -_ CENFIM-Centrode Formagio Profisionalda indistria Motalrgica e Metaiomecanica Coordenagode Projecto 1S. Instituto de Soldadura e Qualidade Direcgaode Formagao ‘Autor Eng. OctévioLopes Capa SAF - Sistemas Avangados de Formagao, SA MaquetagomeFotocomposigac ‘SQ Alexandre Pinto De Almeida Rovisae OMNIBUS, LDA Montagem —_UNIPRINT,LDA Imptessaoe Acabamento NIPRINT, LDA Propriadade _Institulo do Empregoe Forma Profissional Av José Malhoa, 11 1088-018 Lisboa 1."Edigdo Portugal, Lisboa, Novembro de 2000 Tiagem 1 000 Exemplaies DepésitoLegal 1869800 WAN 972-7R611-0 Conygn. 2000 Toave 08 ditotos reservados = NNonuma pare desta pusieselo pode ser reproduzisa ou tarsi por qualquer forma ou process "ero consti prvi, por excite, 4 IEF rons apvada pla Sxareva Coren Funnagaa Pfr Engrge ceSransade pao Esnds Pago © ‘oa Uns Europa, aves FOE” ‘cavTno DE DOCUMENTA (uiadoFamando tEFP - Isa Programagao de Robots ‘Opresente modulo aborda um conjunto de matérias a transmitirao formando, constituindo, assim, para que este fique na posse de conhecimentos que the si * Identiticar os principios hasions reterentes a pragramagio da Robots. saber Descrever as funcdes do sistema operative e dos programas de aplicacao, Caracterizaro controle adaptative, Executar programage por aprendizagem, permitam aprender os conceitos basicos da programagao de robots, de forma a a Ese pragremagio com recurso as Inguaers de programa do EBD aplicagao irais corrente. Executar Programagao de sensores. ‘GuadeFomanio Programagae de Actividades 1 Avaliagdo Sibliogratia Caso de astudo ou exempla Destaque Ingice Objectives Hecurso a daposiives ou transparéncias Rocurso @ somvaro Recuree a videogeama Resume Robots IEFP - ISQ indice Geral eo. INDICE GERAL 1-INTRODUGAO E OBJECTIVOS © Inrodugao le * Tipos de programas para robots 2 * Necessidade de programagao dos sistemas operatives ls + Porqué a programagao oe robots 4 * futuro na programagao de robots is | * Resume le © Actividades /Avaliagao Ww M-CONTROLO ADAPTATIVO * Introdugao aos conceitos de controlador, etroacgdloe orogresso IZ. | ‘© Estudo de um sistema de controlo us | ‘* Metodolagia de progecto de controladores las © Controle aplicado &rebética lar * Resume 120 * Actwidades /Avatiagso li2t Ill- PROGRAMAGAO POR APRENDIZAGEM * Introdugaio m2 ‘+ Metodos de programago por aprendizagem me + Programagao de tragectérias no espago we) * Inlexpotagao de movimento uso | * Limitagées dos métodos de aprengizagem uaa * Resume hae © Actividades /Avatiagsio ma7 Programdefo de Robots IG. 1 (GuiadoFomendo indice erat IEFP - Isa IV- LINGUAGEM DE PROGRAMACAO DE ROBOTS Occonceito de inguagem de um Robot © Aslinguagens de programagao * Alinguagem de programagéo INFORM * Linguagem SRCL ( Simens Robot Control Language) © Linguagem Hitachi ( Robots M6100 ) * Alinquagem Rapio © Resume © Actividades /Avaliagao V- PROGRAMACAO INDIRECTA © Intugao | Programagao textual © Programagao grafica © Resume Actividades /Avaingso VI- PROGRAMACAO DE SENSORES | © Introdugao * Sensores e soldadura * Sensores de contacto © Sensor de arco eléctrico © Resumo + Actividades /Avaliagao BIBLIOGRAFIA a M2 v3 vata 2s vss Ivaa vas ve va ve v22 v2 we vie vis ving v.28 vize B41 ida doForand erat Introdugao e Objectivos IEFP « 1SQ OBJECTIVOS [No tinal desta Unidad Ternatica, 0 formando deverd estar apto a: * Descrever os conceltos basicos da programagao de robots: ~ Fungaes do sistema operative e: ~ Programas de apicagac. TEMAS © Introdugao © Tipos de programas para robots © Necessidades de prograragao dos sisternas operatives, © Porqué a programagaa de robots © futuro na programagte de robots © Flesumo © Actividades /Avaliagae iia Fomando Introduetio ¢ Objectives e & | | Programagao de Robots 1.4 Introdugdo e Objectives: 1.2 JEFP - 18a INTRODUGAO, ‘Sendo verdade que o correcto funclonammento de todos os subsistemas do robot (Fig.L.1.) é fundamental para o seu desempenho, nao ha duvida nenhuma de ue o subsistema software ¢ ainda mais importante. Limitages na linguagem, algoritmos fracos e ertos no cédige so sempre responsaveis por frustrantes | problemas de desempanho do robot qua, sem software, nao é mais que um conjunto de mecanismos, sensores e acluadores sem nenhuma finaldade objectiva, Os programas de computador permitem a integragao de todos estes | componentes num robotintegrad, um robot com tlexbiidade para desempenhar uma grande variedade de tarefas, dado que pode ser rapidamente reprogramado, ‘Subsistema: Processo Bragas Punhos Veicvlas —Unioes, Freios Articulagdes Engrenagans Ambiente, pessoas, fébrica Tarefas a serem realizadas Outros robots @ mecanismos ‘Subsistema: Eléctico ‘Subsistema: Sensores Motores, computadores lntemas —-Extemos interfaces, comuricagses Posigao iso sensores, Velocidade Tacto Torsio Voz Foca Quimico, eC ‘Subsistema: Controlo. Modelos de Mecanismos Modelos de Processos “Transtormagaio de Coordenadas Ciclos de Controlo ‘Subsisiema; Planeamento Percepgao, Sensores, Coiisdes Modelagao e Pianeamenta da Célula Modelagac ¢ Planeamento das tarefas, Planeamento das trajectorias Planeamento cas Tarefas das Garras Fig, 1» Subsisiomas de wm soot ® Programagao de Robots ‘Componente Cientite-Teenologica ‘GuiadoFomand IEFP - ISQ Introdugao © Objectives TIPOS DE PROGRAMAS PARA ROBOTS Qualquer robot necessita de um programa para Vira ser executado pelo seu ‘controlador (tal como um computador necessita de programas para realizar determinada tareta). Basicamente, padem dividrse 0s programas para robots emdols grandes tipos: © ‘Sistemas operatives, * Programas de aplicagao (aplicativas). Os sistemas operativos, por vezes designados “programas de controlo", dizem a0 robot como executa’ alguns movimentos, tal como a abertura au fecho de uma garra ou a movimentaeo do manipuladox. Por outras palavras, o sistema operative fornece a intelgéncia que permite ao robot receber, enlender e executar a tarefas que Ihe sdo atribuidas. ‘Quanto 20s programas de apicagao, cu programas de ulzacor, estes fomecem a0 botasinformagees relatvas ac momento em que delerminadas operagBes devem ser realizadas com vista @ coneretlzarfatelas espectioas Estes programas contém dades ce posi, mavimentos geométraos e velocidades doosncs,istruyoes ds feramentas, assim como as nsttupdes de itetac= comascultos cispostvas penterices, NECESSIDADES DE PROGRAMAGAO DOS SISTEMAS OPERATIVOS Os sistamas operatives dos robots consistem em programas (normaimente fornecidos pelo fabricante) que os tornam de utlizagao faci. Quantes mais assos e processos de programagao puderem ser realizados ou suportados. pelo sistema operativo, menores sero o erros comatides durante a rogramagao de aplicatvos. (Os programas do sistema operativo incluem a inteligéncia para mover 0 ‘manipulador, suportando, ainda, programas para ensino ou treina do robot, assim ‘como o programa para comunicagao com computadores extemos. Normaimente, os sistemas operatives dizem ao robot como realizar um ‘movimento ou aogo, mas nao quando o deve fazer. Os sistemas operativos ‘estdo coditicadas numa parte da meméria ROM, sendo 0 seu contetio realizado pelo préprio fabricante e nao pode ser modificado, embora parte do sistema ‘operalivo possa ser fornecido em disquetes. Adicionalmente ao movimento do robot, 0s sistemas operatives devem ainda ‘suportar outros dados de entrada e de sala, ‘Componente Cleniico-Teenoglea Programazdo de Robots 1.3 ‘GuiadoFemardo Introdugao @ Objectives 1.4 IEFP - 1SQ PORQUE A PROGRAMAGAO DE ROBOTS a Programagie de Rebots A viabilidade econémica do um sistema robotizaco 6, por diversas vezes, determinada pelo tempo necessario a programagao do robot para a execugao de uma determinada tareta, O tempo de programagao @ uma fungao das | caracteristicas da linguagem utiizada, da laciidade ou da dificuldado de | coditicagao nesta linuagem, assim como da capacidade de programagaoe de teste, petmitida pelo sistema utlzado. A programagao de robots est ligada & observagao e manipulagao de objectos a trés dimensGes no espago. Esta necessidade de lidar directamente com | objectos tisicos o que diferencia a programagao de robots da programagao cientifica @ das aplicagées intormatizadas em engenharia, Na programasao Cientifica, os programas tratam varidveis que existem somente dentro do | computador e, assim, o tempo de execueao 6 s¢ uma questao de conveniéncia, 1a sence muito importante se o utlizacor tiver que esperar um pouce pelos resultacos. Contrariamente a0 que se acabou de atirmar, um programa para robot ocupa-se de variaveis cujos parametras sac determinados por acontecimentos externes. a0 computador, pelo que o tempo de execugao é muito critico, AAs linguagens de programagao de robots sao utiizadas com dois abjectivos: * Definira tareta que o robot precisa de realizar, * Controlare robot contorme ele vai realizando a tarefa cetinica, Anecessidade de observar estes objectivos esté na origem de um contlto na | concepedo da linguager: Deverd 0 ambiente de programagao ser concebido de forma a aumentar a produtividade do programador ou o desempenho do programa? E ébvio que se pretende abter amizos os resultados, o que nem sempre é um objectivo tac Um dos processos de resolugdo deste problema é através da utlizagdo de iferertes linguagens nas ciferentes nivels de definigao da tarefa, Cada linguagem pode ser concebida de mado a encontrar a relagao produtividade/cesempenno mais adequada ao nivel da execucao. Contorme se vai descendo no nivel de definiao, as caractaristicas de cesempenho vao melhorandio consideraveimente. ‘Uma outra abordagem do problema poderd ser ieita através da separagio do ‘software de controlo do software de planeamento de tarelas, Como em robética, ‘a maior parte dos sistemas recorrem a uilizagao de dversos processadores interigados através de uma rede, podendo um dos processadores ser destinado 20 planeamento das tarefas. Por vezes, este processador possui, ainda, um. ‘isco rigido para armazenagem de informagao, assim como uma interface grafiea ‘como ulizador. Componente Cientiie-Teenolégea GuiadoFomanto IEFP - Isq Introdugao @ Objectives © FUTURO NA PROGRAMAGAO DE ROBOTS: A programagao de robots consiste em ensinar ao robot o seu ciclo de trabalho, ‘envoivendo a trajectéria que deve percorrorpara movimentar peas ou ferramentas, de um lugar para outro no espago de trabalho. Estes movimentos so trequenternente ensinados, mostrando ae robot o movimento e registando esse ‘movimento na sua meméria, Porém, existem partes do programa que no lenvolvem nenhum movimento do brago, Estas micluem © Interpretagao dos dados de sensores € de outros dispositivos; © Actuagao da ferramenta; © Envio de sinais para outros equipamentos na célula de trabalho; Recolha de dados de outros dispositivos; ‘* Comunicagao com computadores para receber instrugdes ¢ envias dados © Informagdes do produgao. * Realizacao de calculos ¢ tomadas de decisGes sobre o cielo de trabatho. Muitas destas actividades so mais facilmente transmitidas ao robot através ‘do recurso a linguagens espectticas de computador. No futuro, estes robots poderdo vit a ullizar tecnologia avangada, com teramentas versateis © sensores sotisticados, capazes de reagir a comandos e alto nivel, interpretando esses comandos e agindo sobre eles. Para isso, Jrdo possuir mais inteligéncia que as maquinas de hoje, entrando-se, desta forma, no campo da inteligéncia artical ‘Componente Cintee-Ceenoligica Programagao de Robots 1.5 ied Fomando Introdugso ¢ Objectives IEFP - ISQ RESUMO directamente com as sistemas operativos dos robots. No entanto, para o seu nivel de qualidade seré determinante o grau de facilidade de programagao e de utilizagao do robot, assim como, as limitagées proprias do robot. No entanto, 0 ue ¢ afinal o sistema operative e quala sua importancia para o utiizador? Eo ue se entende por programas de aplicagao? Todas esias questdes foram ‘esclarecidas nesta Unidade Tematica, el | A maioria dos ulilizadores de robots nunca trabalharam ou viro a trabalhar Robots ‘Componente Cientiieo-Teanoligies (Guia Fomands IEFP + 1SQ Introdugao © Objectives e ACTIVIDADES / AVALIACAO 1. Quais as ciiculdades normalmante encontradas no subsistema de software para. correcto dasempanho de um robot? 2. Quala tinalidade dos sistemas operatives? 3, _Aslinguagens de programagao de robots sAo utlizadas com dols abjectivos.. Quais? 4, Qual a finalidade dos programas de aplicagao? 5, Identiique as razbes que diferenciam a programago de robots da programagao cienttica @ das aplicagdes informatizadas em engenharia, 6. Na programagao de robots, existem partes do pragrama que nao envoivem | nenhurn movimento do brago, Ident fique algumas destas. Componente Prética ‘Gua Fornando Controlo Adaptativo TEFP +180 i, Controle Adaptative e OBJECTIVOS & {No final dasta Unidade tematica, oformando deverd estar apto a * Descrever os coneeitos de controlo; * Caractorizar sistemas de controlo; © Descrever as fungBes dos sistemas de eontrolo: * Descrever 6 comportamento dos sistemas de controlo; ‘* Roconfreoe 0s tipos de controlador, suas vantagens elimitagbes: * Descrever as metedologias de concepeae de contretadaras: * Desorever a’ aplicagdes do controle & robstica, TEMAS * Introdugao aos conceitos de conttolar, retroacgao e progresso © Estudo de um sistema de contralo '* Metodologia de projecto de controladores ‘© Controlo aplicado & robética © Rosumo + Actividades / avaliagao Programago de Robots (Gia YoFomando Controlo Adaptative IEFP + 1SQ INTRODUGAQ AOS CONCEITOS DE CONTROLADOR, RETROACGAO E PROCESSO. | O que é 0 contralo? A detinigiio mais intutiva é: © controlo @ a actuagao sobre um procasso de mode a que ele tenha 0 comportamento desejado. Porqué a nacossidade dos sistemas de controlo? Quando se pretende que um processo nao tenha intervenge humana para corfgirfactores que Ihe sd aleatstios, quando essa intervencao nao ¢ possivel ‘ou ndo produz resultados satisfatérios, & necessdriaa ullizagao de um sistema de contralo, ‘Vamos agora introduziralguns conceitas fundamentals para a compreensao da ogo de controlo: | O que é um processo? i | Chama-se processo (cu sistema) a0 canjunto do entdades que influenciam a varidvel que se pretende controlar. ‘Sistema de entasa Proosaso Sioa do sala (esting | (ou sisterna) (resposta) ® Figura 11 ~ 0 Processo Um processo pode servisto como ura maquina que recebe comandos, ¢ reage | de acordo com as suas caracteristcas. | Ocestudo ¢ a obtengéo do compartamanto deum sistema é uma tarefa muito | complexa, o que resulta em sérias limitagdas a previsdo do seu comportamento, ' Arepresentagaio matematica de um dado proceso € sempre uma aproximagao da realidade. E impossivel prever com uma corteza de 100% 0 comportamento de um dado processo, Por exempio, ainda ninguém consagulu obter uma | tepresentagtio do modelo de saida dos ntimeros do totolota! 1.2 Programagao d@ Robots Componente Cientitiea-Tecnolégica hia do Fomarco 1EFP Controle Adaptative * O que é na pratica um controlador? 'Na pratica, un controlador & um conjunte de aparelnos electrénicos que recolhem informagao sobre o processo e a utlizam para *comandar” os actuadores do sistema, O que 6 um actuador? Por actuador entende-se a componente do sistema que é capaz de alterar as suas caracteristicas. Esta é uma componente essencial de um sistema de controlo, pois se no pudermos influenciar o seu comportamento, ndo ‘conseguiremos controla-ic, Nao é possive! controlar 0 estado do tempo, O que é a retroacgéo? A retroacgio é uma técnica comum a todos 0s sistemas de controlo, @ consiste nna observapao da varidvel a controlar e a sua utli2ay0 para ‘corgi’ a variavel de comand®, Quando © sistema se encontra sob o feito da retfoaccaa diz-se que esta em | maha fechada, caso contrario esta em malta aberta. O exemple I-1. associa os conceitos introduzides a0 mais eficaz sistema de ‘controlar 0 corpo human, cerebro um sistema de conoo que utl2a a rtroacpto para executan por | ‘exemple, 08 movimentos do corpo. ‘Quando um inaviduo desejacoiccar um obecto numa determinada posig20, 0 cérebro recebe a imagem do abject, sabe onde & que o deve posicionar & ora 08 metros €e modo a cumpria arta Posigto ‘cere op] wassios p[Pacceotieto]__y Fosigéodo seeds (oniroiador tatuasores) (Processo) ‘Objet (sensor Figura 12 - 0 edrebro como sista de contate ‘Componente Cientiie-Tecnolégica Programayao de Robots Il. 3 ‘iia daFomando Controle Adaptative JEFP - Is ‘Assim, 0 cérebro comporta-se como 0 controlador, 0 processo em sié todo 0 ‘corpo humano eo mundo que o rodela, o Sensor é identificade como sendo os olhos e 0 actuador es misculas que imprimem o movimente necessaria para o ceslocamento do cbjecte, Neste exemplo a retroaccao consiste na utlizagao da informagao recolhida pelos olhos, para “corgi” a posigao dos membros, de acordo com o movimento cesejado, ‘Atopologia biisica de um sistema de controle & descrita pela figura apresentada 111, apenas c contexto é diferente, No exemplo 112. 6 feita a analogia do cérebio com um sistema de controlo tradicional Num sistema em que se pretenca controlar a valocidade de um vaicula, & ecesséiio efectuar a retroaceao da sua velocidad. actadey Upewerson Figura W- Conta ca valanisade do um voice E de notarque a topologia deste sistema é equivalente a do cérebro, am que o individuoéo velocimetro e ajusa a posigao do acelerador para obtera velocidade dasejada, ‘Chegamos assim & conclustio que um sistema de controlo pode sar sempre representado por uma mesma topologia em que intervim os seus componentes principais: actuadcy, controlador, processo e sensor. (Figura Il 3) i Figura tt. Topoteia bisa de um sisema da contralo -* 4 Programagao de Robots ‘Compenente Cientiice-Tecnolégiea ‘Gado Forando IEFP - isa Controle Adaptative ESTUDO DE UM SISTEMA DE CONTROLO. lremos estudar agora o exemplo de um sistema de controlo de nivel dé lquido umtangue. value N ~r (Ge - Caudal de Entrada Vainiae [os Qs - Caudal de Saida N- Nivel do tanque Faa 1.5 ~ Esquera do Processo Neste sistema (Fig. Il) temos um tanque, uma condula de entrada @ uma de saida. O objective ¢ actuar na valvula de entrada de modo a manter a nivei do tanque constante, indepencentemente do caudal que ce 4 sai E claro que este sistema necesita de wm controlador que actue na valvula de entrada, baseando-se em infornagas recoltida por sensores. Quat a intormagao que o sistema de controlo necesita”? Quat a regra de acaptagdo da valvula que cumpre as especticagses? ‘Qualo eamportamento do sisterna resuitante? Para responder a algunas destas perquntas so necessavias ferramentas matematicas um tanto ou quante complexas que esto fora do Ambito deste manual, Componente Cientifica-Tecnalégica BuiadsFomande Controle Adaptative IEFP - Isa Podemnos, porém, trataro problema de forma qualitativa, | Osistema pode ser representado da seguinte forma: (Fig. 1.6) | Fura iL6 - Represeniacio do Sistersa om Blozos (O esquema representa 0 seguinte concait: Conhecendo onivel actualeo nivel desejado é possivel comandar avalvula 1 de modo a que o nivel actual se aproxime do nivel desejado, Aeeste concet dé-se o nome de retroaccao e 6 aplicavel a qualquer lipo de sistema. Onome de retroacpao surge da utlizagao do valor da saida do sistema para comando a entrada ‘Com o sistema representado desta forma é tacil de identilicar a informagac ecessaria ao controlador o nivel do tanque. Qual é entéo, a regra de actuagéo que deve ser seguida pelo controlador? Para obter a resposta aestas questées, vamos comegar por estudar algumas ferramertas matematicas Comportamento de sistemas © primeiro passe doprojecto de.um controlador a modelizagio de sisterna a controlar. Por modelizagac entende-se o caleulo analitico de um modelo matematico do sistema, que permite prever o comportamente dosistema, A modelizagao é normaimente calculada por aplivagéo de leis basicasda Fisica, que descrevem o sistema "No sistema do exemplo I. electudmos alguns calcul sinples que nos poderdio dar uma ideia do seu componamento: N.6 — Programacao de Robots ‘Componente Cientiica-Teenoldgica aie woFemmardo JEFP - 1SQ Controle Adaptativo © caudal de sada (Q2 } depende da “resistencia” da vélvula 2 e da pressao imprimida palo liquide no tanque, 2 - Caudal de saida N-Niveldo tanque R - Resistencia da valvula (caudal de entrada 6 a varidvel que nds controlamos. Podemos assim darihe ‘valor que desejarmos (isto ¢ una aproximagao dado que nao é estritamente possivel num sistema real} ‘Assim, considerando os caudais @ 0 nivel do tanque constante, o volume de liquide (V) ne tangue ¢ dado por: V=(Q1-02)t Err:que 180 instante de tempo considerado, Desta forma, o Nival iN) é dado por: N=Va.n2 considerando o tanque eilindrico, com raior. ‘Mas. objective de um sistema de controlo 6 controlar sistema dinamricamente. No calleulo que eteciudmos, considerdmos todas as varidveis constantes. No entanto, a realidade passe pela resolugko de Un conjunto de equagoes bastante complexas, mas que saem completaynenie do arnbile dele curso. Vamos, por i8so, apresentar apenas o resuilado desses calculos: a fungao de ‘ransferéncia 1 Mee | Aqanen | ‘Componente CieniticoTeenolégica Programagio de Robots (6a Forando n.7 Controle Adaptative +8 ry Programacao de SINAL DE ENTRADA SINAL DE SADA (esTAULO) (OU SISTEMA) (esposta) 1EFP + Isa A turgéo de transteréncia ndo & ma’s que a representagao matematica do sistema. O que quer dizer que, para o projacto da controladar o comportamento de sistema é dado por His). p| processo |= |_ __ >= Fig 1.2 -A longo 8 ansteréncia ‘A topolagia do controladora aplicar depende do comportamento desejado para o sistema, Assim, quanto mais rgidas ‘orem as especticagdes, mais complex ter que sero contfolador eo seu dimensionamento Uma das ferramentas essercials para o projecto a simulagso que ulliza a tung oe tensferéneia para prever o comportamento eesutante © que éa simulago? A simulagao consiste na substituigac do sistema real oeia sua fungao de ttansferéncia de modo a obter o comportamento do sistema, tanto em malha aberta como em malha fechaca A simulagio é uma tarefa que normalmente 6 execulada nurn computador, utlizanda métados matemiitions especiticos, implementados em “sotware" cespecializado, Alimportncia da simulagaio advem da necessidade ce execugae dos seguintes passes: * Testes preliminares; ‘+ Expariéncias potoncialmente destrutivas do sistema real; * Veriicagao de cimensionamentos: * Veriticagao co cumorimente das especiticagses: ‘+ Optimizagao do comportamente, ‘Vamos exempiicar a utlizagao de 3 tioos de controladores para a resolugao deste problema com 0 objective de lustar a inportancia da sua topologia. Robots Componente Clenttica-Tecnoligica (GuiadaForando wrece une Controte Adaptativo * Nos seguintas exemplos o objective és + Implementar um controlador que tenia uma resposta 0 mais rapida possivel (que o nivel do tanque se aproxime do nivel desejado o mais rapidamente possivel): * Que o controlador consiga atingir um nivel o mais préximo poss{vel do nivel desejade. © Que nachajam oscilagses no nivel do tancue, A este conjunto de exigéncias di-se 0 nome de especticagoes. que sao especificagses? Especticagces sao 0 conjunto de exigéncias, rastrigdes e caracteristicas, que se pretende que 0 controlador permmita desempena. As especiticagdes traduzem os objectives a atingir pelo controlador, sendo sempre 0 ponto de partida para dualquer projecto de controladores. ‘Quanto mais rigidas forem as especiticagées pretendidas, mais complexo tera que ser 0 controlador @ 0 seu prajecto. O sistema de contrato de temperatura de uma central nuctear 6 bastante mais complexo e dispencioso que 0 sistema de controio de temperatura de um aquecedor doméstics, pois as suas especilicagdes sA0 muito mais rigidas. Em todos os exemplos, parte-se do pressuposto que o tangue se encontra ‘va2i0 (nivel= 0m) e que onnivei desejadoé 0.5m, Controlo ON/OFF (liga / desliga) Este tigo de controle ¢ © mais simples que se pode projectar, no entanto os 'eus resultados nao $40 05 mais satisfalGrios, sende apiado em problemas ouco complexes. Unt exemple tipico é 0 terméstato, que liga ou desiiga Conformea temperatura ambiente 6 inferior ou superior temperatura desejada. A regra de actuacao deste tive de controladores 6 a seguinte: * Seo valor actual é maior que o valor desejado 0 actuador é destigado: * Se ovaloractual é menor que. valor desejado, 0 actuadioré ligado. Componente Cientfico-Tecnolégiea Programatio de Robots Il. 9 Guia do Feamerd Controle Adaptativo IEFP - 1SQ Nivel (m) Tempo(s) ‘Fgura 8 - Simuagso do tanque eam controlador On / Off Vertica-se que com este tipo de controlador nao ¢ possivel que onnivel dotanque ‘sea 0 desejado (0.5 m) oscilando em tomo deste valor, ‘Se.as especiticagdes ndo exigissem tal desempento poder-sevia utlizar este ‘controlador E necessaro ter em conta que ao usé-lo a qualidade do actuador cemprogue (véivula influ bastante no desempenho deste sistema (velocidade ce abertura ede feche da valvula). Controle Proporcional "Neste tipo de controle, o valor de comando da valvula é calculado com base na iferenga entre o nivel actual eo nivel desejado, O erro é ento mutipicado por ‘um factor constante e utilizado para comandar a valvla (Fig. I.7) Q1=K (NEN) Q1 - Caudal de entrada (valvula de comand} Nd Nivel desejado K-Constante a dimensionar Robots Componente Cientitico-Teenolégiea iad Remand 3 5 IEFP + 1SQ. Nivel (m) Tempo(s) Figura 3 « Smulagio do tangue com conc propariona Com este tipo de controlador deixar de haver oscilagdes no n’vel do tanque, no entanto este continua @ nao se aproxirtar do nivel desejado. Este fenomena ‘temo nome de erro estatica de posigéo, ¢€ uma caracteristica associada a0 ‘controlador proporcional O que é o erro estético de posi¢ao? O-er0 estatico de posigaa é a diterenga minima que o controlador conseque atingir (em percentagem), ontre 0 valor desejado 6 0 valor roal Controlo proparcional, i itegral a derivative (PID) Neste tipo de controladores, o comand é calculado com base no erro entre 0 \valor dasejado e o valor actual, sendo o valor de comanido a soma de 3 parcelas, erro multiplicado por uma constant, o valor médio do erro @ a velocidade de ‘rescimento do orro. Ha, portanto, 3 parémetros.a dimensionar neste controlador, Nivel (m) Tempo (s) Figur HL10- Simulaeao do fanqve com conor PID ‘Componente Cienttice-Tecnolégiea Programarao (iad Fornando Controle Adtaptative Robots Ml. 14 Controle Adaptative IEFP - ISQ. Este controlador conseguiu um bom desempenho delxando de haver oscilagces ‘eaproximando:se onivel do tanque do nivel desejade. Este tipo de controladoves ¢ o mais difundido em aplicagdes praticas, pois 6 conceptualmente simples, de f4c'l implementagao, robusto e produz desemperhos aceitaveis na maioria dos cases. Outros tipos de controladores Os exemplos apresentados foram dos controladores mais simples utiizados. Nesta seoeto apresentam-se outros tipos, bastante mais complexes, sendo empregues apenas para aplicagées mais complexas e com restigbes mais rigidas. A existéncia destes controladores mais sotisticados deve-se a necessidade de ‘contrariar factores que nao sa0 fevados em conta pelos contrsiadores tradicional. Alguns destes factores sao! ‘+ Os processos nao tém sempre as mesmas caracteristicas,devide a0 cenvethecimento dos materia factores ambientais,erros na mcdelizagao.0u caracteristicas variantes no tempo do préprio processe. Os controladores: assumiem que 0 processo tem caracteristicas constarves, ‘+ Nom sempre se tem acesso a um modelo do processo, sendo assim ne- ‘cessarios controladores inteligentes qua “aprendem" o modo de controlar um dado proceso, sem informagao prévia, Controlo robusto Estes controladores sao extensdes dos controladores tradicionais PID, mas ‘jo projecto leva em conta variagdes dos pardmetros do processo. O objective 4 oue 0 controlador cumpra as especificagdes enquanto as caracteristicas do ‘processo variam dentro de uma determinada gama conhecida, ‘Controlo PID com tabelagao de ganhos Este tipo de controlador é também uma oxtensao do controlador PID tradicional, que pretende contrariar alleragées na caracteristica do proceso, quando estas sdo detectadas pelo controladar, © seu {uncionamento baseia-se em alterar 0s ganhos proporcional, integral e derivativo, conformeas caacteristicas actuais do proceso. Estes ganhs sao proviamente dimensionados para varias ‘gamas de funcionamento da sistema, cabendo ao contrelador escolher nurs tabela quais os mais adequados em cada situagio de funcionamento. a 1.12 Programagao de Robots Componente Cienttico-Tecnolégiea Guia do Forman IEFP - 1S Controlo adaptativo - PID auto- sintonizavel Este controlador temo abjectivo de nfo ser necessario odimensionamento dos 4ganhos do PID, caiculanda ele proprio os mais adequados. seu funcionamento basefa-se numa tentativa de aproximar a resposta do sistema da resposta pretendida, por meio de actuaao nos ganhos do PID. Controlo adaptative - estimagao de parametros Este controlador é um dos mais complexos que se pode projectar, e um dos ‘que mathores resultados consegue. Nao exige qualquer conhecimento prévio do sistema a controlar, @ consegue também ‘ajustar-se” a alteragoes nas. caracieristicas do provesso. ‘O seuuncionaments baseia-se na utiizagao em “tempo real" de ferramentas ‘matematicas utiizadas paradelerminar as caracteristicas de um proceso. E tentao, automativamente projectada, urn controlador tradicional, basaado nas: caracteristicas actuais do processe. Este controlador exige meios computacionals complexos que consigam implementar automaticamente todas estas fungies. Controladores difusos - “Fuzzy" (0 tuncionamento deste tipo de controladores nao exige métodos de projacto tradicionais. As regras de actuagao sobre o proceso sao impostas intultvament pelo projectista, sob a forma de expresses iogicas. Se a sala est muito ‘quente, entéo pe 0 ar condicionado no maximo, se est mutt fra desliga-o, ‘se est ligeiramente quente demaie aumenta-o um pouco. Fstes controladores baselam-se na emulagao do comportamento humane para ‘ocontrolo de um dado proceso. Controle Aduptative METODOLOGIA DE PROJECTO DE CONTROLADORES Metadologia de projecto de controladores Seguidamente, descrevem-se os passos essentials para o estudo, projecto e implementagao de controladores convencionals, Componente Cientile>Teenoligicn Programacdo de Robots Ml. 13 (Gua doFomando Controle Aduptative 14 ® Programaciio de IEFP + ISQ Estudo do sistema fisico A observagao do sistema fisico controlar e a compreensdo do seu funcionamento é uma componente essencial do projecto de um sistema de cconttolo. Isto é no:malmente conseguido com 0 estuco das leis de Fisica relevantes para o problema Modelizago do sistema A modelizago do sistema consiste na sua tradugao para modelos matematicos ‘mais cu menos complexos (exemplo:fungao de transferéncia). E um dos passos: ‘mais importantes para o projecto de um controlador, ¢ é também um dos passos que mais influ no seu desempenho fina. Isto deve-se ao acto de amaior oarte dos dimensionamentos serem executados tendo como base 0 modelo do sistema. Deve-se sempre prestar uma grande atengao a este passe do projecto porque ‘normalmente os maus resultados em termos de controlo devem-se a modelos | Geficientes ou com pressupostos errados. Validagao do modelo ‘A validagio do modelo do sistema consiste na sua simulagao sob diversas ccondig6es we funcionamento, e a sua comparagao com 0 comportamento do sistema real. Este passo permite eliminay possiveis erros introduzides na modelizagao, Escolha do tipo do controlador Como ja to’ ito anteriotmente, 0 tipo de controladora implementar depende da natureza do process0 € da rgidez das espociicagdes desejadas. Noimalmente a esta fase da projecto esta associada uma certa experiéncia do projectis'a e uma série de siniulagdes preliminares que permitem escolher entre Lum cenlunto de possiveis tipos de controladores. Dimen: namento do controlador © dimensionamento do controlador # execulado mediante a utlizago de ferramentas materticas e da teoria do controto, que permitem o caleulo dos pardmetros associados ao controlador (ganhos, topologia, orem do controlador, caracteristicas de atenuacao de perturbagdes € 1uitd,€6. .), de ‘modo a cumpriras especiticagdes. Robots ‘Compenente CientifeoTecnoldgies Guia Femando IEFP - Isa Controle Adaptative Simulagao e verificagdo do cumprimento das especificagses, Dada a comploxidadie do dimensionamento des parametros de um controlador, @ sempre vantajoso vaiidar os resultados por meio de simulagées do sistema ‘508 a acgao do controlador. Estas simulagdes devern ser executadas sod o mais vasto leque de situagSes {que possam ocorrer no sistema real. A grande vantagem da simulacao 6 que se houver alguma falha no controlador projectado, é possivel deteclé-ia sem que isso implique a possivel daniticagso do sistema real Implementacao do sistema de controlo Neste passo, iré proceder-se & implementagao fisica do controlador, que passa por uma escoltia aceriada de sensores, actuadores e do niedo como ira ser implementado, Em ambientes industrials (aplicagao mais frequente do controlo) & necessério ter especial atongao a robustez do equiamento, imunidade a ruidos eléctricos | ‘ou a cutias tipos de influéncias que possam existirsobre o controlador. Escolha de sensores CO tipo de sensor utlizado depende naturaimente da natureza do processo que se pretende controlar As caractertsticas genéricas pedidas a um sensor sao: + Gama larga de medidas + Rapidez de resposta, + Procisdo e resoiugo nas medidas electuadas; ‘= Imunidade a factores que possam influenciar a medida; * Boa largura de banda (gama de frequéncias que nae sao rejeitadas pete sensor); + Reiagio directa entrea grandeza a medi a saida do sensor linearidad). Paraas aplicagdes mais correntes, damos um conjunto de hipcteses disponivels comerciaimente, ‘Componente Cienttico-Teenoiaiea Programdgao de Robots Il. 15 GuiadoFomardo Contoloadaptative | IEFP - Isa i Cotacteristic Pours ruldo mas haixa resolugao Ruidoso mas barato Caro, boas earacteristicas Caro, gama larga de medida Baia largura de banda Derivagao da posi¢ao —Introdugao de ruido, mas barato Pete Tipe de Posigao (m) Cosifcador Redstato Laser Utva-sons \Velocidade (mis) Taquimetio “Temperatura (%) Tomopar Termsmetro Pirdmeti stico Luminesidade (Lie) Fote transitor cc Corrente (A) Pinga Amperiméice Rosposta lonta mas barato, Baixa resolugae e lento Caro, com boas earacteristicas (sem contacto) Barato, balxa prosisao Caro, aa resolugae Care, (sem contacto) pouca precise Gua 4 - Escoha de Sensors Escolha dos actuadores ‘Aos actuadores pedem-se também as seguintes caracteristicas: * Boa gama de actuagao; * Rapidez de actuagao: * Linearidade, ver) een Posig&o (m) “Temperatora (%) Caudal (¥s) Presse (Nim) Tensio () a Motor eleetico DC Garato: pouea forea Motor eléctico AC mplemeniagao cara: muta forca Resisténcia eléctica Sarato mas lento Electro-Valvda Barato: Poucs linear Compressor Muito caro Gerador ou rectificador Boas caractersticas etectrico WH. 16 gramagao de Robots Quarto 12, Escota de Achiasoies Componente CieniieoTeenotgica (lado Fomando IEFP - IsQ Implementagao do controlador Portemos escolher entre uma variedade ce implementagdes que poder serem. hardware ou software. Caso a escolha sejao hardware, passamos ao projecto do circuito, analogico ou digital, que tera as caracteristicas do controlador projectado, Para os controladores mais simples (ipo PID) ha a hipotese de ullizar os isponiveis no mercado, sondo apertas necossaro programar os ganhos (exstem até alguns PiD auto-sintonizéve's) ‘Actualmente a tendéncia 6 para a implerentagao serfita em software (contvolo por computador), devendo-se isto as vantagons inorentos ao alto poder ‘ompuitacional das maquinas actuais. ao baixo custo, a modularidade e facade de implementagao, expansive altorarao. Os controladores mais complexos esto sempre limitados a implementagao ‘bm computador, pois normalmente exigem grandes meios computacionais, E necessario ter om afengao que a implementagdo em computador é una implementagao em temps discreto sendo assimeecessivia a oscolha do uma frequénera de amastragem adequada CC ‘Corputedor Contolador Figur 1.15 Topo 68 conto por eomuitder Controle Adaptativa — pcwwator | CONTROLO APLICADO A ROBOTICA No estudo da robética estamos constantemente preocupades com a ‘movimentacao de ob ectos no espago. Estes movimentos S40 imprimidos pelas juntas do robot, comandadas por motores eléctiicos. Uma das maneiras de oprosentar urna localizagdo no espago ¢ através da sua posiedo e orientagéo, Componente Cienttico-Teenokégloa ProgramacSo de Robots Il. 17 (Giada Fomands Control Adaptativo IEFP - ISQ A localizagao ¢ imposta pelos eixos da base, ombro e cotovelo, enquanto a orientagao € dada pelos eixos Roll, Pitch e Yaw (termos usados internacionalmente ao nivel da aeronautica e também aquiaplicads para reterir ‘eixos do punho de um robot} Figure 42 - Enc do um Manipur com 8 graus de Libertad A especificagao das traiectorias introduzidas pelo utlizador nao @ executada (normalmente) em termos dos angulos das juntas. Esta introdugao ¢ feita a partir de coordenadas e ovientagdes no espago (cartesianas) X,Y, Z, Roll, Pitch, Yaw. A conversto destas coordenadas para Angulos de juntas ¢ executada pelo | Seradorde Trjectéas © que 6 0 gerador de trajectérias ? (O gerador de trajectorias é um apareino que através de cdlculos matematicos baseados na estrutura do manipulador, caicula os angulos de junta necessatios para executar um movimento, descrito em coordenadas do mundo real. Seo ‘operador programar uma linha recta, as varias juntas terdo que se movimentar de maneira diferente, sendo esta varlapao temporal dos angulos de junta calculada pelo geradorde trajectérias, ‘Sendo 08 movimentos desejados representados peias juntas, énecessario que ‘08 motores acoplados a cada junta se comportem conforme o movimento pretendido, Para garantirque este comportamento é 0 desejado, o manipulador 6 dotado de um sistema de contralo, O sisterna do controioutlizado na grande maioria dos manipuladores disponiveis ‘comercialmente é o controle PID junta a junta, Ouseja, cada motoré controlado ingividuaimente porum PID que garante que ele cumpre a trajectstia pretendida, +18 Programagao de Robots Componente CientiieoTecnotigiea (ae o Fens JEFP + Isa Controle Adaptativo Sistema de ‘nectors contra aripuledot Noripulador Angus actuals das juntas Figua 119 -Topolegia de conte do um manipuacr = junta a jn Esta solugao nao ¢ teoricamente a mais correcta, mas economicarente a mais vidvel. Estritamente falando, 0 manipulador é um sistema variante no tempo, ou seja, as caraceristicas da {ungao de transferéncia de cada junta alteram-se conforme a posiga0, velacidade e peso aplicados ao manipulador. Isto torna o manipulador um sistema extremamente complexo, que sé com meios computacionais muito poderosos se consegue controlar totalmente. ‘Componente Clenttice-Tecnoidulea Programagao (vaca Fermando Robots 1.19 Controle Adaptative IEFP + Isa, RESUMO ‘Nesta Unidade Tematica focaram-se 0s coneeitos de controlador, actuador @ relroacea0. Vimos alguns tipos de controladores correctamente utlizados, a metocologia utlizada no estudo, projecto e implementagac de controladores & | ainda a sua aplicagio ne cantrolo de robots. of 8 1.20 Programagie de Robots Componente Cientice-Teenolégica ‘Guido Fomanio IEFP - Isa Controle Adaptativo ACTIVIDADES / AVALIACAO 1. Oque entende por controlador? 2. Cque entende por simulagéio? 3, Um exemplo tipico de um controlador on/off é o terméstato. Diga quala re- tyra de actuagao deste tipo de controlador. 4, Oqueentende por retroacyao? 5. A importancia da simulago advém da necessidade de execugio de deter- minadas taretas, Diga qual sao. 6. Descreva como funciona o controle proporcional. 7. Indique os passos essencials para o estudo, projecte e implementagao de ‘controladores convencionais. ‘Componente Prtica Programagio de Robots 1. 24 ‘GuadoFomends Programagss| por Aprendizagem a 2 | Programagao por Aprendizagem Progrema¢io de Rohots Programagio por Aprendizagem OBJECTIVOS, & No final desta Unidade Tematica,o formando deverd estar apto a: ® Reconhecer os métodos de programago por aprendizagem; © Foconhecer os métodos para definir posigées no espago; © Reconhever as limitagdeas dos métodos de aprendizagem. TEMAS + intodueso ‘* Métodos de programagso por aprencizagem + Programagia de trajectérias no espago + Limitagdes dos métaios de aprendizagem + Rosumo © Actividades / Avatiaga0 Programacae de Robots ‘Suade Fornando Programagae Por Aprendizagem IEFP + Isa INTRODUGAO ‘A programagio de robots par serrealizada de varias formas. De acordo vena | pratica corrente, os métodos de prograrnayao podem ser divides, basicamente, | em dois tipos: 1, Método de programagao por aprendizagem, 2, Lnguagens textuais para robots. (0s métodas de programagao por aprencizagem exigem que o programador | mova'o manipuiador attavés da trajectora desejada,o que fica gravaga na memerapelo controlador do abot, sendo, por vezes, designados netogos de | eneino por semonstragao”, Cranolagieamente, os métazos de programayso | por aprencizager representam os primeiros usados na programagao de robots naindustia [A programagao de robots com linguagens textuais é executada de forma somolhante a ullizada na programagao de eomputacores: 0 programnadordigita © programe directarnente num monitor, utifzando uma linguagam de alto nivel, O desenvolvimente das inguagens textual iniciou-se durante a década de 70, tendo a primeira versao comercial ficado disponivel por vatta de 1979, METODOS DE PROGRAMACAO POR APRENDIZAGEM | Na programagao por aprendizagam, 0 robot é movimentado através do carninho | desejado, de mado a registé-lo na meméria do controlador. Existem duas | maneiras de realizar a programagao por aprendizagem: | 1. Movimentagao mecenizada, | 2, Movinentagao manual. No método de movimentagae mecarizada é empregue uma consola de programagéo (fezcirin 6x) para controlar os motores das varia untas durante tum sére do panos ne espago. Cada panto sregstada na mama para posterior | pated cuanto occ cabal, A conola de pogaragso corse norraimente, numa peauena caixa de controlo porta, com uma série de | combinagses de nterruptores de alavanca, mostradores ebotees para regular "98 movimentos fisicos e com capacidade de programagao do robot, Entre os vatios métodos de programagag de robots, 0 método mocanizado & presentemente o mais corrente. E no entarto, prineipalmante lmitado a ‘movimentos ponto-a-ponto endo.@ movimento cantinuos, facto que se deve a cillevidades de empregar a consola de programarao’ va definigao oe Il. 2 Programagse de Robots Componente Cientiieo-Taenoligica ‘ia aFormand IEFP - Isa Ri AERO SPRRoatcaee movimentos geométricos complexos no espayo. No entanto, a maioria das aplicagdes industrais de robots baseiam-se em movirrentos ponto-a-ponto do ‘manipulador (manipulagao de peras, carga e descarga de pegas em maquinas e soldadura por pontos). (Ométado de movimentag&o manual, por vezes também designada “métode de acompanhamento passo a paso", é princioalmente utlizado para programagao de caminhos continuos, #7 que 9 ciclo de trabalho envolve movimentos cunilingos suaves e complexos do braco do 1000, O examolo mais corrente. deste tipo de aplicagao # 0 da pintura por pulverizagao em que o punho do. robot, coma pistota de pintura acopiada ao seu orga terminal, deve execular um movimento regular e suave ce forma a aplicara tinta uniformemente sobre toda a superticie a sor revestida, (Outras das aplicagtes é em algumas operagbes de soldadura cor arco eléctrico onde se pretende realizar a programagac de um caminho continuo. Nostos 880s, executades por vezes com o método de movimentag&o manual, o ‘rogramador segura nt brago do robote ne érgao terminal ofavio porcorrat © Ciclo de movimonto pretendido, Uma das ultimas apicages realizadas em Portugal, resultoude um trabalho conjunto entre os Estaleiros Navais de Viana do Castelo @ @ Instituto de Soldacura 2 Qualidade, que desembocou na ‘concepedo.e consirueao de ur rabot de soldadura programado por aprencizagem ‘manual, pav@ a soldadura de cuplos fundos, Basicamente constituido por uma, estrutura mével onde estavam acoplados trés robots RUP. Apprendicite, cada lm dos robots era programado manualmente por um operader, enguanto os outros dois robots se mantinnam na realizagao das soldaduras previamente tensinadas pelo mesmo operador. No entanto, se 0 robot possuir grandes dimenstes tornando-se, assim, do dif movimentagaéo tisica, é corrente substituilo por um aparelho programador ‘especial que, aoesar de possuir a mesma contiguracao georéttica basica do robot, &, no entanto, bom mais facil de manipuiar durante a programagao. Um bolo de ensino 6, normalmente, colovado junto ao punho da robat (ou do aparelno especial de programagao), sendo este mantide pressionade durante 0 ‘movimento do manipulador que se vird a tomar parte integrante do ciclo | programado, Desta forma, possiblita-se ao programador a realizagao de movimentos adicionais do brago sem que estes sojam incluidos no progiama fina. Reegra geral, os sistemas de comando para os métodos de aprendizagem stio execulados por '* Ensino, uilizado para a programagao do robot, ou por ‘+ Operagao, empregue para exeoutar 0 programa, Estes dois métodas de aprendizagem sao procedimentos elativamente simples ‘que foram sendo desenvolvidos e amplladas ao longo dos ditimos vinte anas ‘como abjectiva de “ensinar’ os robots. realizar operagdes simples e repetiivas em ambientes fabris, Sendo métodas que exigiam pouca oxperiéncia dos pprogramadores, faciimente foram implerentados nos ambientes de produgao, CCompanente Cientitica-Teeneldulca Programazae de Robots Ill. 3 GiiadoFomanto Programagao Por Apre! IEFP - Isa PROGRAMAGAO DE TRAJECTORIAS NO ESPAGO. Conforme ja fol referido, o programa de ure rabotndo ¢ mais do que adefinigso de uma trajectéria no espago. O focal geométrico dos pontos ao longo da trajectéria detine 4 sequéncia de posigdes através das quais 0 robot ira ‘movimentar o seu punho, Na maioria das aplicagdes, um 6rgao terminal ou ferramenta esta acoplado ao punta do raboteo programa pode ser considerada como uma trajectéria no espago através da qual esta ferramenta ira ser ‘movimentada, Consistindo 0 robotnum conjunto de varias articulagdes ou eixos unidos entre si, a definigao da trajactaria no espago vai exigir que o robot desloque os seus celxos através das vérias posigbes, de forma a seguir essa trajectoria, Para um robot cam seis eos, cada ponto no caminho consiste em seis valores de coordenadas, cada um carrespondendo & posigao de uma junta, Em robética existem quatro anatomias basicas. * Polar, © Clindrica, © Cartesianae * Brago articulado. Cada uma possul ts eixos associaddos com a contiguragao de brago e corpo © duas ou trés anticulagdes acicionais associadas 20 punho. As articulagdes, do brago @ do corpo determinam a posi¢ao geral no espaco do 6rgao terminal, 8 opunho determina a sua orientagao. Se se pensar num ponta no espago no programa do rabot como sendo uma posigao e uma orientagao do dispositive actuador, existe, normalmente mais que tum conjunto possivel de valores de ‘coordenadas de juntas que pode ser utlizado para o robot atingir esse ponta. Por exemplo, no caso da figura il.1. existe duas configuragdes de eixo que podem ser utlizadas pelo robot de brago articulade para se alingir 0 ponto- meta pretendido. Pode verilicar-se que, apesar do ponto-mela ter sido atingido emambas as contiguragGes alterativas de elxos, existe, contudo, uma dferenga nna orientagao do punho em relagao a esse porto. I. 4 Programagio de Robots Componente Clantiice-Teenoligica (Gace Fomando NEFP + IsQ Programagao Por Aprendizagom ioc —ae Flour It. Configueagces alternatives de e0s com 0 dispositive acuador leeds Ao pontemeta pretendigo Esto exemplo permite-nes, assim, concluirfacilmente que a especticarao de ‘um ponto no espago néo define de forma Unica as coordenadas das juntas do robot. Assim sendo, devemos, onta0, corrigir a definigao de que um programa {de robot ser&.constituido por uma sequéncia de coordenadas das posigona das juntas, ¢, do 66 e simplesmente, uma trajectéria ne espago. A vantagem de se definir © programa de um robot desta forma, & que assim especitica-se simultaneamente a posigao e a arientagao do rg terminal em cada posigao dessa trajectoria, Vamos rever 0 problema da definigao de uma sequéncia de portos no espago. ‘Suponhamos que esses pontos Sa0 definicos especiicando-se as coordanadas das juntas, conforme deserite acima, apesar de esse métoda de especificagao ‘nao atectar os problemas que temos estado a discutir. Para simplitcar, varvos. ‘Supor cue estamos a programar ponto-a-ponto um robotcartesianocom apenas ois eixos e-dois pontos enderecavveis para cada e’xo. Um ponto enderegavel é um dos pontes cisponiveis que pode ser especiticado no programa de modo a que o robot possa ser comandado para ir para aquele ponte. Na figura IIL2, podem ver-s# 0s quatro pontos possiveis no espago rectangular de trabalho do robot. Eixo2 2 2 uw 21 Exo? Figura il2, E5paco de wabaino para 0 rebot 30 Exerglo H. Componente Cienitico-Tecnolégica Programagao de Robots mL. ‘Gvado Fomando j Programago Por Aprendizagom IEFP + ISQ m6 Para este robot, podemos escrever da seguinte forma um programa que comega no canto inferior esquerdo e segue o perimetro do rect&ngulo. eo 1 eI Deslacagdes para o canto inferior esquerdo 2 24 Deslocagées para o canto Inferior 3 22 Deslocagdes para 0 canto superior direito + 12 Deslacagées para 0 canto superior esquerdo 5 af Desiocagées de retomo a posigées de patida As designagies de pontos correspandem as posigoes de coordenadas x, yno sistema de eixos cartesianos, conforme ilustrado na figura anterior. Utilizando um abot com duas réguas ortagonais e somente dois pantos enderegaveis por 2x0, a definigao ce pontos no espago corresponde, exactamente, aos valores de coordenadas das juntas no espaco. Empregando.o mesmo robot, vamos agora consideraro seu comportamento a0 ‘executar o seguinte programa: ro COT en 1 1d Deslocagées para o carto inferior esquerdo 2 24 Desiocagdes para o carta Inferior direito 3 12 Deslocagées para 0 carte superior esquerdo + 441 Deslocagdes para o carto superior direito: Come se pode verficar, este segundo programa ¢ igual ao primeiro, excepto pelo tacto de o ponte no canto superier direito (2, 2) nao ter sido indicado. No rimeiro exemplo, 0 deslocamento de um ponte para o proximo requer apenas -@ movimentagao de uma junta, enquante a posigao da autra junta permaneceu | altorada, Jd no segundo programa, o desiocamento do ponto (2, 1) para o ponto. -& amacao de Robots ‘Componente Clantiico-Tecnoiigica GuiscoForand IEFP + tsa Programagao Por Aprendizagem e (1, 2) exige a movimentagao de ambas as juntas, Desta forma, coloca-se logo aduvida de qual sera a articulagao que o robot ird seguir para ir doprimeiro para ‘segundo panto, Uma das hipsteses possivels ¢ de cue amoos os eikos veniam amavimentar-se ém simulténeo, fazendo entéo com que o robot verina atracar uma trajectéria ao longo do contamo do rectangule ou através do ponto (2, 2), ‘ouatravés do pont (1, 1) | A questo dese saber o caminho que o robetir seguir ents das pntes programases nao sigles. No enfante, © mportante que 0 progameor ones esposa para poser plancarcoretarnentegcarrinho go rowien Inickemento, cent ura ogra gerlQuetodos 9 oborssgam Gs robes oe sequtri ha aa srvosurl, Que ato pogarados anes 6 | prooedientos mangas de ajste nial cin vez de metdos ce progamagae poraprangieagern pacer. geralete, movie amass aunt 0 Meso fompo. Potarto, 2 rajestoa que ser cegulda ewove un movinero de "anslagao ques eect ag longo da diagonal naga usta o exe 0 Existem outros robots sequenciais, qua movimentam as juntas de forma seqvencial enaude forma simutarea. Normalmette, os robots que movimentam um eixo de cada vez, fazern-no movimentando primeito os ejxos de numeros ‘mais baixos. Assim, 0 caminho de movimantagao através do ponte (2.2) Sera 0 mais provdvel. Porém, ndo existem métodos padres ¢ o programador deve tazor ese tipo de avalieqae a partir do manual do utlizador ou atraves de testos como robot. Os rebots Servocontroaves, que a0 programadios pelos métodos. do programagtio por aprendizagem ou por lingvagam textual, erndera accionar todos 08 eixos simuitaneamente, Desta forma, com servacontrolo, © rabotira provavelmente, movimentar-se a0 longa de caminha diagonal entre os pontos (2 Ne (1,2) Contorme se Vi, € possivel o programador fazer alguns tipos de rototspassarem através de 2ertes ponios, sem realmente incluir os pontos no programa. Estes 58 pontos que nao sac enderegaveis no programa e onde a rebatnae ira parar, come aconteceria no caso de.um ponte ecderecavel Elo? trajectéria do rouot do sequéncia initace | com as juntas movidas em! soquéncia H—— trajectoria do rabot servocontroade de soquéncia linitada usando movimento lento os ua 2 Ekot Figura I.3 - Canion prove soguite pets robot do exerpla lL? aracutade 2 aka vlociiade. A saoctia Go Bago ndo passa pelos zontos no programades. Componente Cientifice-Tecnolésica Programarao de Renots Ill. 7 (iso Fomardo Programagio Por Aprendizagem IEFP - Isa m.8 Programacao de Robots \ Métodos para definir posigées no espago Existem varios métados que, independentemente da configuracao do robot, podem ser utfzacios pelo programador, durante o modo de aprend:zagem, para laccionar a brago € o punho de robot. Aqui ficam trés exempios: [1. Mevimentagao das juntas: & 0 método mais elementar e, geraimente, fenvalve a movimentagio de cada aticulagao através da consola de programagao. ‘A consola possui um jogo de chaves de alavanca ou outros disposttivos de ‘comando semeinantes, para comandar cada unta em um dos seus dois sentitos ‘do movimento até que 6rgao terminal tenha sido posicionado no ponte deseiado, Este método de ensinar pontos ¢ frequentemente denominado ‘mode junta’ 'No entanto, ¢ muito fastidioso e aemorado de programa. '2, Movimentago om coordenadas X,Y, Z: também chamado “sistema Ge coordenadas cartesianae". em que se doin a localzagdo do pusho ttiiando o sbtema comencional de coordenadasctesianas comorgem em latgum porto re corpo co robot No caso to robotde coordenadat cateslanas, este métoco 6 vituamente equvalene &programagao no modo junta, Para fobotsde coortnaces polars, clindicas ede agosarculas,o contador deve resover um corjunto de equayoce Matematicas para converter os fnovmentos de rotagao des jinvas do robot em sistema de coordenadas Jaeslanaa, Esta converses seo ealzadas deal frma quo‘ programador Into precisa de se preceupar com os cdloutos substanils que eta0 88a" featizades pel contolader. Para oprogramador,o puna (ou eri trmial) lest a ser desiocado em movimorios ue sto paraleios 208 €¥08%.y 8” At lauas ours juntas acioonais que cnstivemo corjunte do puro, seo quase sempre rataconas, enquariaprogramagio eta.aseregizadanosistema heebara mowmertaas juntas o bragoe do corpe. opunhoé marco pelo lcntolacor numa orertagio constant © mé'odo x. delnigdo do ponos Io espage est ustade na igual param obotde ago aroulado, Movimento da ferramenta paralela ao sisioma de Fig, tha. Motodos do coordonadas catesianas ou X, ¥ 2 pata detiir ‘pontos no esoc0 Componente Cienttico-Teenotigica (iadoFomando IEFP - ISQ ‘Aprendizagom 3. Movimentagao por coordenadas de ferramentas: alguns robots tm capacidade para executarem movimentas coordenados de ferramentas a Serem delinides. Ou seja, um sistema de coordenadas cartesianas, no quala origem ‘sid localizada em algum ponto do punho @ o plano x, y esta crtentado parafelamente & placa frontal de punho, Consequentemente, o eixo z esta perpendicular & placa frontal e estaré a apontar na mesma direceg0 que a ferramenta ououtro dispostivo actuador que esteja preso a placa frontal. Portanto, este método de mover o rabot pode ser utllzado para accionar aferramenta. a Sistema de eixcs dotinito pele orientagso da ferramenta Fioua m5; todo ou sistema de cocroanadas da feramenta para detuirpontca a espare Razées para definir pontos (Os exemplos anteriores tém por objetivo demonstrara imports da definigdo de pontos no espago num programa de robot, em vez de depender do robta ;assagem por um Ponto indefnido ou a actuagao em cero exo antes de actuar outro. As duas principals razdes para se detinirem os pontos num programa 880: 1. delinigao de uma posiga de trabatho para o érgao terminal; 2, contoma de obstaculos. A primeira ¢ @ mais Sova, €o caso em que o robot esté programado para agarrar uma pega num determinado local, ou reizarurra operaga de soldaaura or pontos num ponte espeoffica. Cada locazaggo ¢ Um ponto detrido ne programa, Eslao também inculdas as posig6es de sequranca que sio | ecesséviasno ciclo de trabalho. Por exemplo, sera necessirio deft um porto remoto e seguro no espago de trabalho a partido qual 0 robo inca o ciclo de rabaino Componente Cintica Teenage Programajao de Robots Ill (ado Femaeta Programagio Por Aprendizagem IEFP - ISQ A segunda razio$ utiizada para dalimitar um ou mats pontos no espaco para 9 rbot seguir, o que asseguraré que 0 robot nao ia coker com OULTOS dbjectos localizados na cella de trabalno. € 0 caso das maquinas de soldadura, de transportaderes ¢ outros equipameatos no volume de trabalho, Assim, as Galsdes poder ser evtadas se 0 caminho de pontos for defiido om redor desses obstéculos Controlo da velocidade ‘A malaria dos robats permite uma regulagao da velocidade duranto.a execurdo do programma. Lim mostrador ou grupo de mostradores na consola de comridoy éutlizado para mostrar a velocidade durante as difarcntes partes do programa. E considerada boa pratica colocar o robot uma velocidade relativamente baixa ‘quando o érgao terminal estaina proxinidade de absticulos na oélula de trabaiho a velocidades mais allas, quando se desioca sobre grandos distancias onde nao existem abstacuios. Isto gerao concetto de vias expressas dentio da celula, Esses caminhos dentro da célula do robot sto isentos de westeucdes permitindo, Portanto, a operagao dos roboisa velocidades mais altas. A velocidade niio & normalmente fornecida como velocidad linear na ponta do 6rgao terminal para robots programados por métodes de programagao por aprendizagem. Existem varias razdes para isto. Em primero lugar, a volocidade \inear do robot no érgao terminal depende co numero de eixos que estaoa ser ‘movimentados ao mesmo ternpo e quais s0 #5885 eixas. Em segundo luger, a velocidade da robot deponde da configuragao corrente cos eixos. Por exemlo, a velocidade maxima de um robot de coordenadas polares sera muito maior ‘com 9 seu brago totalmente estendido do que como braro na posigao tolalinente retraica. Finalmente, a velocidade do robotserd atectada pola carga qua esté a transportar devise as forcas de accleragao e desaceleracio. Todas as consideragdes acima apresentadas levam e complexidades computac‘onais consideraveis quarido 0 compulador de conirola esta programiado para | determinar a velocidade da extremidase do punto. INTERPOLAGAO DE MOVIMENTO ‘Vamos super que estamos a pragramar um robotcartesiana se-vccontrotado, {de dois e x08 com oito pontos endorepaveis para cada sixo, Consequente/éhite, haveré um total de 64 pontos enderecaveis que podemos utilizar cm qualquer programa que possa ser escrito. C-volume de trabalho esta ilustrado na figura Iil.6. Considerando que as tamanhos das eixos $80 03 mesmos que pare o ‘nosso robot anterior de sequencia tixa, um programa para o robot executar 0 mesmo ciclo de trabalha que no exempio Ilt, seria como se segue: +10 Programagiio de Robots ‘Componente Cientiies-Tecnolégies Guia uo Fomand IEFP + Isa Programagae Por Aprendizagem Se removermas o passo 8 neste programa (semelhante ao exemplo Ill2), 0 nosso robot servocontrolado executard a paso 4 seguindo uma trajoctoria a0 longo da lina diagonal do ponto (8, 1) até ao ponto (1, 8). Este processo é deriominado “interpoiagao”. Este algoritmo interno sequido pelo controlador do robot para chegar entre os dois pontos 6 um pouco mais complicado co que parece nesta explicagao simplificada, Também existem diversos esquemas de interpolagao que podem ser especiticadas pela rabor para ir de um ponto para ‘oulfo. Antes de discutir essas diforengas, varios descrever o processo mais, lementar de interpolagao, chamado “interpolagao de juntas, A | Na interpolagac de juntas, 0 controlador determina o movimento de cada junta parairdo primeifo ponto definide no programa até ao proximo. Em soguida, ele selacciona a junta que requer maior euragao. Isto determina o tempo que ira levar para completar o movimento, a uma velociiacie especficada. Com base ‘no tempo de movimento conhecide e na quantidade de moviniento necessaria ara 9s outros 9ix0s, 0 controlador subdivido @ movimento de incramentes: Menores, de modo que todas as junta’ iniciem e parem o8 seus movimentos aomesme tego, 1 14 2 a4 3 88 4 18 5 4 Figura 16 - Espaco de rababo de um robot com 8 x # pontos endreraveis ‘Vamos considerar, por exemple, movimento do ponto1, 1) 20 pont (7, 4) na malha da figura lll.6. Ajunta linear 1 deve movimentar-se de seis incrementos (posigdes de malna) 2 a junta 2 deve movimenta-9e de trés inerementos. Para determinar 0 caminho interpolado do junta, 0 gontrolador ‘ia de'erminar um cconjunto de pontos intermediarios enderegaveis ao longo do caminno entre os pontos (1, 1) 0(7, 4) que serd seguido pelo robot. © programa a seguirlust’a® processo. Componente Cienttico-Tecoléaiea Programagao de Robots tll . 44 GuiedoFomardo b Programacao Por Aprendizagem IEFP + Isa Pode observar-se que 0 controiador movimenta allernadamente ambos 0s eixes ‘ouapenas um elxo, Para cada movimento que requer a actuagao de ambos os 2x08, 08 dois eixos iniciam o movimiento e param juntos. Esse tipo de actuagso faz.com que o robot siga uma trajactérla eonforme a ilustrada na figura I)7 SS ees 1 1 Porto de partida especificado pelo wizador 2 22 Porto de interpolagao gorado irterramente 3 32 Porto de interpolago gorado interraments 4 43 Porto de interpolagao gerado irternamente 5 53 Porte de inlempolagao gorade irtemamente 6 64 Porto de intorpotagao gorade irterramerte 7 1A Porto final eapecificade pelo utlizador Figura i? » Carino iareoarsequivo cele robot no exemple 3.4 (Ocontrotador faz 0 equivalente a construir uma trajecisria hipoteticamente perfelta entre os dois pontos especticados no programa e, em seguida, era os pontos intemos omais préximo possivel dessa linna. Componente Cientco-Teenolégica Gua doForzidh A trajectoria resultante ndo é uma linha recta, mas sim, uma aproximagéo. O ‘controlador aproxima-se da trajectéria perteita o maximo possivel, dentro das limitagdes impostas pela resolugao de controle dos robots (os pontos enderegaveis disponiveis no volume do trabalho), 'Nonosso exempio, com apenas 64 pontas enderegsiveis na malha, a aproximaéo ‘@ muito grosseira. Com um ndmero muito maior de pontos enderegaveis e uma matha mais dersa, a aproximagao seria melhor. Como se pode verticar, 0 procedimento de inlerpolagao empregue criou uma aproximagao a uma linha recta, vulgarmente conhecida como interpolagao inex, cembora a tenhamos desorto como inlorpolagao de juntas. Pelo facto de estaemtos: perante um robotcartesiano, que possul apenas exxos lineares, a interpolaga0 de juntas ea interpolagao linear tém o mesmo significado. Para outros roDols ‘com uma combinagao de juntas rotacionais elineares (configuragées cilindicas. ‘© polares), OU todas asjuntas rotacionals (contiguragao de bragos articulados), 4 interpolagao linear produz um caminho que é diferente daquele obtiao pela interpolagao de juntas. Na interpolago linear, o controlador do robotcalcuia 0 ‘caminho em finha recta entre dois pontas e desenvolve a sequéncia de pontos enderegveis ao longo do caminho para 0 robot passar por eles, Conforme indicado, 0 procedimente é idéntico ao fornecico no exemplo Il 4, ‘Vamos agora considerar um rabet que possua um eixo rotacional (eixo 1)e um ‘ex0 linear (eixo 2), onde cada eixo possut olto pontos enderegaveis. Cria-se, assim, um total de 64 pontos enderegavels, que farmam a maina indicada na figural, ano eoorve Figura I.8- Wha de um F0b01 com um exo rtacional @ um wx0 nea, com cada exo tvcido ent oto focalescces endorecaveis Componente Cientitico-Tecnolégiea (Guia Fomando ramapao de Robots Programagao Por Aprendizagem me, 43 Programagao Por Aprondizagem IEFP - ISQ m4 Programagao de Robots ‘A maiha é polar em vez de ser rectilinea e, durante um procedimento do interpotagao, tomo ofeito do criar movimentos de comprimentos diferentes. Por ‘exemplo, compare o movimento do (1, f)para (3, 2) com o movimento de (1, 7} para (3, 8). Os movimentos que saa oxecutadas na proximidade do eixo de rolagao sao significativamente menores que os que sa0 executados longe da anticulagao giratoria, Essa mudanga na configuracao do robottem implicagses para os esquemas de interpolagac usados pelo controlador. Apesar de as < operando 1 >...< operando n> < op9a0 1>...< 9940 | n= n? linha, n® ponto, Instrugso, operandos @ opgées. © Sintaxe. As linhas, constituidas por instrugdes, formam um programa. A listagem de programas aparece quando requisitada, de forma a que 0 utlizador possa sseleccionar o programa que pretende editar oupr a funcionar, Modo de programagao ‘A programagéo da maquina ¢ felta A base de duas consolas: uma consola portal, & qual se da usualmente o nome de "teach pendant’, que serve para Movimentar 0 robot no local de operacao, @ uma consola ‘xa colocada no controlador com um écran que serve para monitorizar a lista do programa, 0 estado de varlavels, a manutengao da maquina, a confguragéo geral do controlador, et. ‘Componente CientileoTeenolégica Programaya Buia do Formendo de Robots w.3 jom de programagio de robots IEFP + Is Em goral, quando o operador pretende fazer um programa, comega por utlizar ‘a consola fa para registar o nome do programa, Oe seguida, desioca-se para local de trabaitoe, através do "feach pendant’, faz mover 0 robot e os eixos ‘extermos na sequércia desejada,¢ vai gravando os pontos principais da trajectoria seleccionando os tipas de movimento e os niveis de posicionamento. Depois, ‘de estabeiecer 0 percurso, @ de se certicar que o brago robotnao softe calsées a0 descrever a tralectéria programada, o operador retoma & consola fixa e faz 0 ‘juste fino da velocidade en.cada ponto, introduzindo na sequéncia do programa a instrugdes que estejam re'acionadas com a leitura de sensores, comanco de sensores, temporizadores, etc. ‘Amovimentagaio de um brago robot, do ponto de vista do utiizadar, éefectuada ‘gragas ao recurso a um sistemas de csordenadas (familiares & visao humana) do espago fisico que rodeia a maquina, através da ferramenta utiizada ou, ainda, com a propria estrutura da maguina. Por esta raz80, utlizam-se, fundamentaimente, os sequintes conceitos, Conjunto de eixos Entende-se por “conjunta de eixos' a totalidade de eixas (robo!+ posicionadores) servooontrolados que constituem o sistema utiizado. A quantidade de eixos ce um sistema varia entre 6 6 12. Tipo de ferramenta A terramenta utlizada pelo robot deve ser manuseada tao perto quanto possivel dda sua utiizagio marval, Ou seja, embora a méo humana possua, vitualmente, carca de 27 eixos de rotapo (27 graus de liverdade) e sistema passua, em eral, 7 @ no maximo 12 ejxos, temos de conseguir implementar da melhor forma possivel omovimento. Cada tbo de ferramenta possuia sua programagao especitica que, no entani, 6 lida om conta na utlizagao da inguagem. Por exermplo, quan ullizamos um ‘gripper’, a instrugio HANDON faz parte da linguagem orientada para manipulagao. Osistoma de coordenadas associado a cada tipo de terramenta permite-nos, porvezes, deslocérla ern direccoes que exigem ofectivamente um alinhamento ‘com um determinade oixo da forramenta, nido sendo a sua execupao possivel de outra forma. Por exemplo, se aplicarmos uma chave de fendas a um brago robote se esta chave tive” de ser inserida longitudinalmente num tubo com um ‘comprimento significative em relagao ao comprimento da chave e com diametro ppouco maior que a chave, setivermos de desiocar a ferramenta por meio de um qualquer sistema de coordenadas que nao 0 préprio da terramenta, arriscamo- ‘nos a coldir com o tubo. Um eixe préprio da chave de fendas seria 0 seu oixo de revolugae longitudinal. Desta forma, operando osse eixa, introduzimos mais ‘oumenes a chave no tubo som gerar colisdes. Em resumo, do ponto de vista da linguagem @ no que cespeita 2 ferramenta, ppocdemos definirinstrugdes especificas e sistemas de coordenadas apropriados. ‘Componente Cisntiice-TeenetSglea ‘Sind Formands IEFP - Isa Tipo de movimento Alinguagem INFORM permite ao utizador defini, em modo de trabalho, quatro tipos diferentes de movimento do PGF de um ponto gravade no espago para outro. Assim, os movimentes so: ‘+ Movimento JOINT, ou de junta: a maquina executa um trajecto em que a receptiblidade em relagao ao ponto gravaddo ¢ importante, masnao 0 trajecto Intermédio, Ou seja, em vez de gerar uma linha, por exernplo recta, entre ois pontos, a maquina gera, normalmente, uma trajectoria em arco de circulo (movimento da farramenta) com o centro para 6 lado do robot. ‘© Movimento MOVL: tipo de movimente-em que a trajectéria de um ponto para Co seguinte é efectuada rectilinearmente (recta no espago). © Movimento circular MOVC:per meio da utlizagao de ts pontes,o controlador interpola um arco de circulo com inicio no primeiro ponto, que passe pelo segundo e acabe no teoeito. Uma vez que, geometricamente, por'sés portos no espago 6 passa Um circulo, este fica automaticamente definido, ‘+ Movimento tipo MOVS: neste, implementa-se uma trajectoria de caracte- risticas especiais que nao abordaremos neste estudo, Velocidade e preciso Em modo MOV4, a velotidade é definida em percentagem da velocidade maxima utiizavel. A velocidade maxirna utlizavel é configurada por um parametro e varia Conforme o tipo de robote a ferramenta. Normaimente, esta velocidade ¢ de 9000 emn/min, ou seja 1,5 metres por segundo. Em mode MOVL @ MOVG, a velocidade maxima é que fazparara | maquina.em {ungao de um sinal extetno, vindo, por exemplo, de um senser, de uma vali, ete. Comgonente lento Tetadica Pregramaphe de Robots | 1V.7 CuincoFomede Linguagem de programagaode robots JEFF - Isa v.8 ‘Se, por exemplo, uma linha do programa PROG! for CALL JOB:PROG2, @ se PROG2 tiver a instrugo RET no fim e se ainda houver em PROG? uma linha CALL JOB:PROGS, tendo PROGS a instrugdo RET no fim do programa, @ ca sera (sentico das setas}: | Flowa 1.1 ~ Sequdncia de Tabatho | Outras caracteristicas Tipos de linguagem Embora, como jé anteriormente referido, a linguagem INFORM possua a sua ‘estrutura relativamente modular (ulizdve! num inéximo de aplicagdes possivel, cada aplicagéo especitica possui a sua verséo de lingagem. Ou seja, por ‘exemplo, na aplicagao de Soldadura por arco, a linguagem possui as suas prOprias instrugozs exclusivamente dedicadas a este tipo de soldadura, tais ‘como, comando da arco (AACONe ARCOFP), monitorizagao dos paramatros de corrente @ tenséio, ete, ‘Seguranca No que respeita a seguranca do operador @ do sistema, existem varias tungoes ‘especificamente implementadas para evitar a ocorcénola de acidentes. Nao é possivel neste pequeno resumo fazer ur estudo exaustivo das vatias fungdes, mas podemos citar algumas earacteristicas, tais como: ** Impossibiidade de programar a maquina de dois ocais diferentes:s6 6 possivel lexecutar a programagao ou do “teach pendant’, ou da consola fixa, mas rnunea ao mesmo tempo. ‘+ Fechadura de seguranga para impossiblitar alteragoes nos programas ou nna sua sequéncia, ** Aviso de excesso de velocidade em determinados elxos e posigdes. Programagaa de Robots Componente Cientiieo-Tecnokigica (GiiadoFomanco IEFP - IS Linguagem de Programacio de Robots * ** Deslocagio em velocidade lenta entre dois pontos nao coincidentes aquando da mudanga entre dois programas. ‘Aviso de deslocamento do robot entre a posigao em que fol desligado e a posigao er que foi posto em funcionamento, etc. Aplicagao a soldadura por arco | Aborda-se neste breve estudo 2 aplicagao de soldadura por arco por esta ser, simultaneamente, uma das mais comuns e mais dificeis aplicagoes para rabois industrais. Exempiode uilizagao da tinguagem para criar um programa de so'dadura com Um cordao linear executado a 75 cmimin (equivalente a 12 5 mrrvs} | + Registo do nome do programa; | * Edigac do programa (nesta fase, $6 contémm uma linha NOP € outra END}: = Registo da posicao actual do sistema em movimentagao JOINT com velocida-de 100% {da maxirra possivel), terramenta TOOL #0 (ferramenta actual = techa de soldadura); ‘+ Registo de um segundo ponto em mode JOINT muito perto (cera de Sa 10 mm} de ponto inicial do corda. Nesta fase, 0 operador tem de se assegurar que atrajectéria do sistema do ponto inicial para o ponto corrente nao produz interferéncias nem colisées com qualquer elemento na areade trabalho, Se for esse 0 caso, dever registar-se tantos pontos quanto os necessarios para evitar colisdes na interpolagao de uma para outra posigao; ** Registe do primeiro ponto do cordio em movimentacae MOVL com velocidade de cerca de 1000 mim/s; © Registo do ponte final da cordao em movimentagao MOVL com a velocidade correcta para a soldadura: * Registo do ponto de repouso, para completar o ciclo de trabalho, em ‘movimentagao MOV, igualmente com 100% da velocidade méxima possivel, Apés electuar o ragisto da trajectéria de trabaino, o operador deve inseriruma instrugao para igar o arco eléctrico a seguirao primeiro ponto do cordao e uma instrugao para desigar 0 arco a ssguir ao ultimo ponte do cordao. Estas instrugdes designam-se aqui, respectivamente, por AHCONe ARCOFF. programa fica, aproximadamente, com o seguinte aspecto: ‘Componente CienticoTeenoldgien Programac&o de Robots IV.9 ‘lado Fommando Linguagem de programagiic de robots: IEFP - ISQ a | 0001 000 NOP 0002 001 TLO MOWJ EX V=100% CONT - posigaio de repouso (0003 002 TLO MOVLEX '200 CONT - ponto inicial do cordo | 0004 002 ARCON - ligagao do arco e'éctrico (0005 003 TLO MOVL EX V=75 CONT - ponto final do cordao. (0006 003 ARCOFF-corte do arco e'éetrico (0007 004 TLO MOVJEX V=100% CONT - ratarno & posi (0008 004 END ‘Total do programa: 8 linhas e 4 pontos. Analisando por exemplo a linha n* 2, temos, em primeiro lugar, o numero da linha, seguidamente, o numero de ponte € 0 tipa de movimento. O tipo de movimento inclu: ferramenta a ulizar (TLO), tipo de movimentago (MOV), Inclusdo de ebxos externos (EX), velocidade, (V=xx neste caso em cm/min) nivel de posicionamento normal (CONT), Outros exemplos ‘Exemplo de um programa que faz 0 comando de uma valvula extema a partirde umsinal exterioc. Na prtica, pretende-se mostrar, como pode ser implementado ‘um programa que espera que um determinade sensor dé um sinal e depois comanda um valvula extema, Ne (0001 000NOP- (0002 000 WAIT IN¥O1=1 (0003000 DoUT OUT (0004000 TIMER T=1.60 ‘9005 000 END Total do programa: 5 linhas e 0 pontos, Deduzimos a partido programa que o sensor esta ligado a entrada 01. Na linna 2, 0 robot aguarda que o sinal da entrada 01 {IN#O1, neste caso um sensor) fique activo (valor"t', neste caso, corresponde a ligado @ "0" a desligado). Se 0 sinal activar, o robot envia um sinal de activagao para a salda QUT#10 (nosto aso, uma vaivula) e mantém o sinal durante 1,5 segundos. Se 0 operator 1V.40 Programagae de Robots Componente Cieniio-Teenaldgica ‘Guido Forrando quisesce ligare desigara vélvula, por exempio, durante 4 segundes, podia pt, ‘em ver das linhas 3 4 a linha seguinte: (0003 000 PULSEOUT#10T=4.00 ee seguida (0004 080 END Neste caso, embora o programa tenha 4 linhas, no possul qualquer ponto, pois a nten¢0 de operador néo era mover robot. Contudo, podemes interigar tum programa eoutto, porexemplo, 0 programa PROG anterior: 001 090 NOP (0002 001 TLOMOVJ EX V=100e8 CONT - posigéo de repouso 0003 001 CALL JOB:PROGE -chama.o programa PROG2 (0004 092 Lo MOVL EX\V=7200 CONT - Ponto ica! da eardaéo (0005 002 ARGON - igagae do arco eléctrico (0006 003 TLOMOVL EX V=75 CONT - panto final do cardéo (0007 003 ARCOFF.- cotte do arce eléctico (0008 004 TLO MOW, EX V=100% CONT - retomo &posigo de repouso 009004 END | Ja vimos que o programa PROG? pode ser: | 0001 000NOP 0002 000 WAIT INKO (0003 090 PULSE OUT#10T=4,00 | | (0004 000 RET (0005 000 ENO Néo podemos esquecer a inctruéo RET. Sem ela, o programa réo faz 0 robot relomar ao pmeio ponto de PROG ‘Quando se faz um encadeamenta de programas (um programa chama outro recursivamente), existe um pormenorimportante:0 ultimo ponto de um programa antes de chamar cute tem de ser espacialmente o mesmo do primeiro ponto | do programa chamado. A razao para esta obrigavio provémde um requisitode | ‘soguranga, que impede que, se o operador se enganar ne programa correcio para chamar, o robbInao sofa uma calsao. Se o ponte de ou programa, que segue a sequéncia do primeira, origual, no existe perigo de colisto porque se pressupée que tanto um programa come outro foram veriicados nas suas teajectrias, Componente Cintifico-Teceolisice Programacso (Gua doFomendo Robots Linguagem de Pragramagao de Robots weit Linguagem de programagae de robots IEFP - ISQ LINGUAGEM SRCL (SIEMENS ROBOT CONTROL LANGUAGE) Introdugao AA linguagem SCAL foi concebida para controlar manipuladores € robots. A linguagem SCRL permite a automagao de movimento e pracessos através da Introdugao de dados e programas. Esta linguager, bastante poderasa, ¢ orientada por tungGes e permite, ainda, 0 processamento de sinais provenientes de sensores A linguagem SCRL e o RCM foram deserwolvides para serem aplicados por fabricantes de robots @ apresenta um conjunto de instrugées que permitem desenvalver aplicagdes dastante complexas, efectuar sincronizapac com tapates, usar camaras de visao, sensores de arco etc. ‘A linguagem permite ainda efectuar uma programagae absoluta ouincremental [Na programagic inorementalas coordenadas de cada ponto sao relativas a0 onto anterior. Nesta exposicao apresentam-se de forma resumida as principals instrugdes que compoem a linguagem. Como referencia, deve utiizar-se o manual de programagao da SIEMENS - SIROTEC RCM 1.2/ ROM 3 Pragramming Guide 108,90 Eaition Estruturas dos programas Indicamos agora os principais grupos de instrugdes da linguagem SCRL para o ‘contralacior ROM * Instrugées de execupao de programas; * Instrugées para controlo de movimentos; * Instrugées para gerir entracas / saidas e memeria; Instrugdes Booleanas logicas; * Instrugdes artméticas; * Instrugdes especiais; ‘* Instrugdes para fungées de sensores. IV.12 Programagio de Robots Componente Cienico-Tecnoléglea GuadoFomando IEFP - ISQ Linguagem de Programagav ue Robots Este conjunto de instrugSes permite realizar, desde o simples controlo de movimentos, até complexos programas de controlo de robots e pertericos. Asinstrugdes sAo introduzidas no programa através de uma técnica de menus, Estas instrugdes sao compostas de uma instrugao principal seguida de vatias copes em arvore, Um programa é consttuide polos soguintos médulos: | + Programa principal (MP) * Subprogramas (SP) + Giclos (0%) + Ramiicagées (BA) + Fungtios de sensores (SF) Inialmente, comoga-se por defn um programa principal. © programa do trabalho &constuée porinstugdes dena desta programa pineal. Zonas tepeldas podem ser nas em subprograms, ramiheagoes ou cos Estes tubseogbes 86 podem exist assocadas a um programa principale néo sao | recontecidas fora ele. E, no enanto, possWvel opie estas sunseagées erie | programas ptncpas, ' Em meméria poderdo coenstir um maxima do 88 programas prncpas, | rumerados de" 88, Cada subsecedo ¢ iniciada com uma instrug’o DEF e terminada com uma instrugao END. ‘As fungdes de sensor tém um tratamento especial endo sao abordadas nesta apresentagao, (O maximo nivel de encadeamento de subprogramas (nesting) & tras. Na linguagem SRCL denomina-se "bloco* uma linha de programa. Cada | subseogao poderd ter um maximo de 999 blocos. | Aiferenga enire un cicla eutn subprograma & que, 0 segundo caso, a instrugso de salto para o ciclo nao 0 chama actualmeinte, mas activa-o. 0 ciclo @ executado apés cada movimento, enquanto activo, sem uma instrugao especifics de chamadta. Achamada ce ua aioe; 80$ drone um subprograms Nora, | (toma socao de chameva no ete auomateamant, necesstando um salto para uma outra secgao. No RCM é possivel usar como variévels os pardmetras PO-P-98, Componente Cientiico-TesnolSgica (GuiadFermando de Robots v.13 Linguagem de programagae de robots IEFP + Isa wet Programacao de Robots Instrugées de execugao ‘As instrugdes de execugéo permitem implementar a ldgica de ciclo. Elas cortespendem na linguagem SCAL as instrugdes de salto, subrotinas, etc, existentes, por exemplo. no BASIC. DEF - Instrugao de definigao Esta instrupdo inicia un médulo de programa ou um enderego, DEF ADWMPISPICNBRISE Exemplos: DEF ADS (define um enderego dentro de uma subseceao) DEF MP15 (define um programa principal) DEF SP5 MP 18 | (define um subp:ograma incremental 5 pertencente ao principal 18, Nowaso deo subprograma ser abscluto, deveria serletra Aem vez de | no fim da instrugo) DEF CY MP70 (define um cicio) DEF BRS0 MP6O (define uma ramiicayao} DEF SF45 MPSS (datine uma fungao desensor) ‘Sempre que é definida uma subseogdo é automaticamente acrescentada @ Instrugo END pelo RCM. IMP. Instrugdo de salto Esta instrugao provoca o salto para umimédulode programa ou enderego. JMP. ADIMPISPICYBR MP ADS (salta para um enderego) MP SP155 (chama o subprograma 15 § vezes) {MP SP P67 P3 (chama o suprograma dado por PS7 0 numero de vezes dado porP3) UMP CYS0 (activa o ciclo $0. A instrugao JMP CVO desactiva « ciclo) UMP MPS8 (chama um programa principal. O anterior é abandorado) Componente Cieniico-Tecnokigica ia Fomando 1EFP - ISQ Linguagem do Programagso de Robots DEF BR P78 (chama a ramificagdo dada por P78) | CON-Instrugaocondicional Esta instrugaio permite testar una cond/ao artmética ou légica anterior. CON TNAGRILEEQINE } CONT (vertica se otitimo resutado ldgieo é verdadeito. Se afrmativo, executa | a instrugdo seguinte. Se negative, salta essa instrugao) | | | | CON GR (veriica se 0 resultado da dltima comparagao aritmeética é maior) As outras condigées sao: F -falso; LE - menor; EQ - igual e NE - diferente. WAI- Instrugo de espera Esta instrugdo permite esperar que ocorra uma dado estado de uma entrada digital ou um dado tempo. | wal TV | WAII46 H (espera que a entrada 45 passe ao estado 1) WAIT100 TS (espera 100 décirmos de segundo} HLT -Instrugao de paragem Esta instrugao permite parar o programa. Assume uma forma condicionat, dependendo do estado dum bata do RCM, ou incondicional var coun | Instruges de movimentagao | | | No sistema RCM a localizagao dos pontos é dada por um sistema de coordenadas X, Y,Z, A,B. C, sendo 0s rés dito parémetros usados para 2 especiticagao da orientagao em termos de angulos de EULEA Raz, Ry, Rx. Componente Cientieo-Teenalégiea BuiavoFomend Programigée de Robots wets Linguagem de programagao de robots IEFP - ISQ v.46 As coordenadas so relativas ao reterencial activo, pordefelto, a base do robot, "Nasinstrugées relatvas aos movimentos propriamente ditos, é ainda espectticada | quala pose do robotatravés da identilicagao dos sinais corespondentes 20s elxos. [Na especticagao das coordenadas é necasssirio obedecer ao formato 89998. a +90908.8 para valores X, Y,Z, 180.000 a +180,000 para valores A, Ce 90.000 a 490.000 para B. Em algumas transformagoes de coordenadas especiticas de certos robots, pode ainda ser necessaro incluir parémetos auxliares para definir de forma inequivoca a locaizagao. No sistema RCM qualquer valor podera ser substituide por uma varidvel (Parametro) Po-P9a, No sistema RCM o tipo de movimento 6 ainda especiticado na tocalizagao. LIN-MOVIMENTO LINEAR LUN _X¥.Z,A,8,C\P1PSPOSSS\ PRE,BAA.OVAAXS: Sea LIN X+4100.0 ¥+0.0 Z-50.5 A+90,000 8 +0.000 C+180.000 BAA ATP REN RSP RaN ASP REP ‘Amneménica BAA indica a area basica do sobel. R1P contiguragao como exo 1 positivo, LINXP15Y+0.0 2-50.5 A+20.000 8 +0.000 G+180.000 BAA RIP RAN ASP RAN, SP REP Neste caso, o valor da coordenada X dado pelo parametro P15. LIN POS P40(e) BAA R1P R2N RSP RAN ASP REP Nesta situagio, as coordenadas X, ¥, Z, A, B, C sao detsrminadas por 6 pparametros com inicio em P40. LIN S200 BAA FIP REN AGP RAN RSP REP ‘OP GAO: Movimento linear para um ponto tabelad (Ponto 200). Programacao de Robots (© movimento é da posigao actual do robot para a localizagao especificada, A variagao da orientagdo esta dependente da instrugso ORI. Por defeite, a orientagao varia continuamente entre o ponto inicia final (ORI VAR). Componente Cientic-Tecnaligica Glad Fomando IEFP « Is Linguagem de Programacao de Rebors Nos movimentos LIN, @ interpolagéo do movimento ¢ efectuada no espago | cartesiano, | PTP- Movimento ponto-a-ponto CO sintaxe da instrugdo PTP ¢ idéntico ao da instrugao LIN, Nos movimentos PTR. a interpoiagdo do movimento ¢ efectuada nosspago das | articulagoes. | ‘As articulagdes efeotuar um movimento sinerono, ouseja, as velocidades de ‘cada junta so ajustadas pelo controlo, de modo a que todas arranquem parem ao mesmo tempo. | CR- Movimento circular A instrugao para o movimento circular vara ligeiramente das instrugdes LIN ou | PTP dado que € necessério acrescentarem-se as eoordenadas de pasigo ‘dum ponto auxiliar sobre o arco de elrcunferénoia. ‘A pose do robot também nao faz parte da instrupao. caren ad (CRX+150.07-50.02-50.5 X4+250.0 ¥-80.02-20.5 A+90.000 B+0,000 0+480,000 CATP P15(3) X+250 0 Y-80.0-20.5 A+90,000 B+0.000 C+180.000 carp Prsie)Pos P36) | cA s1008102 As ts primeiras coordenadas correspondem 40 ponte auxilar. Nocaso de se usar um ponto tabelado, s6 0s valores de X,Y, Z sa0 usados. ‘VEL - Instrugao de velocidade Alinstrugo de velocidade permite programaras velocidades dos varios tipos de Movimentos. Se no or especificada antes do primeira movimento 0s valores ‘880 obtidos a partir dos dados maquina, ‘Ainsttugdo permite definiras proridades no célculo das velocidades. A velocidade da rajectoria do TCP, as velacidades de cada um dos trés Angulos de orientagao ‘Componente Cienlitice-TeenolSgica Guad Famansy Robots Witt Linguagem de programagae da robots JEFF - Isa v.48 | ova velocidade de um eixo extemo podem ser deciaradas coro velocidades de comando. Todas as outras deriva destas, E também possivel espeoiticar as velocidades maximas No movimento articulado ¢ ainda possive! especificar as velocidades de cada exo. VEL CPAMALLIAXSIOVIMAXLEA \Velocidades para trajectérias (LIN CR) VEL LEA CPA 15 (velocidade de comando 16 mirtin do TOP) VEL LEA ORI A 40 (velocidade de comando 40% da orientagao A] VEL MAX ORI A 40 (velocidade maxima da orientagao A 40%) VEL LEA ORI B P14 (velocidade de comando orientagdo B - valor dado pelo pardmetro P14) | VELLEA AAXt 38 (velocidade de comando 35% da velocidade do eixo austiar ” \Velbcidades para movimentos PTP VEL ALL 100 (100% da velocidade maxima para todos os eixas) VEL AXS2 80 (80% da velocidade maxima para o eixo 2) VEL AAAS P18 (velocidade maxima para o exo 3 dada por P18 em percentager") ‘VEL OV 50 (Factor de 50% para todas as velocidades especiticadas) ACG - Instrugao de velocidade | Ainstrugdo de aceieragao permite programar as aceleracdes dos varios tipos | de movimentos, | | ACO CPAALLAXS Aceleragbes para traject6rias (LIN@ CR) ACC CPA 15 (acelerapao 15% da aceleragélo mxima) rogramagia de Rohots Componente CientiieTecriotigica (GuadoFomardo enews ioe IEFP - Is Linguagem de Programagio de Robots Acoleragées para movimentos PTP AGC ALL. 70 facelerago para todos 0s ex05) ACC AXSS 80 (80% da aceleragdo méxima para. eixo5) ORI- Instrugao de orientagao A instrugao de orientagao permite espectficar o modo como a orientagao varia nos movimentos LIN @CR ORI FDQVARIPCO. ‘ORI FIX--orientagao fixa. No inicio do movimento, o robot assume a orientagao do ponto tinal e 56 entao inicia 0 desiocamento do TCP, ORI VAR - oriontagao variavel. A orientagao varia continuamente durante a execugdo. As variagGes da orientagao efectuam-se de acordo com o menor Angulo. | (ORI PCO- orientago constante em relagdo & trajectéria No in’clo do movimento | Co robot assume a orientagao (relativa & trajectérla) do ponto final e sé entao | inicia odesiocamento do TCP, mantendo a orfentagao em reiagao a trajoctoria, ‘ORIPVA- orientagao variévol om relagao a trajoctéria APO - instrugao de posicionamento Ainstrugao de APO permite determinar qual o grau de aproximagao aos pontos. APO CPA\PTP | APO CPA 80 (Q posicionamento aproximado comega assim que a velocidade alinja 80% da velocidade especiticada para a trajoctoria VEL CPA) com APO PTP 0} | ZOF - Instrugao de deslocamento da referéncia. A instrugao ZOF permite efectuar deslocamentos do referencial da base do robot, possibiltando a eriagao de reterenciais do utilizador. Possibilita, de um modo simples, a deslocagao de um dado programa, tanto em posi¢ao, como om orfentapao, E possivel manter uma tabela de 9 ZOF's. ZOF ABSIREL | ‘Componente Cientitieo-Tecnolégiea (GiiadoFomardo amagao de Robots wia9 Linguagem de programagae de robots IEFP - Isa Ww .20 Programagao | Epossivel ter simultaneamente activos dois ZOF's, um ABS em relagdo Abase 40 robot e 0 outro relative ao primeiro. ZOF 1 ABS X+50.0 ¥-10.0 240.0 A+0.000 B+0,000 C+0,000 (Esta instrugso provoca um deslocamento do programa de 50 mm em Ke de-10 mmem Y) OF 2 REL (Neste caso, os valores nao s&o especticados, sendo determinados ‘apartirde uma tabela existente em memoria). A instrugao ZOF U vancela 0 deslocamento do referencia. Na instrugao ZOF 6 possivel especiticar as tres primeiras coordenadas por POS PO-04(3} ou por parametros individuals. TOF - Instrugao de ferramenta A instrugo de TOF permite especiticar a posigae do TCP reiativarmente ao uno. TOF 19 | TOF 1 T+300.01.+500:00-90.000 (A lacalizagao co TOP em relagéo ao reterencial do punho & dada pelas distareias Te Le pela rotagao D). (O valor de T é medio na perpendicular talange do punho € o valor L numa paralela, D indica rotacao do referencial do punho relatvamente ao da falange, Segundo o eixo perpendicular a talange). Pode manter-se em meméria uma tabela com TOF's numerados de 1 a 9. Os valores do TOF podem sor parametrizados. PND - Instrug&o de movimento pendular Esta instrugo tem como principal iteresse a soldadura por arco (WEAVING) fe permite sobrepor um movimento ondulatério &trajectéria. Instrugdes de entradas / safdas e meméria Este grupo de instrugdes permite processar entradas ¢ eaidas diyitais & analégicas, possbiitandoa interaceao do rabot como meio envolverte. Existem sina instrugdes para transferrdados para areméria, Robots Componente Cientiio-Teenolégiea (GuiadoFornando IEFP - Isa Linguagem de Programacao de Robots - TR-Instrugdo de transferéncia Esta instrugao permite transferiro resultado da ultima operagao légica, Na ca aE) | i TROMB TRO15 (Transtere o ultimo resultado l6gico 0 ou 1 para.asaida digital t5) TRIMEO (Transtere o Ultimo resultado ldgico 0 ou 1 paraa tlag dada por M60) TR B70 (Transtere 0 Uitimo resultado légico 0 ou 4 para a meméria de ur.bit 70) S- Instrugao da activagaio Esta instrugao permite activar uma saida oumemdria, a Goa | SO\IOMB $015 (Liga a salda 18.0 seu valor gico passe a 1) S M30 (Coloca o valor aa flag 602 1) 10 @idéntico a © (OUTPUT), mas é um pulso, ou Sela, a Saida, apds umcerio intervalo de tempo, cai aQ. RS -Instrigao de desactivagaio Esta instrugao permite desactivar uma saida ou meméria. RS OMB LAD -nstrugao 68 atribuigo Esta instrugao atribui valores a parémetros, Saidas, memrias e pontos. LAD Prowanayis | | | | | | | ! ‘Componente Clentitico-Tecnoligica Programacao de Robots IV. 21 (Guido Fomanto Linguagem de programacae de robots IEFP W.22 Programacao de Robets Isa LAD P15 P70 (Atribui ao pardmetro 15. valor do parametio 70) LAD P17 POS (6) (Goloca os valores de X, ¥, Z, A, B, Cem 6 pardmetros com inicioern P17) LAD P20 8310 (Coloca os valores de X, ¥, Z, A,B, Ccortespondentes a0 ponte n? 310 em 6 parametfos com inicio em P20) LAD P25 AAX8 (Coloca oval do eo extemo 8 no pardmetr 25) LAD P19P(3)(Coloca os valores de X,Y, Zem- pardimetros com inicio em ts. 19.0RUG) Colocaos valores de A, 8, Cem parimstie comico em LAD P21 X (Colocao valor deX no pardmeto P21) | LAD P10F1X+300 (Atribu a P90 ovale iteiro 300) | LAD P10DIS-5010900 (Anbu a P10 ova real 0.0900) LAD Da 150 (eartegano output cigtal3.o valor 150) [Um output digital é 0 conjunto de oito saidas. Por exempio, D& -equivale As saidas de 17-24 {LAD $500 P40 (Carrega no ponto 500 0s valores de X, Y,Z, A: 8, C guardads em P40-P45) GRP - Comanda de uma ping: Esta instrugao permite mudar 0 estado de duas saidas geralmente atrbuldas a ‘uma pinga, GRP OP\CL, GAP 1 OL (Fecha apinga 1) GRP 2 OP (Abre apinga 2) ‘TDF - Distancia no tempo Esta instrugdo permite mudar o estado de safdas digitais em fungao do ‘movimento do TCP, ANO - Safda analégica Esta instrugtio permite mudar 0 estado de saidas analdgicas. Componente Clenttice-Teenoligica (Ghia Formardo IEFP - IS@ Linguagem de Frogramagio de Robots ‘OUT- Saida para periféricos Esta nstrugdo permite enviar palavras de 8 e 16bits para equipamanto partrico, Instrugdes aritméticas 0 légicas As Instrugao and Esta instrugao permite fazer uma operagao légica AND com o iltimo resultado logico. A MANMMINIBINB ‘A148 (az uma operagio AND do tiltimo resultado ligico com o valor lbgico da. entrada 45. 0 resultado fica em meméria e pade ser manipulade com uma instrugao TR) O- instrugao OR Esta insirugio permite fazer uma operagao ldgica OR com o titimo resultado logieo. ARI -Instrugao aritmética Este grupo de instrugdes permite efectuar operagoes aritméticas. AR] ADD\SUB\MLTDIVICMP\SORISIN\COS\TANARS\ARCIATA De um modo gerai, existem 2 operands, sendo o resultado da operagao ‘acumulado no primeiro operando, | ADD P50 P25 (soma os valores de P50 € P25 ¢ coloca o resultado em P50) CMP P30 P40 (compara os valores de P30 e P48 ¢ guarda em memoria o | resultado da comparagae. Usado em conjunto comainstruga0 CON) | ‘SIN P20 P15 (calcula o seno de P15 € coloca o resultado em P20) ADD P50 X (soma o valor de PSO com o valorde X e guarda o resultadoem PSO) | ADD P12 FIX-¢50 | Componente Cientfico-Tecaclégica iad Fomando ogramacao de Robots Ww.23 Linguagem de programagae de robots IEFP - Isa v.24 | ADDP17 DIS+304.5000 ADD P13 D3 (Soma o valor de P13 com o valor da saida digital 8) Instrugées especiais ‘TXT- Instrugao de texto Esta instrugdo perite apresentar no display o texto incicado (16 caracteres) | TXT Programa t A instrugo REM é idéntica & instrugao TXT, mas a palavra nao ¢ mostrada (max, 26 caracteres) AAX.- Instrugio para activar / desactivar eixos externos, Esta instrugao permite ligar ou desligar 0s eixos externos AX ONOFF Comos eixos externas ligados é possivel optar entre o sistema de coordenadas | robotou dos ehxos extrem. Peet AAX ON ROS (Sistema de coordenadas robot) AAX ON AAS (Sistema de coordenadac auxiliares) ‘AAX OFF (Desactivagéo) PPA - Movimento ponto-a-ponto em conjunto com eixes externos Esta instrugao ¢ idéntica @ PTP, mas inclui tambem os eisns externas. Exemplos: PTP X+100.0 Y40.0 Z-50.6 A+90,000 840.000 C+180.000 BAA RIP RAN RGP RAN RSP REP A1+50000.0 A2-3000.0 LIA- Movimente linear em conjunte com os eixo externos Esta instrugao é idéntica & LIN, mas inciul também os eixos externos. Robots Componente CientiicorTeenolégica ‘iad Foard CIA- Movimento circular em conjunts com os eixos externes | Esta instiugso ¢ idéntica & CR, mas inciul também os eixos externos, | LINGUAGEM HITACHI (ROBOTM6100) Introdugao | | Alinguagem de pragramago que se descreve seguidamente éidéntica para os roboisda HITACHI. No entanto, existem particularidades diferentes para cada | ‘abot, pelo que apresentamos as instrugdes para o robotMM6100, um rebotde | proceso de 6 eikos e capacidade de carga de 10 Kg, : | Os programas dos robots HITACHI sao bastante simples incluem instugbes | para definrtrajectoras, condiges de operagao e troca de sinals do robot pertérioos © controlador robot tem uma capacidade de armazenamento de 100 programas. Estruturas dos programas seuaenpartoM69 pea sess up psn tues + nas lmdinetag + sen om eet | ‘+ Instrugdes para gerir entradas / saidas e temporizadores; Instrugdes avangadas de movimentagao; * Instrugdes para desiocamento de exo; * Instrugdes especiais. Instrugdes de movimentaciio (bésicas) | | Para desenvolver um programa on-line tornase necessério incluirum ndmero Iminimo de instrugdes, que correspondem aos pontos do ciclo e aos moximentos | Componente Cienttco-Tecnoligica ‘Guia do Femara Programa;ao de Robots Linguagem de Programacae de Ronots w.25 Linguagem de programagad de robots IEFP + Isa, centre esses pontos gravados por ensinamento. No sistema HITACHI a localizagao dos pontos é dada por um sistema de coordenadas %, ¥. Z, A, B, C, sendo os trés ditimos parametros usados para a especiticagao da oriertagao em termos dos angulos EULER Rz, Ry, Rx. De notar que as coordenadas no figuram na listagem geral do programa, podendo, contudo, sermostradas na consola. As coordenadas sao relativas ao referencial activo, por defeito abase do robot, podendo, no entanto, haver um deslocamento de ebxos (ver instrugses Silt), | E também possivel definir um referencial do utilizador, mas fora do ambiente | qutomatico de programagao. Concizbes do) ‘movimento mento) = + [Petteprearamaae Tr velosidade 2 Aewiaragio 3 inerpotagio 4- Posicionamento i Figura M2 - Movimentapso bison ' Oprograma é eomposto do pontas o concigties que estabelecero modo coma | erabot se movimenta entre os pontos. | cada ponto¢indeado por Prnn, podend ter valores de 001 a 207. rrodo como 6 movimento seprocessa éineadoantes do ponto programadb. i ' | Eee i | | Movimento do robot do porto 1 para o ponto 2 & velocidade de 400 mms @ | aceleragéo 100%. 10Po01 | 11 Speed 400[mmi/s] 12 Aceleration 100%) 13P002 ) 1V.26 Programagao de R. ts Componente Cientifico-Teenolégics Gad Femardo IEFP - ISQ Linguauem de Programagao da Robots A interpolagao do movimento pode ser efectuada em movimento das juntas | (Ponto-a-ponto), segundo uma linha ou um arco de citcunferéncia. 10001 11 Interpolation Articulated 12002 Uma vez seleccionado o tipo de interpolagao, ele mantém-se até ser mudaddo. + two | * Fine | iowa 1V3 - Tpos de Posteonameno | ‘No posicionamento fino o robot passa pelos pontes havendo uma paragem ‘momentinea (Velocidade nua}. Passo Ponto Condlgdes | ot Interpolation Line oe ‘speed $06 rmmisec] 3 Positioning Fine 4 ‘Acoleration 100%] | Componente Cientiio-Teonligica Programagae de Robots (GuindoFomardo W.27 Linguagem de programagao de robots: Ww. 28 Programacao de 10 1 12 13 4 18 Poot Po02 Po0a Poo Poos 006 Interpotation Circular Speed 200 [rner’sec] Interpolation Line speed 300 [minvsecl EOP (fim do programa) IEFP - Is O robot descreve um arco de citcule entre os pontos 2 @ 4 passando pore um segundo arco entre os pontos $e 5 passando por 4 Estas instrugdes sao as corespondentes & operagao basica, ‘Saguidamente,ilustram-se as instrugdes correspondentes & operagao compsta do robot. Instrugées com contadores Este conjunto de insteugdes manipula contadores. SET C -tniciaco de contador Esta insttupdo inca um contador com um dado valor geralmente usada pare atrbuiro nimero de vezes que rd ser executado um ciclo (Loop). 1 rc Set 625-9000 Py Iniciagao do contador nO- 250m 0 valor 3000 LOOP. Cicla Esta instrupdo marca o inicio de wn ciclo repetitive de instrugoes. O tim é dado por uma instrugae Label Exemplo: 5 6 18 Robots Set c25=10 ‘Loop 25, L830 L830 Componente Cientitice-Teenolégica (cues Farman IEFP - 1S Linguagem de Programagao de Robots As instrugées entre 6 © 18 seriam repetidas 19 vezes. O valor do contador val sendo dectementada de t por cada ciclo. ADD Cmm- Adiga de valores de contadores Esta instrugao adiciona o valor de um contador ao valor de outro, 1 ADD C80, C50 Equivale ater C30=C30+C50 LOAD Cmm- Atribuigao do valor de um contador a outro Esta instrugao alribul o valor de um contador a outro, a 1 LOAD CAs=c60 contador 45 passa a ter evalor do contador 60. IF JUMP Cn - SALTO CONDICIONAL | Esta instrugfio provoca um salto condicional para un enderego, dependendo do valor de um contador. | 1 Ifjump C70= 250, LB30 Occontrolo passa para 0 enderego 30 se 0 valor do centador 70 for igual a 250, Podom estar 0 a6 condies =, >< «>(erente, Nota: Apesar de, em termos de menus, esta instrupao estar no grupo dos contadores, deve ser considerada uma instrugio de execugdo, ‘Componente Cientilies-Teenolégice ula Formanda Programagio de Robots Ww. 20 Linguagem de programagae de robots IEFP - ISQ v.30 2 Programacao da Robots Instrugées de execugao | Lann-Enderego Esta instruyac permite definir um LABEL (enderego) para salto do programa. 1 LBs JUMP - Salto para um enderego Esta instrupao permite efectuar um salto na sequéncia de oxocugao do programa paraum enderego. 1 JumpLBas Provocaria a continuago do programa nainstrugao a seguir’ intrusdo LB34. IF JUMP - Salto condicionat Esta instrugio permite efectuarum salto na execupaio do programa, desde que se veriique um dado estado de uma entrada 1 IF Jump |04S=ON, LB20 © salto para © enderego 20 56 se electuaria se a entrada 45 estivesse no ‘estado ligado. CALL- Chamada de um programa Esta instrugSo permite parar e chamar um programa a panir de outro. Ap6s terminar 0 programa fio, a execueao continua no programa mae. 1 CallP-N 0 Componente Cientifice-Tecnolégica ‘Gua oFornando IEFP - 1SQ Linguagem de Instrugées de entradas / saidas e temporizagao WAIT Innn- Esfera de Input ou timer fl Esta instrugao coloca 0 robot em estado de espera até que uma entrada passe | a0 estado 0 ou § ou até que passe um dado intervaio de tempo. 1 Waitio15=ON, Timer=200 [sec] "Neste exemplo, o robot ficaia em estado de esperaaté quea entrada 18 passasse | acestado ON ou durante 200 segundos. Se ndo quisermos introduziro tmer devemos por o seu valora zero. Esta instrugao permite activar ou desactivar uma saida digital. 1 QutputOo18=ON 2 GutpurOo1 @=-0FF | OUTPUT- tiga paragem de um ouput | PULSE - Ligagao / paragem de um output com pulso Esta instrayao permite activar ou desactvar una saida digital durante um dado intervalo de tempo. i cue) 1 Pulse O018=ON 20.10 seo] De notar que, assim que o pulso arranca, omevimente do robotpode continuar. TIMER Temporizador Esta instrugao permite parara execuga durante um certo intervalo de temo. | | I I | CConponanta Cienttco-Tecnol6giea Programagao de Robots ‘iad Fornando v.31 Linguagem de programagio de robots IEFP + ISQ Ww. 32 Programagao de 1 Timer3.45 tse} HANDITHAND2- Instrugte de comando de pingas Esta instrugo modifica o estado de duas sa(das digital, goralmento usadas para comando de pings. 9. Eo 1 Hand? ON 2 Hand OFF Instrugdes de movimentagao ( avancadas ) ‘STOP - Paragem temporaria de um programa Esta instrugao permite parara execugo do programa até que a tecia START seja premida HOME - Colocacao do robot na posigao de repouso Esta instrugdo parmite mever o rabotpara a posigdc de repouso, guardada na meméria. EVENT Snn - Sinal ée evento Esta instrugo move o robot para o ponte de fim de evento Pann, monitorizando ‘o sinal de evento (sinal dedicaco). ‘Seo sinal de evento ocorrer durante o movimento, a distancia entre a posigéo {do parlida ea posigao actual no momento do eventa é adicionada ao registo de deslacemento e o programa salla para o enderago especiticado. Caso nao seja delectacoo sinal de evento, o movimento continua ConA} 2 Evont $67, LB 30, 18 P01 Event OFF 0.0 [mms] A velocidade de deslocamento & de 20.0 mms e o movimento é near. Robots Componente Cientico-Tecnoidgica (Guia do Femando IEFP « ISQ Linguagem d Intrugées de deslocamento de eixos SHIFT Deslocamento de eixos | Esta instrugao moditica 0 referencial do robot introduzindo um desiocamento {dado pelos valores existentes no registo de destocamento indicado. Corresponde Aactivagao de um referencial do ullizador, desfasado apenasemX,¥,Z. | a 1 Shit 200N 8 ShIROFF Activaao do referencial n?20 e posterior desactvacao. SHIFT CLEAR - Atribui¢ao de zero aos valores de um desiocamento Esta instrugao leva a zero 0s valores de X,Y, Z de um dado deslocamento, as 1 Shitt clear $25 5 Shiftclear ALL 'No altima exempio todos os registos de deslocamento (1-99) sao colocados 2 zero. SHIFT AMOUNT- Atribulgao dos valores de um destocamento Esta instrugao atrioui valores de X, ¥, Za um dado deslocamento. 1 Shift amount$34, X 600.1 [mm] 5 Shiftamount $50, add ¥ 100.3 {mm} No dite exemplo 0 vaior 100.1 & adicionado ao valor existente na coordenada | Y do registo de deslocamento n*50. de Robots W. 33 Comoran Cientilea Telia Guia Femando Linguagem de programagae de rohots JEFP «Isa v.34 a Programacaa de|iobots | Instrugdes especials | Existerninstrugsas espaciais para rrovimentagio de eixos extemos e escolha do TOP. No ertanto, sé se encontram disponiveis cam opgao ce software Descrevernse seguinamente as ins-ugées para soldadura ARC ON- Arranque de arco eléetrico Esta instrugao activa 0 arco eléatrica 1 Aro ON{010] 300A30.0V150e1rvmin No exemplo os valores de pracesso sao recuperados a partir do parametro 010 et os valores mostrados {800 ampéres, 30 volts e 150 ervrinde velocidace | doarame). | ARC OFF Paragem de arco eléetrico Esta nstrupao desactiva o arco elécttio, } 1 AC OFF S WEAVE ON- Arranque de oscllagao Esta instrugdo arranca cana asclagaa do TCP para soldadura por arco. Seque- | sehe ontenere do parmetro de soldadura (idéntico a Arc ON). A pscilagao & do tipo harménico, S WEAVE OFF- Paragem de oscilagao Esta instrugao para a oscilagao do TCP para soldadura por arco, L WEAVE Oscllagaoem1 Esta instrugdo activa a oscilagao em L. Ca 1 Weave ON [80] 200A 30.5 100 ornimi ‘Componente Cientiieo-Teenoligica (iad Fomando 2 P080 (Ponto auxliar 1) 8 —PO8t (Ponto auxiliar2). a Weave OFF | L WEAVE COND CHG - Mo jcago da condigio durante L weave Esta instrugao altera 2 conoid de oscilagao erm L. oenee 1 L Wave condin cha [45] ' A LINGUAGEM RAPID A inguagem RAPID, caracteristica do sistema $4 da ABB, foi desenvoivida tendo em conta a popularidade da linguager de programagdo PASCAL, muito difundida, conjugada com o ambiente de trabalho do tino Windows e compatibiidade MS-DOS Estrutura da linguagem | ‘© progtama consiste numnimere de instrdes, as quais descrevemo trabalho do robot, Portanto, existem instrugdes especificas para os varios comandos, | como sejamo movimento do robot ua acivagao de uma saida digital | De ummedo geral,asinstrueses tim associado um certo nimera deargumentos «ue define apariculaidade daquelainstrugao. Por exemplo, a instugao para | desactvar wma saita digital contém um argumento que detine qual 6a saidaa ser desactivada, por exemplo Reset do 6. Estes argumentos podem ser espectticados de uma das seguintes formas: | * Como um valor numérico ex. 5 0u 4.6 + comoreferénciaa um dado exs691 | + Como uma expresso ex. Steg 1°2 Como ura fungao ex: Abs(ee9 1) © Como uma varidvel string" ex.: "Produzir pega A’ Componente Cieniico-Teenolégica ‘GiadoFomardo Programadaa de Robots SQ Linguagem de Programacao de Robots Wwe35 Linguagem de programagaa v.36 robots IEFP - Isa |, Existem rds tipos de rotinas - procedimentos fungoes @ rotinas de interrupgaa, Programagao| de) Robots Um procedimento ¢ utitzado como um subprograma. ‘© Uma rotina fungao volte com um valor de um tipo especifigo e & usado como argurnento de uma fungao. Uma rofina de interrupgao é um meio de responder a interrupcées. Pode também estar associada 4 uma interrupgao especifica, por exemplo, a ‘ocorténcla de um erro pode ser motivo para que uma determinada rotina seja executada com Insirugées especiticas para corrigit aquele ‘acontecimento. A informagao pode sor armazenada como dados, é 0 caso dos dados de ferramanta (os quais possuem toda a intormagao da ferramenta, tal como 0 Ponto Central de Ferramenta ea seu peso) ¢ dados numéricos (os quais podem ser ullizados como contadores de pecas a pracessar). Os dados podem ser agrupados em diferentes tipos de informagao, como selam as ferramentas, posigées ecargas, Estes dados podem sercriados acbitrariamente sem qualquer tipo de restigao, dependendo o seu numero apenas da disponibilidade de memoria, Existem trés tipas de dados - constantes, varléveis e persistentes. '* Uma constante representa um valor estatico es6 Ihe poderd seratribuido no- vo valor manualmente. * Uma variavel pode tomar diferentes valores ao longo da executio do programa, '* Uma persistente pode ser descrita como uma variavel que persiste no seu valor. Quando 0 programa é gravado, a iniciagao retlecte « titimo valor. Outras caracteristicas da linguagem s&o: '* Parametros de rotinas: ‘+ Exprossdes aritméticas e tégicas; + Tratamento automstico ue erros; * Programacao modular. Conirolo da programacao © programa &, por regra, executado sequencialmente instrugao a instrugac, Porvezes, existem instrugdes que interrompem a order sequencial de execugao que chamam outras instrugées, sendo necessérias para atender a diforentes situagdes que poderao surgir ao longo da execucgo de um programa Componente Cientitieo-Tecnalégiea (ac Fomando Linguagem de Programacao de Robots C Principios de programagao © fluxo de um programa pode sercontrolado de acordo com cinco principios. | siferenies que passamos a referir * Porchamada de outra rota e quando, terminada esta, vol &instrugao se- | uirte daquela que tinha forgado a chamada, ‘+ Executando uma instrugao dependendo de uma determinada condigao. ‘Arrays da repetigao deuma sequéncia de instug6es até que uma determina: da condigio seja satisfeita. © Indo para ura etiqueta (label) dentro da mesma rotina f ++ Através da paragem de execurdo da programa. Chamada a outra rotina | ProCall_ Chama (sala) para outra retin. RETURN — Retorna Arotina original Controlo do programa na rotina Compact JF Executa uma instrugto se a condipao for satisfeta © Executa uma sequéncia de gifsrentes instcugdes dependendo da ssalisfagao ou ndo da condica0. | FOR Repetea soocao de um programa um cero numera de vezes. WHILE — Ropato uma sequéncia de diferentes instrugdes desde que a condigao seja satiseita | | TEST —_Executa diferentes instrugdes, depandendo do valorda expressiio testada. GOTO Sata para umactiqueta iqueta _Especifice uma linha do programa. Paragem de execugéo do programa Slop Para. a execugac do programa, EXIT Para a execugo do programa e no penite o sou recomogo. Break ——_Péra.a execugo programa termporariamente para verificagdes. Componente Cientitia-TeenolSgica Programacae de Robots IV . 37 iad Fomarea Linguagem de programagaie de robots IEFP - Isq v.38 8 Programagao de Robots | Instrugdes varias | varios pos de instrugoes podem serutlizadas par | {+ Atroievalores a dads | © Esperar uma determinado tempo ou que uma condigao seja sati | * Inserir um comentario ne programa. Atribult valores.a dados ‘Ans datos podem ser atribuldas valores. Pode ser iniciaco com um valor constante, por exempl 5, e actualizado com uma expressao aritmetica co tipo regt 45'reg3, tribui um valor a0 dado Esfera (© robot pode ser programado para esperar um determinado tempo, ouesperar até que uma determinada condigao seja satisteta; por exemplo, espera’ ate que uma determinada entrada seja colocada no valor digital. WaitTime _ Espera um determinado intenvalo de tempo | WaitUnti Espera que una determinada condigao sejasatisteta Wait! Espera que uma entrada cigitalfique a 1 Comentarios | Os comentarios so inseridos nos programas para aumentara sua legisiidado, | Axecupao dos programas nao é atectada pelas inslruGdes de comentario. ‘comment comentérione programa Furg6es vérian Dim Dimensao da matiz Present Determina se determinad pardmetro opcional estava pre- sonte quando a tina foi chamada. Dados base boot dado légice (com 0 valor faiso ou verdaceiro) rum valores numéricos (decimais ou inteiros). Componente Cientitico-Teenolépien Guia do Fonanco IEFP - 1s sting caracteres muds (stings), sowtch —_pardmotes do rotna semvaior | Parémetros de movimento Alguns dos pardmetros de movimento stio determinados utiizando Instrugses tgicas que se aplicam aos movimentes: * Volocidade maxima e de sobreposigao; + Aceleraga: * Comportamento parto de pontos singulares; + Gastao das diversas configuragées do robot * Cargas na ferramenta; | ++ Programas de deslocamento. Principios de programagao | | As caractristicas basicas do movimento dorobct so determinads pees dadcs | especitices para cada instrugao de posicionamento. Alguma informacao esta especificada em instrugdes separadas, as quais se aplicarm a todos os movimentos até que aqueles dads sejam mudados. f tips de movimento esta especiticade num conjunto de nstrugées, mas pode | serlide usando a varidvel de sistema C_MOTSET ouC_PROGDISP. (Os valores por defeito sao aulomaticamente estabelecidos: | + Quando ha um arranque a fio; * Quando um nove programa é carregado: | *+ Quando se executa a primeira instrugao da programa Dofinigao de velodidade A velocidade absoiuta 6 programada como um argumento na instiugao de posicionamento, Em adigao ast, pode fnxar-se a velocidad maxima, VelSet Velecidade maxima | ‘Componente Cientico-Tecnolégiea Gaia doFomanda ogramagao de Robots v.39 Linguagem de programacaa de robots IEFP - ISQ Definigaio de acelaragao ‘Quando pegas trégeis tém de ser man'puladas, a aceleragao pode ser recuzida ‘em parte do prograrna. AcoSet Define a aceleragao maxima Definigao de carga De modo a obtera methor performance na movimnentagao do robot, deve ser especiicada a oarga correcta, Grplcad Carga coma ferramenta Comportamento perto dos pontos singulares (© robot pode ser programado de modo a evitar a passagem por pontos singulares, através da mudanga automatica da orientagao da ferramenta. SingArea__ Ométodo de interpolagao junto de pontos singulares. Movimentos (Os movimentos do robot s8o programados por ¢novirnentos ponto a ponto. O camminho entre dois pontos € autorraticamente caloulado pelo mabot Pri dle programagao As caracteristicas basicas do movimento, tais come o tioe de caminho, sao especiticadas pela escola mais apropriata da instrugao de posicionamento. ‘As restantes caracteristicas do movimento sao especiicadas pela definigao de argumentos nainstrugao: * Dados de posigae (posigae tinal do robot e dos eixos externos}; * Dados de velocidade (velocidade desejada): * Dados de zona (precise da posigio}; Dados de ferramenta (posigao da ferramenta); * Dados de orientagao (Work-object data) define © sistema corrente de ‘coordenadas, Algumas caracteristvas do movimento io robot sao determinadas porinstugbes lgicas que se apicam a todos os movimertos, a saber © Volocidade maxima Robots ‘Componanta CientiieD-Teenoligiea hia doFomand IEFP - Isq Linguagem de Programagao de Robots e- + Aceleragao; ‘© Comportamento junto de pontos singulaces; Gestio das dilerentes contiguragéas do ob0t; ‘+ Carga na ferramerta; + Deslocamento de programa Quer 0 robot, quer os ebxos extemos sie posicionades utiizando a mesma instrugao, Os ebxos externas sao movimentados a uma veiocidade vonstante, chegando 4 posigae final ao mesmo tempo que o robot. Instrugoes de posicionamento MoveC PCF move-senum caminhocircular | Moves Movimento de junta, | Movel. POF peroorre um caminho linear. Pesquisa Durante um movimento, © robot pode pesquisar uma posig&e ou ebjecto. A pos Go encontrada {indicada pelo sinal do sensor) ¢ armazenada e paderé ser | utlizada pelo robot para mais tarde efectuar desiccacées de programas de mode automatico Search POF ao longo de caminto circular Search POF aa longo de caminho linear Dados de movimento Existein informapaes que sao ‘undamentais para as instnugoes de posiclonamento e sao inseridas como argumentos as referidas instrugses, robtarget —_posigaotinal speeddata velocidade tooldata sistema de coordenadas da ferramenta @ carga jobdata —_sistemade coordenadas zonedata precisa da posigao Comunicagées Existem trés maneiras posstveis de comunicar via canal série Componente Cientico-Tecnol6gca Programaééo de Robots IV. 41 (Gado Fornanda Linguagem de programagae de rohots IEFP + Isq ‘+ As mensagens podem ser enviadas para a unidade de programagio eo utlizador pode respondera perguntas pré programadas, talcoro onimero de pegas a etectuarno cia. |. a intormagdo pode ser esoritae ida. em formato de fehelostonto, er disquetes que, por sua vez, mais tarde podem ser analisados em PC. '* Informagao binaria pode ser transferida de e para sensores ou outros dis | Positives: Comunicagae com a unidade de programacao TPErase —_Limpaamonitor da unidade de programagao, TPWrito _—Escreve texto na unidade de programagao, TPReadPk —Atribul fungbes especiticas a teclas de software, |endo ual delas foi activada. TPReadNum 6 um valor numérico introduzido na console de progra- magao, Ler e escrever num canal série ‘S30 trés as instrugdes que podem se" usadas em programagao para acedera ccanais série, quer sejam unidades de disquetes ou outros: Open Abreu canalou fichelropara lerou escrever. Write Escreve um texto nur ficheiro ou canal Close Fecha um ficheiro ou canal | Duas fungies estao também disponiveis: ReadNum Le umvalor numérico. Reads Laumtexto ou frase. Outra: strucGes e funcoes: }) } Para além das instrugdes anteriormente referidas, existe um conjunto de outras instrugSes que podemos aividir do seguinte modo: © Entradas esaidas | ‘Quer os sinais digitais, quer 08 analdgioos podem, através do RAPID, seralvo Ge diversas acgdes, como sejama sua letra, nudanga de valore teste da sua condigao, -* 1.42 Programagao de Robots ‘Componente CientiicoTeensisgica iia doFomando IEFP + ISQ Linguagem de Programacao de Robots ¥ © Interrupgées. As interrupgSes sio usadas num programa de modo a permitirentrar em linha ‘de conta corm um determinado acontecimenta, iidependentemente da instrugao | ‘que estava a ser executada na altura | Asiinterrupgoes podom ser utlizadas ou tratadas do seguinte modo: CONNECT Liga uma interrupgao a uma rotina de tratamento de ert. (Signal! Umainterrupgao via sinal de entrada digital. (Timer Umainterrupgao por tempo (Delete Cancel umainterrupeao. Steep Desactiva umaintertupgao. Match Activa umainterrup¢a0. (Disable Desligainterrupeées. enable — Ligaintercupedes, | + Recuperagao de erros | Muitos dos eros que acorrem durante a execugdo de um programa, podem ser manusoados no mesmo programa sem terem de pararforgosamente aexcougao | do programa, isto quer dizer que os eros no funcionamento do programa nao | Impicamn a obrigatoriedade de paragem deste, | ‘Assim, a linguagem RAPIO possui um conjunto de instrugdes que permite a0 ‘operadior/programador manipuiar evs. | = Tempo @ matematiea (© robot possul um reldgio de tempo real, que pode ser usado pelo programador ra elaborago de seu programa, No que respeita & matemiatica, existem instrugSes para manipulagio de valores «e varidveis (nao contundir instrugdes.cam tungées na Inguagem RAPID). Componente Cientiico-TecnolSgiea (vada Foranso Programatao de Robots wea Linguagem de programagad de robots oe] RESUMO ‘Nesta Unidade Temata foram primetramente apresentados os conosios basicos das linguagens de programagéo de robots, sendo esta a ferramenta que permite ao utlizador interagir com a maquina de maneira que esta execute as taretas pretencidas poo utlizador de uma maneira coerente e coordenadas, ‘com as taroias outros portcos. Vimos anda que a ulizagao das linguagens de programagao ¢ felt , para além dos controladores dos robo, © outras maquinas, tais como, computadores, sendo descarregados osprogramas osteriormiente nes controladares dos robats (erograma oftine}. Posteriarmente, e tendo presente as células instaladas no pais, apresentacam- ‘se as principais linguagens utlizadas na programagao de diversos robots, tais como a INFORM para os robots Montagem, a SACI para robots KUKA © BISIACHECARRO, a linguagem HITACHIe a linguagem Rapidda ABB, 2 IV. 44 Programagae de Robots Componente CientiicoTeensiégica GuiatoFormando IEFP - Isa 1 10. ‘Componente Pritica ¢ ACTIVIDADES / AVALIACAO Explique para que serve, na linguagem SRCL, a instrugao PPA e dé um exemplo. Para a linguagem SACL, explique a instrugao ZOF e diga qual o seu in- teresse em programapao. D8 um exemplo. Indique quais 0s tipos de movimentos permmitidos pelo controlador do robot HITACHIME100 & caracterize-os, Nama célula HITACHI, suponha que se pretendia implementar uma ‘seogao da programa de modo a que o robot apés efectuar a soidadura de 15 pegas fosse a um dispositive de limpeza de tocns. O programa 20 fara allimpeza da tocha, ‘Na linquagem SRCL,estabeleca a diferenga entre um subprograma (3?) 6 um cicio (CY), Na mesma linguagem, indique 0 que entende por programagao incre- ‘mental. Estabelaga um pequeno subprograma para efectuar 20 movimentos incrementa’s a partir do ponto da alinea anterior com um passo de + 18 mm na coordenada X. Para a jinguagem de programagao do controlador do robot HITACHIM6100 explique a insirugao EVENT @ dé um exempio de ullizagao. Para ormesmo controlador, estabelaga um pequeno programa para apanhar uma pega numa bancada e pouséJa novtra, O cio inicia-se apos cartogar de um bote por um operador (entrada 10). Considere que precisa 10 ‘maximo de 6 pontos gravados, Identifique os tipos de rotinas ¢ de dados permitidos pela linguagem RAPID. Quais as instrugdes que provocam a paragem de um programa elaborado na linguagem RAPID? Indique o que as alferencia. Guia doFomands (SS) ama¢ao de Robots Linguagem de Programacae de Ronots w.45 IEFP - isa Programagao de Robots 2 2 Programagcao Indirecta Programagae de Robots IEFP - IsQ Programagae Indirecta OBJECTIVOS we No final desta Unidade Tematica, 0 formando deverd estar apto ai * Interpretar os principios da programagao indirecta ou programagao offsine de robots; * Aplicaros métedas mais correntes de programagao indirecta; + (str avanaprsedenastagoe a peganatiolnteca evar | Snrogenaaoaresacesepunagi one TEMAS + Introaugao * Programagao textual * Programagao gratica © Resumo © Actividades / Avaliagao amas de Robots V.4 ied Formando Programagio Indirecta v.2 JEFP - 1SQ INTRODUGAO. ® A programagdio indirecta ou offline de um robot consiste em desenvolver un programa sem ecupar 0 robot, podendo ser efectuada, quer textualmente cam auxllio de umeditorde texto normal (ou através de um programa proprio), quer ‘graticamente com um programa que simule o robet ¢ a célula de trabalho, ‘Como exomplos de sistemas oftinetextual e gritico apontam-seos programas (OLPA da ABB e 0 ROBCAD da Tecromatx 3 sistemas de programagtio off-tine textuals nao inciuem na gereralidade 0 modelo cinematico do rabot, permitinds apenas fazer urna inttodugao as. Instrugdes que comptem o prograrra corn um controloda sintaxe gas instrugses, Por outro lado, tém de ser conhocidas de anteriéo as coordeniadas dos pontos caracteristicos da tarefa a executar, Nao entram tambem em linha de conta ‘com os atravancamnentos causados pelos objectos existontes na area de trabalho com a possibilidade de se usar uma ou oulra ferramenta. Para se conseguir desenvalver um programa de trabalho que funcione, &, normalmente, obrigatoriorecorrer a.um sistema oftline grafico. Sé deste modo 4 possivel analisar a capac dade de 0 robot aleanger a pega sem violar 03 limites das juntas mecanicas, os atravancamenios da célula, a orientacao da pinga no espaga 8D emesmoa solugao adaquadia da transtormagao cinematica inversa, Por outto iado, estes programas graticos, uma vez que incluem a madelagéio | cinematica co robot, apresentam a capacidade de calcula‘ os tempos de cicio, Programagao de Robots garantica perpendiculandade a superticies e agumas ‘uncdes nao disponiveis ‘emoertos controladores, como a execugao ve paletas @ espalhos (mirrors), Estes programas dispdem, geralmente, debases de dados de CAD dos robots e posicionadares dos tabricantes mais representativos. Cutilizador poderd comnpletar esta base de dados inttoduzinda as terrarmentas: @ pegas necessarias, Um simulador grafico permite ainda, de uma forma muito eficiente, testar e Cortigir a posigo dos elementos ca calula que mais se acequar a execugao do ‘programa de trabalho. Na hipétese de se poderem ulllizar varios robots, pode também determinar qual o mais indicado para a tarefa em causa A simulagao da movimentagaa de posicionadores, eixas externos @ objectos dentro da célula 6 outra das possibilidaces do simulador. Pode ainda impiementar, em certos casos, uma iigag3o de eventos entre processos distintos. Por exemplo, na ecorréncia do fim de maquinagem de ‘uma pega num tomo, poder cornandar 0 brago do robot para a ir buscar & bucha através de um sina, Componente Cientiieo-Tecnolégica ‘GuadsFomanso JEFP - sq __ Programagao Indirecta PROGRAMACAO TEXTUAL Um dos métedos de programacae off-line consiste em efectuar 0 programa ‘como auxilio de um editor que podera ser um méaulo de um sistema off-fncou um editor de texto normal Um editor de programa dedicado permite a apresentacao de um menucom as principals instrugdes que compdem a linguagem. Estas podem intraduzir-se livres de eros de sintaxe. ‘As coordenadas dos pontos do programa fazem parte, vulgarmente, de um fichsiro que deverd ser editado pelo utilizador. Para a obtengac das coordenadas dos pentos poder-se-4recorrera um médulo de software com interface cori um sister de CAD para importaras coordenadas a partir de Lm desenho. De qualquer modo, 0 uiizador devera completar a parte corresponderte & orentagao co drgao terminal ea pose do robot (soiugo Ga ranslormagao cinematics versa). Dados rlatvos 20 arocesso (ex. Votagem e Corrente nas aplicagbes de arco) taribém podem ser introduzidos a paride fcheiros, oem como os pavdmetros | calerramerta, | CO sistema OLPS da ABB enquadta-se devo dos sistemas de programagdo of | ine textual, O sistema permite cir programas em ARLA (Asea Fobotlanguage), convert los em oceigo bnaroe trarsteros para um controlador com o sistema 83 Do mesmo modo, 6 possivel feceber programas em cédigo bindria, converté-los em ARLA eedité-los, Na figura seguinte apreserta-se o menu do editor deste sistema. Tea Ce — TE PRAMAS ERE POSS Thon: FREE ue ARLA Progren Exams Date wreveld Data CSSrdanate ata, File Managenent Functicns> [Specify the none of the ARIA courcs file to le elited SEXAMEIE, TR lerees after ireat cr press EX ta cancel Figura V5 - Pers 60 ator db OLPS da AEB | Componente Cfentfico-Tecnolégiea Programagao de Robots V.3 uiadoFemanso Programagio Indirecta IEFP - ISQ Quando se selectiona a opedo 1. ARLA Program entra-se no editor. Dentro do médulo de edipso ¢ possivel escolher a instrugaoa ser inserida ou alterada, Na figura que se segue @ apresentada uma lista de opgdes de instrugdes a serem inseridas e escolhida a opeao Program number. ° [Interrupt Enter, the Program nutter fox 0 to 999! Moadove te Visicn control SBEL Serve/owerior control Eel Senter point Nelecsty yee’ Figura V2 Lsia de msingsos Nas instrugdes que compdom o programa ARLA oxisto uma directiva que | roferencia qual ofcheiro que contem as coordenadas dos pontos. 1 Fils” Tmstructicn Position Unit = Metric veld Yos,2000 MAK = 25c0 | Fale Cententedanti rity) = Window” Tent Block “Gute Seerch ' Options} Frame Delite constant or rath exiessicn pies | Erene’ tremforn, RECT COORD {gu | Tnclfiie file {Rite the coordinate file rene (CHD will be appended iowa Vi Rotororeia! ao Fcheke de Coortenada V.4 Programagia de Robots Componanite Cienitie-Tecnoligica ‘SuiadoFamando e200 6 IEFP - isa Programagao Indirecta ‘Apés termos incluido as instrugées que compSem o programa, podemos ecitar esse ficheir. Nas tiguras seguintes mostram-se éorans com o programa ARLA €0 licnelito de coardenadas, Tid; for menue Line 18 col? Insert indent EXAMPLE. IRB (eee 31000 MAX = 2500 aa SE ARGE ec taubrn cRD SR FOST POS Poss To i sano BRRRSRRSSAR Sano a oe e ae FRRBPRRRRS: % rarererarstay yay eeyes TTT TES Piqua V~ Programa ABLA gerade no OLPS lb fo en= BREED 7% Line tt Galt [a $x$ 2 — ore 2 99 ag, i i i oat oo imo Goma 0 co 0 pec 00 1200 Oo7KO0 0 00 o lees 00 “SD Dm Oo 869.0 600 0 eco oo 60 OOK OD 6M OO 0 00 00 OOK Ou 0 00 Q m0 09 GOmRo. go 00 0 O.0 60.0 OOD O09 2.0 co ° 00 oo OO BK OO | OOO 0 100 100 oowR oo wo OO D 0.0 1600 097K 09 9.0 0.0 0 m0 S54 samme oo 8980 om 3 as maze 00 05 co Oo LS 661 MLA Oo 869 OU Figuea VS Fieneio de Cocrsoadas do Programs ARLA A grande desvantagem de um sistema deste tipo é que ndo tem em linha de ‘conta ¢s atravancamentos causados pelos suportes, pegas, posicionadores, ‘tc. E tambem dficll doterminar qual a orientago do 6rgao terminal ea pose do | robat : ‘Componente Cente Tecnolgica Programacio de Robots V.5 CuiadoForwads Programagao Indirecta IEFP + 1SQ. Num sisterna deste tipo nao conhecemos igualmente qual oalcance do rabot, tomando-se, pontanto, dificil prever se uma dada posigao nao vai vilar os limites ‘das juntas, sendo, assim, inaloangavel pelo robot (s sisternas textuals poderdo gerar um cédigo directamente transferivelpara 0 controlador do robot ou necessitar fazer a compilagao do cédigo para codigo bingo Atransteréncla do programa para o controlador podera ser felta com software do sistema offine ou de comunicagées fornecide pelo tabricante de robot, Exemplo disto 8 0 software Computer Link for ACM da SIEMENS. PROGRAMACAO GRAFICA Requisitos 0 desenvolvimento de um programa offing com o auxtio de um simulador grafico pressupée a existéncia de modelos tridimensionais do robot, Posicionadores, terramentas e pepas. Este modelo podera ser do tipo arames (wiretrame) ou um modelo de séiidos. 86 com um modeladior de sSldos é possivel determinar as colisdes entre os ‘arios componentes na célula de trabalho e oblerem-se imagens reaistioas por ‘Shade e Rendering Um modelador de solidos permite associar primitivas de objectos simples, por exemplo, cone, paralelipipedo, através de operagées booleanas, como unies. eintersecgées, de modo a constitulr abjectos mais comploxos (ex. uma placa ‘com um ura ellindrico). Para a modelagao destes objectos 6 necessario recorrera um médulo de CAD que poder acompanhar o sistema ou transterir os modelos a partir de um. programa de CAD externa, mediante um formato adequado {IGES, DXF}, Para uma correcta simulagao tora-se também fundamental conhecer a transformagao de coordenadas inversas para o robot que pretendemos utlizar Esta mudanga permite calcular a(s) configuragao(ées) das juntas do robot a partir das coordenadas de posigao e orientagao. Os sistemas comercials offline mais sofisticados incluem transformagées de ccoordenadas para os robots industrials mais usuals. Em certos casos, o proprio utlizador teré de deduzira transtormagao de coordenadas espectticas do robot autiizar, V.6 — Programagao de Robots Componente Cienilo-Tecnoligica ‘GuiacoFornanés IEFP - IsQ Vantagens ‘As vantagens que advém da utlizago de um sistema gréfico offline para a programagao de robots sd as glabais @ qualquer sistema co género. Este | sistema permite um desenvolvimento seguro de programas sem ocupar robot, 9 atastamerto do oparsdor de ambientes potencialmente perigosos € a | mminimizagao do risco de danificaro robot, ferramentas @ pegas durante afase de programagao. Por cutrolado, é possivel com um sistema grafico a visuallzagao dos movimentos do robot e posicionacores, da aperago das pingas. a verificagao da area de trabalho e das collsbes, 0 calculo ce tempos de ciclo, o aluste do layout da célula, prajecto oe pingas e suportes (gabarts), projecto de pegas adaptadas & robotizagao e a avaliagao de diferentes robots para a mesma tarefa, Apresentam ainda a necessidade de aprendizagem de apenas uma Unica | linguagam neutra de programagao offline, mesmo que seja indiscansével a programagao de diversos robots de fabricantes distintos, | A possibilidade de se testarem varias solugdes para suportes através do CAD evita on0s de concepgac onerasos e atrasos significatvos na construgae dos | ‘gabaritos. | Par fin, o valor da simulagao grifica nao pode ser menosprezado na educagao @ na investigagaio. Multos dos principios do controlo de robots podem ser ensinados através de simulagao, utlizando grélicos reaiisticas de forma ‘econémica e segura para grupos considersve's de estudartes. Sistemas comerciais Existom cversos sistemas comercas disponivels no mercado que diterem no | grav de sofsticagao, patatormas ulizatas e progo. Assim, podemenconar- | Se sistemas com modelaglo de arames ou de sdlidos, co7 interfaces para | diversas aplcagtes tecnolégicas (como seldadura.9otresistnia por arco, | tmanipviaggo, pntura, colagem etc), com valores que podem vatar entre as poueas cantenase os mihares de conts. \ As pltaformas utlizadas so, ou estagdes UNIX. menos frequentemerte, sistemas DOS. Como exemplos de sistemas graticos off-in temos: * ROBCAD + DENES * GRASP + MACROWELD Componente Ciealilico-Tecrolégica (GuadoFomendo v Prograiniagao Indirecta Prodramarae deRonots V7 Programagao Indirecta 1EFP - Isa © SLROBOTIK + RoBoTS0 ‘+ WORKSPACE O sistema ROBCAD ¢ um dos sistemas mais sotisticados do mercado, reunindo | a grande generalidade das fungdes oferecidas por estes sistemas. Possui um | modelador de sOlidos bastante versal e gera imagens de grande qualidade. | Contudo, tem a desvantagem de ser bastante oneroso e de requerer hardware | especie. tratamento dos sélidos @ processado emhardware, conduzindo a uma grande velocidade de processamento de imagens. sistema ROBCAD possul uma vasta biblioteca de robots industriais e méduios para Soldadura por Arco, por Resisténcia, para Pintura, etc. Na figura sequinte apresentam-se imagens obtidas no sistema ROBCAD, Figusa Vs - Célula ROBCAD pare Maniulaese Os sistemas DENEB @ GRASP sdo idénticos ao sistema ROBCAD, diferindo ‘numa ou outta potencialidade. Exemplo disso é a forma de mostrar a sua biblioteca de pingas através de slides, exibindo as caracteristicas de cada uma, V.8 Programagio de R Componente ClentiicoTeenolégice Guia Fomardo leFP Isa Programagio Indirecta e- Figura V7 « Gala de soled por resetieala Porfim, o3 quatotiimos sistemas eleridos aprosentam a vanlagem 6eusarom 0's em ver de patetormas UNIX 2, coma tel, Serem muito mais acessivels om termes de prego, cirando-se nas poucas centenias de conto. Destes sistemas, o MACROWELD corre sobre o AUTOCAD12 e apresenta 2 vvantagem de se poderem aprovellar todas as laciiidades deste sistema de CAD. E deste modo possivel usar 0 mesmo programa, tanto para desentar os componertes como rote! posicionadares, suportes, ferramentas € pegas; como para alustaro layout e fazer a simulagao dos programas do robot, Este sistema necessita que os componentes sejam desentados como sélidos ‘come modulo AME da AUTODESK, ‘Os sistemas SL e ROBOTSD usam uma modelagdo de arames, née permitinds ‘a detecgao de colisdes. Desenvolvimentos de programas 0 desenvolvimento de programas segue uma ldgica idéntica ao do desenvalvimento de wn programa omtine, sem utilizar 0 robot, diferindo apenas, ne modo de conclusao do pragrama que habitualmente se completa num editor ‘Componente Clenitco-Teenoldgice Programazao (ua doFermendo Robots V.9 t Programagio Indirecta v.40 Programacao, Como jé foi referido, numa primeira fase, é necessétio efectuar a modelagao .geométrica das pegas ou subconjuntos para as quais s¢ vai realizar o programa de trabalho, Neste momento, bastante significativo em termos de temo, pode poupar-se bastante trabalho efectuando a modelacdo 0 mais simples possivel € desprezando todos os pormenores nao funcionais (ex. ralos de curvatura em zonas nao alcangaveis pelo programa). ‘A modelagio dos elementos seque-se 0 seu posiclonamento na célula de trabalho, Caso existam eixos extemas é ainda necessdio fazer 0 acoplamento contre 0 robot e estes. Para se desenvolver um programa ott-ine comega-se por analisar a tarota no ‘sentido de se determinarem partes repetitivas do programa que sera0 incluidas em subprogramas, ‘Segue-se uma fase de determinagao dos pontos de aproximarao e dos pontos do ciclo, recorrendo-se & movimentagao do robot eixo-a-eixo ou segundo os eixos coordenados, através de menus adequados que, geralmente, se assemelham & forma de uma consola da programagao de robot (teach-pendant, ‘© posicionamento rigoroso poderd ser efectuado por determinagao das ‘coordenadas dos pontos de posicionamento recorrendo a base de dados de ‘CAD ou, em certos casos, por visualizacdo em diferentes vistas e com zooms adequados. Para cada porto importa ainda reorientar a terramenta de modo correct, Nesta fase so analisadas todas as calisdes possiveis e atravancamentos, sendo determinada a configuragdo mais adequada das juntas (solugo da transformagao inversa). Poder-se-4, também, determinarqual a orentagao do posiclonador e eixos extemos que mais faciltam a tarela do robot (Os tipos de movimentos a efectuar (Linear, Ponto-a-ponto ou Circular) so determinados ainda nesta fase, de modo a abter o programa mais efiente, A Introdugéo da légica do ciclo, com as chamadas dos sub-programas e 08 ‘sallos, Serio introduzidas posteriormente, através da interlace de programagio, ‘oucom um editor de texto. Instrugdes auxiiares que tem a ver com oprecesso (ex. fecho de pingas,arranque de arco eléctrco), também poderdo ser introduzidas no programa, bem como | instrugses para processar entradas e saidas dighals e/ou analégicas. Robots Componente Cienttco-Tesnoligica ‘GuadoFemard IEFP - Isa Programacao Indirecta Exemplo de aplicagao | De seguida, procuram lustrar-se os conceitos expostos com um exernplo de aplicagao. A larela a programar consisle na execugao de corddes de soldadura or arco em duas pegas que se lustram na figura seguinte: + Tampa de um tubo + ‘Vinyertido de chapa com dois cordées de canto M ii: Figura V8 Exemglo de apienio com 0 ROBOTED (© robot a utilizar é um KUKA IR163. 0 codigo a gerar ¢ 0 do controlador RCM 3D da SIEMENS. O exemplo urilza. sistema de programagze offline ROBOTAD scortendo sobre PC. A transferéncia do programa IFIDATA poder ser feita cam 0 software ROB.EXE da SIEMENS, | Numa primeira fase, as duas pecas s80 posicionadas na mesa de trabalho e procurar-se-a testar imadiatamerta a acessiblicade por parte do robot, tanto ‘em posi¢ao, como em orientagao com a terramenta a utlizar. Caso se detecte logo alguma impossibilidade, a posigao da poga em causa deverd sercorrigida, No exemplo as pogas foram posicionadas relativamente ao referencialca base nas coordenadas: Componente Cientiieo Teenolégica Programagao de Robots, WV. 44 ule do Femanao Programagao Indirecta TEFP - Isa. | CILINDRO: FOS -800,-1300,1000.0.0.0 | OFFSET 0,0,20,0,0,0 | PEGAT FOS-700-200,1000000 OFFSET 0,0,20,30,0,0, Finda esta primeira abordagem, dever-se-< fazer o planeamento das trajectérias e delerminar os pontas de aproximagtio e de posicionamento, Consideraremos os seguintes pontos: 1, Robot em repouso fora da zona das pegas para carga e descarga das mes. 2. Aproximagdo ao topo do tubo. 3. Ponto iniclal de infolo de soldadura. 4, Ponto auxiliar do primeiro arco de sircunteréncla, | 5. Ponto final do primeira arco (ponte inical do segundo arco}. 6. Ponto auxiar do segundo arco. 7. Ponto final do segundo arco (tim de soidadura). 8. Ponto de fuga. Figura ¥9- Pontes 18 9. Ponto de fuga para acesso 20 "T° V.12 Programagao de Robots ‘Componente CientificoTecnolégiea GuadaFommanae IEFP - Isa Programagae Indirecta 10. Ponto de aproximagaio a0 primeiro corde do "T" 11. Ponto inical do cord (iniclo de soldadura) 12. Ponto final do corte (lim de soldadura, 13. Ponte de fuga 14, Ponto de fuga. Ponto de fuga. nto de aproximagao 2o segundo cordao. 17. Ponto inical do segundo cordao (inicio de soldaduray 18. Ponto tinal do segundo corcdo (ime soldastura). 18, Ponto de fuga ponte de tuga para acesso a0 "T” 20. Robot em repouso. Figura V0 - Pontos 9a 29 Paraa determinagao das posigdes dos pontos podor-se-a usar a base de dados ‘deCAD ou recorrera uma aproximaga0 por tentativas, usando as faciidades de DISPLAY (vistas miitiolas, zoom, pan, rotagao). Programagao de Robots V.13 Programagse indirect v.44 Programagao IEFP + ISQ ‘Se necessitio, o roboté desiocado para estas posigdes @ a tocha reorientada. Os pontos sio registados €, no final, gravados no fcheiro EXEMPLO. CAR. 2,PTP X-750.0.Y-1886.6,Z+1260 0,A-70.000,B-0.000,C+180.000,59 3\LIN X-750-750.0,Y 1388 6 Z+1220 0,A-70,000,8-0.000,C+180,000,59 4.PTP X900.0,Y-1900.0,2+1 220.0,A-75 670 B-5.947,C+167.186,59 5,PTP XB50.0.Y-1213.0.2+1220.0,A-170,000,8,0.000,C+180 000,27 S LIN X-713.4,¥-1250.0,2+1220,A+115.000,8+0,000,C+180.000.27 ‘T.PTP X-750.0,Y-1986.6 Z+1220.0,A-70.000,8.-0,000,0+180.000,59 8 PTP X-750.0, ¥-1386 6 2+ 1260 0,A-70,000.6-0,000,C+180.000,59 8,PTP X.388 6 ¥-058.1,2+1460,0,A+50.900,8+0,000,C-180,000,59 10,PTP X-592.7,-836.0,Z+1050.0,A+35.000,640,000,C-180.000,63 11,PTP X-609.1,¥-847.5,2+1080.0,4+35.000,8-0,000,C-180,000,63, 12 PTP X-759.1,¥ 887.7, Z+1080.0,4+35.000,B+0.900,C180.000.63 13,PTP X-747.7,V-576.2.Z+1050.0,A+35.000,8+0.000,C-180.000,63 14,PTP X-986.6,Y-958.1,2+1460.0,4+50.000,B+0 000 C-180.000,59 15,PTP X-478.6,Y-1065.3,2+1460.0.A-1 10,000 8+0.000,C+179,999,59 16 PTP X-697,7,Y-852.5 2+ 1050.0,4-110.000,8+0.000.C+179.999,63 17,PTP X-617,7,Y-852.5,2+1090.0,4-110.000,8-0.000,C+179,999,63 18,PTP X-767,7,Y-892.7 2+ 1090.0,4-110,000,8-0.000,C+179,999,63, 19. PTP X-787.7,¥-592.7.2+1080.0,A-110,000,8+0.000,6+179:299,63 20,PTP X-594.3,¥-1208.2,2+1540.0,4+50.000,8-0.000,C-179.999,59 Figura Vt ~ Conteddo do Ficheiro EXEMPLO.CAR Nesta fase estabelecem-se.os seguines eitérios para as alectoias + Movimentos PTP para aproximagoas o fugas grosselras: + Movimentos LIN ov CR para soldadura; + Movimentos LIN para aproximagSes tinas. estado o programa em simulaglo, acrescentamse todas as instrugges necessdtias& implementagto do processo, como a escolha da ferramanta, as valocidades e aceloragées, as leituras da entrada @ accionamento de sada E desejavel que rebot sinisieo ciclo por accionamerto de uma batoneia (Entrada 5-15). Com sina caida pode considerarse a sinalizagéo de robot tem execugo da programa (lamnada avisadora - O12), arranque / paragem de arco (08)e gas de protecgao (09), Robots Componente Cientitico-Teenotégiea (hia do Fenmardo IEFP - {sa Programagée Indirecta Os dados relatives aos pontos e status dos eixos seviam abtidos na ficheiro EXEMPLO.CAR. Baseada nestes, a restante informagao do programa seria \ntroduzida num editor de texto, fra wr OFFLing DEMO OBC ox Un se 30 leRase_onss un sean lous root-rocnne sosus4o \sest pata‘exemrto Linge 12 lszoom_scace 07 Line ya Jsean toe Liv_se re lsean_nicisry PrP sP is lsonaw oF pres 16 lpainT:Loapins oF onvecrs~ uN se 17 lLoap_onsrouincen. SPAN_TOP lraee_oove sz00m.n> Jou. 0 0.x-800.¥1500,2+1000,A+0,040,6+, GosuB 40 loos oFF 0,x+0.740.2620,Ar0,0+6+0 Lise 48 lLoap_ows-re” sosue so l-are ows un se 19 Joos OFF0.X+0%+0.2420,A40.040.640, aso | lsonaw on eno lszoom_scave 12 sean rer so PRINT! Sp4o" lw ania PAINT-ARRANGUE Iso 12 sous pre sp 2 5.09 lunges 5.08 lcosus so cLonps lseaw oP retuan | lszoow_w 2 | lear as. 50 PRINT-SPSO" lon_srer PRINTED SOLO" lun see rsoe jaosue so A908 ere_sP 9 op_cart leeaw scr netuAN, Figura V.12 - Programe Oftline deservelvdo no ROBOTSD ‘Seguidamente, apresenta-se 0 cddigo RCM gerade pele pos-processador, Componente Cientico-Tesnol6giea Programacao de Robors WV. 45 (iad Famanso Programagae Indirect IEFP + ISQ oxen zateo locooe2s000-AENOFF UNE DEMO, foccos 000 A280. DECI Joon. a0 TOF 2, [0005 28005 AEM LownING OF ORIECTS: BCD WA ISH, locos S012, loxns 2x00 FI eno y-1s8a6e12500 | :70000B400N0 O+1800n0 SAA RIP ReP FORVEAP PEP PEP, loxoa.anoo0 Ler 0 Y-a5 Correagio de pardmetros de soldadura para utrapassagem dos problemas | ‘riginados por deformagdes térmicas normaterial a soldar. + corasso om os sacha de vats denser easa | soldar. A variagao maxima admitida & de 1 mm, o que é difci!de conseguir | com peqas de grandes dimensbes ou executadas manuaimente. | ! Para manteraprecisdo requerida, existem vatios tos de sensores, que podem s2radaptados o integrados em robots de soldadura, Podomos verfcarna tabela 6.1 05 sensores existontes para soldadura e os transdutores utiizados para (0560 fm, eee Micro-interruptores, poteniémetros, trarsformadores diterenciais, Monitores de tensao e corrente de soldadura para detecgao por contacto pelo eléctrodo Cortacto ‘Termopates, termistores, fototermémetros, termémettos de infravermelhos Fendmenos de _Detectores de corrente de soldadura, arco tense de arco, velocidade de arame ‘Sem contacto Electromagneticos Detectores electromagnétices de correrte induzida, Hail Opticos Detectores, fotodiodos, CCD tineares e de area Som Sondas de pres Tabele Vit - Sensores para soldadura (Os sensoree de contacto do eldetrodo ou arame de soldadura s40 os mais utiizados, devido & sua simplicidade funcional e aos meios necessarios para a ‘sua impiementapae pratia, Iremos analisar os sansores de soldadura mals tiizados em sistemas autamaticos, . SENSOR DE CONTACTO Este sensor podo utilzar um contacto ipo agulha mantada na tocha ou o proprio ‘eéctrodo (ou arame) de soldadura, tomando possivel o reconhecimento da trajecteria da linha de soldadura a executar em continu ou, portoque, captanco | ‘Componente Cienttio-Tacnolégion Programagdo de Robots VI. 3 GuadaFomarde Programagao de Sensores Vi.4 Programagao de R IEFP - ISQ {88 coordenadas dos pontos inicial ¢ final para definir 0 trajecto @ executar posteriormente pelo robot. (Osensor de contacto emite uma tensao de teste - 360 4 600V AC, para permit contactos estaveis mesmo com pegas oxidadas, e qualquer contacto com a pega é detectado por um sensor eléctrico que informa o controlador de posigao do robot do acontacimento. Occontrolador do cobat tom de captar as coordenadas dos pontos de contacto e transforma-las numa trajectoria detinida para a soidadura, Estes processos podem duplicar o tempo de ciclo da operagao devido & necessidade de reconhacimento de todo otrajecto. E um dos processos mais simpies em termos de sensor e de operagao, tendo ainda um baixo custo de implementagao e sendo geralmente usado na so\dadura de pegas de grandes dimensGes em que as variagdes dimensionais de pega para pega sic elevadas, inviablizando a pragramagao de uma trajectora pré- efinida, ‘Vamos, de seguida, descrever a programacao de um dos sensores de contacto para detecrao de juntas mais vulgares no mercado. Sensor de detecedo de juntas Neste sensor, os pontos inicial ¢ final de um cordao de soldadura podem ser alustados usando um padrao de pracura tridimens onal. A procura detecga0 ‘do realizadas antes das operagOes de soldadura, O programa pode sercariigido em termos de rotagao, inclinagao e translagao da pega de trabalho. Qualquer ‘iémere de oontos de um cordao pode ser localizado e carrigido, se necesséo, Fig, VS - Detecgao de uma para em tes draceoes porpondkaros Componanta Cientco-Tecnoligioa (Ga oFomando IEFP - IsQ Programagao Parametros do sistema O programa de contralo do robot inelui um parémetro chamado REF POINT MOD que influencia a memarizagdo de posigGes quando se usa 2 fungao STOREPOS (esta fungdo seré descrita adiante). Detinen-se internamente os parametfos da seguinte maneita: MANUAL, SCAN, PARAM, CHANGE, SCAN, SCAN, AUTO, AP MODE, REF POINT MOD=1, READ IN, INTERRUPT, SCAN, SCAN, ACTIVE, Oparametro RP MODE detine as caracteristicas de armazenamento de pontos (ver STOREP). RP MODE-0 o armazenamento da posi¢ao do roboté feito em relagao ao REF POINT (se active}, RP MODE-=1 atmazenamento da posigao absoluta do robot (REF POINT nao Interterem Pontos do trabalno da pistola de soldadura e do sensor die procura (Oponto de trabalho da tocha de soldadura (e, ert alguns casos, do sensor de [procura) & definido por uma func no sistema do robotchasmada “Ponto Central de Fenamenta" (PCF), ‘Quando se vai utilizar o resultado de uma operagao de procura, é importante ter um PCF bem definido para a pistola. Isto consegue-se determinando a posigao que se quer atingir como o resultado obtido para o PCF do robot. Define-se 0 PCF da techa como sendo a extremidade do fio quando este é cortado e se ‘encontra na posigao ideal para iniciar a soldadura. So € necessario definir um POF especial (por exemplo, no cone de gs) se 0 angulo do sensor e da tocha forem alterados ac longo do trajecto de procura, Para manter constants os Anguids a0 longo de trajecto de procura, escolhem- se coordenadas rectangulares (ROBOT, MAIN AXES, RECTANGULAR COORDINATES) na consola de programagao, antes de mover 9 rabotcom 0 joystick, para o ponte inicial de procura ‘Se fornecessério definir um PCF para cone de gas deve-se fazé-lorno centro da sua aresta frontal Definigdo do sensor Os pardmatras necessarios ao sensor so programados usando o cone de gas ‘como sensor, da seguinte maneira: ‘Componente CientifeaTecnoldgica Guia doFomardo % Programagaio de Sensores Programazie de Robots WI. 5 ramagio de Sensores IEFP - Isa, MANUAL, SCAN, TOOL, SENSOR ‘Sensor 1 No. of bits 1 Input 238 Fitted on robot No Scale 1 More sensor? No Subprogramas estas instrugdes, os numeros das entradas e saidas sao representadas no formato Int7 (ou In39, se houver mais cartas de I/O presentes). Usa-se 0 primeito numero se o sistema nao tiver uma carta de ontradas /saidas no rack lmet® 3. A carta nesta posi¢do é, normaimente, usada para o sensor. Se tal suceder,isto é, se se iver um total de trBs cartas, usa-se o nlimero dentro de parénteses, neste caso {In33). Abteviagses: INIT = Inicio. WELD= Soldadura Informagao basa para funcionamento Programa 101: (Pode ser utlizado também o PRG 22), 10 (VALORES DEFFITO*) 20 VEL 1500 MM/S MAX =2000 MMV & 30 COORD ROBOT 40 50 - % FEFPOINT DESLIGADO © PGF, detinido na extremidade do fio 7 RETORNO, ‘Subprogramas para procura e soldadura Iniciago do sensor e teste antes da operagao de procura: Programa n®305: Frogramacao de Robots Componente Cientifieo-Tecnoligica (cuacaFomando IEFP - Isa io INICIO") 2 AIDA 17(33)-1 ‘Sensor procura 11 (reset sensor procura 12). A saida 17(33) em ue ser pasta a 0 e uma nova ponta deve ser usada, 20 SAIDA 18(34) Sensor de procuts activo 40 SAIDA 19(85)=0 Reteréncia de procura passa a0 50 ESPERA OSS 80 SALTA PARA 80 SE ENTRADA 17(33}=1 Se avotagem medida pelo sensor de procuraestver dentro dos limites aprovados entrada 17(38)=1 entaa, o programa continua como se segue 7 STOP (ERRO SM*) ‘Avoitagem medida peto sensor inferior ao limite minimo que é 56V 80 SAIDA 19(95) =1 ‘Toma activa areteréncia de procura ~ (INICIO TESTE PROCURA”*) 140 ‘COORD RECT v0 ESPERA 02S 120 ESPERA ENTRADA 238 =0MAX 2S 130 SALTAPARA 150 SE ENTRADA 23 140 STOP (" ERRO DE PROCURA*) ‘Acntrada relava.a procura recebeu o sina de “Objecto localizado" ‘antes do iniio da operagao 150 RETORNO Teste do resultado da procura c preparagao para soldadura: Programa n” 306: 10 20 30 ess nm 80 0 100 (TESTE PROCURA E REINICIO") SALTA PARA 40 SE ENTRADA 238 STOP (*ERRO DE PROCURA*) No final do trajecto de procura, 0 robot nao recebeu o sinal de “objecto tocalizado. CREINICIO") SAIDA 17(83)=0 SAIDA 18(34) =0 SAIDA 19135) =0 POF COORD RECT RETORNO 0s programas 305 @ 308 so essencialmente usados em aplicagdes onde 0 numero de procuras € pequeno. Se se pretenderem fazer multas procuras, lento, pode ganhar-se tempo do seguinte modo: Programa 305 ‘Componente Cientiico-Tecnoléglea Programarao Robots (iia do Fomands Programagao de Sensores vw.7 Programagao de Sensores Vi.8 Programagso IEFP «Isa Carregam as inst1ug60s 90 - 140 ¢.a RETORNO num programa isolade. Nao se deve esquecer a alteragdio do parametro da instrugdo SALTO de 150 para 70. Exeouta uma ver o programa 305 antes de executar cada operagao de procura. Executa o novo programa no ponto de partida antes de arrancar com a procura. Programa 306 Carregue as instrugdes 40 -90 e RETORNO num programa isolado. Execute o nove programa uma vez antes da instrugao de inicio de soldadura. Teste da inicio de procura e preparagao para soldadura: Programa n*208 | 10 (TESTE PROCURA™) 20 'SALTA PARA 40 SE ENTRADA 238-1 30 STOP (* ERHO DE PROCURA™) © sistema de controlo do rebot nao recebeu or aceitou o sina’ "Objecto localizado" antes do fim do trajecto de procura ter sido atingido. (REINICIO SM SAIDA 1834) =1 Faz actuar 0 contactor, sto 6 liga a unidade de controlo’ unidade fe poténcia 0 IDA 17(33}=0 70 SAIDA 19(35)=0 8 ESPERA ENTRADA 17(33) =0 MAX 2S, % ‘SALTA PARA 110 SEENTRADA 17(33) =0 100 STOP (* ERO SM") 1.0 contactor nao tem poténcia 2 Falha no cabo de sinais entre a unidade de controle eo contactor | 3 Fala no contactor 4 Falta na carta do Sensor 10 ESPERAO.2S. tae COORD RECT 190 POF PF dotinido como a ponta do fio. 140 RETORNO (0s programas 307 e 808 so usados em aplicagses onde o nimero de procures: Spequeno. Sese pretender fazer multas procuras, entao, pode ganhar-se tempo do seguinte mode: , Programa 07 | Carregue as instrurées 100-180 ea RETORNO num programa isolado, Nao se | esqueca de alteraro pardmetro da instrugdo JUMP de 160 para 70. Robots ‘Componente Cientiico-Teenoligica Guia doFormando IEFP - IsQ Execute uma vez 0 programa 307 antes de executar cada operacao de procura, Execute o nove programa no ponto de partda antes de arrancar coma procura. Programa 908 ‘Caregue as instrugdes 40 - 190 e RETORNO num programa isolado. Execute ‘© novo programa uma vez antes da instrugao de inicio de soldadura, Programa de procura - métedo e implicagoes ‘As seguintes descrigbes & sugestdes para a programagio de operagiies de procura sao uma selecqdo dos métodos dispon vets. A programago de movimentos adaptativos tem de ser feita no programa de trabalho. A quantidade de programagao aumenta, com a ambiguidade dos resultados e por isso o programador deve sor capaz de docidiro seguinte para ‘cada soldadura: 4. Sea localizagao da junta 6 realmente necessatria, 2. Se a junta é pequena e se se pode assumir que estela paralelamente eslocada, entao, sé & necessario localizar um qualquer ponto seu 9. Se se pode assumir que a junta se encontra deslocada em tormos de istancia e angulo, entao, é necessario identiticar ambos os ponto de inicio fim (nesta ordem), Se existirem pontes intermédios programados ao longo da soldadura, & necesséio procedera uma das seguintes altomativas: a. Localizaro pento final, 0 ponto inicial @ um teroeiro panto no meio des- tes. Dofiniros és pontos numa BASE (FRAME) 3D. (Use a abreviatura BASE (FRAME) nos programas}. A instrugiio BASE (FRAME) pode ser usada para rodar, maver ou inclinar 0 programa da pega de trabalho que exté a ser soldada. ». Localizar todos os pontos programados ao fongo da linha comepando ‘pelo ponto final e guardar a lecalizagao das novas posigdes com 0 ‘argumento STOREP. 4. Se a direceao da junta estiver desiocada, quer paralelamente, quer em Angulo e se também houver signifcativa alteraqéo de forma, entao, todas os Pontos previamente programados teréo que ser localizados e ver a sua informagao guardada com o auxilio do argumento STOREP. ‘A quantidade de trabalho de programagao, a area de meméria ulilizada e 0 tempo de execugdo seréo menores para a alternativa , aumentando progressivamente com o seu numero. ‘Component Cistico-Teenoligea ‘Guia Fomando Programagao de Sensors Programagio de Robots VI. 9 wi. 40 IEFP - 1SQ Instrugdes usadas em operagées de procura Movimentos da procura Um movimento de procura comega numa posigao definida: * POS V=~% FINAL. Programe 0 ponto final da procura com o seguinte argumento: # POS V=~% FINA L AUTO SEARCH S=11 ‘Onde $ = ntimero do sensor Estas instrugdes encontram-se no menu de posicionamento. Ponto de referéncia (PTREF ou REFPOINT) Use o ponto de referéncia para deslocar posigdes subsequentes dentro de um programa. O deslocamento deve ser aplicado apds cada operacao de procura, mas também pode ser usade com outros objectives. Quando uma das instrugoes: POS V=-% REFPOINT ON ou POS V = ~-% REFPOINTOFF E programada, deve ser exeoutada antes que se retome a programagao. Os pontos de referéncia podem ser usados apés operagdes realizadas por ‘xs internos ou externas. Memorizagao de posigées. ‘As localizages das posigSes podem ser memorizadas para que se possam cchamar mais arde no programa. Memorize as localizagdes, usando a instrugo © POS V=~-% STOREP - ‘A instrugdo STOREP pode ser usada com ou sem registo. Os registos de posigao entre 0 ¢ 95 sao utiizados para guardar as lacalizagées dos eixos internos e externos. Os registos 96 @ 199 s6 podem guardar informagao de ‘0s intemos. \Verna seogo mencionada anteriormente a descrigao das fungées POS POS e POSL que possioilitam varias maneltas de chamar intormagao que esta ‘quardada. A instrugo POS POS armazena os angulos da orientagao do punho do robot, de acordo com o seu valor na altura da memorizagao, enquanto que, aiinstrugao POSL faz com que uma posiedo memorizada tenha outros valores. ‘Componente Clenttice-Tecnoléaiea (GuiadoFormando IEFP - Isa Quando se usa a instrugao POSL, a orientagao do ponto anterior é mantida, indo 0 robot para a posigao definida no regista de posigao. Base (FRAME) tridimenstonal automatica Daqui para a frente, iremos usar o termo REFFRAME para designat BASE (FRAME) tridimensional automatica, Esta é uma fungao que permite, apés a localizagao de trés pontos, corrigir a localizagao de todos os pontos queestejam dentro de uma secgdio do programa, A BASE (FRAME) também pode ser definida manualmente. No entanto, este ‘método nao sera aqui desert, Uma BASE (FRAME) é capaz de incorporar simultaneamente transtagées, rotagoes ¢ inciinagoes de um programa de trabalho. As posigdes que estao em subprogramas poderdo ser corrigidas quand o programa for alteraco, Por defeito, esta activa a BASE (FRAME) 0. Podem estar definidas simuitaneamente 5 bases (numeradas de 1 a 6). No entanto, o numero de s ‘no sistema do robot Dados deteste MANUAL, VARRE, VARRE, VARRE, D.SOLDA ‘Omenu de dados de soidadura, D.SOLDA, presente na consola de programaréo do robot, possui sub-menus: INICIAIS, PRINCIPAIS, FINAIS, ZIGZAG, e SENSOR, Introduza a seguinte sequéncia de instrugdes para atingir estes menus Programe os valores descritos abaixc nos menus INICIAIS, PRINCIPAIS, FINAIS. Eles sao apropriados para soldar duas chapas de ago com 6 mm. Dados inicia's: Conjunto dados numero 1 Voltagem de ignigao 110% Corrente de ignig080 % Pré-caudal de Gas 0.5 5 Votageminicioquente 100% Corrente inicio quente 100% Tempoinicioquente Os. Dados principals: Conjunto dados ntimero2 Vi.22 Programagao de Robots ‘Componante Cientitice-Tecnoldgiea (Guado Fomando Voltagem = _V (Seleccione a voltagem adequada para a pega, maquina de soldadura.e otipo de gas). Corrente (alimentagaofio). —_¥ (Seleccione a cortente adequada para a pera, maquina de soldadura ¢ otipo de 98s). Velocidade 6 mm/s Dados fnais:Conjunto dados nimero 10 Voltage 100% Conente 100% Caudatfnalgés 0.55 Tempodequeima 0.055 (Pore necessitar de serajustado) Tempo dearrefecimento 0 Tempodeenchimento 0s Carregue em VARRE para ating os menus ZIGZAG e SENSOR, Oscilagao Programe os seguintes parametros de osclagao: Oseilagdo: Conjunto dados nimero3 Tpo zig-zag Amplitude Smm Tempoatravessamento 0.15. Tempoaesquerda 0.05 Tempo adireita 0.05 s Perpendicular SIM Sensor Como podem ser usados varios sensores, o sistema precisa saber ac certo quantos sdo usados para seguimento de junta e qual é 0 nivel 0. Programe o sensor 1 para manutengao da posigao transversal, o sensor 2 para manutengéo da altura @ 0 nivel 0 a 50 % do nivel do sinal, no conjunta de dados numero 4, ‘como se seque’ SENSOR, SENSOR DATA NO.=4, ENTER, TRANSV.=1, ENTER, ENTER, BIAS-50, ENTER, ENTER, LATERAL =2, ENTER, ENTER, BIAS =50, ENTER, ‘TRANSVCORR ANGLE =0, ENTER, ENTER. Programagao de Sonsores Componente Ciemtiico-TeenstSgloa Programagao de Robots VI. 23 (Gua doFomando Vi. 24 Programacao de TEFP - [SQ € aconselhada a escalna dos conjuntos de dados 1, 2,9 4 para se garentir que a informagao, neles detnida, 6 coererte com 0s exempos dados nate manual Programagao da pega Estratégia de programagao da pega Para se construiruma lvraria de pragramias, de um mod sistematico, 0 primero beso deve ser decidir em que ordem se vao realizar as varias soldaduras. Decida, ao mesmo tempo, as posigées de soldadura (i.e. a inclinagao) para cada ponto oa altura relativa da tocha. Por esta altura, deve, também, ter uma ideia dos pontos que necessitem ter sequimento automaticoe alé que ponto os orddes necessitam de uma localizagac prévia, A localizapdo prévia ¢ essencial para assegurarque a posigao de inicio é correcta, 2 que 0 sensor pode comegar o seguimento de junta. Pode ser igualmente necessatio procurar mais pontos, como por exempio, 0 ponto final, @ 0 ‘comprimento do cordao variar signticativamente, ou pontos intermédios, no caso de trajectirias circulares ou de varias passagens. Em muitos casos, os elementos de uma sequéncia de soidadura, a posigao de soldadura e a altura da tocha so programadas no mesmo programa principal para cada pega, de onde sao chamados subprogramvas paraas varas solladuras. Este 60 melhor método para pagas que t&m de ser reposicionacas entre cordées de soldadura e quando estas operagses so em grande numero. Este ipo de organizagso de programas 6 valido mesmo quando o sensor ndo é utilzado ou no faz, Sequer, parte do sistema, Cada programa de soldadura contém as averagdes de procura necessérias Para cada junta Na descrigtio seguinte, assume-se que o programa principal da pega ja foi programado. Duas posigGes, Ae 3, assumem-se como tendo sido previamente programadas proximas do sitio onde se deveriam encontrar os pontos de inicio € tim do cordao. Assume-se que foram programadas nesta ordem, Le. Ae B.O. Glagrama sequinte mostra um exemplo de uma sequéncia de soldadura com estes dois pontes. Figura Vid » Soquencia de sodacura entre Ae 8 0s pontos Ae A esto programados proximo das posigbes extremas do cordao, Robots Componente Gientiice-Tecnolégiea ‘GuadoFamando IEFP - Isa 10 CHAMAPROG 101 —_Corra estas instrugdes e depots apa- jue a instrugao WAIT. 20 ESPERA 10S Depois continue a prograrmar as se- ‘guintes instrugdes 200 POS V=100%FINA Ponto Ado cordao 210 CHAMA PROG ~ programa de solaadura a sor usado 220 POS V=100%FINA Ponto B © argumento FINA é essencial se se quiser estar o programa em velocidade elevada para se veriicar 0 padrao de movimentos e a proporgao do tempo de ciclo do programa de soldadura. Quando o programa de soldadura estivor ‘acabado, o argumento FINA pode ser altarado, Em certos casos, como ¢ mastrado no exemplo do programa, pode ser mais apropriado programar ambos 0s pontos préximos da posigao final da soldadura, (Q programa principal terminard se nao houver mals nenhum para ser chamado. E, portanto, boa ide’a programar o inicio de um programa de soldadura que ‘p0s8a ser posteriormente alterado: 20 (COORD RECT 30 RETORNO (O metodo desorito acima da uma boa ideia dos mavimentos do robote da pega e permite a sua optimizagao, antes de se entrar em maior detalhe para cada soldadura, Exemplos de programas de soldadura As préximas figuras e sequénclas de programas descrevem as varias, caracteristicas e procedimentos de soldadura, & operagao de procura & localizagao é descrita com maior detalhe no manual ds equipamento que esta aserusado para este efeito, por isso aqui é menclonada ao de leve, ‘Assume-se, em todos os exempios de programagao, que o programa 101 esta, include no programa principal e que ja fol executado, de modo que REFFRAME 0 POF estao correctos e que 0 ponto de referéncia esta desligado (PTREF OFF), CO padréo dos movimentos ¢ influenciado pelo tipo de zona especiticado nas instrugdes de posicionamento. Os tipos possiveis séo FINA, CANTO 1, CANTO 2 TRAJECTO. Nos exernplos, quando uma recomendagao precisa ndo se podedar, mostra-se a palavra ZONA e deixa-se a decisdo ao programador. Osniimeros das instrugses 380 ficticios, uma vez que as operagies de procura necessarias ditcilmente se poderéo prever nosta fase. Componente Cinttco-Teenoliglea (uiadoFomands Programacio de Sensores do Robots VI. 25 Programagio de Sensores modo: | da tocha esteja activo, Programa 10 ((JUNTANO.~ 20 POS V = 100% FINA 8 VI. 26 Programagao de Robots IEFP - ISQ Se as posig6es A e B nao estiverem incluldas no programa principal da pega ‘deve ser introduzidas no respectivo programa de soldadura. Se o robot for de uma versio anterior a M90, certas sequéncias do programa terdo que ser programadas de mado diferente daquele que € aqui descrito. 0s diagramas que ilustram os programas estao simplilicados. Os corddes de Soldadura esto representados por contomos simples e sem, sequer, indicarem ‘os tipos especiais de junta. A operacaio de procura nao é mostrada nos desenhes: | emvez disso, cada area de procua ¢ representada por um citculo A diteccao | de scldadura é indicada por uma seta. Aos pontos, no desenho referentes a ‘operages do programa de soldadura, sto dados numeros que indica a sua | posi¢aona sequéncia de execugdo. Nos exemplos, todas as instrugdes de soldadura incluem oargumento SOLDA 1/2/31 4, onde/4 indica chamar a informagao do sensor. Isto quer dizer que © robot tenta seguir a junta, No entanto, para permitr que os pardmetros de soldadura e do sensor sejam testados antes que o seguimento de junta soja ‘ajustado, esta tungao deve ser inicialmente inbida, o que se faz do seguinte Introduza o valor 0 (zero) para o pardmetro ESCALA na detinigao dos sersores } 1&2 no sistema de controlo do robot. | Quando se esté a utlizaro modo de seguimenta de junta em manuten¢ao de altura, a oscilago nto énecesséiria, o que faz com que 0 argumento 3 possa | ser posto a 0. O parametro SENSOR DATA no sistema de controlo do robot | também deve ser alterado, de modo a que sé o sensor de manulengao da altura Figura V1.5 - Passagom simples, comprimento ea junta constant, Execute esta instrugao antes de continuar a jprogramar. Componente Cientitien-Tecnoligica GuiadoFemando IEFP + ISQ Programacao de Sensores RESUMO Basicamente, um sensor deve detectar,transformare transmitiro resultado da | observacao de um acontecimento fisico, num sinal etctrico, para posterior tratamento por sistemas de controlo, Um sensor deverd interagir com 0 processo a medit, sem Ihe alterar as caracteristicas a determinar ¢ emitir para o exterior, um sinal eléctrico de saida proporcianal ao valor medido. Sendo a soldadura por arco eléctrico um dos ‘campos de aplcagiio da robetca onde se observa o desenvolvimento de sistemas de sensorizagao mais elaborados € sofisticados, baseamos, assim, 0 estudo | ha analise da programagéo cos sensores mais correntemente empregues: detecgao de juntas ¢ seguimento de juntas, Compenente CientticoTecnolégica Programé¢ao de Robots ‘Gund Farnando wi. 27 Programagio de Sensores JEFP - Isq ACTIVIDADES / AVALIAGAO - 1. Explique qual o interesse de um sensor de contacto em soldadura cor arco, 2. Indique qual o erineipio de funcionamento do sensor de corrente. Explique 0 modo de correcgao de pontos de corddes do sensor de toque. 4. Indique quais as razSes que levam a usar senscres de soldadura por arco. 28 Programagao de Robots Componente Pritiea ‘lao Formando IEFP - ISQ BIBLIOGRAFIA AVILES, Rafael, J., Curso de Robstica, Paraninfo, Madrid, 1984. = CARDIAL, Vitor, Robots: Uma breve introdugdo, Revista Robotica e | autematizago, FREITAS, J.M Amaral de, introdupao & Robdtica Industrial, SQ, 1986. FU, KS., GONZALEZ, RC. , LEE, C.S.G., Robotics, control, sensing, vison and inteligence, McGraw Hil, Inc, 1987. FULLER, James L., Robotic, iirodution, Programming, and Projects, Maxwell, Macmillan international Editions, E.U.A., 1991 GROOVER, Mikel p., Automation, prodution systems and Cim, Prentice-Hall, Inc, 1987. GROOVER, MikallP. Weiss, NAGEL, RogerN. ODEREY, Nicholas G., Industrial Robétics, Technology, Programming, and Applications, MeGrawy - Hill International, Editions, 1987. Paul, FLP., Robot manipulators, Programing and control, The MIT Press, ‘Cambridge MA, 1981 SCHREIBER RA., How to Teach a robot, Robots Today, Junho, 1984, SANTOS J F. Cliveira, Quintino L. Automazago e Robotizago em Soldadura, Euigdes Téenicas do ISQ, 1992 TAVORA,José, Fabrioo Assistdo por computador, |APMEl, 1989. Programagao de Robots B. 4 (GuadaFamando

Você também pode gostar