Escolar Documentos
Profissional Documentos
Cultura Documentos
ROBÓTICA BÁSICA
ROBÔ FANUC
Área Tecnológica de Mecatrônica.
ROBÓTICA
BÁSICA
ROBÔ FANUC
SALVADOR
2003
I. Robótica I. Título
CDD 629
________________________________________________________
SENAI CIMATEC
Av. Orlando Gomes, 1845 - Piatã
Salvador – Bahia – Brasil
CEP 416050-010
Tel.: (71) 462-9500
Fax. (71) 462-9599
http://www.cimatec.fieb.org.br
MENSAGEM DO SENAI CIMATEC
Tudo isso sem desviar a atenção das necessidades da comunidade, atendendo suas
expectativas de formação profissional, suporte tecnológico e desenvolvimento,
contribuindo para uma constante atualização da indústria baiana de manufatura e
para a alavancagem do potencial das empresas existentes ou emergentes no
estado.
APRESENTAÇÃO
SUMÁRIO
1. IntroduÁão à Robótica.........................................................................................7
1.1 HISTÓRICO..................................................................................................................................................7
1.2 DEFINIÇÃO..................................................................................................................................................7
2. Arquitetura.............................................................................................................8
3. ClassificaÁão.........................................................................................................9
4. Graus de Liberdade............................................................................................13
5. Volume de Trabalho...............................................................................................14
6. Acessórios...........................................................................................................15
6.1 GARRAS:..................................................................................................................................................15
6.2 FERRAMENTAS ESPECIALIZADAS....................................................................................................................16
7. Capacidade de Carga.........................................................................................16
8. AplicaÁões Industriais de Robôs......................................................................16
8.1 SOLDAGEM................................................................................................................................................17
8.1.1 SOLDAGEM A PONTO..................................................................................................................................17
8.1.2 SOLDAGEM A ARCO....................................................................................................................................18
8.2 APLICAÇÃO DE FLUIDOS..............................................................................................................................19
8.3 MONTAGEM...............................................................................................................................................20
8.4 CARREGAMENTO / MOVIMENTAÇÃO..............................................................................................................21
9. SeguranÁa...........................................................................................................21
10. Tipos e dispositivos de ProgramaÁão.............................................................23
10.1 PROGRAMAÇÃO MANUAL............................................................................................................................25
10.2 REPETIÇÃO................................................................................................................................................26
11. Terminal de ProgramaÁão (Teach Pendant).....................................................26
12. Linguagens de ProgramaÁão.............................................................................29
12.1 GERAÇÕES DE LINGUAGENS DE PROGRAMAÇÃO..............................................................................................29
12.2 COMANDOS DE PROGRAMAÇÃO...................................................................................................................31
12.3 SIMULAÇÃO...............................................................................................................................................35
12.4 SISTEMA DE MOVIMENTAÇÃO DO ROBÔ.........................................................................................................35
12.5 MODO AUTOMÁTICO..................................................................................................................................36
12.6 CRIAÇÃO E EDIÇÃO DE PROGRAMAS.............................................................................................................36
12.7 SALVAMENTO DE PROGRAMAS......................................................................................................................37
12.8 VISUALIZAÇÃO DE ERROS............................................................................................................................37
12.9 TROCA DE FERRAMENTAS............................................................................................................................37
12.10 ETAPAS DA PROGRAMAÇÃO......................................................................................................................38
12.11 PLANEJAMENTO DE PROGRAMAS...............................................................................................................38
12.12 DOCUMENTAÇÃO DE PROGRAMAS..............................................................................................................40
12.13 INTERRUPÇÕES.......................................................................................................................................40
13. Elementos de ProgramaÁão (robô FANUC).....................................................40
13.1 INSTRUÇÕES DE MOVIMENTO........................................................................................................................40
13.2 REGISTRADORES.........................................................................................................................................42
13.3 ESTRUTURAS DE CONTROLE DE FLUXO...........................................................................................................42
13.3.1 CHAMADA DE PROGRAMAS......................................................................................................................43
13.3.2 SALTOS DENTRO DE UM PROGRAMA...........................................................................................................43
13.3.3 ESTRUTURA CONDICIONAL.......................................................................................................................44
13.3.4 REPETIÇÃO COM CONTAGEM.....................................................................................................................44
13.3.5 SELEÇÃO DE CONDIÇÕES.........................................................................................................................45
13.4 COMANDO DE ATRASO.................................................................................................................................45
13.5 COMANDO DE MENSAGEM............................................................................................................................45
13.6 ENTRADAS E SAÍDAS...................................................................................................................................45
13.6.1 FORÇANDO E SIMULANDO SINAIS..............................................................................................................46
ANEXO I – Robô Industrial da FANUC (ARC Mate 50 iL)......................................48
A1.1 SEGURANÇA..............................................................................................................................................48
A1.1.1 CONSIDERAÇÕES DE SEGURANÇA PARA A INSTALAÇÃO DO ROBÔ..................................................................48
A1.1.2 EXTINÇÃO DO FOGO..............................................................................................................................49
A1.1.3 USO DE DISPOSITIVOS DE AUMENTO DE SEGURANÇA.................................................................................49
A1.1.4 CRIANDO UM CÉLULA DE TRABALHO SEGURA..........................................................................................49
A1.1.5 PARADAS DE EMERGÊNCIA......................................................................................................................50
A1.2 APLICAÇÕES:.............................................................................................................................................50
A1.3 GRAUS DE LIBERDADE:...............................................................................................................................50
A1.4 EIXOS:.....................................................................................................................................................51
A1.4.1 EIXOS INTERNOS :..................................................................................................................................51
A1.4.2 EIXOS EXTERNOS :.................................................................................................................................51
A1.5 ABERTURA DE PROGRAMAS.........................................................................................................................51
A1.6 INICIANDO O PROGRAMA.............................................................................................................................52
ANEXO II – Roteiros de Aulas Práticas...................................................................53
PRÁTICA 1 – MOVIMENTAÇÃO DO ROBÔ (JOGGING)......................................................................................................53
PRÁTICA 2 - MARCAÇÃO DE PONTOS..........................................................................................................................55
PRÁTICA 3 - EDIÇÃO DE POSIÇÃO DE PONTOS...............................................................................................................58
PRÁTICA 4 - FUNÇÕES DE CHAMADAS DE PROGRAMAS...................................................................................................60
PRÁTICA 5 - COMANDO DE MOVIMENTO CIRCULAR.......................................................................................................61
PRÁTICA 6 - REPETIÇÃO DE PROGRAMA UM NÚMERO INDETERMINADO DE VEZES...............................................................63
PRÁTICA 7 - REPETIÇÃO DE PROGRAMA UM NÚMERO DETERMINADO DE VEZES..................................................................64
Referências Bibliográficas.......................................................................................66
1. IntroduÁão à Robótica
1.1 Histórico
Desde o início da humanidade busca-se o desenvolvimento de equipamentos
que possibilitem melhorar a forma de sobrevivência e/ou interação com o meio
ambiente.
O termo robô tem sua origem datada no início do século XX através da
imaginação de escritores de ficção científica como Karel Capek que introduziu o
termo em 1921 em sua peça Rossum´s Universal Robots (RUR). Este termo provem
do checo e significa trabalho árduo ou trabalho forçado. Já o termo robótica foi
introduzido por Isaac Asimov, no início dos anos 40 para descrever a arte e a ciência
que envolve a tecnologia de robôs. Na concepção de Capek os robôs podiam se
tornar malevolentes e dispostos a conquistar o mundo, enquanto que na de Asimov
os robôs seriam sempre benevolentes para a humanidade.
O conceito de robô industrial foi patenteado em 1954 por G.C. Devol. Ele
descreve como construir um braço mecânico controlado para realizar tarefas na
indústria. Porém somente em 1961 foi instalado o primeiro robô industrial pela
Unimation na General Motors em uma máquina de fundição.
Três tecnologias que nasceram durante ou após a II Guerra Mundial que
foram cruciais para o sucesso da robótica: A tecnologia de servo-mecanismos; a
computação digital; e o desenvolvimento de componentes eletrônicos. É
interessante notar que no princípio a eletrônica representava 75% do custo de
fabricação do robô, enquanto que 25% referia-se ao custo hidromecânico. Hoje
essas taxas se inverteram.
Os robôs industriais são considerados convenientes para trabalhos
considerados repetitivos, desagradáveis, arriscados ou insalubres para o homem. As
principais vantagens dos robôs são as seguintes:
• Flexibilidade
• Alta produtividade
• Melhor qualidade dos produtos
• Aumento da qualidade de vida humana, uma vez que realizam trabalhos
indesejáveis.
Muita discussão se forma ao redor dos robôs e sob seu uso em detrimento as
mãos-de-obra humana. Obviamente a implantação de robôs extingue algumas
atividades humanas, aquelas que são repetitivas e braçais, mas em contra-partida
desloca postos de trabalho para atividades de maior valor agregado, substituindo
assim a mão-de-obra pela mente-de-obra.
1.2 DefiniÁão
A Divisão Internacional de Robótica da Society Manufacturing Engineers
(SME) define o robô industrial como “manipulador multifuncional reprogramável
projetado para mover materiais, peÁas, ferramentas ou aparelhos
especializados através de movimento programados variável para a realizaÁão
de diversas tarefas”. As palavras chaves dessa definição são multifuncionais,
mostrando que o robô pode possuir mais do que uma função sendo que às vezes
pode possuir somente uma, reprogramável, mostrando que o robô pode ser
programado sempre e mover materiais, peças e ferramentas que definem as tarefas 7
do manipulador. Além dessas pode-se incluir as seguintes palavras chaves:
movimento sobre diversas direções (graus de liberdade), end effector (ferramenta do
robô anexada ao pulso do robô que exercerá a função desejada).
2. Arquitetura
Os sistemas robóticos consistem de, no mínimo, duas partes principais:
• Manipulador - Consiste na estrutura mecânica móvel que realiza a função de
movimento em um robô. Ele é composto por uma estrutura principal (main
frame), braço mecânico, que consiste de diversos ligamentos mecânicos
rígidos conectados por juntas que permitem o movimento relativo entre
ligamentos vizinhos. As juntas são dotadas normalmente de sensores de
posição que permitem medir o deslocamento relativo entre os ligamentos. Ao
pulso do robô (flange) se conectam ferramentas específicas que variam
segundo a aplicação.
• Controlador - Controla e armazena o programa tarefa, bem como atua nas
juntas do manipulador
9
3. ClassificaÁão
A primeira classificação diferencia os diversos tipos de robô pela sua forma de
locomoção:
1. Tartarugas (turtlebots): São robôs dotados de características que os assemelham a
uma tartaruga.
2. Estacionários: São braços dotados de mãos ou garras que normalmente ficam fixos
em mesas e pedestais.
3. Andróides: Robôs que possuem formas baseadas na anatomia do corpo humano.
Os sistemas robóticos classificam-se também segundo a configuração das
juntas utilizadas, incluindo as características cinemática e estrutural, o número de
graus de liberdade, a faixa de trabalho e o tipo de controle do robô.
Para permitir a compreensão desta classificação, caracterizaremos os tipos
de junta como:
4. Graus de Liberdade
Braços de robôs são freqüentemente descritos
como tendo um certo número de graus de liberdade
ou um certo número de eixos de movimento. Em
robótica, o número de graus de liberdade é o número
de movimentos distintos que o braço pode realizar.
Normalmente o número de graus de liberdade
iguala-se ao número de juntas, de forma que um robô de cinco graus de liberdade
possui cinco juntas, e um robô com seis eixos tem seis juntas. Porém, em certos
casos é possível que duas juntas não tenham movimentos independentes, como,
por exemplo, em um compasso com engrenagens. Nesses casos apenas um grau
de liberdade é contado para as duas juntas.
A noção de graus de liberdade tem limites definidos. Por exemplo, uma junta
não possui apenas uma direção de movimento, mas também limites a este
movimento. Essa faixa de movimento permitido, que não tem nada a ver diretamente
com graus de liberdade, é muito importante. Por exemplo, quando seguramos uma
bola de tênis na mão, a seguramos mantendo a palma da mão em contato com ela.
Isto ocorre porque as juntas de nossos dedos só dobram na direção da palma da
mão e não em direção às costas desta. Caso nossas juntas tivessem uma faixa de
13
movimento que lhes permitisse dobrar nas duas direções, seríamos capazes de
pegar uma bola de tênis tanto com a palma como com as costas da mão.
Assim, usamos os graus de liberdade adicionais das juntas de nossos
punhos, cotovelo e ombro para mover nossa mão de tal forma que a palma fique de
frente para a bola. Portanto ter mais juntas (punho, cotovelo e ombro) e em
conseqüência mais graus de liberdade, ajuda-nos a compensar o fato de ter uma
faixa de movimentos um tanto limitada em nossos dedos. Um robô precisa de
apenas dois ou três graus de liberdade para ser útil, mas às vezes mais que seis
graus são necessários para estendê-lo a realizar manobras, como, por exemplo, no
interior de um automóvel.
5. Volume de Trabalho
Uma das características mais importantes dos manipuladores é o seu volume
de trabalho, ou seja, a região do espaço que o mesmo consegue alcançar com seu
órgão terminal. A superfície desse volume depende do sistema de coordenadas
empregado e o tamanho depende das dimensões físicas do braço do robô.
Robôs em movimento especialmente de grande porte, acumulam uma grande
energia. Os robôs podem aparentar estarem desligados, mas podem mover-se
repentinamente e sem advertência, pois pode estar esperando por sinais de
entradas que vem de outras máquinas ou mesmo esperando um período de tempo
passar. A segurança do usuário depende do respeito ao volume de trabalho do
robô. É importante observar também que o acoplamento de uma ferramenta no
flange do robô aumenta esse volume de trabalho.
14
Volume de Trabalho do FANUC ARC Mate 50 iL
6. Acessórios
A junta terminal do robô é também conhecida como punho ou flange. A ela
podem ser acoplados acessórios efetuadores ou ferramentas apropriadas para
diferentes aplicações. As ferramentas podem ser classificadas em dois grandes
grupos: garras e ferramentas especializadas, respectivamente usadas para mover
objetos e para executar tarefas especiais.
6.1 Garras:
• Garras de dois dedos: É o tipo de garra mais
comum, variando em tamanho e/ou movimento dos
dedos. A desvantagem básica da garra de dois dedos
é a sua limitação de abertura, impossibilitando o
manuseio de objetos maiores que sua abertura total.
15
• Garras para objetos frágeis: Projetadas para pegar
um objeto frágil sem quebrá-lo, através da distribuição
do ponto de força ao longo da peça.
16
7. Capacidade de Carga
Como vimos previamente, existem diferentes tipos de robôs para a execução
das mais variadas funções. Logo a capacidade de carga irá diferir a depender da
tarefa a ser executada pelo robô. Robôs podem chegar a ter uma capacidade de
carga de até mais de uma tonelada. Os Robôs da FANUC, o ARC Mate 50 iL e o
120 possuem uma capacidade de carga de 3 kg e de 130 kg respectivamente.
8.1 Soldagem
8.1.1 Soldagem a Ponto
Este tipo de soldagem se caracteriza pela união das peças apenas em
determinados pontos sem que haja inclusão de material novo. O calor necessário à
soldagem provém da corrente elétrica que passa por dois eletrodos permanentes.
Os principais parâmetros que influenciam a qualidade da solda são: corrente
elétrica, pressão entre os eletrodos, tempo de duração da corrente e espessura do
material.
As operações do processo de solda a ponto, integrando o robô, são:
• Movimento rápido do braço do robô, com a pistola de solda fixa, para
se aproximar do ponto a ser soldado;
• Aproximação dos eletrodos da pistola de solda a ambos os lados da
parte a ser soldada e posicionamento destes exatamente em frente a ponto
de solda;
• Fixação dos eletrodos no ponto a ser soldado;
• Envio de corrente elétrica através dos eletrodos e do material a ser
soldado;
• Espera;
• Abertura dos eletrodos;
• Movimentação do braço do robô para se aproximar do novo ponto de
solda.
17
Podemos concluir que este tipo de trabalho é ideal para a utilização de robôs,
afinal estes podem repetir com grande precisão os valores dos três primeiros
parâmetros, durante todo o trabalho. Nestas aplicações o robô usa como ferramenta
a pistola de solda que geralmente é pesada ( 10 a 80 Kg ), por isso, são geralmente
usados robôs com fonte de potência hidráulica. A precisão de posição não é um
ponto crítico.
18
• Manter a pistola de solda se movendo a uma velocidade constante;
• Habilidade para realizar movimentos de "tecelagem", para se atingir
uma boa junção entre os dois corpos de metal e garantir a qualidade da
solda.
Este tipo de aplicação geralmente requer robôs com quatro ou cinco eixos de
movimentação e se constitui numa das mais difíceis tarefas a ser realizadas por
robôs na indústria. Porém a maior vantagem da utilização de robôs é a otimização
do tempo de trabalho. Quando analisamos o trabalho realizado por um homem
verificamos que o tempo gasto efetivamente com a soldagem é aproximadamente
30% do tempo total, sendo que os 70% restantes são despendidos com ajuste do
equipamento de proteção ou das peças. Este tempo pode ser eliminado se o
operador for um robô. A principal aplicação da soldagem de arco na indústria se
encontra na fabricação de cascos de navios e barcos. Além da melhoria no tempo de
produção a soldagem de partes internas se torna muito perigosa para um ser
humano devido aos gases tóxicos liberados.
19
Neste tipo de aplicação ocorre também um grande predomínio de robôs no
setor de produção de automóveis onde os robôs devem dispor das características
citadas acima para alcançar partes internas do veículo. Apresentamos a seguir um
exemplo que ilustra a aplicação de robôs no setor de pintura.
Os principais problemas
da integração de robôs aos
processos de aplicação de
fluidos são:
– Proteção dos robôs de
fumaça e sujeira do ambiente
externo;
– Isolação de fontes de faíscas
elétricas durante a operação,
durante a manipulação de
fluidos inflamáveis;
– Necessidade de coordenação
entre os movimentos do robô
e a localização das partes a
serem pintadas;
– Necessidade de alcance de áreas difíceis.
8.3 Montagem
Esta operação é uma das áreas mais desafiadoras e com maior potencial de
crescimento na aplicação de robôs. Ela requer precisão, repetibilidade, grande
variedade de movimentos e alto grau de sofisticação das garras. Geralmente o fator
mais importante na decisão de substituir uma linha de montagem com mão-de-obra
humana por uma automatizada seja a produtividade e os custos. Neste setor o
ambiente normalmente não apresenta grandes riscos aos humanos, portanto para
ser viável a aplicação de robôs, estes devem ser mais rápidos ou mais precisos que
os humanos.
A aplicação mais comum de robôs na montagem industrial é encontrada em
produtos com dimensões reduzidas, onde a precisão é fator importante, como
elementos eletrônicos ou pequenos motores elétricos. Este sistema permite uma
solução extremamente econômica para este tipo de montagem. Há uma
peculiaridade neste tipo de aplicação. Devido às dimensões serem bastante
reduzidas, as trajetórias das ferramentas são, geralmente, muito curtas. Para atingir
velocidades consideráveis e diminuir o tempo de montagem, o robô precisa ter
acelerações muito altas. A principal desvantagem da utilização de robôs neste tipo
de operação está no fato de que as peças a serem montadas precisam estar
dispostas de forma correta para o robô funcionar. Isto faz com que em certas
aplicações o sistema de alimentação do robô custe mais caro que ele próprio.
20
8.4 Carregamento / MovimentaÁão
Este processo é historicamente um dos mais perigosos da indústria, devido às
grandes cargas e pressões que normalmente envolvem. A aplicação de robôs neste
tipo de operação, normalmente pouco ergonômica, trás vantagens principalmente
para a segurança e saúde dos operários.
9. SeguranÁa
Um ponto que deve ser analisado com cuidado se refere à segurança dos
operários que podem trabalhar próximos aos robôs. Pode parecer antagônico, mas
os robôs que em certos casos são utilizados para diminuir os riscos às vidas
humanas, podendo se tornar fonte de perigo. Devemos encarar aqui o robô como
uma outra máquina qualquer e, portanto deve este ser tratado como um agente
perigoso se operado impropriamente. Um fato agravante na utilização de robôs é
que seu volume de trabalho não se limita ao volume realmente ocupado por ele,
criando assim uma zona de perigo que às vezes pode não ser percebida pelo
operador. Há uma série de normas que regem a instalação de robôs no chão e
fábrica. Os pontos mais importantes destas normas são:
• O volume de trabalho do robô deve estar constantemente isolado da
fábrica, impedindo que qualquer pessoa tenha acesso a ele durante a operação
do robô
• A abertura da proteção do volume de trabalho do robô deve interromper o
seu funcionamento
• Deve haver uma indicação luminosa para mostrar que o robô está em
operação
• Botões de emergência devem estar dispostos em locais de fácil acesso
• Deve-se tomar especial cuidado durante a manutenção onde o contato com
o robô é inevitável
21
Essas são apenas algumas das instruções para instalação do robô no chão
de fábrica. Elas devem ser seguidas rigorosamente para que a integração do robô
na fábrica traga aumento da segurança aos operários e não o contrário.
Os cuidados de segurança são imprescindíveis durante o manuseio de robôs,
principalmente os de porte industrial. As velocidades de operação envolvidas aliado
à falta de “inteligência” do equipamento, que meramente reproduz os movimentos
pré-programados, os tornam verdadeiras armas mortíferas quando as devidas
precauções não são tomadas.
Colisões com robôs em movimento podem trazer graves danos tanto ao
pessoal envolvido quanto aos equipamentos no entorno. Algumas precauções
devem então ser tomadas:
1. Área de trabalho - Não entrar na área de trabalho do robô durante a operação
no modo automático.
2. Travas de seguranÁa – Uma vez ocorrida uma parada no sistema provocada
por uma trava, o programa reinicia de onde parou. Se a trava faz parte do
circuito de emergência, precisa reiniciar. Algumas das travas possíveis são:
• Cerca com porta, munida de sensor.
• Cortina de luz
3. Fim de curso - Limitação da área de trabalho
• Via software (todos os eixos. O próprio controlador impede movimentos além
dos valores determinados)
• Via hardware (stops mecânicos nos eixos 1,2 e 3)
É aconselhável o uso de limitação por software em valores inferiores aos
bloqueios por hardware pelo esforço e conseqüente desgaste mecânico provocado
por estes últimos
4. Modo de operaÁão - Usualmente costuma-se operar o robô de três formas
distintas:
– Automático – Usado quando se roda programas prontos, em produção. Não é
possível movimentar o robô através do “teach pendant” neste modo.
– Modo Aprendizado – É utilizado quando se trabalha dentro da área de trabalho
do robô e durante a fase de programação e debug. Normalmente deve-se usar
velocidades reduzidas.
– Manual Pleno – É utilizado para testar o robô à velocidade de programação
plena.
Nos modos manuais (modos aprendizagem e manual pleno) a energização
dos motores se dá através de um botão de um dispositivo de habilitação localizado
no teach pendant.
5. Emergency Stop – botão de parada brusca
• Terminal de programação
• Painel de controle
OBS: Deve ser usado apenas em caso de real emergência pelo esforço
aplicado nas engrenagens, causando desgaste mecânicos .
22
6. Bom Senso – A execução de qualquer programa deve ser primeiramente
realizada com velocidade reduzida. Só após todos os testes, efetuar em
velocidade normal.
23
Ao contrário, o método “off-line” não utiliza o robô na fase de programação.
As ordens são passadas ao robô através de um programa de computador escrito em
uma linguagem específica. O programa consiste na verdade de uma seqüência de
ordens ao robô para orientá-lo na execução da tarefa. A linguagem usada deve
permitir ao programador pensar em termos das coordenadas da ferramenta. Assim
ele pode programar mais facilmente sendo que todos os cálculos de transformação
para as coordenadas de junção ficam sob responsabilidade do processador. Depois
que o programa for escrito ele é compilado e seu código é passado ao robô que
pode então executar as tarefas determinadas.
No caso da programação off line, as coordenadas dos pontos podem ser
fornecidas no próprio programa, caso sejam conhecidas previamente, ou podem ser
obtidas posteriormente, movimentando-se o robô para esses pontos.
Antes de passarmos ao estudo de cada um destes métodos de programação
é interessante apresentar os tipos de sistemas de movimentação utilizados:
• Ponto a Ponto (PTP): O robô trabalha apenas em pontos específicos e a
trajetória usada para atingir estes pontos não é importante. Este tipo de
movimentação é usado, por exemplo, em aplicações de solda a ponto e de
movimentação de objetos.
• Sistema Contínuo de Trajetórias (CP): Robôs que devem trabalhar sobre
trajetórias bem determinadas, onde não apenas os pontos iniciais e finais são
importantes. Este tipo de movimentação é usado, por exemplo, em aplicações de
solda a arco.
10.1 ProgramaÁão Manual
Este método de programação é o mais simples e o mais usado para robôs
que utilizam o sistema PTP. A programação é feita movendo-se o robô manualmente
em cada eixo até que se obtenha a posição desejada. Os comandos para realizar
esta movimentação são dados pelo programador através de uma série de botões
geralmente dispostos numa caixa de controle ligada ao robô (teach pendant).
Quando a posição desejada é atingida, o programador armazena esta informação na
memória do processador. Pode-se com uma seqüência de pontos levar o robô a
qualquer posição do seu volume de trabalho e executar a tarefa desejada. Com
todos os passos gravados, o robô pode repetir os passos, assim, podemos realizar a
tarefa quantas vezes forem necessárias.
24
Além da seqüência de operações a serem realizados pelo robô os
programadores deve também fornecer os tempos de cada uma destas operações.
Para programadores experientes podem-se programar simultaneamente as
operações e os tempos de duração. Pode-se por outro lado, programar inicialmente
o ciclo de operações e na seqüência ajustar o tempo de cada operação, passo a
passo, sendo este método muito útil para programadores inexperientes.
Este método dispõe ainda de uma série de ferramentas que auxiliam na
programação do robô. Podemos mudar a qualquer instante o sistema de
coordenadas utilizado pelo programador. Assim ele pode, de acordo com suas
necessidades, entrar com os valores de movimento com referencial global, na
ferramenta ou nas juntas. Outra possibilidade é a memorização de operações que
serão disparadas pelo simples toque em uma tecla.
Podemos concluir que este método de programação é uma ferramenta muito
poderosa para programar tarefas simples. Ele é especialmente utilizado para
operações de “pegar e soltar”, onde a fonte e o destino do objeto são fixos. Este
método não é eficaz para programar caminhos complicados como curvas, por
exemplo, e também não dispõe de técnicas mais sofisticadas de programação.
10.2 RepetiÁão
Foi visto no item anterior um método eficaz de programação de robôs que
utilizam o sistema de movimentação PTP. Porém será que este método é também
eficiente para robôs com movimento contínuo CP? Uma rápida análise do processo
de movimentação CP mostra que não. Neste caso deve-se armazenar toda a
trajetória do robô, afinal não se quer que ele apenas chegue ao ponto final, mas que
ele faça isso pelo caminho determinado.
Pode-se deduzir que o método mais fácil de se programar um robô para
realizar movimentos contínuos (CP) seja conduzir o robô pela trajetória desejada,
sendo que o posicionamento em cada eixo seja simultaneamente armazenado.
Depois pode-se reproduzir estes dados para que o robô realize a mesma trajetória,
desta vez “sozinho”. Há casos onde pode-se desacoplar os mecanismos de
transmissão de potência do robô e através de forças externas movimentá-lo através
da trajetória desejada. Porém há casos onde isso não é possível, nestes casos
geralmente se constrói um mecanismo idêntico ao do robô apenas com os sensores
de posicionamento. Este mecanismo pode então ser guiado pela trajetória desejada
e os dados podem ser fornecidos ao robô. Apesar da grande facilidade de
programação introduzida por este método ele possui grandes desvantagens:
• Geralmente é necessário um investimento adicional para construção do
simulador
• Todos os movimentos, mesmos os indesejados, são gravados e repetidos
pelo robô.
• A precisão dos movimentos é limitada à precisão do movimento inicial
• O armazenamento dos dados requer uma grande quantidade de memória
26
Teach pendant - FANUC
27
Parada de emergência: O robô pára imediatamente depois que o botão de parada
de emergência é pressionado (independente de qual situação ou modo o sistema
esteja).
Teclas de Movimento: Como o próprio nome já diz, essas teclas são usadas para
mover o robô manualmente, por exemplo, durante a programação.
28
12. Linguagens de ProgramaÁão
Em muitas aplicações o uso de métodos “on-line” de programação pode
despender muito tempo. Principalmente em casos onde o trabalho deve ser
realizado em um número muito grande de pontos e os dados referentes a esses
pontos já sejam conhecidos de alguma fase do projeto, é interessante analisar a
possibilidade de utilização de uma linguagem específica para programar o robô. Por
exemplo, na indústria aeroespacial as estruturas devem receber milhares de furos e
estes devem ser rebitados para fixação das peças. Os processos de programação
manual seriam muito tediosos e consumiriammuito tempo, além do que a posição de
todos os furos é um dado conhecido do projeto. O principal problema introduzido
por este tipo de programação são os erros que ocorrem devido a diferentes
situações de uso. O posicionamento de uma ferramenta, por exemplo, pode ser
alterado devido às deflexões da estrutura do robô que são diferentes para diferentes
cargas aplicadas a ele. Nos método “on-line” de programação este tipo de problema
não aparece, afinal as cargas podem ser incluídas no processo de programação.
Existe um grande número de linguagens de programação utilizadas
comercialmente. São apresentadas aqui algumas das mais utilizadas para ilustrar o
processo e as possibilidades deste tipo de programação.
Marca Linguagem de
ProgramaÁão
FANUC RJ3
ABB RAPID
MITSUBISH MELPHA BASIC
Constantes e variáveis
Uma constante é um valor que não muda durante a execução do programa.
Uma variável em programação de computadores é um símbolo ou um nome
31
simbólico que pode mudar de valor durante a execução do programa. Constantes e
variáveis podem ser números inteiros, números reais contento um ponto decimal ou
cadeias que podem ser colocadas entre aspas:
Constantes:
+8
-289.34
1.56e+4 (exponencial)
[23.4;45.98;-34.05] (vetor)
Variáveis:
E
R2UI
FOI[3,4] – arranjo com doze elementos.
Comando de movimento
Uma das funções mais importantes da linguagem e a principal característica
que distingue as linguagens robóticas das de programação de computadores é o
controle de movimento do manipulador. Basicamente utilizam-se dois tipos de
movimentos:
• Movimento Junta a Junta – neste caso o robô é orientado a deslocar-se de
um ponto a outro e a trajetória utilizada é calculada pelo controlador, de forma
a atingir o destino com um mínimo de esforço.
• Movimento de Trajetória – neste caso, o robô é orientado a seguir uma
trajetória definida que pode ser:
○ Linear – traça um segmento entre dois pontos;
○ Circular – traça um arco entre 3 pontos;
DefiniÁão de Trajetórias
32
Vários pontos podem ser ligados para definir uma trajetória específica no
espaço de trabalho.
Comandos Numéricos
Realizar cálculos aritméticos e outros tipos de operação com constantes,
variáveis e outros tipos de dados. Faz-se necessário em vários programas de robôs.
O conjunto padrão de operadores matemáticos em linguagem de segunda geração
é:
+ adição;
- subtração;
* multiplicação;
/ divisão
** potência
= igual a
A seguir, está exposta uma lista de funções que poderão também ser usadas:
Seno de um ângulo A;
Cosseno de um ângulo A;
Tangente de um ângulo A;
Cotangente de um ângulo A;
Arco seno de um ângulo A;
Arco cosseno de um ângulo A;
Arco tangente de um ângulo A;
Arco cotangente de um ângulo A;
Logarítmo;
Valor absoluto de X;
Raiz quadrada de X; Entre outros.
33
Além dos operadores aritméticos e trigonométricos, operadores relacionais
são usados para avaliar e comparar expressões. Os operadores relacionais mais
comuns são indicados abaixo:
Igual a;
Não igual a;
Maior que;
Maior ou igual a;
Menor que;
Menor ou igual a.
Chamada a Sub-rotina
Algumas vezes, quando um certo grupo de instruções é executado várias
vezes durante o programa, pode-seagrupar estas instruções em rotinas. Toda vez
que se deseja executar essas instruções, pode-se chamar a rotina. O programa
então desviará seu curso, executará as instruções e retornará para a instrução
seguinte à chamada da rotina.
É possível enviar um número de argumentos para a nova rotina. Eles
controlam o comportamento da rotina e tornam possível que a mesma rotina seja
utilizada para diversas tarefas.
34
Leitura do arquivo do disco para a memória
Obtenção de uma listagem dos nomes do programas que são
armazenados na memória;
Execução de um programa;
Interrupção da execução e parada do movimento do robô;
Apagamento de um programa;
12.3 SimulaÁão
Esta ferramenta, cuja aplicação vem crescendo de forma substancial, pode
auxiliar muito a programação de robôs pelos métodos anteriores. O modelo do robô
pode ser representado no computador e todos os seus movimentos podem ser
simulados por processos de animação. O ambiente de trabalho pode também ser
incluído, permitindo uma previsão dos principais problemas que poderão ocorrer na
aplicação real. Além disso, este tipo de programação possibilita o desenvolvimento e
testes preliminares dos programas sem a necessidade de interromper a operação do
robô. Um exemplo de software de simulação é o Workspace.
selecionando xyz.
O ponto que irá se mover linearmente, ao longo dos eixos do sistema de
coordenadas acima é chamado Tool Center Point (TCP). Esse ponto é um ponto da
ferramenta definido pelo programador. Quando não há definição de ferramenta, está
localizado na frente do braço superior, no centro da placa frontal do robô.
35
12.5 Modo Automático
O modo automático é utilizado para executar programas prontos.
Movendo o seletor de modo de operação no TP para a posição OFF e
segurando o botão CICLE START no Painel do Operador por 3 segundos.
Categoria do erro
Classifica o erro em grupos relacionados por tipos de erros. Cada categoria
de erro tem sua própria série de códigos.
Motivo
Descreve os motivos do erro em linguagem comum. Para maiores
informações a respeito de defeitos no hardware, consultar o Manual do
Produto.
36
Quando ocorre um erro o robô bloqueia todos os movimentos e execução de
programas. Para continuar deve-se pressionar a tecla RESET.
TERMINAÇÃO FINA
A terminação fina (fine) é utilizada quando é necessário que o robô chegue
exatamente ao ponto destino antes de mudar de direção para o próximo ponto.
Porém, esse tipo de terminação provoca uma parada do robô antes do próximo
movimento.
TERMINAÇÃO CONTÍNUA
A terminação contínua faz o robô mudar de direção para alcançar o próximo
ponto antes de alcançar o ponto desejado. A distância de aproximação pode ser
configurada e normalmente é expressa em milímetros. Isso faz com que o robô não
pare entre um movimento e outro. Essa terminação pode ser utilizada para se
movimentar ao redor de obstáculos, ou quando o trabalho realizado não exige muita
precisão.
PLANEJAMENTO DA MOVIMENTAÇÃO
• Movimente o robô manualmente em todas as posições do processo, e avalie,
eventuais interferências, obstruções e reorientações da ferramenta;
• Procure visualizar mentalmente a movimentação do robô durante todo o
processo;
• Procure identificar possíveis reduções nas trajetórias;
• Posicione o robô na primeira posição do trecho, tenha certeza de que o robô
está corretamente posicionado e grave a posição;
• Leve o robô manualmente até a última posição do trecho a ser considerado.
Tenha certeza de que esta posição está correta e que ela represente a
primeira posição do trecho seguinte. Grave a posição;
• Grave quantas posições você acreditar serem necessárias para se criar a
trajetória entre o primeiro ponto e o último ponto;
38
POSIÇÕES PRÉ-DEFINIDAS
Posições pré-definidas são posições que irão se repetir inúmeras vezes
dentro de seu processo, não necessitando desta forma serem armazenadas
diversas vezes. Posições pré-definidas podem ser criadas através de diversos
métodos:
CONDIÇÕES INICIAIS
O programador deverá analisar o contexto no qual o programa se insere
criando um conjunto de instruções iniciais que garantam a segurança pessoal, de
ferramental e de produção.
12.13 InterrupÁões
Interrupções são utilizadas pelo programa para tornar possível tratar
diretamente de um evento, independente de qual instrução estiver sendo executada.
Uma interrupção pode ocorrer, por exemplo, quando uma entrada muda de
valor (por exemplo, uma peça é colocada no alimentador e identificada por um
sensor). Quando esta interrupção ocorre, o programa é interrompido e uma rotina
especial é executada. Quando esta tiver sido totalmente executada, o programa
continua de onde ele foi interrompido.
39
Joint (J): O robô irá se mover do ponto inicial para o final sem se preocupar
com a trajetória percorrida.
Linear (L): O robô irá mover o TCP em uma linha reta do ponto inicial para o
final.
Circular (C): O robô irá o TCP em um arco do ponto inicial, passando por um
ponto intermediário e chegando ao ponto final.
CIRCULAR
4-Velocidade: A rapidez com que o robô se move para uma posição (%, mm/seg,
graus/seg, cm/min);
40
Arc Start [ ]: O robô abre o arco elétrico e inicia o movimento.
Arc End [ ]: O robô fecha o arco elétrico ao final do movimento.
Exemplos:
J P[1] 50% FINE – Movimento junta a junta para o ponto P[1], a 50%
da velocidade máxima e terminação fina.
L P[2] 200mm/s CNT10 – Movimento linear para o ponto P[2], a 200
mm/seg e terminação contínua.
C P[3]
P[4] 500mm/s FINE – Movimento circular para o ponto P[4],
passando pelo ponto P[3], a 500 mm/seg e terminação fina.
13.2 Registradores
41
– Chamar outra rotina ou sub-rotina (procedimento) e, quando esta tiver sido
executada, retornar o controle do programa para a instrução imediatamente
posterior à que chamou a sub-rotina;
– Executar uma seqüência ou outra de instruções dependendo se uma dada
condição tiver sido ou não satisfeita;
– Repetir uma seqüência de instruções um certo número de vezes ou até que uma
dada condição seja satisfeita;
– Desviar o controle de programa para uma determinada instrução (identificada por
um rótulo) dentro da mesma rotina;
– Parar a execução do programa.
42
13.3.3 Estrutura condicional
A estrutura condicional indica ao robô que uma instrução deve ser executada
se uma condição for verdadeira (por exemplo, se um registrador possuir um
determinado valor).
Assim, pode-se, por exemplo, selecionar se uma parte do programa deve ser
executada se uma condição for satisfeita. No exemplo abaixo, o robô inicialmente vai
para o ponto P[1]. Se o registrador R[8] possuir o valor 30, o programa passa pelos
pontos P[2] e P[3] antes de ir para o ponto P[4]. Caso contrário o robô salta
diretamente para o ponto P[4].
J P[1] 20% FINE
IF R[8]=30 JMP LBL[10]
J P[2] 20% FINE
J P[3] 20% FINE
LBL[10]
J P[4] 20% FINE
Grupo(Group): Sinais de Gupo I/O (GI ou GO) foram criados para uma seqüência
de sinais digitais. Eles são interpretados como inteiros binários.
Um grupo de sinais é um grupo de até 16 uns(1) e zeros(0), indicando Ligado e
Desligado.
44
Painel do Operador(UOP): O painel do operador disponibiliza 18 sinais de entrada
e 20 ou 24 sinais de saída, que podem ser conectados para dispositivos remotos ou
para um painel de operador remoto, para controlar o robô.
PLC: PLC I/O (PI ou PO) são dispositivos opcionais controlados pelo PLC
Robô (Robot): Sinais do Robôs (RI ou RO) consistem de sinais de entrada e saída
entre o controlador e o robô. Estes sinais são enviados para o conector EE
localizado no robô. O número de sinais do robô de entrada e saída varia de acordo
com o número de eixos do sistema.
O comando WAIT pode também ser utilizado para aguardar até que uma
condição de sinal de entrada seja verdadeira. Por exemplo, deseja-se aguardar até
que um sinal de entrada digital esteja em ON para iniciar a execução de um
programa. Utiliza-se então a instrução:
WAIT DI[3]=ON
OBSERVAÇÕES:
-Sempre que for forçar uma saída digital lembre-se de que a saída irá ser atuada e
que acidentes podem ocorrer.
Ex: acionar uma pinça, liberar um dispositivo, etc.
-Sempre que for simular um sinal lembre-se que programa do robô irá interpretar o
sinal como se o mesmo estivesse presente podendo ocorrer acidentes.
Ex: sinal de OK liberando o robô para executar um programa de movimentação
PROCEDIMENTO:
45
46
ANEXO I – Robô Industrial da FANUC (ARC Mate 50 iL)
A1.1 SeguranÁa
FANUC Robotics não é e nem se representa como sendo peritos em sistemas
de seguranças, equipamentos de segurança ou aspectos específicos de seguranças
da sua empresa e/ou da sua força de trabalho. É de responsabilidade do dono,
empregado ou usuário fazer todos os passos necessários para garantir a segurança
de todos em um ambiente de trabalho.
Os níveis apropriados de segurança para suas aplicações e instalação podem
ser mais bem determinados por um profissional em segurança do trabalho. FANUC
Robotics, portanto, recomenda que cada cliente consulte com um profissional em
ordem de ter um ambiente de trabalho que permita uma aplicação, uso e operação
segura dos sistemas da FANUC Robotics.
De acordo com os padrões industriais ANSI/RiA R15-06, o dono ou usuário
deverá consultar os padrões to assegurar um bom uso para o design, usabilidade,
operação, manutenção e serviço. Adicionalmente, como dono, empregado ou
usuário de um sistema robótico, é sua a responsabilidade de conseguir treinamento
para o operador de um sistema robótico reconhecer e responder para danos
associados com o seu sistema robótico e estar ciente dos procedimentos de
operação recomendados para sua aplicação particular e instalação do robô.
FANUC Robotics, portanto, recomenda que todo o pessoal que pretenda
operar, programar, reparar ou outros que manipularem o sistema robótico deve ser
treinado por um curso de treinamento aprovado pela FANUC Robotics e esteja
familiarizado com a forma conveniente de operar o sistema. Pessoas responsáveis
por programar o sistema – incluindo o design, a implementação dos programas de
aplicação – devem ser familiares com os processos de programação recomendadas
para sua aplicação e a instalação do robô.
Nas próximas linhas estão contidos materiais para enfatizar a importância da
segurança no ambiente de trabalho.
48
área definida pelo alcance máximo de movimento do robô, incluindo
qualquer ferramenta anexada no flange que estenda esse alcance.
• Posicione todos os controladores fora da área de trabalho do robô;
• Nunca confie em um software como sendo o elemento primordial de
segurança;
• Monte um número adequado de botões de PARADA DE EMERGÊNCIA
ou alavancas que esteja de fácil alcance do operador e em pontos
críticos dentro e fora da célula de trabalho;
• Instale Luzes que piscam e/ou dispositivos de áudio que são ativados
enquanto o robô está em funcionamento;
• Sempre que possível, instale grades de segurança para se proteger
contra entradas não autorizadas de pessoas na área de trabalho;
A1.2 AplicaÁões:
É usado em todo tipo de aplicação industrial de porte exceto para
manipulação de líquidos (pintura, colagem etc), por não possuir o molejo necessário
nas suas articulações para este tipo de tarefa.
49
A1.4 Eixos:
A1.4.1Eixos internos :
A1.4.2Eixos externos :
É possível se adicionar ao robô eixos externos, como por exemplo, um eixo
de translação (trilho) que possibilite aumentar sua área de trabalho, ou uma mesa
giratória para posicionamento de peças.
50
A1.6 Iniciando o Programa
Pode-se executar o programa de três maneiras através de teclas de função
diferentes:
– SHIFT + FWD: roda o programa uma vez;
– Com o Led do STEP acionado + SHIFT + FWD: executa uma instrução para
frente.
– SHIFT + BWD: uma instrução para trás.
Pode-se também escolher a velocidade utilizando as teclas de função -%, +%
(para decrementos e incrementos de %),
QUANDO FOR RODAR UMA INSTRUÇÃO OU O PROGRAMA COMPLETO,
ASSEGURE-SE DE QUE NÃO HÁ NINGUÉM DENTRO DA ÁREA DE
SEGURANÇA AO REDOR DO ROBÔ.
Sempre se lembre de que para iniciar o programa em um dos modos
manuais, deve-se pressionar o Deadman e segurar a tecla SHIFT.
Para parar o programa deve-se pressionar a tecla HOLD ou o botão de
emergência na unidade de programação.
51
ANEXO II – Roteiros de Aulas Práticas
Objetivos
Movimentar o robô manualmente
Introdução
Para se fazer a programação de um robô é necessário movimentá-lo
manualmente e informar ao robô a ordem de movimentação para esses pontos.
O robô pode ser movimentado com o uso do teach pendant em vários
sistemas de coordenadas. Os mais comuns são o junta a junta e o linear. No
movimento junta a junta pode-se movimentar o robô em cada uma de suas juntas
por vez. No movimento linear, pode-se movimentá-lo em cada um dos eixos de
coordenadas x, y e z e de orientação da ferramenta roll, pitch e yaw.
Metodologia
Nessa prática o aluno aprenderá a movimentar o robô FANUC nos sistemas
de coordenadas de junta e linear.
Procedimentos
52
c Pressione as teclas J4-, J4+, J5-, J5+, J6- e J6+ para alterar a orientação
da ferramenta.
53
Prática 2 - MarcaÁão de pontos
Objetivos
Criar um programa novo
Nomear o programa
Criar linhas de movimentação
Marcar pontos
Executar o programa
Introdução
Programas para robôs industriais são constituídos basicamente de comandos
de movimentos. Esses comandos informam ao robô para que ponto ir, velocidade e
precisão do ponto final.
Assim, é necessário que as posições dos pontos utilizados no programa
sejam informadas previamente ao robô. Em algumas linguagens, como a utilizada
pelos robôs da ABB, os pontos podem ter nomes definidos pelo usuário. Em
linguagens como a utilizada pelos robôs da FANUC, os pontos são identificados pelo
número.
A identificação dos pontos é feita normalmente de duas maneiras:
- Levando o robô à posição desejada e “marcando o ponto”.
- Informando as coordenadas do ponto, quando essas forem conhecidas.
Metodologia
Nessa prática será desenvolvido um programa simples com apenas dois
movimentos, para demonstrar como marcar pontos no robô FANUC.
Procedimentos
5 Movimente o robô para uma nova posição, leve o cursor para a última linha do
programa ( [END] ) e crie um novo comando de movimento, como no passo 3.
55
Prática 3 - EdiÁão de posiÁão de pontos
Objetivos
Atribuir a pontos valores conhecidos de coordenadas
Introdução
Em muitos casos, os valores das coordenadas de certos pontos são
previamente conhecidos, por exemplo, com base no projeto. Nesses casos pode-se
editar o ponto e informar o valor de tais coordenadas.
As coordenadas dos pontos podem estar em dois sistemas diferentes: junta
ou cartesiano.
Quando se utiliza o sistema de coordenadas de junta, os valores de giro em
graus de cada uma das juntas é informado diretamente.
Quando o sistema utilizado é o cartesiano, são informados os valores x, y, z,
roll, pitch e yaw do ponto a ser alcançado pelo TCP. O controlador do robô calcula
então os valores de giro de cada uma das juntas para que seja alcançado o ponto
desejado.
Metodologia
Nessa prática será utilizado o programa P1Dx criado na prática anterior e
serão editados os valores de seus dois pontos, utilizando o sistema de coordenadas
de junta e cartesiano.
Procedimentos
J1 = 0 deg
J2 = 0 deg
J3 = 0 deg
J4 = 0 deg
J5 = -90 deg
J6 = 0 deg
X = 700 mm
Y = 100 mm
Z = -20 mm
W = -180 deg
P = 0 deg
R = 0 deg
57
Prática 4 - FunÁões de chamadas de programas
Objetivos
Fazer programas que chamem outros programas (comando CALL)
Introdução
Algumas funções de um programa podem ser agrupadas. Isso é útil, por
exemplo, quando certos blocos do programa devem ser executados várias vezes e
em várias partes do programa. Em muitas linguagens de programação esses grupos
de funções são chamados rotinas e são escritos dentro do próprio programa. No
robô FANUC, isso deve ser feito através da criação de outro programa. Esse
programa é então chamado a partir do programa principal através do comando
CALL. Após a execução do programa chamado, a execução volta ao principal no
ponto em que ocorreu a chamada.
Metodologia
Nessa prática será utilizado criado um programa que chama outros dois
programas em sequência.
Procedimentos
1 Crie dois programas, um que desenha o retângulo e outro que desenha o losango
da bandeira do Brasil. O primeiro deve ter o nome de RETDx e o segundo deve
ter o nome de LOSDx. Ambos os programas devem possuir 5 pontos sendo 4
deles os vértices das figuras e o quinto um ponto marcado fora do plano de
desenho. Todos os movimentos devem ter terminação FINE.
2 Faça um terceiro programa que faz as chamadas aos dois outros, chamado de
BRx:
CALL RETDx
CALL LOSDx
a Para inserir o comando CALL, pressione a tecla NEXT para que apareça
na tela a função [INST] (para ver novamente as funções anteriores,
pressione novamente a tecla NEXT). Pressione a tecla correspondente à
função [INST].
b Selecione na lista na parte superior da tela a opção CALL e pressione a
tecla ENTER.
c Selecione o comando CALL program e pressione ENTER.
d Selecione o programa a ser chamado. Se não aparecer na tela, selecione a
opção 8 ---next page--- para mostrar mais programas. Pressione ENTER.
58
Prática 5 - Comando de movimento circular
Objetivos
Fazer um programa que desenhe um círculo
Introdução
Foram vistos em práticas anteriores os comandos de movimentos de junta a
junta e linear. Para se fazer movimentos circulares é utilizado o comando C. Os
comandos J e L necessitam de apenas um ponto, que é o ponto final do movimento.
O comando C necessita de 2 pontos, sendo que um é o ponto final e o outro é um
ponto intermediário, pertencente ao arco de círculo. A sintaxe do comando é a
seguinte:
C P[1]
P[2] (velocidade) (terminaÁão)
Nesse caso, o ponto P[1] é o ponto intermediário e o ponto P[2] é o ponto final
do arco.
Para se fazer uma circunferência completa são necessários dois comandos
de movimento C e a marcação de 4 pontos:
Metodologia
Nessa prática será criado um programa que desenha um círculo e será
introduzida uma chamada a esse programa no programa da prática anterior (BRx).
Procedimentos
C P[2]
P[ ... ] (velocidade) (terminaÁão)
As reticências significam que o ponto intermediário foi marcado, mas o ponto final
ainda não.
4 Leve o robô para o ponto final, posicione o cursor no início da segunda linha do
movimento ( P[ ... ] (velocidade) (terminaÁão) ) e pressione a tecla de função
correspondente à função TOUCHUP juntamente com a tecla SHIFT. Isso marcará
o ponto P[3].
5 Leve o robô para o ponto P[4] (ponto intermediário do segundo movimento), insira
outro comando de movimento e altere para movimento circular. Informe
manualmente que o ponto final desse movimento é o ponto P[1], levando o cursor
para as reticências (...) e digitando o valor 1 e a tecla ENTER.
60
Prática 6 - RepetiÁão de programa um número indeterminado de vezes
Objetivos
Aprender as intruções LBL e JMP LBL
Fazer um programa que se repita número indeterminado de vezes
Introdução
Dentro de um mesmo programa pode ser necessário pular certos comandos
ou voltar para uma linha anterior. Isso pode ser feito marcando-se uma linha do
programa com a instrução label: LBL[n]. Essa intrução vem sempre acompanhada
de um número correspondente ao número do label a ser dado àquela linha. Não
podem existir em um mesmo programa dois labels com o mesmo número. Pode-se
então utilizar o comando jump label: JMP LBL[n] para pular para uma linha
marcada, informando o número do label da linha.
Para se fazer um programa cíclico deve-se, então, marcar a primeira linha do
programa e instruir o robô a pular para aquela linha ao final de sua execução.
Metodologia
Nessa prática será alterado o programa (BRx) de modo a fazê-lo cíclico.
Procedimentos
61
Prática 7 - RepetiÁão de programa um número determinado de vezes
Objetivos
Aprender as intruções R[n]=c e IF
Fazer um programa que se repita número determinado de vezes
Introdução
Para se fazer um programa cíclico que pare após a execução de um certo
número de cliclos, deve ser usado um contador. O robô FANUC dispõe de um
número de variáveis, chamadas registradores. Um desses registradores pode ser
utilizado como contador, por exemplo o registrador 1 ( R[1] ).
Esse contador pode começar com o valor 0 e ser incrementado após cada
ciclo do programa. Para zerar o contador 1 utiliza-se R[1]=0. Para incrementar seu
valor utiliza-se R[1]=R[1]+1, ou seja, o valor de R[1] é determinado por seu valor
anterior mais 1.
Após incrementar o valor de R[1] deve-se verificar se ele é ainda menor que o
número de vezes que o programa deve ser repetido. Se for, o programa deve
retornar ao início do ciclo. Para isso utiliza-se, por exemplo, IF R[1]<3 JMP LBL[1].
Isso significa que se o registrador 1 for menor que 3 então o programa deve pular
para o label 1.
Observe que o contador deve ser zerado antes da intrução LBL[1], do
contrário seu valor seria zerado a cada ciclo, e nunca alcançaria o valor desejado.
Metodologia
Nessa prática será alterado o programa (BRx) de modo a fazê-lo repetir 3
vezes.
Procedimentos
2 Insira uma linha antes da linha LBL[1] (como na prática anterior, passo 2).
63
Referências Bibliográficas
64