Sie sind auf Seite 1von 248

IRC5 Programao Bsica

IRC5 Operao e
Programao Bsica
IRC5 Programming
Basic
ABB Inc. -1
IRC5 Programao
Programming Bsica
Basic

Bem-vindos!

Sejam Bem-vindos ao primeiro Centro de


Treinamento ABB em Automao e Robtica da
Amrica Latina!
ABB Inc. -2
IRC5 Programao
Programming Bsica
Basic

Contedo
Introduo 4
Informaes Gerais do Curso 13
Objetivos do Curso 15
Robtica - Tipo de Robs e Aplicaes 16
Segurana 20
Descrio do Sistema 40
Mensagem de Eventos 61
Fundamentos da Programao 74
Backup and Restore 97
TCP (Ponto Central da Ferramenta) 115
Robot Studio Online 131
Programao Estruturada 141
Controlando o Fluxo do Programa 164
Trabalhando com numerais 172
Comunicando com o Operador 179
Outras Instrues 189
Work Objects 198
Programando com OffSets 206
Calibrao e Sincronismo 214
Exerccios 225
ABB Inc. -3

Resumo - Instrues / Funes de Programa 242


Contatos ABB 243
Avaliao do Curso 245
IRC5 Programao
Programming Bsica
Basic

Introduo

Apresentaes ABB
Robtica ABB
Treinamento ABB
ABB Inc. -4
IRC5 Programao
Programming Bsica
Basic

O mundo ABB
Lder global em tecnologias de potncia e automao
Posies de liderana de mercado nos principais negcios

Cerca de 117.000 funcionrios


em mais de 100 pases
Formada em 1988, com a fuso
de empresas de engenharia
sua e sueca
Empresas precursoras fundadas
em 1883 e 1891
Empresa de capital aberto com
sede na Sua
ABB Inc. -5
IRC5 Programao
Programming Bsica
Basic

ABB - Viso

Como uma das empresas lderes mundiais


em engenharia, ajudamos nossos clientes a
utilizarem energia eltrica de forma eficiente,
aumentarem sua produtividade industrial e
diminurem seu impacto ambiental de forma
ABB Inc. -6

sustentvel.
IRC5 Programao
Programming Bsica
Basic

ABB - Portiflio

Como estamos organizados


5 Divises Globais

Discrete
Produtos de Sistemas de Produtos de Automao de
Automation
Potncia Potncia Baixa Tenso Processos
and Motion
$11.2 bilhes $6.5 bilhes $5.4 bilhes $4.1 bilhes $7.8 bilhes
33.500 16.000 18.000 19.000 28.000
funcionrios funcionrios funcionrios funcionrios funcionrios
Faturamento em 2009 (US$; valores pr-forma para as divises de automao)

Portflio ABB:
Equipamentos eltricos, Solues de distribuio
automao, controle e
instrumentao para Produtos de baixa-
gerao de energia e tenso
ABB Inc. -7

processos industriais Robtica e sistemas


Transmisso de energia robotizados
IRC5 Programao
Programming Bsica
Basic

ABB
Energia e automao esto em torno de ns
Voc encontrar a tecnologia ABB...
funcionando em rbita ao redor do planeta,

cruzando oceanos e no fundo do mar,

nos campos onde crescem nossas safras e


nas embalagens dos nossos alimentos,

nos trens em que viajamos e nas


instalaes que processam nossa gua,

nas usinas que geram nossa


ABB Inc. -8

energia e em nossas casas.


IRC5 Programao
Programming Bsica
Basic

ABB - Inovao
Pioneira em tecnologia desde 1883
Os fundadores Turbina a vapor Turbochargers Turbina
a gs
1900 1920 1930 1940

Painis isolados Motor sem redutor


Robs industriais HVDC
a gs
1950

1970 1960
1980

Acionamentos e Sistemas de Sistemas de


inversores de frequncia controle distribudo Ultra-alta tenso
propulso eltrica

1990 2000
ABB Inc. -9
IRC5 Programao
Programming Bsica
Basic

ABB
Inovao, paixo e diversidade so as marcas da ABB

"A ABB uma equipe dinmica e


multicultural distribuda pelo planeta,
trabalhando em um mundo fascinante de
alta tecnologia.

Nosso portflio amplo, mas os benefcios


so claros: ajudamos no fornecimento
confivel de energia e no aumento da
produtividade, ao mesmo tempo em que
diminumos o impacto ambiental."
Joe Hogan, CEO
ABB Inc. -10
IRC5 Programao
Programming Bsica
Basic

Robtica ABB

Rob Produto
Rob Automao
Rob Servios
Treinamentos
Servios de Campo
Peas de Reposio
Retrofit e Reparos
Projetos de Melhoria
Contratos de Manuteno
ABB Inc. -11
IRC5 Programao
Programming Bsica
Basic

Treinamento ABB

Centro de Treinamento
Centro de Treinamentos na Regio Sudeste e Sul
Osasco SP
Curitiba PR
Treinamentos no cliente

Escopos dos Treinamentos


Treinamentos Padro
Op e Programao Bsica IRC5 e S4
Programao Avanada IRC5 e S4
Op e Manuteno Mecnica IRC5 e S4
Op e Manuteno Eltrica IRC5 e S4
Programao Off-Line via Software de simulao Virtual IRC5 e S4
Treinamentos Personalizado conforme necessidade do cliente
ABB Inc. -12
IRC5 Programao
Programming Bsica
Basic

Informaes Gerais do Curso


Regulamentos

Almoo:
No horrio do almoo, as salas ficaro fechadas. O almoo j est incluso no treinamento,caso
deseje almoar fora, a regio oferece outras opes.
Durante as aulas:
No interior das salas de aula e hall do ABBI, no permitido fumar, existe uma rea externa
reservada para fumantes, contamos com sua colaborao. Para evitar interrupes e distraes,
bem como incmodos aos outros alunos, o uso de celulares e pagers devem ser evitados durante
as aulas. Caso seja extremamente necessrio, manter o aparelho celular/pager ligado, deixe-o no
modo vibra-call.
Visando a qualidade e higiene, nossos sanitrios constantemente so vistoriados e limpos. Por este
motivo, temos sanitrios disponveis no andar superior tambm.
Guarda do Material Didtico:
Cada aluno responsvel por seu material de estudo (Kit do Estudante) e pertences pessoais, no
cabendo a ABB a responsabilidade por perda ou roubo destes materiais. Recomendamos aos
alunos que ao trmino do curso, levem seu material consigo, pois a ABB no far a guarda do
mesmo.
Coffee-breaks:
Durante os intervalos ser servido um coffee-break no hall do ABBI trreo. Por favor, no leve
alimentos e bebidas para as salas de aula e laboratrios, contribuindo desta forma, para a boa
conservao do local.
Telefones:
Estar disponvel um ramal para efetuar ligaes externas. Gentileza se informar com o instrutor
ABB Inc. -13

sobre o procedimento.
Estacionamento:
A Utilizao ser orientada na Portaria.
IRC5 Programao
Programming Bsica
Basic

Informaes Gerais do Curso

Perfil do Aluno:
Operadores, tcnicos e engenheiros que iro atuar na operao e/ou desenvolvimento de
programas robotizados.
Durao:
4 dias. (Carga Horria Total de 28 Horas).
Horrios:
08:30h Incio de Aula
10:15 - 10:30h Coffee-break
12:45 13:45h Almoo
15:15 15:30h Coffee-break
16:30h Final da Aula
.

Bom Curso!!!
ABB Inc. -14
IRC5 Programao
Programming Bsica
Basic

Objetivos do Curso
O objetivo deste treinamento ensinar os princpios bsicos de operao com o
rob, apresentando de maneira simples e direta os elementos necessrios para
operadores, tcnicos e engenheiros poderem manusear e operacionalizar uma
clula de rob em produo, bem como criar, interpretar, efetuar
alteraes/correes em programas simples, operacionalizando uma clula
robotizada.
Ao concluir o curso o aluno estar apto a:
Operar o rob e seus programas com segurana nos seus diversos modos de operao.
Interpletar e responder eventos do controlador.
Compreender conceitos bsicos de Calibrao/Sincronismo.
Compreender o sistema de Coordenadas juntamente com TCP e WorkObject.
Criar, Editar e Analisar programas bsicos.
Utilizar instrues de movimentao nos programas.
Utilizar instrues de Controle de Fluxo nos programas.
Utilizar instrues Matemticas nos programas.
Utilizar instrues de I/O nos programas.
Utilizar instrues de Interface nos programas.
ABB Inc. -15

Utilizar instrues de tempo nos programas.


Realizar Backup e Restaurar programas.
IRC5 Programao Bsica

Robtica
Tipo de Robs e Aplicaes
IRC5 Programming
IRC5
Basic
Programao Bsica
ABB Inc. -16
IRC5 Programao
Programming Bsica
Basic

Tipo de Robs

Robs Industriais
Androide
Scara
FlexPicker
ABB Inc. -17
IRC5 Programao
Programming Bsica
Basic

Aplicaes Robotizadas

Manipulao
Soldagem MigMag
Soldagem Ponto
Pintura
Lavagem
Cola
Usinagem
Etc
ABB Inc. -18
IRC5 Programao
Programming Bsica
Basic

Vantagens com a Automao Robotizada

Segurana
Repetibilidade
Qualidade
Produtividade
Competitividade
ABB Inc. -19
IRC5 Programao Bsica

Segurana IRC5 Programming


IRC5
Basic
Programao Bsica
ABB Inc. -20
IRC5 Programao
Programming Bsica
Basic

Introduo

O Aluno deve conhecer e entender


os procedimentos de segurana
descritos no Manual do Operador
e Manual do Produto.
Adicionalmente as informaes de
segurana que sero passadas
pelo Instrutor, o aluno dever
observar os procedimentos de
segurana descrito nos manuais.
Compreender Segurana e seus
Procedimentos no trabalho com
robs industriais uma premissa
ABB Inc. -21

deste treinamento.
IRC5 Programao
Programming Bsica
Basic

Risco de Acidentes

Falha Humana
Reparo
Mudana de
Programa
Teste

Sempre evite a rea de risco!


ABB Inc. -22
IRC5 Programao
Programming Bsica
Basic

Travamento (Lock Out)


Utilize dispositivo de travamento para fontes de energia.
ABB Inc. -23
IRC5 Programao
Programming Bsica
Basic

Recursos de Segurana ABB

Parada de Emergncia (ES)


Modo de Operao
Auto
Manual < 250 mm/s
Manual 100%
Dispositivo de Segurana
em Manual (Enabling device /
Dead mans grip)
Dispositivo de Segurana
em Manual 100% (Hold-to-run)
Cadeia de Segurana
(Safeguard stop/ Run Chain)
(Auto and Manual)
Limite rea de Trabalho
ABB Inc. -24
IRC5 Programao
Programming Bsica
Basic

Segurana regulamentos

Os robs ABB cumprem as exigncias requeridas na


ISO 10218, Jan 1992, segurana de robs Industriais.
Os mesmos tambm cumprem exigncias da ANSI/RIA
15.06-1999.
Definio de Segurana funo/regulamento:
Emergency stop IEC 204-1, 10.7
Enabling device ISO 11161, 3.4
Safeguard ISO 10218 (EN 775), 6.4.3
Reduced speed ISO 10218 (EN 775), 3.2.17
Interlock ISO 10218 (EN 775), 3.2.8
Hold to run ISO 10218 (EN 775), 3.2.7
ABB Inc. -25
IRC5 Programao
Programming Bsica
Basic

Parada de Emergncia (Emergency Stop)

Os botes de emergncia
esto localizados no
FlexPendant e no Mdulo de
Controle padro.
Pode-se adicionar botes de
Emergncia na clula
robotizada bastando
conect-los a Cadeia de
Segurana do rob (Run
Chain).

Para reset das falhas de Emergncia o boto


ABB Inc. -26

Motors On dever ser pressionado.


IRC5 Programao
Programming Bsica
Basic

Modos de Operao

Automtico
Modo de Produo (sem limite de velocidade)
Manual
< 250 mm/s velocidade mx. 250 mm/s
100 % Opcional. Rob pode ser testado sem
limitao de velocidade.
ABB Inc. -27
IRC5 Programao
Programming Bsica
Basic

Enabling Device (Dead Mans Grip)

O boto Enabling device possui trs estgios


(posies).
Para ativao dos motores o boto precisa
necessriamente estar na posio intermediria.
Os movimentos do rob iro parar imediatamente caso
o boto seja solto ou pressionado at o final.
ABB Inc. -28

Enabling device
IRC5 Programao
Programming Bsica
Basic

Hold-to-Run

Opcional (esta funo poder ser utilizada


somente no modo manual 100%).
No modo de operao manual 100% os
motores s sero ativados ao pressionar
simultaneamente os botes Enabling device
e Hold-to-Run.

Enabling device
ABB Inc. -29

Hold-to-run buttons
(for left or right hand)
IRC5 Programao
Programming Bsica
Basic

Cadeia de Segurana (Safeguard Stop/ Run Chain)

As coneces da Cadeia de Segurana (Run Chain) possibilita o


intertravamento de equipamentos externos como portas, curtinas
de luz, Tapete de Segurana, etc.
Existem duas categorias de Cadeia de segurana:
Manual A parada de segurana ativada por qualquer um dos Elos
de Segurana com exceo ao AutoStop (Emergency Stop, General
Stop, Superior Stop)
Auto A parada de segurana ativada quando o controlador opera
no modo automtico (Auto Stop)
possvel configurar um retardo para atuao da Cadeia de
Segurana (Soft Stop). O rob ir parar aproximadamente 1
segundo aps acionamento da Cadeia de Segurana sem desviar
da trajetria original do programa, isso ocorre devido a um retardo
na desabilitao do Motors On
ABB Inc. -30
IRC5 Programao
Programming Bsica
Basic

Limitando a rea de trabalho (Workspace)

Para evitar riscos de coliso


entre o rob e equipamentos
dentro da rea de trabalho do
rob, por exemplo o
fechamento de segurana, A
rea de trabalho do rob
(Workspace) pode ser limitada:
Todos eixos podem ser limitados
via software
Os eixos 1-3 podem ser limitados
mecanicamente atravs de
batentes mecnicos e chaves fim-
de-curso (Limit Switches)
ABB Inc. -31
IRC5 Programao
Programming Bsica
Basic

Segurana Ferramentas de Manipulao

Toda ferramenta de manipulao (Garras -Grip Devices)


deveria ser projetada para no soltar a pea em caso
pane. Ex.: Falta de alimentao
O projeto dever possibilitar liberao da pea
manualmente
ABB Inc. -32
IRC5 Programao
Programming Bsica
Basic

Segurana - Eletricidade

Alta tenso de alimentao nos painis de controle e


manipulador
Mdulo de controle (Control Module)
Alimentao da Fonte (Power supply) 230 VAC
Outros equipamentos do usurio (Customer equipment)
Mdulo de Drives (Drive Module)
Alimentao da Rede (Power Source) 480 VAC
Alimentao da Fonte (Power supply) 230 VAC
Alimentao para motores 370VDC at 700 VDC
ABB Inc. -33
IRC5 Programao
Programming Bsica
Basic

Segurana Liberando Freios

Os freios dos motores do rob podem ser liberados


manualmente
Antes de liberar o freio, certifique-se que o brao do
rob esteja apoiado a fim de no provocar acidentes
envolvendo pessoas ou equipamentos
ABB Inc. -34
IRC5 Programao
Programming Bsica
Basic

Segurana Pessoal

Controle de acesso a rea de Trabalho do rob


Posicionando adequadamente os dispositivos que compem a
clula, em funo da rea de Trabalho do rob (Work space),
pode-se minimizar o risco de contato pessoal com o manipulador
ABB Inc. -35
IRC5 Programao
Programming Bsica
Basic

Procedimentos de Segurana ABB


ABB Inc. -36
IRC5 Programao
Programming Bsica
Basic

Procedimentos de Segurana ABB


ABB Inc. -37
IRC5 Programao
Programming Bsica
Basic

Procedimentos de Segurana ABB


ABB Inc. -38
IRC5 Programao
Programming Bsica
Basic

Procedimentos de Segurana ABB


ABB Inc. -39

ABB - Osasco
IRC5 Programao Bsica

Descrio do Sistema
IRC5
Programao Bsica
ABB Inc. -40
IRC5 Programao
Programming Bsica
Basic

Sistema do Rob

Controlador IRC5 Manipulador IRB6600


ABB Inc. -41
IRC5 Programao
Programming Bsica
Basic

Controlador IRC5

FlexPendant
Robot Studio Online

Chave Geral
Mdulo de Controle
(Control Module)

Mdulo de Acionamento
(Drive Module)
ABB Inc. -42
IRC5 Programao
Programming Bsica
Basic

Controlador Flexivel DCX


Chave Geral

E-Stop

Motors On
Chave Modo Op.

Run Chain Status


Porta USB
Porta Ethernet

Hormetro
ABB Inc. -43
IRC5 Programao
Programming Bsica
Basic

Exemplo de Rob Industrial IRB 6600


ABB Inc. -44

Manipulator IRB6600
IRC5 Programao
Programming Bsica
Basic

Movimentos do rob de 6 eixos


ABB Inc. -45
IRC5 Programao
Programming Bsica
Basic

Exemplo de Rob Industrial IRB 140


ABB Inc. -46
IRC5 Programao
Programming Bsica
Basic

Movimentos do rob de 6 eixos


ABB Inc. -47
IRC5 Programao
Programming Bsica
Basic

IRC5 FlexPendant
Tela Colorida Touch Screen 4 Teclas Programveis

Joystick
3-direes
ABB Inc. -48

4 Teclas para rodar programa


Start
Passo a Passo (frente/trs)
Stop
IRC5 Programao
Programming Bsica
Basic

IRC5 FlexPendant
ABB Menu Barra de Eventos (Status bar)
Main menu
ABB Inc. -49

Atalho de Janelas
abertas (semelhante Tecla de Atalho
ao Windows) (Quickset or
COG Menu)
IRC5 Programao
Programming Bsica
Basic

Menu da Tecla de Atalho (Quickset or COG)


ABB Inc. -50
IRC5 Programao
Programming Bsica
Basic

Movimentando o rob
ABB Inc. -51

Para a figura acima, considera-se que o operador encontra-se em frente ao rob


IRC5 Programao
Programming Bsica
Basic

Movimentando o rob
+3 +4
-5 +6

-2
-3
-4 +5 -6
+2
+5
+2
-1 +1
-4 +4
-1 +1
+6 -6
+3 -3
-5
-2

+Z Z
Y
+Y
-X
-X
X
-Y +Y
-Y +Y
+Z -Z
+Z -Z +X
ABB Inc. -52

+X
+X
IRC5 Programao
Programming Bsica
Basic

Coordenadas de Sistema
TCPZ
Y
X
Ferramenta
(Tool coordinates)

Z
Y
X
Base (Base coordinates)
Z Z
Y
Y

X Objeto
Mundial (WorkObject)
(World coordinates) X
ABB Inc. -53
IRC5 Programao
Programming Bsica
Basic

Regra da Mo Direita

+Z

+X

+Y
ABB Inc. -54
IRC5 Programao
Programming Bsica
Basic

IRC5 FlexPendant

Menu Principal ABB


ABB Inc. -55
IRC5 Programao
Programming Bsica
Basic

IRC5 FlexPendant

Entradas e Sadas (I/O Window).

Output On Output Off


ABB Inc. -56
IRC5 Programao
Programming Bsica
Basic

IRC5 FlexPendant

Janela Colocao em Movimento (Jogging)


ABB Inc. -57
IRC5 Programao
Programming Bsica
Basic

Log de Eventos (Handling Events)

Quando um problema ou um possvel problema ocorre no rob, uma Mensagem de


Evento mostrada e armazenada no Log de Eventos (Event Log).

Para Limpar o evento pressione Confirmar/ Acknowledge


Se um evento ignorado a mensagem aparecer na Barra de Eventos (Status bar).
ABB Inc. -58
IRC5 Programao
Programming Bsica
Basic

IRC5 FlexPendant
Habilidade para construir aplicaes Desenvolvimento OnLine
customizadas com uso de grficos e e OffLine atravs do
controle de informaes. Virtual IRC5.
Tecnologia Microsoft poderosa com
padres e ferramentas de
desenvolvimento.
ABB Inc. -59
IRC5 Programao
Programming Bsica
Basic

IRC5 FlexPendant

Possibilidade de configurar
diferentes nveis de acesso para
grupos de usurios
(User Authentication system
Hot Plug Possibilidade de
conectar e desconectar a
FlexPendant durante operao
Proteo a ambientes severos
IP54 (Projeco dgua / P)
Mltiplos comprimentos de cabo
Tela Touch Screen:
7.7 inch
640 x 480 pixels
Usurios destros e canhotos
ABB Inc. -60

Mtiplos Idiomas
IRC5 Programao Bsica

Mensagem de Eventos
IRC5
Programao Bsica
ABB Inc. -61
IRC5 Programao
Programming Bsica
Basic

Introduo

I Existem 3 tipos de Mensagem de Eventos:

Informao (Information)
Ex.: Boto Hold to run precisa ser pressionado.
Informao de como proceder

Alarme (Warning)
Ex.: Movimento Manual velocidade 100% selecionado.
O operador informado sobre o risco.

Erro (Error)
Ex.:: Falha do Motor On por Parada de Emergncia.
O sistema no pode operar antes do restabelecimento
do estado atual (Emergency Stop).
ABB Inc. -62
IRC5 Programao
Programming Bsica
Basic

Mensagem de Informao

Ex.: Informao para rodar o programa no modo manual 100%:


ABB Inc. -63
IRC5 Programao
Programming Bsica
Basic

Mensagem de Alarme

Quando o sistema detecta uma situao que pode causar


problemas ou risco de segurana
ABB Inc. -64
IRC5 Programao
Programming Bsica
Basic

Mensagem de Erro

Quando o sistema detecta um problema ou possibilidade de


problema gerado uma mensagem de erro com descrio e ao.
Ex.: Mensagem Unacknowledged mostrada em vermelho na Barra
de Eventos (Status bar).

Unacknowledged
Mensagem No Reconhecida
ABB Inc. -65
IRC5 Programao
Programming Bsica
Basic

Contedo das Mensagens de Eventos


Uma Mensagem de Eventos consiste em:
Descrio
Consequncias (opcional)
Possveis Causas (opcional)
Ao (opcional)

Pressionar as teclas
setas amarelas para
visualizar todo contedo!
ABB Inc. -66
IRC5 Programao
Programming Bsica
Basic

Visualizando Logs de Eventos na FlexPendant

Menu Principal Menu ABB


Barra de Eventos Atalho

Pressionar sobre a barra


para visualizar os eventos.

Ou pressionar Menu
ABB e Event Log.
ABB Inc. -67
IRC5 Programao
Programming Bsica
Basic

Log de Eventos (Event Log)

cone Cdigo Ttulo Horrio do Registro


ABB Inc. -68
IRC5 Programao
Programming Bsica
Basic

Log de Eventos (Event Log)

Visualize a lista completa atravs das setas amarelas


Selecione a mensagem para visualizao dos detalhes
Resoluo do Horrio de Registro em centsimos de
ABB Inc. -69

segundo
IRC5 Programao
Programming Bsica
Basic

Log de Eventos (Event Log)

Os Logs so divididos em Tpicos


Pressionar Exibir (View) e selecionar o Tpico desejado
O Tpico Comum (Common) consiste nos ltimos Logs que ocorreram
ABB Inc. -70
IRC5 Programao
Programming Bsica
Basic

Categoria de Eventos
Categoria Nm. do Erro Area___________

Operacional (Operational) 10xxx Falha Operacional (Operational Status)


Sistema (System) 20xxx Falha de Sistema (Panel unit)
Hardware 30xxx Falha de Placas (Board Failure)
Programa (Program) 40xxx Programao (Programming)
Movimentos (Motion) 50xxx Problema de Movimento (Movement problem)
Operao (Operation) 60xxx Operao FlexPendant (Flex Pendant Handling)
E/S (I/O communication) 70xxx Falha Comunicao (I/O board communication)
errors

Solda Arco (ArcWeld) 11xxx Processo (Process)


Solda Ponto (SpotWeld) 12xxx Processo (Process)
Pintura (Paint) 13xxx Processo (Process)

Quando necessrio suporte para resoluo


ABB Inc. -71

da falha, verifique o nmero do erro!


IRC5 Programao
Programming Bsica
Basic

Logs Eventos no R.S.O

Os Logs esto disponveis no R.S.O


Selecionar RobotView e Events.
ABB Inc. -72
IRC5 Programao
Programming Bsica
Basic

Exerccio 1

1. Movimente o rob nos modos Eixo--Eixo, Linear e Reorientao utilizando o


boto Quick Set e o Joystick. Quais so as diferenas entre os tipos de
movimentos possveis?

2. O que acontece quando voc pressiona a barra superior na tela do


FlexPendant?

3. Visualize o Log de Eventos. Qual foi o ltimo evento que ocorreu?

4. Pratique explorando os botes do FlexPendant, se voc tiver alguma dvida


questione o instrutor.
ABB Inc. -73
IRC5 Programao Bsica

Fundamentos da
Programao IRC5
Programao Bsica
ABB Inc. -74
IRC5 Programao
Programming Bsica
Basic

Tpicos

Estrutura de Programa IRC5


Criando, Editando e Salvando um programa
Instrues de Movimento
Utilizao de Velocidade e Zona
Execuo Passo-a-passo (step-by-step)
Rodando no modo Manual
ABB Inc. -75
IRC5 Programao
Programming Bsica
Basic

Estrutura de Programa IRC5


Diretrio Exemplo_Programa

<?xml version="1.0" encoding="ISO-8859-1" ?>


Exemplo_Programa.pgf
<Program>
<Module>ModuleA.mod</Module>
<Module>MainModule.mod</Module>
</Program>
MainModule.mod
MODULE MainModule
CONST robtarget home:=[[....]]; Declarao de Dados
Constantes e Variveis
VAR num reg1:=0;

PROC main()
Rotinas
Rotina_1;
Rotina_2;
ENDPROC
ModuleA.mod
PROC Rotina_1() MODULE ModuleA
MoveL; PROC Rotina_A1()
ENDPROC MoveL;
MoveL;
PROC Rotina_2() ENDPROC
ABB Inc. -76

MoveL; ENDMODULE
ENDPROC Instrues
ENDMODULE
IRC5 Programao
Programming Bsica
Basic

Exemplo de Programa
ABB Inc. -77
IRC5 Programao
Programming Bsica
Basic

Salvando e Carregando um programa


Para criar um novo programa, carregar programa existente ou salvar:

Pressione ABB
Pressione Editor do Programa
(Program Editor)
Selecionar o Robo Task
(caso utilize Multimove)
Pressionar Tarefas e Programas
(Task and Program)
Selecionar a Tarefa/Programa
desejado

Pressione Arquivo(File)
Pressione Novo Programa
(New Program)
Para criar novo programa
Pressione Carregar Programa
(Load Program)
Para carregar um programa
Pressione Salvar Programa como
(Save Program as)
ABB Inc. -78

Para salvar um programa


IRC5 Programao
Programming Bsica
Basic

Salvando um programa

Um diretrio com o nome do programa criado


Mdulo: MainModule (todos programas possuem)
Extenso do Arquivo: pgf
um arquivo XML que aponta para MainModule e outros mdulos
de programa.

O mesmo
nome
ABB Inc. -79
IRC5 Programao
Programming Bsica
Basic

Criando um Programa

Para criar um novo Programa:


(se no existir)
Pressione ABB
Pressione Editor do Programa
(Program Editor)
Selecionar o Robot Task
Pressione Novo (New).
Nomear o programa
Pressione OK
ABB Inc. -80
IRC5 Programao
Programming Bsica
Basic

Adicionando Instrues de Movimento


Para adicionar instrues de movimento:
Pressione Adicionar Instruo
(Add Instruction)
Mover o Rob para posio desejada
Pressione MoveJ ou MoveL
Mover o rob para prxima posio
Repetir o procedimento acima
ABB Inc. -81
IRC5 Programao
Programming Bsica
Basic

MoveJ ou MoveL?

MoveJ

Movimento Joint (Joint interpolation) frequententemente o caminho mais


rpido para mover de um ponto a outro quando no necessrio trajetria linear.
O eixos do rob e eixos externos se movero ao longo de uma trajetria no
linear e alcanaro o ponto de destino todos ao mesmo tempo. Utilize-o em
espaos abertos como deslocamento de um dispositivo para outro.

MoveL

Movimento LINEAR (Linear interpolation) utilizado para mover


linearmente o rob do seu ponto inicial ao ponto de destino (referncia
ABB Inc. -82

ao TCP). Se no for possvel a realizao do movimento um evento


ser gerado e mostrado na FlexPendant. Utilize-o quando necessrio
mover o rob prximo a objetos como dispositivos ou peas.
IRC5 Programao
Programming Bsica
Basic

Instrues de Movimento

MoveJ pHome, v500, z5, tGripper


MoveL pHome, v500, z5, tGripper

Na instruo acima temos:


pHome
O Rob movendo para ___________________
v500
Com velocidade de ______________________
Com uma Zona de _______________________
z5
tGripper
E um TCP declarado como _________________
ABB Inc. -83
IRC5 Programao
Programming Bsica
Basic

Velocidade e Zona

z
MoveL p40, v1000, z40, tool0;

MoveL p30, v300, z30, tool0;

Velocidade - tipo de dado speeddata


ABB Inc. -84

Zona - tipo de dado zonedata


IRC5 Programao
Programming Bsica
Basic

Alterando um Argumento de Programa

Selecione o item a
ser alterado com
2 cliques

Selecione o novo
valor e pressione
OK
ABB Inc. -85
IRC5 Programao
Programming Bsica
Basic

Modificando uma Posio

Selecione o ponto
a ser modificado.

Mova o rob para


nova posio.

Pressione
Modificar Posio
(Modify Position)
ABB Inc. -86
IRC5 Programao
Programming Bsica
Basic

Depurando o programa (Debug)

Ponteiro do
Programa - PP
(Program Pointer)
ABB Inc. -87
IRC5 Programao
Programming Bsica
Basic

Checando Calibrao (Robot Calibration)

MoveAbsJ
Criar uma nova rotina (GotoCalib)
Inserir a instruo MoveAbsJ
Selecionar o ponto da instruo *, pressionar Depurar (Debug), Exibir
Valor (View Value) e inserir nos campos de cada um dos eixos o valor zero 0.
ABB Inc. -88
IRC5 Programao
Programming Bsica
Basic

Instrues de Movimento

o - position
O posioinnoairespao
x position
X posioon
nopaper
papel
ROB
ROBOT

o pHome

o p60
p40 x x p10

x p50

p30 x x p20
ABB Inc. -89
IRC5 Programao
Programming Bsica
Basic

Rodando Programas em modo Manual


Procedimento
Passo Ao Informao/Ilustrao

1 Posisione a chave seletora no modo Manual. Voc encontar maiores


informaes sobre o Modo de
operao dos robs no Manual
de Operao.
Referncia.
Manual de Operao (Operators manual)
IRC5 with FlexPendant
M2004
Document ID: 3HAC 16590-1

ATENO!
Antes de rodar o rob, por favor observar as
informaes de segurana na pagina 4
Risco Manipuladores em movimento so
ABB Inc. -90

potencialmente letais
IRC5 Programao
Programming Bsica
Basic

Rodando Programas em modo Manual


Procedimento

Passo Ao Informao/Ilustrao

3 Se o programa no est aberto pressione menu Como carregar um programa existente


ABB, Editor do Programa (Program Editor) e detalhado na seco 6.7.1
selecione o programa desejado Trabalhando com programas (Handling
of Programs)

4 Selecione o modo de operao do rob Como selecionar modo de operao e


iniciar detalhado no seco 6.9
Testando (Testing)

5 Pressione o boto de inicializao do programa Todos botes do FlexPendant so


no Flex Pendant (Start / Passo a Passo) mostrados na seco 2.2 O que
FlexPendant? (What is a FlexPendant?)

Start
Passo a Passo (frente/trs)
Stop
ABB Inc. -91
IRC5 Programao
Programming Bsica
Basic

Iniciando Execuo (Starting Execution)


Procedimento

Passo Ao Info/Ilustrao

1 Para rodar o programa utilize a boto na Modo de execuo detalhado na


FlexPendant correspondente ao modo de seco 6.9.4 Executar instruo
execuo desejado por instruo
(Stepping instructions by
instructions)
ABB Inc. -92
IRC5 Programao
Programming Bsica
Basic

Execuo Passo a Passo


No modo Manual, o programa poder ser executado passo a passo (step-
by-step) onde podemos rodar uma instruo de cada vez, a prxima
instruo ou a anterior
Existem teclas dedicadas na FlexPendant

Tecla Programvel 1. Como definir esta funo detalhado


na seco 12.2.6 Alterando teclas Pprogramveis
(Changing programmable Keys)
Tecla Programvel 2. Como definir esta funo detalhado
na seco 12.2.6 Alterando teclas Pprogramveis
(Changing programmable Keys)

Tecla Programvel 3. Como definir esta funo detalhado


na seco 12.2.6 Alterando teclas Pprogramveis
(Changing programmable Keys)

Tecla Programvel 4. Como definir esta funo detalhado


na seco 12.2.6 Alterando teclas Pprogramveis
(Changing programmable Keys)

Roda o programa - conjunto de instrues do programa


(Start)
Roda instruo anterior somente uma instruo
ABB Inc. -93

Roda prxima instruo somente uma instruo

Para o programa (Stop)


IRC5 Programao
Programming Bsica
Basic

Execuo Passo a Passo


Selecione modo de passo
Passo Ao Info/Ilustrao
1 Selecionar o modo de Passo - Atalho Quickset Detalhes na seco 4.6.5
Menu MenuQuickset, Modo Passo a Passo

Execuo do prximo passo


Passo Ao Info/Ilustrao
1 Pressione na FlexPendant a tecla
correspondente a figura ao lado

Execuo do passo anterior


Passo Ao Info/Ilustrao
1 Pressione na FlexPendant a tecla
correspondente a figura ao lado
ABB Inc. -94
IRC5 Programao
Programming Bsica
Basic

Parando o Programa
Procedimento

Passo Ao Info/Ilustrao

1 Durante operao no modo Manual 100%, libere Todos botes do FlexPendant


o boto Hold-to-Run so mostrados na seco 2.2 O
que FlexPendant?
(What is a FlexPendant?)

2 Durante operao no modo Manual com Todos botes do FlexPendant


velocidade reduzida, pressione a tecla Stop na so mostrados na seco 2.2 O
FlexPendant que FlexPendant?
(What is a FlexPendant?)

3 Quando rodarmos o programa no modo Passo a Execute a prxima instruo


Passo o rob ir parar aps a execuo de cada pressionando uma das teclas
instruo abaixo
ABB Inc. -95
IRC5 Programao
Programming Bsica
Basic

Exerccio 2

1. Crie atravs da FlexPendant do rob um programa simples como descrito


neste captulo e teste seu programa. Cada aluno dever criar seu
programa. (Utilize somente as instrues de movimentao explicadas em
aula.)

2. O que ocorre quando voc pressiona o boto de emergncia enquanto o


rob est rodando? possvel reiniciar o programa a partir do mesmo
ponto que parou?

3. Salve o programa na FlashDisk.

4. Pratique explorando os botes do FlexPendant, se voc tiver alguma


dvida questione o instrutor.
ABB Inc. -96
IRC5 Programao Bsica

Backup &
Restore
ABB Inc. -97
IRC5 Programao
Programming Bsica
Basic

Tpicos

Backup
Porque?
Quando?
Como?
Precaues
O que guardado?
ABB Inc. -98
IRC5 Programao
Programming Bsica
Basic

Backup
Possuir um backup perfeito de suma importncia para
uma rpida recuperao das configuraes perdidas:
Quando faz-lo
Se h suspeitas do sistema atual
Aps UpGrades de Software ou

troca do mesmo.

Pressione ABB
Pressione Backup and Restore
Pressione BackUp Current System
ABB Inc. -99
IRC5 Programao
Programming Bsica
Basic

Backup
O que contm no backup?
Todos arquivos/pastas armazenadas no diretrio Home do
sistema atual localizado na FlashDisk do rob.
Parmetros de Sistema (ex. Declaraes de sinais I/O).
Programas, mdulos e tarefas (Task) atuais na FlashDisk.
As informaes do Backup permite restaurar as condies
anteriores do seu sistema.
ABB Inc. -100
IRC5 Programao
Programming Bsica
Basic

Backup

O que fazer antes do Backup!


No Controlador IRC5 assim como no S4C Plus podemos ter vrios sistemas
instalados!
Sempre verifique qual sistema est ativo.
ABB Inc. -101
IRC5 Programao
Programming Bsica
Basic

Backup
Sempre
D ao backup um nome coerente
Guarde a data que o backup foi criado
Guarde o backup final num lugar seguro
ABB Inc. -102
IRC5 Programao
Programming Bsica
Basic

Restore

Lembre-se
Um backup criado no controlador S4 no pode ser restaurado
no controlador IRC5.
Sempre verifique se est restaurando o sistema correto.
ABB Inc. -103
IRC5 Programao
Programming Bsica
Basic

Backup

Recomendamos realizar o backup:


Antes da instalao de novo RobotWare
Antes de realizar alteraes significativas de programa e/ou
parmetros
Aps realizao de alteraes de instrues e/ou parmetros e
test-lo, desejar guardar as novas alteraes realizadas.
ABB Inc. -104
IRC5 Programao
Programming Bsica
Basic
Backup

Procedimento

Passo Ao Info/Ilustrao

1 Pressione ABB.

2 Pressione Backup and Restore.

xx0300000469
ABB Inc. -105
IRC5 Programao
Programming Bsica
Basic
Backup

Procedimento

Passo Ao Info/Ilustrao

3 Pressione Backup.

Xx0300000440

O Diretrio do Backup ser mostrado.


ABB Inc. -106
IRC5 Programao
Programming Bsica
Basic

Backup
Procedure
Info/
Passo Ao
Ilustrao
4 O diretrio mostrado o correto?
Se sim: Pressione Backup e ser criado o Backup
conforme configurao visualizada (nome do diretrio).
Se no: Pressione boto direita e siga o
procedimento abaixo.
ABB Inc. -107

xx0300000441

Um backup nomeado de acordo com a data atual


criado.
IRC5 Programao
Programming Bsica
Basic

Backup
Procedimento
Info/
Passo Ao
Ilustrao
5 Selecione o diretrio desejado.

6 Quando o diretrio desejado for mostrado, pressione OK.

xx0300000443
ABB Inc. -108
IRC5 Programao
Programming Bsica
Basic
Restore

Recomendamos restaurar o backup:


Se por alguma razo, suspeitar que o programa apresenta
problemas
Se alguma alterao de programa e/ou parmetros no
promover o resultado esperado e a condio anterior for
desejada
Durante o procedimento de restore, todos parmetros
de sistema sero trocados e todos mdulos do diretrio
de backup sero carregados
O diretrio Home do backup copiado para o novo
diretrio Home de sistema durante o Warm Start
ABB Inc. -109
IRC5 Programao
Programming Bsica
Basic
Restore
Procedimento

Passo Ao Info/Ilustrao

1 Pressione ABB.

2 Pressione Backup and Restore.

Xx0300000439
ABB Inc. -110
IRC5 Programao
Programming Bsica
Basic
Restore
Procedimento

Passo Ao Info/Iustrao

3 Pressione Restore.

Xx0300000440

O diretrio do backup ser mostrado.


ABB Inc. -111
IRC5 Programao
Programming Bsica
Basic

Restore
Procedimento
Info/
Passo Ao
Ilustrao
4 O diretrio mostrado o correto?
Se sim: Pressione Restore e ser restaurado o Backup
selecionado.
Se no: Pressione boto direita do campo e siga o
procedimento abaixo.
ABB Inc. -112

xx0300000441
IRC5 Programao
Programming Bsica
Basic
Restore
Procedure
Info/
Passo Ao
Ilustrao
5 Selecionar o diretrio desejado.

6 Quando o diretrio desejado mostrado, selecione o


backup correto e pressione OK.
ABB Inc. -113

xx0300000444

A iniciar a restaurao, o procedimento de Warm


Started ocorre automaticamente.
IRC5 Programao
Programming Bsica
Basic

Exerccio 3

1. Crie o Backup do sistema existente.

2. Salve o Backup no diretrio de Backups na FlashDisk e se estiver


disponvel, salve o mesmo em uma pen drive.
ABB Inc. -114
IRC5 Programao Bsica

TCP
Ponto Central da Ferramenta

IRC5 Programming
IRC5
Basic
Programao Bsica
ABB Inc. -115
IRC5 Programao
Programming Bsica
Basic

Sistema de Coodenadas da Ferramenta

Sistema de Coordenadas

Coordenada da Ferramenta
Y (Tool coordinates)
Coordenada da Ferramenta (Tool0)

X Z
Benefcios ao utilizar
uma ferramenta:
Movimentao
Reorientao
Z
Y
Facilidade de alterao
do ponto
ABB Inc. -116

Coordenada de Base (Base coordinates)

X
IRC5 Programao
Programming Bsica
Basic

Sistema de Coordenadas

Veja diferentes exemplos de ferramenta e TCPs (Tool Center Points).

TCP
TCP

TCP

TOOL0
TCP
ABB Inc. -117

A Tool0 sempre a referncia de


Posicionamento para as demais
ferramentas
IRC5 Programao
Programming Bsica
Basic

Definindo e usando uma Ferramenta

T_Caneta

Tool 0
ABB Inc. -118
IRC5 Programao
Programming Bsica
Basic

Definindo e usando uma Ferramenta


ABB Inc. -119
IRC5 Programao
Programming Bsica
Basic

Definio de Ferramenta
Crie uma Tooldata no FlexPendant
Pressione ABB -> Dados do Programa (Program Data) -> Tooldata
-> Mostrar Dados (Show Data) -> Novo (New)

Nomeie a ferramenta.
Pressione Valor Inicial (Initial Value).
ABB Inc. -120

Preencha o campo Mass com o peso da ferramenta em Kg.


Preencha o campo COG X com o centro de Massa em mm.
Pressione OK : OK : OK
IRC5 Programao
Programming Bsica
Basic

Definindo um TCP Mtodo dos 4 pontos

Selecione a nova ferramenta e


pressione Editar (Edit).
Pressione Definir (Define).
Selecione Ponto1 (Point1).
Mova o rob para o ponto de
referncia.
Pressione Modificar Posio
(Modify Position).
Reposicione o rob com nova
orientao.
Pressione Modificar Posio
(Modify Position).
Repita a sequncia para todos os
pontos.
Pressione OK.
ABB Inc. -121
IRC5 Programao
Programming Bsica
Basic

Definindo um TCP Mtodo dos 4 pontos

T_Caneta

Ponta Fixa
Fixed point
ABB Inc. -122
IRC5 Programao
Programming Bsica
Basic

Definindo Ferramenta

T_Garra

Tool 0
TCP
T_Garra
ABB Inc. -123
IRC5 Programao
Programming Bsica
Basic

Definindo Carga de Ferramenta (Tool Load)

Todo Controlador IRC5 possui uma rotina de servio


chamada LoadIdentify. Ela utilizada para definir a masa
e o centro de gravidade da Ferramenta e/ou Carga
(Payload or Loaddata).
Carga no Brao Superior
(Arm Load)

Carga (PayLoad)

Carga da Ferramenta (Tool Load)


ABB Inc. -124

ManLoadIdentify uma rotina utilizada para definir


_________________
carga dos eixos externos.
IRC5 Programao
Programming Bsica
Basic

Definindo Carga de Ferramenta (Tool Load)


V para rotina LoadIdentify pressionando Depurar (Debug )
-> Chamar Rotina (Call Service Rout). Selecione
LoadIdentify e pressione Ir para (Go to). Pressione o boto
Enable device e inicie o programa.
Siga as instrues que iro aparecer na tela.
ABB Inc. -125
IRC5 Programao
Programming Bsica
Basic

Lembre-se

Antes de utilizar o Load Identification (LoadID) certifique-se que as


condies abaixo sejam verdadeiras:

A Ferramenta est montada corretamente.

Lembre-se:
O Eixo 6 no esteja prximo dos limites. Criar um dado de
Ferramenta (Tooldata) antes
de um dado de Carga de
O Eixo 4 esteja prximo de 0 (zero). Ferramenta (Tool Load).

Criar um dado de Carga


A Carga do Brao Superior esteja definida. (LoadData) antes de definir a
carga (PayLoad).

Parmetro de Velocidade configurado em 100%.


ABB Inc. -126
IRC5 Programao
Programming Bsica
Basic

Identificao de Carga (Load Identification)


Quando o programa perguntar sobre rodar em velocidade baixa,
responda NO (NO) porque nada calculado em velocidade baixa.
Entretanto, se no h certeza sobre o comprimento dos cabos da
ferramenta, ento a velocidade baixa dever ser utilizada e as
trajetrias devero ser observadas a fim de evitar acidentes.

Siga todas as instrues recomendadas pelo programa.

Quando o programa perguntar sobre o ngulo que o eixo 6 mover


durante o programa, recomendvel selecionar +90 ou -90 graus
para obter-se resultados de maior resoluo. Se a ferramenta
incapaz de mover-se 90 graus, escolha outra opo. No mnimo 30
graus dever ser especificado.
ABB Inc. -127
IRC5 Programao
Programming Bsica
Basic

Identificao de Carga (Load Identification)


Ao final do procedimento de Identificao de Carga (Load
Identification) as seguintes informaes aparecero:

Massa (Mass) kg =
Centro de Gravidade (Centrer of Gravity) - mm X=
Centro de Gravidade (Centrer of Gravity) - mm Y=
Centro de Gravidade (Centrer of Gravity) - mm Z=
Resoluo Mensurada (Measurement Accuracy) = (Dever
ser maior que 80%, caso contrrio dever rodar novamente a rotina).
ABB Inc. -128
IRC5 Programao
Programming Bsica
Basic

Teclas Programveis
Configuranto uma tecla Programvel.
Pressione ABB -> Painel de Controle (Control Panel) ->
ProgKeys
Selecione a tecla para configurao.
Selecione o Tipo (Type)
- usualmente do tipo Sada digital (Output)
Selecione a Sada digital.
Selecione campo
Tecla Pressionada
(Key Pressed).
Pressione OK.
ABB Inc. -129
IRC5 Programao
Programming Bsica
Basic

Exerccio 4

1. Crie um TCP para a Caneta fixada ao rob utilizando o mtodo de 4


pontos.

2. Escreva a resoluo dos valores de TCP para sua ferramenta criada:

Erro Mnimo (Min Error) ________________


Erro Mdio (Mean Error) ________________
Erro Mximo (Max Error) ________________

3. Defina a carga da ferramenta.

4. Ative a nova ferramenta e teste utilizando o movimento de Reorientao.

5. Configure uma tecla programvel para Habilitar e Desabilitar uma sada


digital.

6. Se houver tempo disponvel crie um novo TCP utilizando nova ferramenta.


ABB Inc. -130

7. Salve o programa na FlashDisk.


IRC5 Programao Bsica

Robot Studio Online IRC5 Programming


IRC5
Basic
Programao Bsica
ABB Inc. -131
IRC5 Programao
Programming Bsica
Basic

O que Robot Studio Online?

Robot Studio Online (R.S.O.) uma ferramenta de software utilizada


para todos robs ABB e entregue ao cliente na aquisio do rob
ABB.

R.S.O. possui trs funes principais


Instalar/ Criar um novo sistema operacional (system builder)
Modificar ou criar um novo sistema operacional para o controlador.
Carregar um sistema existente para o controlador ou memorystick.
Configurao/ Manuteno de sistemas de robs existentes
Backup e Restore
Modificar e configurar parmetros de sistema
Leitura de Eventos, status e Logs de Eventos.
Manipular programas RAPID
Criar um programa RAPID.
Editar um programa RAPID existente (editor de texto).
ABB Inc. -132
IRC5 Programao
Programming Bsica
Basic

Conectando R.S.O ao Controlador


Utilize um cabo Ethernet crossover.
Conecte atravs do cabo, a sada Ethernet do PC a
porta de entrada Ethernet do controlador.
ABB Inc. -133
IRC5 Programao
Programming Bsica
Basic

IRC5 FlexPendant & R.S.O

A FlexPendant e o RobotStudioOnline trabalham juntos


ABB Inc. -134
IRC5 Programao
Programming Bsica
Basic

Inicializando o R.S.O.
Inicializando o Robot Studio Online.
Start -> Program -> ABB Industrial IT -> Robot Studio
Online.
Crie uma nova visualizao de rob.
File -> New Robot View.
ABB Inc. -135
IRC5 Programao
Programming Bsica
Basic

Utilizando o R.S.O.

Nomeie e guarde sua nova configurao criada.


ABB Inc. -136
IRC5 Programao
Programming Bsica
Basic

Utilizando o R.S.O.

Adicionando controlador.
Robot View -> Add Controller OU Right click -> Add
Controller.
ABB Inc. -137
IRC5 Programao
Programming Bsica
Basic

Utilizando o R.S.O.

Localize seu programa Rapid.


ABB Inc. -138
IRC5 Programao
Programming Bsica
Basic

Utilizando o R.S.O.

Solicite acesso de escrita ao controlador (Request Write access),


lembre-se de autorizar acesso atravs do FlexPendant (grant).
Pressione Enable Edit. Lembre-se que o R.S.O uma ferramenta
de edio OnLine.
ABB Inc. -139
IRC5 Programao
Programming Bsica
Basic

Exerccio 5

1. Faa modificaes no seu programa utilizando o Robot Studio OnLine.


Altere parmetros de Velocidade e Zona e teste o programa.
ABB Inc. -140
IRC5 Programao Bsica

Programao IRC5 Programming


Estruturada
IRC5
Basic
Programao Bsica
ABB Inc. -141
IRC5 Programao
Programming Bsica
Basic

Tpicos

Programao Estruturada
Estrutura de Programa IRC5
Conceitos
Programando instrues de I/O
Criando um programa utilizando mtodo JSP
Adicionando Rotinas
ABB Inc. -142
IRC5 Programao
Programming Bsica
Basic

Programao Estruturada

Programao estruturada uma forma de programao que


preconiza que todos os programas possveis podem ser reduzidos a
apenas trs estruturas: sequncia, deciso e iterao,
desenvolvida por Michael A. Jackson no seu livro "Principles of
Program Design" de 1975 (Mtodo JSP).
Tendo, na prtica, sido transformada na Programao modular, a
Programao estruturada orienta os programadores para a criao
de estruturas simples em seus programas, usando as subrotinas e
as funes. Foi a forma dominante na criao de software anterior
programao orientada por objetos POO.
Apesar de ter sido sucedida pela programao orientada por
objetos, pode-se dizer que a programao estruturada ainda muito
influente, uma vez que grande parte das pessoas ainda aprendem
programao atravs dela. Alm disso, por exigir formas de pensar
relativamente complexas, a programao orientada a objetos at
hoje ainda no bem compreendida ou usada pela maioria.
ABB Inc. -143
IRC5 Programao
Programming Bsica
Basic

Programao Estruturada

Programao Estruturada
Sequncia.
Deciso.
Iterao Processo chamado na programao de repetio de
uma ou mais aes.
ABB Inc. -144
IRC5 Programao
Programming Bsica
Basic

Estrutura de Programa IRC5


Diretrio Exemplo_Programa

<?xml version="1.0" encoding="ISO-8859-1" ?>


Exemplo_Programa.pgf
<Program>
<Module>ModuleA.mod</Module>
<Module>MainModule.mod</Module>
</Program>
MainModule.mod
MODULE MainModule
CONST robtarget home:=[[....]]; Declarao de Dados
Constantes e Variveis
VAR num reg1:=0;

PROC main()
Rotinas
Rotina_1;
Rotina_2;
ENDPROC
ModuleA.mod
PROC Rotina_1() MODULE ModuleA
MoveL; PROC Rotina_A1()
ENDPROC MoveL;
MoveL;
ABB Inc. -145

PROC Rotina_2() ENDPROC


MoveL; ENDMODULE
ENDPROC Instrues
ENDMODULE
IRC5 Programao
Programming Bsica
Basic

Conceito de Variveis
Na programao, uma varivel um objeto (uma posio, freqentemente
localizada na memria) capaz de reter e representar um valor ou expresso. As
variveis so associadas a "nomes", chamados identificadores.
Quando nos referimos varivel, do ponto de vista da programao, estamos
tratando de uma regio de memria (FlashDisk) previamente identificada cuja
finalidade armazenar os dados ou informaes de um programa. A memria
de programa se organiza tal qual um armrio com vrias divises. Sendo cada
diviso identificada por um endereo diferente, em uma linguagem que o
programa entende.
O computador do rob armazena os dados nessas divises, sendo que em
cada diviso s possvel armazenar um dado e toda vez que o computador do
rob armazenar um dado em uma dessas divises, o dado que antes estava
armazenado eliminado. O contedo pode ser alterado, mas somente um dado
por vez pode ser armazenado naquela diviso.
O computador do rob identifica cada diviso por intermdio de um endereo no
formato hexadecimal, e a linguagem de programao RAPID permitem nomear
cada endereo ou posio de memria, facilitando a referncia a um endereo
de memria. Uma varivel composta por dois elementos bsicos: o contedo
(valor da varivel) e identificador (um nome dado varivel para possibilitar
sua utilizao).
ABB Inc. -146
IRC5 Programao
Programming Bsica
Basic

Conceito de Constantes & Variveis

Constantes
Na programao, uma constante um valor que no decorrer do algoritmo
ou processamento sempre ter o mesmo valor. Perceba que a idia de
constante a mesma seja onde for o local que a constante ser utilizada.
No rob ABB as constantes se classificam na categoria de tipo de
armazenamento definida como Constante. Veja abaixo exemplo:
CONST num reg7:=0;
reg7 um tipo de dado que no sofre alterao de valor ao longo da execuo do
programa.

Constante X Varivel
A diferena primordial entre estes dois conceitos que constantes so
valores inalterados e varivel uma entidade capaz de manifestar
diferenas em valor, assumindo, inclusive, valores numricos. Diz-se que a
varivel possui qualquer valor dentro de um campo determinado, ele
atua como uma "gaveta", onde nessa "gaveta" ns podemos guardar
qualquer valor.
ABB Inc. -147
IRC5 Programao
Programming Bsica
Basic

Variveis & Tipo de Armazenamento

Variveis
No rob ABB os dados variveis se classificam em duas categorias
distintas pelo tipo de armazenamento do dado que so a Varivel e
a Persistente. Conforme mensionado anteriormente, existe outra
categoria de tipo de armazenamento utilizada para dados constantes
chamada Constante.
As diferenas entre Varivel e Persistente que o dado (que pode
sofrer alterao de valor durante a execuo do programa em ambos
casos), em caso do trmino da execuo de um ciclo de programa
(main) o valor atual do dado persistir (continuar com o ltimo
valor) para o tipo de armazenamento Persistente. J para o tipo de
armazenamento Varivel o ltimo valor ser perdido. Veja abaixo
exemplo de declaraes de dados com armazenamento Varivel e
Persistente.
PERS num reg8:=0;
VAR num reg10:=0;
ABB Inc. -148
IRC5 Programao
Programming Bsica
Basic

Tipo de Armazenamento

O tipo de armazenamento de um dado definido


durante a declarao do mesmo.
ABB Inc. -149
IRC5 Programao
Programming Bsica
Basic

Tipo de Dados
Podemos dizer que as variveis e constantes so posies de memria
criadas com objetivo de armazenamento de dados, porm, os dados
podem se diferenciar entre si no que diz respeito a sua estrutura. Para
que haja diferenciao entre os tipos de dados, o computador do rob
proporciona uma biblioteca com padres diferenciados para os tipos de
dados. Veja alguns tipos de dados abaixo.

robtarget (posio cartesiana)


Jointtarget (posio de juntas)
tooldata (coordenada ferramenta)
wobjdata (coodenada objeto)
speedata (velocidade)
zonedata (zona)
signaldi (entrada digital)
signaldo (sada digital)
num (registrador numrico)
Bool (booleano)
ABB Inc. -150

Byte (byte)
clock (tempo)
IRC5 Programao
Programming Bsica
Basic

Tipo de Dados

Os Tipo de Dados (biblioteca de dados), podem ser


visualizados no FlexPendant pressinando o menu ABB
e Dados do Programa (data type).
ABB Inc. -151
IRC5 Programao
Programming Bsica
Basic

Antes de iniciar o programa

Quatro atividades devero ser realizadas antes de


criar um novo programa.
1. _______________________________________
RODAR ROTINA DE CALIBRAO
2. _______________________________________
VERIFICAR ALINHAMENTO DO ROB
DEFINIR TCP E WORK OBJECT
3. _______________________________________
PLANEJAR O PROGRAMA PREVIAMENTE
4. _______________________________________
ABB Inc. -152
IRC5 Programao
Programming Bsica
Basic

Instrues bsicas de I/O

As duas instrues mais utilizadas para acionar uma sada


Set
digital so _________ SetDO
e __________.

As duas instrues mais utilizadas para desacionar uma


sada digital so _________ SetDO
Reset and __________.

Para inverter o status de uma sada digital utilize a


InvertDO
instruo _______________.

Para acionar uma sada digital durante um intervalo de


tempo e depois desacion-la, utilize a instruo
PulseDo
_____________.
ABB Inc. -153

Para alterar a durao do pulso digital utilize


Opt. Arg.
____________. (Argumento Opcional).
IRC5 Programao
Programming Bsica
Basic

Instrues bsicas de I/O

A instruo ______________
WaitDI utilizada para
aguardar um sinal de uma entrada digital.

WaitUntil
A instruo ______________ utilizada para
aguardar uma condio.

Waittime
A instruo ______________ utilizada para
aguardar um tempo.
ABB Inc. -154
IRC5 Programao
Programming Bsica
Basic

Instrues de I/O
ABB Inc. -155
IRC5 Programao
Programming Bsica
Basic

Instrues de I/O

p10
p40

p30 p20
DT
ABB Inc. -156

DT indica um tempo varivel em funo da carga do processador.


IRC5 Programao
Programming Bsica
Basic

Instrues de I/O

p10
P40

P30
P20
ABB Inc. -157
IRC5 Programao
Programming Bsica
Basic

Programao Estruturada - JSP


ABB Inc. -158

Desenhando um quadrado no papel.


IRC5 Programao
Programming Bsica
Basic

Jackson Structured Programming (JSP)

Mtodo JSP:
Programa Estruturado
Rotinas bem definidas
- Fcil para testar Instruo
- Fcil para alterar
- Fcil para identificar ProcCall
falhas
Facilidade para leitura e
compreenso
Main routine
(proc main)

MAIN

rPickUp rSquare rDropOff


ABB Inc. -159
IRC5 Programao
Programming Bsica
Basic
Criando Rotinas
Como criar rotinas de programa ?
Na tela de Edio de Programas
(Program Editor).
Pressione: Rotinas -> Arquivo
(File) -> Nova Rotina (New routine)
Pressione: ABC
para renomear.
Pressione: OK.
Selecione a Rotina.
Pressione: Mostrar Rotina
(Show routine).
ABB Inc. -160
IRC5 Programao
Programming Bsica
Basic

Exerccio 6
1. Crie um novo programa. Este novo programa ir simular uma aplicao de
manipulao e dever atender as seguintes solicitaes:

O programa dever iniciar a partir de uma posio de Home.


O programa dever estar bem estruturado com base em rotinas.
Utilize a sada digital ___________ para controlar a garra.
Quando o sinal ___________ for atuado o rob dever pegar a pea no
Alimentador 1 (Infeeder1) - (utilize sua imaginao).
O Rob dever colocar a pea no Torno (Lathe) e mover-se para uma
posio segura.
Com o rob numa posio segura, a sada _________ dever ser
acionada por 1 segundo que acionar o torno (Lathe). O Trabalho do
torno estar finalizado quando o sinal __________ for atuado.
Aps sinal __________ o rob pegar a pea acabada e colocar a
mesma na esteira de sada (Exit conveyor).
O rob deve retornar para home e aguardar a prxima pea.
ABB Inc. -161

Utilize recursos de Copiar e Colar a fim de implementar o


retorno do rob para Home no fim do processo.
IRC5 Programao
Programming Bsica
Basic

Layout Rob Exerccio 6

Alimentador 1
(Infeeder 1)
Esteira de Sada Alimentador 2
(Exit Conveyor) (Infeeder 2)
ABB Inc. -162

Torno
(Lathe)
IRC5 Programao
Programming Bsica
Basic

Exemplo de Programa
MAIN r_Lathe;
MoveJ pOvrLathe, v1000, z10, tGripper;
MoveJ pHome, v1000, fine, tGripper;
MoveL pin_Lathe, v400, fine, tGripper;
WaitDI di1_Style1, 1; Reset do9_Grip;
r_Feeder1 MoveL pOvrLathe, v800, fine, tGripper;
r_Lathe; PulseDO\Plength; = 1, do7_Start_Lathe;
Wait DI di7_Lathe_Done, 1;
r-Conveyor
MoveL pin_Lathe, v400, fine, tGripper;
RETURN; Set do9_Grip;
MoveJ pOvrLathe, v1000, z10, tGripper;
r_Feeder1; RETURN;
MoveJ pOvrPart, v500, z30, tGripper; r_Conveyor

MoveL pOnPart, v500, fine, tGripper; MoveJ pOvr_Conveyor, v1000, z60, tGripper;

Set do9_Grip; MoveL pOn_Conveyor, v800, fine, tGripper;


ABB Inc. -163

MoveL pOvrPart, v500, z30, tGripper; Reset do9_Grip;

RETURN; MoveL pOvr_Conveyor, v1000, z60, tGripper;


RETURN;
IRC5 Programao Bsica

Controlando o IRC5 Programming


Fluxo do Programa
IRC5
Basic
Programao Bsica
ABB Inc. -164
IRC5 Programao
Programming Bsica
Basic

Controle do Fluxo do Programa Instrues de Deciso

No exerccio anterior, a estrutura do programa criado permitia a


execuo sequencial das linhas de programa. Este tipo de estrutura
extremamente limitada quando necessitamos de programas
maiores e mais complexos.

IF di1_Style1=1 THEN
rFeeder1 ;
ELSE
return ;
ENDIF
IF
THEN ELSE
Di1_Style1=
1
rFeeder1 Return
ENDIF
ABB Inc. -165
IRC5 Programao
Programming Bsica
Basic

Controle do Fluxo do Programa Instrues de Deciso

IF di1_Style1=1 THEN
rFeeder1 ;
Argumento Opcional ELSEIF di2_Style2=1 THEN
(Optional Argument) rFeeder2 ;
ELSE
return ;
ENDIF IF
THEN ELSEIF
Di1_Style1=
1
rFeeder1
THEN ELSE
Di2_Style2=1

rFeeder2 Return
ABB Inc. -166

ENDIF
IRC5 Programao
Programming Bsica
Basic

Instruo de Controle do Fluxo - IF


Selecione o tipo de dados (data type) O boto + adiciona
argumentos da expresso

Filtro utilizado para


limitar dados e funes
a serem visualizados.
ABB Inc. -167
IRC5 Programao
Programming Bsica
Basic

Controlando com sinais de I/O

Rotina House keeping.


Rotina de Verificao de Calibrao.
Seleo de Alimentador (Feeder). MAIN

rHousekeeping rPickUp1 rLathe rDropOff

di1=1 di2=1

rGotoCalib rFeeder1 rFeeder2


ABB Inc. -168
IRC5 Programao
Programming Bsica
Basic

Exerccio 7

1. Implemente seu programa atual considerando que o sinal


_________ seja utilizado para Alimentador 1(Feeder 1) e que o
sinal _________ seja utilizado para Alimentador 2 (Feeder 2).

2. Adicione uma rotina de inspeo para todas as peas. Todas


as peas aps processo de torneamento, devero ser levadas
a estao de inspeo. Se aps levar a pea a estao de
inspeo o sinal ________ for acionado significa que a pea
est ok. Caso o rob espere por mais de 5 segundos, a pea
dever ser rejeitada depositando a mesma no barril de refugos.
(Dica: Verifique o argumento opcional da instruo WaitDI ).

3. Adicione uma rotina de verificao de Calibrao rGotoCalib


utilizando a insruo MoveAbsJ que ir mover o rob para
posio de calibrao.
ABB Inc. -169
IRC5 Programao
Programming Bsica
Basic

Exemplo de Programa Exerccio 7


MAIN r_Feeder2;
MoveJ pHome, v1000, fine, MoveJ pOvrPart2, v500, z30, tGripper;
tGripper;
IF di1_Style1=1 THEN MoveL pOnPart2, v500, fine, tGripper;
r_Feeder1; Set do9_Grip;
ELSEIF di2_Style2=1 THEN MoveL pOvrPart2, v500, z30, tGripper;
r_Feeder2;
RETURN;
ELSE;
RETURN;
ENDIF; r_Lathe;
r_Lathe; MoveJ pOvrLathe, v1000, z10, tGripper;
r_Inspect; MoveL pin_Lathe, v400, fine, tGripper;
RETURN; Reset do9_Grip;
MoveL pOvrLathe, v800, fine, tGripper;
r_Feeder1;
PulseDO\Plength;=1, do7_Start_Lathe;
MoveJ pOvrpart, v500, z30, tGripper; WaitDI di7_Lathe_Done, 1;
MoveL pOnPart, v500, fine, tGripper; MoveL pin_Lathe, v400, fine, tGripper;
ABB Inc. -170

Set do9_Grip; Set do9_Grip;


MoveJ pOvrLathe, v1000, z10, tGripper;
MoveL pOvrPart, v500, z30, tGripper;
RETURN;
RETURN;
IRC5 Programao
Programming Bsica
Basic

Exemplo de Programa Exerccio 7


r_Inspect;

MoveJ p_near_insp, v1000, fine, tGripper;


MoveJ p_at_insp, v1000, fine, tGripper;
WaitUntil di5_GoodPart=1\MaxTime=5, TimeFlag=bTimeout;
IF bTimeout=true THEN
MoveL p_Overeject, v500, z30, tGripper;
MoveL p_Onreject, v500, fine, tGripper;
Reset do9_Grip;
MoveL p_Overeject, v500, z30, tGripper;
ELSE
r_Conveyor;
ENDIF
RETURN;

r_Conveyor;
MoveL pOvr_Conveyor, v1000, z60, tGripper;
MoveL pOn_Conveyor, v800, fine, tGripper;
Reset do9_Grip;
ABB Inc. -171

MoveI pOvr_Conveyor, v1000, z60, tGripper;


RETURN;
IRC5 Programao Bsica

Trabalhando com
Numerais
IRC5
Programao Bsica
ABB Inc. -172
IRC5 Programao
Programming Bsica
Basic

Trabalhando com Numerais


num
Quando trabalhar com nmeros utilize o tipo de dados (data type)________.

Varivel
Voc far uso de uma ______________ deste tipo de dados.

reg
n ou _____
Este tipo de dados geralmente designado pelas letras ____
antes do nome.
Examplo: nCount, reg1, reg2, nCycles, nParts

O rob tem as seguintes instrues que podem ser usadas quando


trabalhamos com numerais:
ADD, Clear, Incr, Decr
:= (Atribui) _______________________

Exemplo: nCounter := nCounter+1;


Incr nCount;
ABB Inc. -173

nCount:=0;
Clear nCount;
Add nCount, 1;
IRC5 Programao
Programming Bsica
Basic

Trabalhando com Numerais


A Instruo de atribuio (:=) pode tambm fazer outras operaes
matemticas como:
Adio,
___________________
Subtrao,
___________________
Multiplicao, etc.
___________________

Para tomada de deciso utilizando numerais, utilize as instrues


IF
___________ Compact IF .
ou __________

Exemplo: IF nCount>=10 rTipClean;


ou
IF nCount>=10 THEN
rTipClean
ABB Inc. -174

ENDIF;
IRC5 Programao
Programming Bsica
Basic

Inspecionando toda terceira pea

Inspecione toda terceira pea produzida.

MAIN

rLathe Quench
nCount>=3

di1=1 di2=1 rInspect

rFeeder1 rFeeder2
Pea boa Pea Ruim

rDropOff rReject
ABB Inc. -175

rGotoCalib
IRC5 Programao
Programming Bsica
Basic
Exerccio 8

1. Adicione uma rotina de Resfriamento da Pea (Quench)


processo de tempera - aps a rotina de Torneamento (Lathe).

2. Adicione uma rotina para inspeo de pea no programa


existente de forma que a verificao s ocorra na terceira pea
produzida.
ABB Inc. -176
IRC5 Programao
Programming Bsica
Basic

Exemplo de Programa Exerccio 8


MAIN
r_Lathe;
MoveJ pHome, v1000, fine, tGripper;
IF di1_Style1=1 THEN
r_Feeder1; MoveJ pOvrLathe, v1000, z10, tGripper;
ELSEIF di2_Style2=1 THEN MoveL pin_Lathe, v400, fine, tGripper;
r_Feeder2: Reset do9_Grip;
ELSE
RETURN; WaitTime .5;
ENDIF MoveL pOvrLathe, v800, fine, tGripper;
r_Lathe; PulseDO\Plength; =1, do7_Start_Lathe;
r_Quench; WaitDI di7_Lathe_Done, 1;
IF nCount>=3 THEN
MoveL pin_Lathe, v400, fine, tGripper;
r_Inspect;
ELSE Set do9_Grip;
r_Conveyor; WaitTime .5;
ENDIF MoveJ pOvrLathe, v1000, z10, tGripper;
RETURN;
RETURN;
r_Feeder1;
MoveJ pOvrpart, v500, z30, tGripper; r_Inspect;
MoveL pOnPart, v500, fine, tGripper;
Set do9_Grip; nCount :=0;
WaitTime .5; MoveJ p_near_insp, v1000, fine, tGripper;
MoveL pOvrPart, v500, z30, tGripper; MoveJ p_at_insp, v1000, fine, tGripper;
RETURN; WaitUntil di5_GoodPart=1/MaxTime=5, /TimeFlag=bTimeout;
r_Feeder2; IF bTimeout=true THEN
MoveJ pOvrPart2, v500, z30, tGripper; MoveL p_Overeject, v500, z30, tGripper;
MoveL pOnPart2, v500, fine, tGripper; MoveL p_Onreject, v500, fine, tGripper;
ABB Inc. -177

Set do9_Grip; Reset do9_Grip;


WaitTime .5; MoveL p_Overeject, v500, z30, tGripper;
MoveL pOvrPart2, v500, z30, tGripper; ELSE
RETURN; r_Conveyor;
ENDIF
RETURN;
IRC5 Programao
Programming Bsica
Basic

Exemplo de Programa Exerccio 8


r_Conveyor
MoveL pOvr_Conveyor, v1000, z60, tGripper;
MoveL pOn_Conveyor, v800, fine, tGripper;
Reset do9_Grip;
MoveL pOvr_Conveyor, v1000, z60, tGripper;
Incr nCount;
RETURN;

r_QUENCH
MoveJ pOvrQuen, v500, z30, tGripper;
MoveL pOnQuen, v500, fine, tGripper;
MoveL pOvrQuen, v500, z30, tGripper;
RETURN;
ABB Inc. -178
IRC5 Programao Bsica

Comunicando
com o Operador
IRC5
Programao Bsica
ABB Inc. -179
IRC5 Programao
Programming Bsica
Basic

Comunicando com o Operador


Mensagens podem ser escritas na tela de forma a
propiciar um programa mais amigvel.
ABB Inc. -180
IRC5 Programao
Programming Bsica
Basic

Comunicando com o Operador


A instruo TPWrite utilizada para escrever mensagens na tela.
Valores de dados podem ser escritos tambm.
A instruo TPErase utilizada para limpar mensagens da tela.
ABB Inc. -181
IRC5 Programao
Programming Bsica
Basic

Comunicando com o Operador


ABB Inc. -182

O Operador/ Inspetor pode tomar decises interagindo com o programa.


IRC5 Programao
Programming Bsica
Basic

Comunicando com o Operador

Instruo TPReadFK

TPReadFK nFigure, Is this a GOOD or BAD part?, stEmpty, GOOD, stEmpty, BAD, stEmpty;

(1) 2 (3) 4 (5)


ABB Inc. -183
IRC5 Programao
Programming Bsica
Basic

Comunicando com o Operador

Selecione um dado numrico ou uma escreva uma expresso


pressionando o boto virtual Expresso (Insert Expression).
ABB Inc. -184
IRC5 Programao
Programming Bsica
Basic

Comunicando com o Operador


O alimentador a ser utilizado no processo ser
escolhido pelo Operador via FlexPendant.
Rodar a rotina de Calibrao tambm ser uma deciso
do operador. MAIN

Quench rLathe
nCount>=3
Deciso do Operador
rInspect

rGotoCalib rFeeder1 rFeeder2


Pea Boa Pea Ruim

rDropOff rReject
ABB Inc. -185
IRC5 Programao
Programming Bsica
Basic

Comunicando com o Operador


ABB Inc. -186
IRC5 Programao
Programming Bsica
Basic

Comunicando com o Operador

Instruo TPReadNum
TPReadNum nfigures, How many figures do you want?
ABB Inc. -187
IRC5 Programao
Programming Bsica
Basic
Exerccio 9

1. Adicione ao programa existente. O Operador decidir qual


alimentador dever ser utilizado e quando dever ser
verificado a calibrao.

2. Utilize a FlexPendant para inspeo. Escolha entre Pea Boa


ou Pea Ruim.

3. Adicione mensagens para qualquer hora em que o rob no


est se movendo a fim de informar que o rob est esperando.
ABB Inc. -188
IRC5 Programao Bsica

Outras Instrues
IRC5
Programao Bsica
ABB Inc. -189
IRC5 Programao
Programming Bsica
Basic

Tpicos

Instrues de Clock (relgio)


Instrues de Controle de Fluxo/ Laos de repetio
ABB Inc. -190
IRC5 Programao
Programming Bsica
Basic

Instrues de Clock

Instrues de Clock
Quando utilizar um relgio como cronmetro:

ClkReset utilizado para zerar o cronmetro

ClkStart utilizado para iniciar o cronmetro a partir


do status atual

ClkStop utilizado para parar o cronmetro


ABB Inc. -191
IRC5 Programao
Programming Bsica
Basic

Funes de Clock

Funes de Clock
ClkRead L o valor do cronmetro

Cdate - L a data atual

Ctime - L a hora atual

Exemplo:
ABB Inc. -192
IRC5 Programao
Programming Bsica
Basic

Instrues de repetio - FOR

A instruo FOR utilizada quando alguma Instruo/ Rotina


necessita ser repetida um determinado nmero de vezes, sendo
um nmero fixo de vezes ou varivel.
A instruo For facilita mudar a quantidade de vezes que
determinada Instruo/ Rotina precisa ser repetida.
Possui um contador interno que incrementado automaticamente.
ABB Inc. -193
IRC5 Programao
Programming Bsica
Basic

Instrues de repetio - FOR

FOR FOR i FROM 1 TO 5 DO


5 rotina_1;
ENDFOR

FOR i FROM 1 TO 8 DO
MoveJ ..... ;
MoveJ ..... ;
8 WaitTime..... ;
MoveJ ..... ;
... ;
ENDFOR
ABB Inc. -194
IRC5 Programao
Programming Bsica
Basic

Instrues de repetio - WHILE


A instruo WHILE utilizada quando alguma Instruo/ Rotina necessita ser
repetida um determinado nmero de vezes (fixo ou varivel), contudo,
somente quando uma dada condio verdadeira.
WHILE significa ENQUANTO, sendo assim, podemos ler a instruo da
seguinte maneira: Enquanto a condio for verdadeira faa!.
Veja exemplo da figura 2 onde temos a condio que enquanto o registrador
reg1 for menor do que 2 o programa executar a rotina QUADRADO.
Observe que para o programa executar a rotina desejada 2 vezes, foi
necessrio prescrever a condio e incrementar um contador externo
diferentemente da instruo FOR.
ABB Inc. -195
IRC5 Programao
Programming Bsica
Basic

Instruo GOTO
A instruo GOTO utilizada para desviar o ponteiro de execuo do
programa (Program Point) para outra linha de programa que
identificada com a instruo Label.
Pode-se fazer o uso combinado de instrues Compact IF e GOTO
como se pode ver no exemplo abaixo que executa 3 vezes a rotina
QUADRADO

Label
ABB Inc. -196
IRC5 Programao
Programming Bsica
Basic

Instruo TEST
A instruo TEST utilizada quando diferentes instrues/ rotinas necessitam
ser executadas dependendo do valor de uma expresso ou dado.
Veja Exemplo abaixo onde caso o valor de reg1 seja igual a 1, 2 ou 3 a rotina
QUADRADO ser executada, caso o valor de reg1 seja 4 a rotina
TRINGULO ser executada, caso reg1 no valha nenhum dos valores
mensionados anteriormente, o programa escrever na tela Escolha
Inexistente e parar o programa atravs da instruo STOP.
PS. Quando referimos a poucas alternativas, a utilizao da instruo IF
somado aos argumentos ELSE e ELSEIF podem ser tambm uma soluo.
ABB Inc. -197
IRC5 Programao Bsica

Work Object
IRC5
Programao Bsica
ABB Inc. -198
IRC5 Programao
Programming Bsica
Basic

Criando um Work Object


ABB Inc. -199

Figura desenhada com referncia a um Work Object


IRC5 Programao
Programming Bsica
Basic

Work Object e Sistema de Coordenadas

Sistema de Coordenada do Usurio


Sistema de Coordenada do Objeto
Z
Y

TCP Z Coordenada do Objeto


Y
(WorkObject)
X
Coordenada da Ferramenta X
(Tool coordinates)

Z
Y
ABB Inc. -200

X
Coordenada de Base
(Base coordinates)
IRC5 Programao
Programming Bsica
Basic

Work Object e Sistema de Coordenadas

Definindo um Sistema de Coordenada

Object (Objeto)
User (Usurio) User (Usurio)
ABB Inc. -201
IRC5 Programao
Programming Bsica
Basic

Criando um Work Object

Ative a ferramenta correta


(T_Caneta)
Crie um Work Object
Defina as coordenadas

Origin y1

x1 Work object axis Y

x2
wobjA4
ABB Inc. -202

Work object axis X


IRC5 Programao
Programming Bsica
Basic

Ativando um Work Object


ABB Inc. -203
IRC5 Programao
Programming Bsica
Basic

Utilizando um Work Object

MoveJ pHome, v1000 , z50 , T_Caneta;


MoveJ pTri10, v1000, z50, T_Caneta \ WObj := wobjA4;
.... ;

o pHome
o posio fora da folha
x posio na folha

Origem o pTri10 y1
/
work object eixo Y
x1 --
x pTri20

pTri40 x
x pTri30
x2 --

work object
ABB Inc. -204

work object eixo X


IRC5 Programao
Programming Bsica
Basic
Exerccio 10

1. Crie um novo programa para pegar uma caneta de um


magazine.

2. Crie um Work Object no canto da folha. Create a Work Object


on the pad of paper.

3. Crie uma rotina utilizando o Work Object para desenhar a


primeira letra do seu nome no papel.

4. Agora mova o papel, redefina o Work Object e rode o programa


novamente.
ABB Inc. -205
IRC5 Programao Bsica

Programando com
Offsets IRC5
Programao Bsica
ABB Inc. -206
IRC5 Programao
Programming Bsica
Basic

Movemento Circular

MoveC

pCircle20

pCircle30

pCircle40
ABB Inc. -207
IRC5 Programao
Programming Bsica
Basic

Movimento Circular

Criando uma circunferncia com MoveCs

pCircle20

This robtaget can be copied and pasted

pCircle30
pCircle50
ABB Inc. -208

pCircle40
Press Modify pos
IRC5 Programao
Programming Bsica
Basic

Funo Offset

Funo Offset
Na tela de definio de ponto para uma instruo de
movimento, escolha Funo (Function) para habilitar
movimento com deslocamento (offset). A Funo Offs
permite um deslocamento em referncia a um ponto.
Exemplo
Tipo de Utilizado para deslocar a partir
Movimento da posio original Velocidade
Preciso
C, J, L
Move_ Offs(pStart,-100,0,0), v500, fine, toolx;
Z Offset
Dado de
Y Offset
Posicionamento
X Offset
ABB Inc. -209

para referncia
de deslocamento
IRC5 Programao
Programming Bsica
Basic

Trajetria circular Perfeita

Para fazer um crculo perfeito


MoveL pStart, v500, fine, toolx;
MoveC Offs(pStart,-100,-100,0),Offs(pStart,-200,0,0),v500,z1,toolx;
MoveC Offs(pStart,-100,100,0), pStart,v500,z1,toolx;

Que sentido o crculo ser


desenhado?

Horrio ou Anti-horrio
ABB Inc. -210
IRC5 Programao
Programming Bsica
Basic

Exemplo - Offset

Exemplo
ABB Inc. -211
IRC5 Programao
Programming Bsica
Basic

Desenhando um Quadrado com Offsets

MM X
Exemplo 100
Em qual quadrante o
quadrado ser
75
1 2 desenhado?
50
25 1 2 3 4
100 75 50 25 -25 -50 -75 -100
Y MM

-25 pSTART
-50
3 4
-75
-100

A partir do exemplo anterior programe:


pSTART
_____________ o PRIMEIRO ponto do desenho do
ABB Inc. -212

LTIMO ponto.
quadrado e tambm o ___________
IRC5 Programao
Programming Bsica
Basic
Exerccio 11

1. Adicione ao seu novo programa trs rotinas que desenhem um


um crculo, um quadrado e um tringulo utilizando somente
um ponto ensinado.

Extra Crie uma rotina que desenhe um espiral de 5 mm para 100


mm com passo de 5mm.
ABB Inc. -213
IRC5 Programao Bsica

Calibrao e IRC5
Sincronismo Programao Bsica
ABB Inc. -214
IRC5 Programao
Programming Bsica
Basic

Tpicos

Sincronismo - Atualizao do Contador de Revolues


(Revolution Counters Update)
Calibrao (Fine Calibration)
ABB Inc. -215
IRC5 Programao
Programming Bsica
Basic

Calibrao IRC5
Calibrao ou Sincronismo?
O sincronismo poder ser realizado facilmente sem
necessiadade de ferramentas especiais.
Calibrao necessita de ferramentas especiais.
ABB Inc. -216
IRC5 Programao
Programming Bsica
Basic

Sincronismo
Sincronismo (Rev.Counter)
Indica a quantidade de voltas que o motor realizou em relao a
posio zero absoluto do eixo.
Se o controlador perder o sincronismo, os programas no podero ser
executados.
O controlador notifica atravs de uma mensagem que o sincronismo
precisa ser atualizado. (Ex.: Se o controlador for desligado com a
bateria da SMB descarregada).

Se aparecer mensagem de
evento do sistema informando
diferena de valores:
Ao sincronizar o manipulador
e o controlador passam a ter
os mesmos valores de
calibrao.
ABB Inc. -217
IRC5 Programao
Programming Bsica
Basic

Sincronismo (Updating Rev. Counters)

1. Utilizar o JoyStick para


mover o rob para
posio de sincronismo
(Calibration Position)
ABB Inc. -218

alinhando as marcas.
IRC5 Programao
Programming Bsica
Basic

Procedimento de Sincronismo
1. Mova o rob para as marcas de sincronismo.
2. Pressione ABB : Calibrao (Calibration)
3. Selecione o rob a ser calibrado.
4. Pressione Atualizao do Contador de Rotaes
(Update Revolution Counter)
5. Pressione SIM (YES) para confirmar a operao.
6. Se necessrio selecione os eixos a serem atualizados.
7. Pressione Atualizar (Update) e Atualizar (Update)
novamente.
ABB Inc. -219
IRC5 Programao
Programming Bsica
Basic

Verificando posio de Calibrao


MoveAbsJ
Criar uma nova rotina (GotoCalib)
Inserir a instruo MoveAbsJ
Selecionar o ponto da instruo *, pressionar Depurar (Debug), Exibir
Valor (View Value) e inserir nos campos de cada um dos eixos o valor zero
0.
ABB Inc. -220
IRC5 Programao
Programming Bsica
Basic

Calibrao (Fine Calibration)

Calibrao
Indica atravs do resolver, o angulo atual do motor definido como zero
absoluto do eixo.
calibrado na ABB ou no site com equipamentos especiais
Somente se faz necessrio novo ajuste de calibrao quando
realizado a troca de motor ou caixa de reduo

Requer ferramentas especiais!


No pode ser feito corretamente
ajustando de forma visual.
ABB Inc. -221
IRC5 Programao
Programming Bsica
Basic

Editando os valores de calibrao (Calibration Offsets)

Edite no campo Valor de desvio (Offset value) os valores de


calibrao manualmente
Utilize os valores definidos no arquivo moc.cfg (extrado a partir do
Backup) ou os valores da etiqueta que est colada no manipulador
contendo os valores de calibrao dos seis eixos (vlido somente
para motores que no foram retirados).
ABB Inc. -222
IRC5 Programao
Programming Bsica
Basic

Calibrando o rob com ferramentas especiais

Ferramentas Especiais
Nvel Eletrnico
Dispositivo ABB (para eixo 1)
Base de Nivelamento
ABB Inc. -223
IRC5 Programao
Programming Bsica
Basic

Exerccio 12

1. Compare os valores de calibrao configurados no controlador


com os valores impressos na etiqueta do manipulador.
2. Os valores conferem? Se no, notifique o instrutor.
ABB Inc. -224
IRC5 Programao Bsica

Exerccios
IRC5
Programao Bsica
ABB Inc. -225
IRC5 Programao
Programming Bsica
Basic

Exerccio 1
1 Criar um programa simples que o rob possa atestar sua repitibilidade num
ponto de referncia ( ex. levar o TCP a uma Ponteira) e adicionalmente uma
rotina de servio para verificao da calibrao e sincronismo.

1.1 A calibrao confere com os valores originais?

1.2 O Sincronismo confere com as referncias?

1.3 Edite os valores de calibrao. Aps alterao a execuo do programa


sofreu alguma alterao? Justifique.

1.4 Volte os valores anteriores de calibrao. Sincronize o manipulador for a


das marcas. Aps alterao do sincronismo o programa sofreu alguma
alterao? Justifique.
ABB Inc. -226
IRC5 Programao
Programming Bsica
Basic

Exerccio 2
2 Crie um TCP utilizando o mtodo dos 4 pontos.

2.1 Ative a nova ferramenta e responda. Quais so as diferenas de


coordenada da ferramenta aps a criao do TCP?

2.2 Liste 2 vantagens que h quando utilizamos uma ferramenta e


fazemos a correta declarao da mesma no rob.
ABB Inc. -227
IRC5 Programao
Programming Bsica
Basic

Exerccio 3
3 Crie um programa conforme pedido no layout (utilize o TCP adequado). O rob
deve contornar a folha e voltar p/ posio de Home executando trajetrias que
atendam ao exerccio.
3.1 - Ajuste as velocidades e zonas de acordo com o processo. (velocidade
mxima permitida = 400mm/seg).

ROBOT
o posio no espao
o pHome x posio no papel

o p_aprox

p40 x x p10
ABB Inc. -228

p30 x x p20
IRC5 Programao
Programming Bsica
Basic

Exerccio 4
4 Implemente o programa com uma nova rotina chamada quadradoseguindo o
layout. Utilizando um nico ponto gravado (p_quad), o rob deve partir do ponto
de aproximao e fazer um quadrado na folha. O quadrado dever ter 100mm de
lado.

ROBOT
o posio no espao
o pHome x posio no papel

o p_aprox

o p_aprox_1

p40 x x p10
p_quad

100mm
ABB Inc. -229

p30 x x p20
IRC5 Programao
Programming Bsica
Basic

Exerccio 5
5 Implemente o programa com uma nova rotina chamada arcoseguindo o layout.
O rob deve partir do ponto de aproximao (p_aprox_2) e fazer um arco na
folha passando pelo ponto (p_centro). A rotina termina com o rob no ponto de
aproximao (p_aprox_3).

ROBOT
o posio no espao
o pHome x posio no papel

o p_aprox

o p_aprox_1

p40 x x p10
p_quad

100mm
x
p_centro
p_aprox_2 o o p_aprox_3
ABB Inc. -230

p30 x x p20
IRC5 Programao
Programming Bsica
Basic

Exerccio 6
4 Implemente o programa com uma nova rotina chamada circuloseguindo o
layout. Utilizando um nico ponto gravado (p_circ), o rob deve partir do ponto
de aproximao e fazer um crculo contornando a parte superior da pea. O raio
do tubo de 31mm.

ROBOT
o posio no espao
x posio no papel/ pea
o p_aprox_4 o pHome

o p_aprox
P_circ x
o p_aprox_1

p40 x x p10
p_quad

100mm
x
p_centro
p_aprox_2 o o p_aprox_3
ABB Inc. -231

p30 x x
p20
IRC5 Programao
Programming Bsica
Basic

Exerccio 7
7 A rotina main de um programa deve ser um resumo de gerente, portanto, deve
ser elaborada de forma que possibilite fcil compreenso do programa. A main
no possui detalhes do programa, porm, d uma viso geral do que se trata o
mesmo.

7.1 - Baseado nas informaes acima reestruture o programa em uma rotina


principal (main) e 4 sub-rotinas (retngulo, quadrado, arco, circulo).

7.2 - Partindo a execuo do programa da rotina main, o rob deve ir para home
e respectivamente executar o quadrado, circulo, arco, retangulo e aps retornar
para home.
ABB Inc. -232
IRC5 Programao
Programming Bsica
Basic

Exerccio 8
8 Modifique o programa considerando que o rob est integrado a uma clula
controlada por um PLC. O rob comporta-se como escravo (Slave) respondendo
as solicitaes do PLC.

8.1 - De acordo com a tabela implemente o programa. Escolha uma das entradas
digitais configuradas no seu rob para simular o sinal do PLC.

Sinal do PLC Rob


0 Executar 1 Arco Executar 1 Retngulo
1 Executar 1 Crculo Executar 1 Quadrado
ABB Inc. -233
IRC5 Programao
Programming Bsica
Basic

Exerccio 9
9 Modifique o programa seguindo a nova condio pedida na tabela. Utilize as
instrues de controle de fluxo e implemente solues diferentes entre sinal do
PLC=0 e sinal do PLC=1.

Sinal do PLC Rob

0 Executar 2 Quadrados Executar 3 Retngulos

1 Executar 2 Crculos Executar 1 Arco


ABB Inc. -234
IRC5 Programao
Programming Bsica
Basic

Exerccio 10
10 Crie um programa que interaja com o operador. O rob dever executar a
pea que o operador escolher (retngulo, quadrado, arco, circulo).

10.1 Modifique o programa considerando que o rob est integrado a uma


clula controlada por um PLC. O rob comporta-se como escravo (Slave)
respondendo as solicitaes do PLC.
Ao ser iniciado o rob deve ir para home e aguardar acionamento do sinal
do PLC como autorizao para continuidade da execuo do programa.
Escolha uma das entradas digitais configuradas no seu rob para simular o
sinal do PLC.

Sinal do PLC Rob


0 Parado em Home aguardando autorizao
1 Continuidade na execuo do programa
ABB Inc. -235
IRC5 Programao
Programming Bsica
Basic

Exerccio 11
11 Implemente o programa. O rob dever executar a pea que o operador
escolher (retngulo, quadrado, arco, circulo) e a quantidade de pea que o
operador solicitar. O operador pode solicitar apenas uma pea por vez.
ABB Inc. -236
IRC5 Programao
Programming Bsica
Basic

Exerccio 12
12 Implemente o programa. O rob dever executar a pea que o operador
escolher (retngulo, quadrado, arco, circulo) e a quantidade de pea que o
operador solicitar. O operador pode solicitar quantas peas desejar de uma
s vez, porm o rob no precisa necessariamente executar na sequncia
pedida.
ABB Inc. -237
IRC5 Programao
Programming Bsica
Basic

Exerccio 13
13 Implemente o programa. A cada 6 peas produzidas (independente do
modelo) o rob dever acionar um sinal para o PLC informando que um lote foi
finalizado. O sinal que ser disponibilizado pelo rob dever ser mantido por 3
segundos.
Aps a finalizao de um lote o rob continua executando as demais peas
solicitadas pelo operador, se houver.
ABB Inc. -238
IRC5 Programao
Programming Bsica
Basic

Exerccio 14
14 Implemente o programa. Aps o trmino da execuo das peas solicitadas
informe ao operador a quantidade total de peas produzidas no dia e por tipo
de pea.

14.1 Implemente o programa. Informe ao operador qual foi o tempo de ciclo do


ltimo lote produzido.
ABB Inc. -239
IRC5 Programao
Programming Bsica
Basic

Exerccio 15
15 Implemente o programa. O rob dever executar as peas escolhidas de
acodo com as quantidades respeitando a sequncia pedida, ou seja, o rob
deve executar o programa na sequncia exata conforme solicitado pelo
operador.
ABB Inc. -240
IRC5 Programao
Programming Bsica
Basic

Exerccio 16
16 Em uma clula mestre/escravo onde o rob interage com o PLC programe. O
rob deve fazer a leituda dos sinais enviados pelo PLC conforme tabela e
manipular as peas da esteira de entrada para esteira de sada. O ciclo
finalizado quando o palete estiver completo atravs do sinal do rob p/ PLC.
Utilize o mapa de sinais discretos descrito na tabela ou os grupos de entrada e
sada configurados assim:
grupo_entrada -> DI08 DI13
grupo_sada -> DO08 DO13
Esteira de Esteira de
Entrada A Entrada B
0 1
DI08 Pegar na esteira A Pegar na esteira B
C/ S/
DI09 Posio (A1/B1) sem Logo Posio (A1/B1) com Logo A6 A3 LOGO LOGO B3 B6
DI10 Posio (A2/B2) sem Logo Posio (A2/B2) com Logo
DI11 Posio (A3/B3) sem Logo Posio (A3/B3) com Logo A5 A2 C6 C3 B2 B5
DI12
DI13 Rob desabilitado Rob habilitado
DO01 Desliga Vcuo Liga Vcuo
A4 A1 C5 C2 B1 B4
DO08
DO09 C4 C1
ABB Inc. -241

DO10
DO11 Esteira de
DO12 Palete Incompleto Pelete Completo Sada C

DO13
IRC5 Programao
Programming Bsica
Basic

Resumo - Instrues / Funes de Programa


Instrues de Movimento Instrues de Matemticas
MoveJ :=
MoveL ADD
MoveC Incr
MoveAbsJ Decr
Instrues de Controle de Fluxo Clear
ProcCall Instrues Interface
IF TPWrite
Compact IF TPErase
While TPReadFK
For TPReadNum
Goto Instrues de Tempo
Label CDate
Test CTime
Stop CLKStart
Instrues de I/O CLKReset
Set CLKStop
Reset
SetDO
InvertDO Funes de Movimento
PulseDO OffSet
Instrues de Espera
ABB Inc. -242

Funes de Clock
WaitTime CLKRead
WaitDI
WaitUntil

OBS: Para conhecer demais Instrues / Funes consultar manual de Programao RAPID
IRC5 Programao
Programming Bsica
Basic

Contatos ABB

Coordenao de Treinamentos
Charles Souza 11 3688-8481
charles.souza@br.abb.com

Coordenao Tcnica
Margareth Silva 11 3688-9223
margareth.silva@br.abb.com

Suporte Tcnico
Ricardo Maia 11 3688-9032
ricardo.maia@br.abb.com

Planto 24h ABB


planto.24horas@br.abb.com 0800-12-2500
ABB Inc. -243
IRC5 Programao
Programming Bsica
Basic

Em Branco
ABB Inc. -244
IRC5 Programao
Programming Bsica
Basic

Avaliao do Curso
ABB Inc. -245
IRC5 Programao
Programming Bsica
Basic

Avaliao do Curso
ABB Inc. -246
IRC5 Programao
Programming Bsica
Basic

Em Branco
ABB Inc. -247