Escolar Documentos
Profissional Documentos
Cultura Documentos
ROBÓTICA
INTRODUÇÃO
Enquanto as linguagens de programação de CLP’s e CNC’s são divulgadas em livros,
revistas e páginas na Internet, pouco se lê sobre a programação dos robôs que é, para muitos,
um grande mistério. Como não há nenhuma padronização o que se tem hoje é uma grande
quantidade de linguagens que inviabiliza às editoras abordar uma delas. Como são poucos os
cursos técnicos e de formação profissional que dispõem de meios de fornecer conhecimentos
sobre programação de robôs o aprendizado fica, basicamente, restrito aos treinamentos
realizados nas próprias empresas, usuárias ou fornecedoras, desses equipamentos.
A proposta desta série de 3 artigos é apresentar uma linguagem de fácil assimilação que
permita aos leitores entender o “espírito da coisa” . Dessa forma, munido de um conhecimento
preliminar, ficará mais simples encarar um futuro treinamento em uma outra linguagem, quando
ingressar na vida profissional.
A PROPOSTA DE APRENDIZAGEM
É fato consumado que para se aprender uma linguagem de programação é necessário
programar. Sendo assim, para que a aprendizagem seja efetiva, propõem-se que a
programação seja realizada no simulador citado no artigo Conhecendo o Robô SCARA
(edição no 13, página 35), que pode ser obtido em http://www.iem.efei.br/gorgulho/robo.html,
em versões 16 e 32 bits (ambiente Windows ).
Este software simula o robô IBM 7535, de configuração SCARA. A grande vantagem do
uso desta configuração é o movimento do braço, que apesar de ser executado por juntas
rotacionais, ocorre no plano XY, simplificando muito a visualização e o aprendizado. Robôs que
executam complexos movimentos espaciais trariam apenas dificuldades ao iniciante.
1
IBM 7535
A Figura 1 exibe uma representação do robô, bem como as dimensões da área de
trabalho. O controle da garra envolve as coordenadas XY, a posição vertical e sua orientação R
(rotação no plano XY). Por tratar-se de acionamento pneumático o movimento vertical possui
apenas duas posições possíveis: totalmente em baixo (sem pressão) e totalmente em cima
(com pressão). O órgão terminal que equipará o robô é uma garra pneumática com retorno por
mola, ou seja, sem pressão ela permanece aberta.
2
O programa AML é formado por uma sub-rotina principal que poderá conter outras sub-
rotinas internas. Estas sub-rotinas internas devem ser definidas logo no início da sub-rotina
principal. Alguns comandos específicos são permitidos antes da declaração da sub-rotina
principal. São comentários e comandos que definem constantes, contado res e pallet’s. A fig ura
2 apresenta um esquema da estrutura da linguagem.
Id2 :Subr;
.
. Sub-rotina interna 1
.
End;
Id3 :Subr;
.
. Sub-rotina interna 2
.
End;
.
.
. Comandos da
. sub-rotina principal
.
O eixo Z possui sensores de fim de curso que informam se está na posição superior ou
inferior. Dessa forma o 7535 aguarda durante um tempo que o sinal proveniente dos
respectivos sensores seja enviado para que o programa continue a sua execução. O tempo
padrão é de 1.5 segundos. Caso o eixo Z não atinja a posição neste tempo um erro OT (Over
Time) é gerado, interrompendo o programa. Isso pode ocorrer se a pressão da linha de ar
comprimido baixar muito ou a garra ficar presa no processo.
A linguagem AML abre uma possibilidade de controle sobre o tempo de espera padrão,
mas que não foi implementada no simulador. São os comandos UP(tempo) e DOWN(tempo),
onde tempo pode variar de 0 até 25.5 segundos em passos de 0.1 segundo. Um valor igual a
zero fará com que o programa espere indefinidamente até que o eixo atinja a posição.
CONTROLE DA GARRA
A posição natural, devido ao retorno por mola, é aberta. Para controlar a garra têm-se os
comandos GRASP (fecha) e RELEASE (abre). Um detalhe deve ser observado. O IBM 7535
executa imediatamente os comandos já que não há sensores de fim de curso para indicar se a
garra já encerrou o movimento de abertura ou fechamento. Sendo assim é necessário adotar
um cuidado para evitar que, por exemplo, a garra se feche antes de ter chegado na posição
inferior onde deveria pegar uma peça.
4
PROGRAMA 1
De posse dos comandos já apresentados é possível elaborar um primeiro programa que
servirá principalmente para entender a forma de uso do simulador. Após carregar o simulador,
use a opção Arquivo do menu principal, seguida na opção Novo. Em seguida digite o programa
exibido pela Fig ura 3.
O simulador possui uma rotina de tratamento de erros que apresenta o local do erro e
informações sobre como agir para corrigi-lo. Mas podem ocorrer erros não previstos e o
simulador, por não encontrar tratamento adequado, encerra sua execução. Sendo assim,
sempre salve o programa digitado antes de prosseguir.
Acionar a opção S imular do menu principal faz surgir a tela principal da simulação,
mostrada pela Fig ura 5 . Nota-se a vista superior do robô, e duas vistas adicionais relacionadas
5
à garra na parte inferior direita (sendo uma vista lateral e a outra de topo). Na parte inferior da
tela está o indicador de coordenadas que é composto pelas cotas X e Y e pela rotação R da
garra. Como o robô ainda está desligado os valores não estão sendo mostrados.
Ligue o robô com o botão Manip Power . A luz vermelha ao lado do botão se acenderá e
o eixo Z, que estava na posição inferior, devido à falta de ar comprimido, irá subir. Isto ocorre
por motivos de segurança. A próxima tarefa é fazer com que o braço se mova e estando na
posição superior os riscos de colisão são minimizados. Esse movimento inicial será
denominado de referenciamento.
Este equipamento, como vários outros robôs e máquinas CNC, possui um sistema de
medição incremental. Isto significa que ao ser ligado o sistema de controle não tem como saber
a posição em que se encontram as partes móveis. Os fabricantes adotam rotinas especiais de
movimentação para que cada elemento móvel encontre um sensor instalado em local
específico e de posição conhecida. Quando estes sensores são acionados o controle do
equipamento passa a conhecer a posição atual e pode, então, ir para qualquer outra posição
com segurança (isso explica porque impressoras e scanners fazem sons e movimentos
quando são ligados – também possuem medição incremental e seguem suas rotinas
automáticas de referenciamento).
6
Após ligar o robô deve-se acionar o botão Return Home para que ocorra o
referenciamento. O simulador mostra os eixos Teta1, Teta2 e R girando lentamente em busca
de suas referências. Assim que encontram os eixos afastam-se rapidamente para, em seguida,
voltar à origem e confirmar a posição. Essa tarefa só é executada quando o robô é ligado. Em
qualquer outro momento pode-se usar o botão Return Home para, rapidamente, trazer os
eixos para a origem (coordenadas X=650 mm, Y=0 mm e R= 0º ).
A única opção disponível é S tart Cycle. Acione este botão e o programa começará a
rodar e as demais opções do painel de comando serão liberadas. O botão S top interrompe a
execução na linha que estiver sendo executada. O botão S top Cycle interrompe a execução
do programa quando for encontrado o comando END da sub-rotina principal. As outras funções
serão discutidas posteriormente.
A Figura 7 mostra a seqüência de eventos que deverão ser observados durante a
execução do Programa1. Da esquerda para a direita tem-se: posição inicial, descida da garra
7
com o comando Down ; fechamento da garra com o comando Grasp, subida do eixo Z com o
comando Up e abertura da garra com o comando Release (que faz voltar ao estado inicial).
MOVIMENTANDO O BRAÇO
A linguagem AML utiliza-se de dois comandos para mover o braço e, simultaneamente,
orientar a garra. Um dos comandos realiza um movimento absoluto, ou seja, a coordenada da
posição final do movimento está relacionada com a origem do sistema de coordenadas XY. O
outro comando faz com que a movimentação seja relativa à posição atual.
PROGRAMA 2
A Figura 8 exibe um programa que executará alguns movimentos do braço. É usado
tanto o comando de movimentação absoluta quanto incremental. Após a digitação, salve o
programa e compile, indo em seguida para a tela de simulação. Observe que, durante a
execução da simulação um pequeno ponto azul é posicionado nas coordenadas de destino do
movimento.
8
Note que o terceiro movimento executa um giro da garra para a posição de 90 graus.
Essa posição é mantida no movimento seguinte. O último movimento, que retorna o braço para
a origem (x=650 e y=0), também leva a garra para a posição inicial (r=0).
A opção Visualizar do menu apresenta outras funções. Em sistemas mais lentos pode-
se mostrar o esqueleto ao invés do braço. As vistas superior e lateral da g arra podem ser
escondidas também, bem como os eixos . As outras funções (área linear, traço inferior e
contadores) serão explicadas futuramente. No menu há a opção Limpar Área que apaga os
traços deixados pela garra.
COMENTÁRIOS FINAIS
Esta primeira parte apresentou a forma de trabalho do simulador, a estrutura da
linguagem AML, suas regras principais e os comandos mais básicos. Com esses comandos já
é possível criar programas completos, mas sem muitos recursos. O próximo artigo irá mostrar
como criar constantes, usar contadores, manipular as portas de interface e executar
movimentos em linha reta.
REFERÊNCIAS
IBM, AML/Entry Version 3 User’s Guide , IBM Manufacturing System – Software Library, First
Edition, 1984.
Gorgulho Júnior, J. H. C., Conhecendo o Robô SCARA, Revista Mecatrônica Atual, Ano 3,
edição no 13, página 35, Dezembro/2003 - Janeiro/2004.
10