Вы находитесь на странице: 1из 10

ROBTICA

Programando em AML Parte 1


Jos Hamilton Chaves Gorgulho Jnior
Professor do Departamento de Produo da Universidade Federal de Itajub UNIFEI
gorgulhojunior@ig.com.br

INTRODUO
Enquanto as linguagens de programao de CLPs e CNCs so divulgadas em livros,
revistas e pginas na Internet, pouco se l sobre a programao dos robs que , para muitos,
um grande mistrio. Como no h nenhuma padronizao o que se tem hoje uma grande
quantidade de linguagens que inviabiliza s editoras abordar uma delas. Como so poucos os
cursos tcnicos e de formao profissional que dispem de meios de fornecer conhecimentos
sobre programao de robs o aprendizado fica, basicamente, restrito aos treinamentos
realizados nas prprias empresas, usurias ou fornecedoras, desses equipamentos.

A proposta desta srie de 3 artigos apresentar uma linguagem de fcil assimilao que
permita aos leitores entender o esprito 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 programao necessrio
programar. Sendo assim, para que a aprendizagem seja efetiva, propem-se que a
programao seja realizada no simulador citado no artigo Conhecendo o Rob SCARA
(edio no 13, pgina 35), que pode ser obtido em http://www.iem.efei.br/gorgulho/robo.html,
em verses 16 e 32 bits (ambiente Windows ).

Este software simula o rob IBM 7535, de configurao SCARA. A grande vantagem do
uso desta configurao o movimento do brao, que apesar de ser executado por juntas
rotacionais, ocorre no plano XY, simplificando muito a visualizao e o aprendizado. Robs que
executam complexos movimentos espaciais trariam apenas dificuldades ao iniciante.

A linguagem utilizada por este equipamento a AML (A Manufacturing Language), mais


especificamente a AML/Entry Version 3. Trata-se de uma linguagem de estrutura e comandos
simples que permitiro uma assimilao rpida.
1

IBM 7535
A Figura 1 exibe uma representao do rob, bem como as dimenses da rea de
trabalho. O controle da garra envolve as coordenadas XY, a posio vertical e sua orientao R
(rotao no plano XY). Por tratar-se de acionamento pneumtico o movimento vertical possui
apenas duas posies possveis: totalmente em baixo (sem presso) e totalmente em cima
(com presso). O rgo terminal que equipar o rob uma garra pneumtica com retorno por
mola, ou seja, sem presso ela permanece aberta.

Figura 1 Vista do IBM 7535 e dimenses de sua rea de trabalho.

REGRAS BSICAS DA LINGUAGEM


A primeira regra bsica que toda linha encerra-se com o caractere ponto-e-vrgula.
Outra regra refere-se s palavras que sero usadas. Alguns comandos requerem que um nome,
que chamaremos de identificador, seja adotado pelo programador e que deve atender aos
seguintes requisitos:
At 72 caracteres;
O primeiro caractere deve ser alfabtico;
Os demais caracteres podem ser alfabticos, numricos ou o caractere sublinhado (_);
O caractere sublinhado (_) no pode ser o ltimo caractere do identificador;
Caracteres especiais, como o asterisco, no so permitidos;
O USO DOS COMENTRIOS
Um bom programa, seja em que linguagem for, deve possuir explicaes que permitam
que uma outra pessoa possa entender a sua lgica. Alm disso, passado algum tempo, o
prprio criador do programa ter muitas facilidades em lembrar-se do que fez se tiver colocado
informaes claras.

Em empresas que contam com vrios programadores interessante a adoo de um


cabealho identificador com informaes relevantes como: funo do programa, nome do
programador, data da programao, tarefas executadas, materiais manipulados, cliente
solicitante etc. Cada empresa deve definir quais informaes so importantes.

Na linguagem AML o indicador de comentrio so dois sinais negativos (--). O


comentrio pode estar sozinho em uma linha ou na mesma linha de um comando (desde que
esteja aps o ponto-e-vrgula).

A ESTRUTURA DA LINGUAGEM AML


A linguagem AML baseada em sub-rotinas que tem um comeo e um final claramente
definidos. Cada sub-rotina dever ter um identificador nico, seguido pelo comando SUBR.
Deve-se utilizar o caractere dois-pontos (:) para separar o identificador do comando. As subrotinas so encerradas com o comando END.

O programa AML formado por uma sub-rotina principal que poder conter outras subrotinas internas. Estas sub-rotinas internas devem ser definidas logo no incio da sub-rotina
principal. Alguns comandos especficos so permitidos antes da declarao da sub-rotina
principal. So comentrios e comandos que definem constantes, contadores e pallets. A figura
2 apresenta um esquema da estrutura da linguagem.

Regio para definio de:


constantes
contadores
pallet's
Id1:Subr; -- Incio da sub-rotina principal
Id2:Subr;
.
.
.
End;

Sub-rotina interna 1

Id3:Subr;
.
.
.
End;

Sub-rotina interna 2

.
.
.
.
.

Comandos da
sub-rotina principal

End; -- Fim da sub-rotina principal

Figura 2 Estrutura da linguagem AML.

Na linguagem AML as sub-rotinas internas podem receber parmetros. Isso permite a


elaborao de programas mais curtos e flexveis. Porm, este recurso no foi implementado no
simulador e, portanto, no poder ser explorado.
CONTROLE DO EIXO VERTICAL (EIXO Z)
Os comandos que controlam este eixo so UP, para fornecer presso e subir o eixo Z e
DOWN, para cessar a presso. O peso prprio do eixo vertical, somado ao peso do rgo
terminal e da carga fazem com que volte para a posio inferior. Nota-se que so comandos
extremamente simples, diretos e de fcil memorizao.

O eixo Z possui sensores de fim de curso que informam se est na posio 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 execuo. O tempo
padro de 1.5 segundos. Caso o eixo Z no atinja a posio neste tempo um erro OT (Over
Time) gerado, interrompendo o programa. Isso pode ocorrer se a presso 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 padro,
mas que no foi implementada no simulador. So 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 posio.

CONTROLE DA GARRA
A posio natural, devido ao retorno por mola, aberta. Para controlar a garra tm-se os
comandos GRASP (fecha) e RELEASE (abre). Um detalhe deve ser observado. O IBM 7535
executa imediatamente os comandos j que no h sensores de fim de curso para indicar se a
garra j encerrou o movimento de abertura ou fechamento. Sendo assim necessrio adotar
um cuidado para evitar que, por exemplo, a garra se feche antes de ter chegado na posio
inferior onde deveria pegar uma pea.

A soluo usar o comando DELAY(tempo) que, como o prprio nome sugere, gasta
um determinado tempo antes de seguir para o prximo comando. O parmetro tempo tem
como valores vlidos a faixa que vai de 0 at 25.5 segundos, em incrementos de 0.1 segundo.
Esse parmetro tambm pode ser uma constante. O valor 0 (zero) indica uma espera infinita,
mas essa opo no foi implementada no simulador, que aceita apenas a faixa de valores que
vai de 0.1 at 25.5 segundos.
4

PROGRAMA 1
De posse dos comandos j apresentados possvel elaborar um primeiro programa que
servir principalmente para entender a forma de uso do simulador. Aps carregar o simulador,
use a opo Arquivo do menu principal, seguida na opo Novo. Em seguida digite o programa
exibido pela Figura 3.

Figura 3 Primeiro programa.

O simulador possui uma rotina de tratamento de erros que apresenta o local do erro e
informaes sobre como agir para corrigi-lo. Mas podem ocorrer erros no previstos e o
simulador, por no encontrar tratamento adequado, encerra sua execuo. Sendo assim,
sempre salve o programa digitado antes de prosseguir.

A prxima etapa, como mostra o menu principal, Compilar o programa. Da mesma


forma como ocorre no rob real, a compilao procura por erros lgicos e de sintaxe. Se
houver um erro, como mostra a Figura 4, realize a correo, salve e compile novamente.
Quando no houver mais erros a opo Simular fica disponvel no menu principal.

Figura 4 Erro no programa da Figura 3.

Acionar a opo Simular do menu principal faz surgir a tela principal da simulao,
mostrada pela Figura 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 rotao R da
garra. Como o rob ainda est desligado os valores no esto sendo mostrados.

Figura 5 Tela de simulao com o rob desligado.

Ligue o rob com o boto Manip Power. A luz vermelha ao lado do boto se acender e
o eixo Z, que estava na posio inferior, devido falta de ar comprimido, ir subir. Isto ocorre
por motivos de segurana. A prxima tarefa fazer com que o brao se mova e estando na
posio superior os riscos de coliso so minimizados. Esse movimento inicial ser
denominado de referenciamento.
Este equipamento, como vrios outros robs e mquinas CNC, possui um sistema de
medio incremental. Isto significa que ao ser ligado o sistema de controle no tem como saber
a posio em que se encontram as partes mveis. Os fabricantes adotam rotinas especiais de
movimentao para que cada elemento mvel encontre um sensor instalado em local
especfico e de posio conhecida. Quando estes sensores so acionados o controle do
equipamento passa a conhecer a posio atual e pode, ento, ir para qualquer outra posio
com segurana (isso explica porque impressoras e scanners fazem sons e movimentos
quando so ligados tambm possuem medio incremental e seguem suas rotinas
automticas de referenciamento).
6

Aps ligar o rob deve-se acionar o boto Return Home para que ocorra o
referenciamento. O simulador mostra os eixos Teta1, Teta2 e R girando lentamente em busca
de suas referncias. Assim que encontram os eixos afastam-se rapidamente para, em seguida,
voltar origem e confirmar a posio. Essa tarefa s executada quando o rob ligado. Em
qualquer outro momento pode-se usar o boto Return Home para, rapidamente, trazer os
eixos para a origem (coordenadas X=650 mm, Y=0 mm e R= 0 ).

Acione o boto Auto para entrar no modo de execuo automtica. O menu de opes
que se abrir est exibido na Figura 6 e o texto do boto ficar vermelho. A parte inferior do
painel refere-se s portas de entrada e sada, que sero discutidas posteriormente.

Figura 6 Painel de controle na opo Auto.

A nica opo disponvel Start Cycle. Acione este boto e o programa comear a
rodar e as demais opes do painel de comando sero liberadas. O boto Stop interrompe a
execuo na linha que estiver sendo executada. O boto Stop Cycle interrompe a execuo
do programa quando for encontrado o comando END da sub-rotina principal. As outras funes
sero discutidas posteriormente.

A Figura 7 mostra a seqncia de eventos que devero ser observados durante a


execuo do Programa1. Da esquerda para a direita tem-se: posio inicial, descida da garra

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).

Figura 7 Execuo do Programa1.

MOVIMENTANDO O BRAO
A linguagem AML utiliza-se de dois comandos para mover o brao e, simultaneamente,
orientar a garra. Um dos comandos realiza um movimento absoluto, ou seja, a coordenada da
posio final do movimento est relacionada com a origem do sistema de coordenadas XY. O
outro comando faz com que a movimentao seja relativa posio atual.

Para movimentao absoluta o comando PMOVE(PT(x, y, r)) onde os valores de x e y


so em milmetros e r em graus. Outra forma de uso criar uma constante com a coordenada
desejada e usar o nome da constante no comando, ou seja, PMOVE(constante). A criao de
constantes ser abordada no prximo artigo.

O comando para movimentao relativa, tambm chamada de incremental,


DPMOVE(x, y, r). O comando inicia-se com a letra D devido a palavra Delta, indicando que o
movimento ocorre em relao posio atual. Uma observao importante refere-se ao
primeiro movimento executado pelo programa. Esse movimento no pode ser relativo e o
simulador apresentar uma mensagem de erro durante a compilao.

PROGRAMA 2
A Figura 8 exibe um programa que executar alguns movimentos do brao. usado
tanto o comando de movimentao absoluta quanto incremental. Aps a digitao, salve o
programa e compile, indo em seguida para a tela de simulao. Observe que, durante a
execuo da simulao um pequeno ponto azul posicionado nas coordenadas de destino do
movimento.

Note que o terceiro movimento executa um giro da garra para a posio de 90 graus.
Essa posio mantida no movimento seguinte. O ltimo movimento, que retorna o brao para
a origem (x=650 e y=0), tambm leva a garra para a posio inicial (r=0).

Figura 8 Programa que movimenta o brao.

O simulador possui o recurso de mostrar o caminho percorrido pela garra. Acione a


opo Trao superior do menu Visualizar. O resultado da simulao do Programa 2 aps o
acionamento desta funo est na Figura 9.

Figura 9 Simulao do Programa 2.

A opo Visualizar do menu apresenta outras funes. Em sistemas mais lentos podese mostrar o esqueleto ao invs do brao. As vistas superior e lateral da garra podem ser
escondidas tambm, bem como os eixos. As outras funes (rea linear, trao inferior e
contadores) sero explicadas futuramente. No menu h a opo Limpar rea que apaga os
traos deixados pela garra.

COMENTRIOS FINAIS
Esta primeira parte apresentou a forma de trabalho do simulador, a estrutura da
linguagem AML, suas regras principais e os comandos mais bsicos. Com esses comandos j
possvel criar programas completos, mas sem muitos recursos. O prximo artigo ir mostrar
como criar constantes, usar contadores, manipular as portas de interface e executar
movimentos em linha reta.

REFERNCIAS
IBM, AML/Entry Version 3 Users Guide, IBM Manufacturing System Software Library, First
Edition, 1984.
Gorgulho Jnior, J. H. C., Conhecendo o Rob SCARA, Revista Mecatrnica Atual, Ano 3,
edio no 13, pgina 35, Dezembro/2003 - Janeiro/2004.

10

Вам также может понравиться