Você está na página 1de 248

IRC5 Programao Bsica

IRC5 Operao e
Programao Bsica

ABB Inc. -1

IRC5 Programming
Basic

IRC5 Programao
Programming Bsica
Basic

Bem-vindos!

ABB Inc. -2

Sejam Bem-vindos ao primeiro Centro de


Treinamento ABB em Automao e Robtica da
Amrica Latina!

IRC5 Programao
Programming Bsica
Basic

Contedo

ABB Inc. -3

Introduo

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

Resumo - Instrues / Funes de Programa

242

Contatos ABB

243

Avaliao do Curso

245

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -4

Introduo

Apresentaes ABB

Robtica ABB

Treinamento ABB

IRC5 Programao
Programming Bsica
Basic

O mundo ABB

ABB Inc. -5

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

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -6

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

IRC5 Programao
Programming Bsica
Basic

ABB - Portiflio
Como estamos organizados
5 Divises Globais

Produtos de
Potncia

Sistemas de
Potncia

Discrete
Automation
and Motion

Produtos de
Baixa Tenso

$11.2 bilhes
33.500
funcionrios

$6.5 bilhes
16.000
funcionrios

$5.4 bilhes
18.000
funcionrios

$4.1 bilhes
19.000
funcionrios

Automao de
Processos
$7.8 bilhes
28.000
funcionrios

Faturamento em 2009 (US$; valores pr-forma para as divises de automao)

Portflio ABB:

ABB Inc. -7

Equipamentos eltricos,
automao, controle e
instrumentao para
gerao de energia e
processos industriais
Transmisso de energia

Solues de distribuio

Produtos de baixatenso

Robtica e sistemas
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,

ABB Inc. -8

nos trens em que viajamos e nas


instalaes que processam nossa gua,
nas usinas que geram nossa
energia e em nossas casas.

IRC5 Programao
Programming Bsica
Basic

ABB - Inovao
Pioneira em tecnologia desde 1883
Os fundadores

Turbochargers

Turbina a vapor
1900

1920

1930

1940

Motor sem redutor

Painis isolados
a gs

Robs industriais

Turbina
a gs

HVDC
1950
1960

1970
1980

ABB Inc. -9

Acionamentos e
inversores de frequncia

1990

Sistemas de
controle distribudo

Sistemas de
propulso eltrica

2000

Ultra-alta tenso

IRC5 Programao
Programming Bsica
Basic

ABB
Inovao, paixo e diversidade so as marcas da ABB

ABB Inc. -10

"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

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -11

Robtica ABB

Rob Produto

Rob Automao

Rob Servios

Treinamentos

Servios de Campo

Peas de Reposio

Retrofit e Reparos

Projetos de Melhoria

Contratos de Manuteno

IRC5 Programao
Programming Bsica
Basic

Treinamento ABB

Centro de Treinamento

Osasco SP

Curitiba PR

Treinamentos no cliente

Escopos dos Treinamentos

ABB Inc. -12

Centro de Treinamentos na Regio Sudeste e Sul

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

IRC5 Programao
Programming Bsica
Basic

Informaes Gerais do Curso

Regulamentos

ABB Inc. -13

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

ABB Inc. -14

Bom Curso!!!

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:

ABB Inc. -15

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.
Utilizar instrues de tempo nos programas.
Realizar Backup e Restaurar programas.

IRC5 Programao Bsica

Robtica
Tipo de Robs e Aplicaes
IRC5 Programming
Basic

IRC5

ABB Inc. -16

Programao Bsica

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -17

Tipo de Robs

Robs Industriais

Androide

Scara

FlexPicker

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -18

Aplicaes Robotizadas

Manipulao

Soldagem MigMag

Soldagem Ponto

Pintura

Lavagem

Cola

Usinagem

Etc

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -19

Vantagens com a Automao Robotizada

Segurana

Repetibilidade

Qualidade

Produtividade

Competitividade

IRC5 Programao Bsica

Segurana

IRC5 Programming
Basic

IRC5

ABB Inc. -20

Programao Bsica

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -21

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
deste treinamento.

IRC5 Programao
Programming Bsica
Basic

Risco de Acidentes

Falha Humana

Reparo

Mudana de

Programa

Teste

ABB Inc. -22

Sempre evite a rea de risco!

IRC5 Programao
Programming Bsica
Basic

Travamento (Lock Out)

ABB Inc. -23

Utilize dispositivo de travamento para fontes de energia.

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)
ABB Inc. -24

Limite rea de Trabalho

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -25

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

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -26

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
Motors On dever ser pressionado.

IRC5 Programao
Programming Bsica
Basic

Modos de Operao

Automtico

ABB Inc. -27

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.

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -28

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.

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.

ABB Inc. -29

Enabling device

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:

ABB Inc. -30

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

IRC5 Programao
Programming Bsica
Basic

Limitando a rea de trabalho (Workspace)

ABB Inc. -31

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 fimde-curso (Limit Switches)

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -32

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

IRC5 Programao
Programming Bsica
Basic

Segurana - Eletricidade

Alta tenso de alimentao nos painis de controle e


manipulador

Mdulo de controle (Control Module)

ABB Inc. -33

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

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -34

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

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -35

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

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -36

Procedimentos de Segurana ABB

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -37

Procedimentos de Segurana ABB

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -38

Procedimentos de Segurana ABB

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -39

Procedimentos de Segurana ABB

ABB - Osasco

IRC5 Programao Bsica

Descrio do Sistema

IRC5

ABB Inc. -40

Programao Bsica

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -41

Sistema do Rob

Controlador IRC5

Manipulador IRB6600

IRC5 Programao
Programming Bsica
Basic

Controlador IRC5
FlexPendant
Robot Studio Online

Chave Geral

Mdulo de Controle
(Control Module)

ABB Inc. -42

Mdulo de Acionamento
(Drive Module)

IRC5 Programao
Programming Bsica
Basic

Controlador Flexivel DCX


Chave Geral
E-Stop
Motors On
Chave Modo Op.
Run Chain Status
Porta USB
Porta Ethernet

ABB Inc. -43

Hormetro

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -44

Exemplo de Rob Industrial IRB 6600

Manipulator IRB6600

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -45

Movimentos do rob de 6 eixos

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -46

Exemplo de Rob Industrial IRB 140

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -47

Movimentos do rob de 6 eixos

IRC5 Programao
Programming Bsica
Basic

IRC5 FlexPendant
Tela Colorida Touch Screen

4 Teclas Programveis

ABB Inc. -48

Joystick
3-direes

4 Teclas para rodar programa


Start
Passo a Passo (frente/trs)
Stop

IRC5 Programao
Programming Bsica
Basic

IRC5 FlexPendant

ABB Inc. -49

ABB Menu
Main menu

Atalho de Janelas
abertas (semelhante
ao Windows)

Barra de Eventos (Status bar)

Tecla de Atalho
(Quickset or
COG Menu)

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -50

Menu da Tecla de Atalho (Quickset or COG)

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -51

Movimentando o rob

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

IRC5 Programao
Programming Bsica
Basic

Movimentando o rob
+3

-2

+4

-4

+4

-4
-6

+6

-3

-5

-2

+Z

Z
Y

+Y
-X

-X

ABB Inc. -52

-6

+1

+1
+3

+5

+5
-1

-1

+6

-3

+2
+2

-5

+Y

-Y
+Z

-Z
+X

+Y

-Y
+X

-Z

+Z
+X

IRC5 Programao
Programming Bsica
Basic

Coordenadas de Sistema
TCPZ

Y
X
Ferramenta
(Tool coordinates)

Z
Y

X
Base (Base coordinates)
Z
Y

Y
X

ABB Inc. -53

Mundial
(World coordinates)

Objeto
(WorkObject)
X

IRC5 Programao
Programming Bsica
Basic

Regra da Mo Direita
+Z

+X

ABB Inc. -54

+Y

IRC5 Programao
Programming Bsica
Basic

IRC5 FlexPendant

ABB Inc. -55

Menu Principal ABB

IRC5 Programao
Programming Bsica
Basic

IRC5 FlexPendant

Entradas e Sadas (I/O Window).

ABB Inc. -56

Output On

Output Off

IRC5 Programao
Programming Bsica
Basic

IRC5 FlexPendant

ABB Inc. -57

Janela Colocao em Movimento (Jogging)

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

ABB Inc. -58

Para Limpar o evento pressione Confirmar/ Acknowledge


Se um evento ignorado a mensagem aparecer na Barra de Eventos (Status bar).

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -59

IRC5 FlexPendant

Habilidade para construir aplicaes


customizadas com uso de grficos e
controle de informaes.

Tecnologia Microsoft poderosa com


padres e ferramentas de
desenvolvimento.

Desenvolvimento OnLine
e OffLine atravs do
Virtual IRC5.

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -60

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

Mtiplos Idiomas

IRC5 Programao Bsica

Mensagem de Eventos

IRC5

ABB Inc. -61

Programao Bsica

IRC5 Programao
Programming Bsica
Basic

Introduo

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.

ABB Inc. -62

O sistema no pode operar antes do restabelecimento


do estado atual (Emergency Stop).

IRC5 Programao
Programming Bsica
Basic

Mensagem de Informao

ABB Inc. -63

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

IRC5 Programao
Programming Bsica
Basic

Mensagem de Alarme

ABB Inc. -64

Quando o sistema detecta uma situao que pode causar


problemas ou risco de segurana

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

ABB Inc. -65

Unacknowledged
Mensagem No Reconhecida

IRC5 Programao
Programming Bsica
Basic

Contedo das Mensagens de Eventos

Uma Mensagem de Eventos consiste em:


Descrio
Consequncias
(opcional)
Possveis Causas (opcional)
Ao
(opcional)

ABB Inc. -66

Pressionar as teclas
setas amarelas para
visualizar todo contedo!

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.

ABB Inc. -67

Ou pressionar Menu
ABB e Event Log.

IRC5 Programao
Programming Bsica
Basic

Log de Eventos (Event Log)

ABB Inc. -68

cone

Cdigo

Ttulo

Horrio do Registro

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -69

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

ABB Inc. -70

O Tpico Comum (Common) consiste nos ltimos Logs que ocorreram

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -71

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)


errors

70xxx

Falha Comunicao (I/O board communication)

Solda Arco (ArcWeld)

11xxx

Processo (Process)

Solda Ponto (SpotWeld)

12xxx

Processo (Process)

Pintura (Paint)

13xxx

Processo (Process)

Quando necessrio suporte para resoluo


da falha, verifique o nmero do erro!

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -72

Logs Eventos no R.S.O

Os Logs esto disponveis no R.S.O

Selecionar RobotView e Events.

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -73

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.

IRC5 Programao Bsica

Fundamentos da
Programao

IRC5

ABB Inc. -74

Programao Bsica

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -75

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

IRC5 Programao
Programming Bsica
Basic

Estrutura de Programa IRC5


Diretrio Exemplo_Programa
Exemplo_Programa.pgf

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


<Program>
<Module>ModuleA.mod</Module>
<Module>MainModule.mod</Module>

MainModule.mod
MODULE MainModule
CONST robtarget home:=[[....]];
VAR num reg1:=0;
PROC main()
Rotina_1;
Rotina_2;
ENDPROC
PROC Rotina_1()
MoveL;
ENDPROC

</Program>
Declarao de Dados
Constantes e Variveis

Rotinas

ModuleA.mod
MODULE ModuleA
PROC Rotina_A1()
MoveL;

ABB Inc. -76

MoveL;
PROC Rotina_2()
MoveL;
ENDPROC
ENDMODULE

ENDPROC
ENDMODULE
Instrues

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -77

Exemplo de Programa

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

ABB Inc. -78

Pressione Carregar Programa


(Load Program)
Para carregar um programa
Pressione Salvar Programa como
(Save Program as)
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

ABB Inc. -79

O mesmo
nome

um arquivo XML que aponta para MainModule e outros mdulos


de programa.

IRC5 Programao
Programming Bsica
Basic

Criando um Programa

Para criar um novo Programa:


(se no existir)

Pressione ABB

Pressione Editor do Programa

ABB Inc. -80

(Program Editor)

Selecionar o Robot Task

Pressione Novo (New).

Nomear o programa

Pressione OK

IRC5 Programao
Programming Bsica
Basic

Adicionando Instrues de Movimento

Para adicionar instrues de movimento:

Pressione Adicionar Instruo

ABB Inc. -81

(Add Instruction)

Mover o Rob para posio desejada

Pressione MoveJ ou MoveL

Mover o rob para prxima posio

Repetir o procedimento acima

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.

ABB Inc. -82

MoveL
Movimento LINEAR (Linear interpolation) utilizado para mover
linearmente o rob do seu ponto inicial ao ponto de destino (referncia
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 ______________________

ABB Inc. -83

Com uma Zona de _______________________


z5
tGripper
E um TCP declarado como _________________

IRC5 Programao
Programming Bsica
Basic

Velocidade e Zona
z
MoveL p40, v1000, z40, tool0;

ABB Inc. -84

MoveL p30, v300, z30, tool0;

Velocidade - tipo de dado speeddata


Zona - tipo de dado zonedata

IRC5 Programao
Programming Bsica
Basic

Alterando um Argumento de Programa

Selecione o item a
ser alterado com
2 cliques

ABB Inc. -85

Selecione o novo
valor e pressione
OK

IRC5 Programao
Programming Bsica
Basic

Modificando uma Posio

Selecione o ponto
a ser modificado.
Mova o rob para
nova posio.

ABB Inc. -86

Pressione
Modificar Posio
(Modify Position)

IRC5 Programao
Programming Bsica
Basic

Depurando o programa (Debug)

Ponteiro do
Programa - PP

ABB Inc. -87

(Program Pointer)

IRC5 Programao
Programming Bsica
Basic

Checando Calibrao (Robot Calibration)

ABB Inc. -88

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.

IRC5 Programao
Programming Bsica
Basic

Instrues de Movimento

o - position
O
posioin
noairespao
x position
X
posioon
nopaper
papel

ROBOT
ROB

o pHome
p40 x

o p60
x p10
x p50

ABB Inc. -89

p30 x

x p20

IRC5 Programao
Programming Bsica
Basic

Rodando Programas em modo Manual

Procedimento

Passo Ao
1

Posisione a chave seletora no modo Manual.

Informao/Ilustrao
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

ABB Inc. -90

ATENO!
Antes de rodar o rob, por favor observar as
informaes de segurana na pagina 4
Risco Manipuladores em movimento so
potencialmente letais

IRC5 Programao
Programming Bsica
Basic

Rodando Programas em modo Manual

Procedimento

Passo Ao

Informao/Ilustrao

Se o programa no est aberto pressione menu


ABB, Editor do Programa (Program Editor) e
selecione o programa desejado

Como carregar um programa existente


detalhado na seco 6.7.1
Trabalhando com programas (Handling
of Programs)

Selecione o modo de operao do rob

Como selecionar modo de operao e


iniciar detalhado no seco 6.9
Testando (Testing)

Pressione o boto de inicializao do programa


no Flex Pendant (Start / Passo a Passo)

Todos botes do FlexPendant so


mostrados na seco 2.2 O que
FlexPendant? (What is a FlexPendant?)

ABB Inc. -91

Start
Passo a Passo (frente/trs)
Stop

IRC5 Programao
Programming Bsica
Basic

Iniciando Execuo (Starting Execution)

Procedimento

Passo Ao

ABB Inc. -92

Para rodar o programa utilize a boto na


FlexPendant correspondente ao modo de
execuo desejado

Info/Ilustrao
Modo de execuo detalhado na
seco 6.9.4 Executar instruo
por instruo
(Stepping instructions by
instructions)

IRC5 Programao
Programming Bsica
Basic

Execuo Passo a Passo

No modo Manual, o programa poder ser executado passo a passo (stepby-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)

ABB Inc. -93

Roda instruo anterior somente uma instruo


Roda prxima instruo somente uma instruo
Para o programa (Stop)

IRC5 Programao
Programming Bsica
Basic

Execuo Passo a Passo

Selecione modo de passo

Passo
1

Info/Ilustrao

Selecionar o modo de Passo - Atalho Quickset


Menu

Detalhes na seco 4.6.5


MenuQuickset, Modo Passo a Passo

Execuo do prximo passo

Passo
1

Ao

Ao
Pressione na FlexPendant a tecla
correspondente a figura ao lado

Execuo do passo anterior

Passo Ao
1
ABB Inc. -94

Info/Ilustrao

Pressione na FlexPendant a tecla


correspondente a figura ao lado

Info/Ilustrao

IRC5 Programao
Programming Bsica
Basic

Parando o Programa

Procedimento

ABB Inc. -95

Passo Ao

Info/Ilustrao

Durante operao no modo Manual 100%, libere


o boto Hold-to-Run

Todos botes do FlexPendant


so mostrados na seco 2.2 O
que FlexPendant?
(What is a FlexPendant?)

Durante operao no modo Manual com


velocidade reduzida, pressione a tecla Stop na
FlexPendant

Todos botes do FlexPendant


so mostrados na seco 2.2 O
que FlexPendant?
(What is a FlexPendant?)

Quando rodarmos o programa no modo Passo a


Passo o rob ir parar aps a execuo de cada
instruo

Execute a prxima instruo


pressionando uma das teclas
abaixo

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -96

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.

IRC5 Programao Bsica

ABB Inc. -97

Backup &
Restore

IRC5 Programao
Programming Bsica
Basic

Tpicos

ABB Inc. -98

Backup

Porque?

Quando?

Como?

Precaues

O que guardado?

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

ABB Inc. -99

troca do mesmo.

Pressione ABB

Pressione Backup and Restore

Pressione BackUp Current System

IRC5 Programao
Programming Bsica
Basic

Backup

ABB Inc. -100

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.

IRC5 Programao
Programming Bsica
Basic

Backup

ABB Inc. -101

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.

IRC5 Programao
Programming Bsica
Basic

Backup

ABB Inc. -102

Sempre

D ao backup um nome coerente

Guarde a data que o backup foi criado

Guarde o backup final num lugar seguro

IRC5 Programao
Programming Bsica
Basic

Restore

ABB Inc. -103

Lembre-se

Um backup criado no controlador S4 no pode ser restaurado


no controlador IRC5.

Sempre verifique se est restaurando o sistema correto.

IRC5 Programao
Programming Bsica
Basic

Backup

ABB Inc. -104

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.

IRC5 Programao
Programming Bsica
Basic

Backup

Procedimento

Passo Ao
1

Pressione ABB.

Pressione Backup and Restore.

ABB Inc. -105

xx0300000469

Info/Ilustrao

IRC5 Programao
Programming Bsica
Basic

Backup

Procedimento

Passo Ao
3

Pressione Backup.

ABB Inc. -106

Xx0300000440

O Diretrio do Backup ser mostrado.

Info/Ilustrao

IRC5 Programao
Programming Bsica
Basic

Backup

Procedure

Passo Ao

ABB Inc. -107

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.

xx0300000441

Um backup nomeado de acordo com a data atual


criado.

Info/
Ilustrao

IRC5 Programao
Programming Bsica
Basic

Backup

Procedimento

ABB Inc. -108

Passo

Ao

Selecione o diretrio desejado.

Quando o diretrio desejado for mostrado, pressione OK.

xx0300000443

Info/
Ilustrao

IRC5 Programao
Programming Bsica
Basic

Restore

ABB Inc. -109

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

IRC5 Programao
Programming Bsica
Basic

Restore

Procedimento

Passo Ao
1

Pressione ABB.

Pressione Backup and Restore.

ABB Inc. -110

Xx0300000439

Info/Ilustrao

IRC5 Programao
Programming Bsica
Basic

Restore

Procedimento

Passo Ao
3

Pressione Restore.

ABB Inc. -111

Xx0300000440

O diretrio do backup ser mostrado.

Info/Iustrao

IRC5 Programao
Programming Bsica
Basic

Restore

Procedimento

Passo

ABB Inc. -112

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

xx0300000441

Info/
Ilustrao

IRC5 Programao
Programming Bsica
Basic

Restore

Procedure

ABB Inc. -113

Passo

Ao

Selecionar o diretrio desejado.

Quando o diretrio desejado mostrado, selecione o


backup correto e pressione OK.

xx0300000444

A iniciar a restaurao, o procedimento de Warm


Started ocorre automaticamente.

Info/
Ilustrao

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -114

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.

IRC5 Programao Bsica

TCP
Ponto Central da Ferramenta

ABB Inc. -115

IRC5 Programming
IRC5
Basic
Programao Bsica

IRC5 Programao
Programming Bsica
Basic

Sistema de Coodenadas da Ferramenta

Sistema de Coordenadas

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

ABB Inc. -116

Benefcios ao utilizar
uma ferramenta:

Movimentao

Reorientao

Facilidade de alterao
do ponto

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

ABB Inc. -117

TOOL0
TCP
A Tool0 sempre a referncia de
Posicionamento para as demais
ferramentas

IRC5 Programao
Programming Bsica
Basic

Definindo e usando uma Ferramenta

T_Caneta

ABB Inc. -118

Tool 0

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -119

Definindo e usando uma Ferramenta

IRC5 Programao
Programming Bsica
Basic

Definio de Ferramenta

ABB Inc. -120

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

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

ABB Inc. -121

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.

IRC5 Programao
Programming Bsica
Basic

Definindo um TCP Mtodo dos 4 pontos

T_Caneta

Ponta Fixa

ABB Inc. -122

Fixed point

IRC5 Programao
Programming Bsica
Basic

Definindo Ferramenta

T_Garra

Tool 0

ABB Inc. -123

TCP
T_Garra

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)

ABB Inc. -124

Carga da Ferramenta (Tool Load)

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.

ABB Inc. -125

Siga as instrues que iro aparecer na tela.

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.

O Eixo 4 esteja prximo de 0 (zero).


A Carga do Brao Superior esteja definida.

Criar um dado de
Ferramenta (Tooldata) antes
de um dado de Carga de
Ferramenta (Tool Load).
Criar um dado de Carga
(LoadData) antes de definir a
carga (PayLoad).

ABB Inc. -126

Parmetro de Velocidade configurado em 100%.

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.

ABB Inc. -127

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.

IRC5 Programao
Programming Bsica
Basic

Identificao de Carga (Load Identification)


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

ABB Inc. -128

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

IRC5 Programao
Programming Bsica
Basic

Teclas Programveis

ABB Inc. -129

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.

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:

ABB Inc. -130

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.

7.

Salve o programa na FlashDisk.

IRC5 Programao Bsica

ABB Inc. -131

Robot Studio Online

IRC5 Programming
IRC5
Basic
Programao Bsica

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

ABB Inc. -132

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

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -133

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.

IRC5 Programao
Programming Bsica
Basic

IRC5 FlexPendant & R.S.O

ABB Inc. -134

A FlexPendant e o RobotStudioOnline trabalham juntos

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -135

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.

IRC5 Programao
Programming Bsica
Basic

Utilizando o R.S.O.

ABB Inc. -136

Nomeie e guarde sua nova configurao criada.

IRC5 Programao
Programming Bsica
Basic

Utilizando o R.S.O.

ABB Inc. -137

Adicionando controlador.
Robot View -> Add Controller OU Right click -> Add
Controller.

IRC5 Programao
Programming Bsica
Basic

Utilizando o R.S.O.

ABB Inc. -138

Localize seu programa Rapid.

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -139

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.

IRC5 Programao
Programming Bsica
Basic

Exerccio 5

ABB Inc. -140

1.

Faa modificaes no seu programa utilizando o Robot Studio OnLine.


Altere parmetros de Velocidade e Zona e teste o programa.

IRC5 Programao Bsica

Programao

ABB Inc. -141

Estruturada

IRC5 Programming
IRC5
Basic
Programao Bsica

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -142

Tpicos

Programao Estruturada

Estrutura de Programa IRC5

Conceitos

Programando instrues de I/O

Criando um programa utilizando mtodo JSP

Adicionando Rotinas

IRC5 Programao
Programming Bsica
Basic

Programao Estruturada

ABB Inc. -143

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.

IRC5 Programao
Programming Bsica
Basic

Programao Estruturada

ABB Inc. -144

Programao Estruturada

Sequncia.

Deciso.

Iterao Processo chamado na programao de repetio de


uma ou mais aes.

IRC5 Programao
Programming Bsica
Basic

Estrutura de Programa IRC5


Diretrio Exemplo_Programa
Exemplo_Programa.pgf

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


<Program>
<Module>ModuleA.mod</Module>
<Module>MainModule.mod</Module>

MainModule.mod
MODULE MainModule
CONST robtarget home:=[[....]];
VAR num reg1:=0;
PROC main()
Rotina_1;
Rotina_2;
ENDPROC
PROC Rotina_1()
MoveL;
ENDPROC

</Program>
Declarao de Dados
Constantes e Variveis

Rotinas

ModuleA.mod
MODULE ModuleA
PROC Rotina_A1()
MoveL;

ABB Inc. -145

MoveL;
PROC Rotina_2()
MoveL;
ENDPROC
ENDMODULE

ENDPROC
ENDMODULE
Instrues

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -146

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

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.

ABB Inc. -147

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.

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.

ABB Inc. -148

PERS num reg8:=0;


VAR num reg10:=0;

IRC5 Programao
Programming Bsica
Basic

Tipo de Armazenamento

ABB Inc. -149

O tipo de armazenamento de um dado definido


durante a declarao do mesmo.

IRC5 Programao
Programming Bsica
Basic

Tipo de Dados

ABB Inc. -150

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)

Byte

(byte)

clock

(tempo)

IRC5 Programao
Programming Bsica
Basic

Tipo de Dados

ABB Inc. -151

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


visualizados no FlexPendant pressinando o menu ABB
e Dados do Programa (data type).

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

ABB Inc. -152

PLANEJAR O PROGRAMA PREVIAMENTE


4. _______________________________________

IRC5 Programao
Programming Bsica
Basic

Instrues bsicas de I/O


As duas instrues mais utilizadas para acionar uma sada
digital so _________
e __________.
Set
SetDO
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 _______________.

ABB Inc. -153

Para acionar uma sada digital durante um intervalo de


tempo e depois desacion-la, utilize a instruo
PulseDo
_____________.
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.

ABB Inc. -154

Waittime
A instruo ______________
utilizada para
aguardar um tempo.

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -155

Instrues de I/O

IRC5 Programao
Programming Bsica
Basic

Instrues de I/O

p10

p40

p30

p20

ABB Inc. -156

DT

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

IRC5 Programao
Programming Bsica
Basic

Instrues de I/O

p10
P40

P30

ABB Inc. -157

P20

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -158

Programao Estruturada - JSP

Desenhando um quadrado no papel.

IRC5 Programao
Programming Bsica
Basic

Jackson Structured Programming (JSP)

Mtodo JSP:

Programa Estruturado

Rotinas bem definidas


- Fcil para testar
- Fcil para alterar
- Fcil para identificar
falhas

Instruo
ProcCall

Facilidade para leitura e


compreenso
Main routine
(proc main)

ABB Inc. -159

MAIN

rPickUp

rSquare

rDropOff

IRC5 Programao
Programming Bsica
Basic

Criando Rotinas

ABB Inc. -160

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

IRC5 Programao
Programming Bsica
Basic

Exerccio 6

ABB Inc. -161

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.

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)

ABB Inc. -162

Esteira de Sada
(Exit Conveyor)

Alimentador 2
(Infeeder 2)
Torno
(Lathe)

IRC5 Programao
Programming Bsica
Basic

Exemplo de Programa

r_Feeder1;

r_Lathe;
MoveJ pOvrLathe, v1000, z10, tGripper;
MoveL pin_Lathe, v400, fine, tGripper;
Reset do9_Grip;
MoveL pOvrLathe, v800, fine, tGripper;
PulseDO\Plength; = 1, do7_Start_Lathe;
Wait DI di7_Lathe_Done, 1;
MoveL pin_Lathe, v400, fine, tGripper;
Set do9_Grip;
MoveJ pOvrLathe, v1000, z10, tGripper;
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;

MoveL pOvrPart, v500, z30, tGripper;

Reset do9_Grip;

RETURN;

MoveL pOvr_Conveyor, v1000, z60, tGripper;

MAIN
MoveJ pHome, v1000, fine, tGripper;
WaitDI di1_Style1, 1;
r_Feeder1
r_Lathe;
r-Conveyor

ABB Inc. -163

RETURN;

RETURN;

IRC5 Programao Bsica

Controlando o

ABB Inc. -164

Fluxo do Programa

IRC5 Programming
IRC5
Basic
Programao Bsica

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

Di1_Style1=
1

rFeeder1

Return
ENDIF

ABB Inc. -165

ELSE

IRC5 Programao
Programming Bsica
Basic

Controle do Fluxo do Programa Instrues de Deciso

Argumento Opcional
(Optional Argument)

IF di1_Style1=1 THEN
rFeeder1 ;
ELSEIF di2_Style2=1 THEN
rFeeder2 ;
ELSE
return ;
ENDIF
IF
THEN

Di1_Style1=
1

ELSEIF

rFeeder1
THEN

ELSE
Di2_Style2=1

ABB Inc. -166

rFeeder2

ENDIF

Return

IRC5 Programao
Programming Bsica
Basic

Instruo de Controle do Fluxo - IF

Selecione o tipo de dados (data type)

O boto + adiciona
argumentos da expresso

ABB Inc. -167

Filtro utilizado para


limitar dados e funes
a serem visualizados.

IRC5 Programao
Programming Bsica
Basic

Controlando com sinais de I/O

Rotina House keeping.

Rotina de Verificao de Calibrao.

Seleo de Alimentador (Feeder).

rHousekeeping

rPickUp1

di1=1

ABB Inc. -168

rGotoCalib

rFeeder1

MAIN

rLathe

di2=1

rFeeder2

rDropOff

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -169

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.

IRC5 Programao
Programming Bsica
Basic

Exemplo de Programa Exerccio 7


MAIN
MoveJ pHome, v1000, fine,
tGripper;
IF di1_Style1=1 THEN
r_Feeder1;
ELSEIF di2_Style2=1 THEN
r_Feeder2;
ELSE;
RETURN;
ENDIF;
r_Lathe;
r_Inspect;
RETURN;
r_Feeder1;
MoveJ pOvrpart, v500, z30, tGripper;
ABB Inc. -170

MoveL pOnPart, v500, fine, tGripper;


Set do9_Grip;
MoveL pOvrPart, v500, z30, tGripper;
RETURN;

r_Feeder2;
MoveJ pOvrPart2, v500, z30, tGripper;
MoveL pOnPart2, v500, fine, tGripper;
Set do9_Grip;
MoveL pOvrPart2, v500, z30, tGripper;
RETURN;
r_Lathe;
MoveJ pOvrLathe, v1000, z10, tGripper;
MoveL pin_Lathe, v400, fine, tGripper;
Reset do9_Grip;
MoveL pOvrLathe, v800, fine, tGripper;
PulseDO\Plength;=1, do7_Start_Lathe;
WaitDI di7_Lathe_Done, 1;
MoveL pin_Lathe, v400, fine, tGripper;
Set do9_Grip;
MoveJ pOvrLathe, v1000, z10, tGripper;
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;

ABB Inc. -171

MoveL pOn_Conveyor, v800, fine, tGripper;


Reset do9_Grip;
MoveI pOvr_Conveyor, v1000, z60, tGripper;
RETURN;

IRC5 Programao Bsica

ABB Inc. -172

Trabalhando com
Numerais

IRC5
Programao Bsica

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;

ABB Inc. -173

Incr nCount;
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
Compact IF .
IF
___________
ou __________

ABB Inc. -174

Exemplo:

IF nCount>=10 rTipClean;
ou
IF nCount>=10 THEN
rTipClean
ENDIF;

IRC5 Programao
Programming Bsica
Basic

Inspecionando toda terceira pea

Inspecione toda terceira pea produzida.

MAIN

rLathe

Quench
nCount>=3

rInspect

di2=1

di1=1

rFeeder1

rFeeder2

ABB Inc. -175

Pea boa

rGotoCalib

rDropOff

Pea Ruim

rReject

ABB Inc. -176

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.

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -177

Exemplo de Programa Exerccio 8


MAIN
MoveJ pHome, v1000, fine, tGripper;
IF di1_Style1=1 THEN
r_Feeder1;
ELSEIF di2_Style2=1 THEN
r_Feeder2:
ELSE
RETURN;
ENDIF
r_Lathe;
r_Quench;
IF nCount>=3 THEN
r_Inspect;
ELSE
r_Conveyor;
ENDIF
RETURN;
r_Feeder1;
MoveJ pOvrpart, v500, z30, tGripper;
MoveL pOnPart, v500, fine, tGripper;
Set do9_Grip;
WaitTime .5;
MoveL pOvrPart, v500, z30, tGripper;
RETURN;
r_Feeder2;
MoveJ pOvrPart2, v500, z30, tGripper;
MoveL pOnPart2, v500, fine, tGripper;
Set do9_Grip;
WaitTime .5;
MoveL pOvrPart2, v500, z30, tGripper;
RETURN;

r_Lathe;
MoveJ pOvrLathe, v1000, z10, tGripper;
MoveL pin_Lathe, v400, fine, tGripper;
Reset do9_Grip;
WaitTime .5;
MoveL pOvrLathe, v800, fine, tGripper;
PulseDO\Plength; =1, do7_Start_Lathe;
WaitDI di7_Lathe_Done, 1;
MoveL pin_Lathe, v400, fine, tGripper;
Set do9_Grip;
WaitTime .5;
MoveJ pOvrLathe, v1000, z10, tGripper;
RETURN;
r_Inspect;
nCount :=0;
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;

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;

ABB Inc. -178

RETURN;

IRC5 Programao Bsica

ABB Inc. -179

Comunicando
com o Operador

IRC5
Programao Bsica

IRC5 Programao
Programming Bsica
Basic

Comunicando com o Operador

ABB Inc. -180

Mensagens podem ser escritas na tela de forma a


propiciar um programa mais amigvel.

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -181

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.

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -182

Comunicando com o Operador

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;

ABB Inc. -183

(1)

(3)

(5)

IRC5 Programao
Programming Bsica
Basic

Comunicando com o Operador

ABB Inc. -184

Selecione um dado numrico ou uma escreva uma expresso


pressionando o boto virtual Expresso (Insert Expression).

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

rGotoCalib

rFeeder1

rInspect
rFeeder2

ABB Inc. -185

Pea Boa

rDropOff

Pea Ruim

rReject

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -186

Comunicando com o Operador

IRC5 Programao
Programming Bsica
Basic

Comunicando com o Operador

Instruo TPReadNum

ABB Inc. -187

TPReadNum nfigures, How many figures do you want?

ABB Inc. -188

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.

IRC5 Programao Bsica

Outras Instrues

IRC5

ABB Inc. -189

Programao Bsica

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -190

Tpicos

Instrues de Clock (relgio)

Instrues de Controle de Fluxo/ Laos de repetio

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

ABB Inc. -191

ClkStop utilizado para parar o cronmetro

IRC5 Programao
Programming Bsica
Basic

Funes de Clock

ABB Inc. -192

Funes de Clock
ClkRead

L o valor do cronmetro

Cdate -

L a data atual

Ctime -

L a hora atual

Exemplo:

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -193

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.

IRC5 Programao
Programming Bsica
Basic

Instrues de repetio - FOR

FOR

FOR i FROM 1 TO 5 DO
rotina_1;
ENDFOR

ABB Inc. -194

FOR i FROM 1 TO 8 DO
MoveJ ..... ;
MoveJ ..... ;
WaitTime..... ;
MoveJ ..... ;
... ;
ENDFOR

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

ABB Inc. -196

Label

IRC5 Programao
Programming Bsica
Basic

Instruo TEST

ABB Inc. -197

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.

IRC5 Programao Bsica

Work Object

IRC5

ABB Inc. -198

Programao Bsica

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -199

Criando um Work Object

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

Y
X
Coordenada da Ferramenta
(Tool coordinates)

Z
ABB Inc. -200

Y
X
Coordenada de Base
(Base coordinates)

Coordenada do Objeto
(WorkObject)
X

IRC5 Programao
Programming Bsica
Basic

Work Object e Sistema de Coordenadas

Definindo um Sistema de Coordenada


Object (Objeto)

ABB Inc. -201

User (Usurio)

User (Usurio)

IRC5 Programao
Programming Bsica
Basic

Criando um Work Object

Ative a ferramenta correta


(T_Caneta)

Crie um Work Object

Defina as coordenadas

Origin

y1
Work object axis Y

x1

ABB Inc. -202

x2

Work object axis X

wobjA4

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -203

Ativando um Work Object

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

ABB Inc. -204

work object
work object eixo X

ABB Inc. -205

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.

IRC5 Programao Bsica

Programando com
Offsets

IRC5

ABB Inc. -206

Programao Bsica

IRC5 Programao
Programming Bsica
Basic

Movemento Circular

MoveC

pCircle20

pCircle30

ABB Inc. -207

pCircle40

IRC5 Programao
Programming Bsica
Basic

Movimento Circular

Criando uma circunferncia com MoveCs

pCircle20

This robtaget can be copied and pasted

ABB Inc. -208

pCircle50

pCircle30

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
Utilizado para deslocar a partir
Tipo de
Velocidade
da posio original
Movimento
Preciso
C, J, L

Move_ Offs(pStart,-100,0,0), v500, fine, toolx;

ABB Inc. -209

Z Offset
Dado de
Posicionamento
para referncia
de deslocamento

Y Offset
X Offset

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?

ABB Inc. -210

Horrio ou Anti-horrio

IRC5 Programao
Programming Bsica
Basic

Exemplo - Offset

ABB Inc. -211

Exemplo

IRC5 Programao
Programming Bsica
Basic

Desenhando um Quadrado com Offsets


MM

Exemplo

100
75

Em qual quadrante o
quadrado ser
desenhado?

50

25
100 75 50 25

-25 -50 -75 -100

MM
-25

-50

pSTART

-75
-100

ABB Inc. -212

A partir do exemplo anterior programe:


pSTART
_____________
o PRIMEIRO ponto do desenho do
LTIMO ponto.
quadrado e tambm o ___________

IRC5 Programao
Programming Bsica
Basic

1.

Exerccio 11

Adicione ao seu novo programa trs rotinas que desenhem um


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

ABB Inc. -213

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


mm com passo de 5mm.

IRC5 Programao Bsica

ABB Inc. -214

Calibrao e
Sincronismo

IRC5
Programao Bsica

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -215

Tpicos

Sincronismo - Atualizao do Contador de Revolues


(Revolution Counters Update)

Calibrao (Fine Calibration)

IRC5 Programao
Programming Bsica
Basic

Calibrao IRC5

ABB Inc. -216

Calibrao ou Sincronismo?

O sincronismo poder ser realizado facilmente sem


necessiadade de ferramentas especiais.

Calibrao necessita de ferramentas especiais.

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

ABB Inc. -217

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.

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -218

Sincronismo (Updating Rev. Counters)

1. Utilizar o JoyStick para


mover o rob para
posio de sincronismo
(Calibration Position)
alinhando as marcas.

IRC5 Programao
Programming Bsica
Basic

Procedimento de Sincronismo
Mova o rob para as marcas de sincronismo.
Pressione ABB : Calibrao (Calibration)
Selecione o rob a ser calibrado.
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

1.
2.
3.
4.

IRC5 Programao
Programming Bsica
Basic

Verificando posio de Calibrao

ABB Inc. -220

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.

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

ABB Inc. -221

Requer ferramentas especiais!


No pode ser feito corretamente
ajustando de forma visual.

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -222

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

IRC5 Programao
Programming Bsica
Basic

Calibrando o rob com ferramentas especiais

Ferramentas Especiais

Nvel Eletrnico

Dispositivo ABB (para eixo 1)

ABB Inc. -223

Base de Nivelamento

IRC5 Programao
Programming Bsica
Basic

Exerccio 12

1.

ABB Inc. -224

2.

Compare os valores de calibrao configurados no controlador


com os valores impressos na etiqueta do manipulador.
Os valores conferem? Se no, notifique o instrutor.

IRC5 Programao Bsica

Exerccios

IRC5

ABB Inc. -225

Programao Bsica

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.

ABB Inc. -226

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.

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?

ABB Inc. -227

2.2 Liste 2 vantagens que h quando utilizamos uma ferramenta e


fazemos a correta declarao da mesma no rob.

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
x posio no papel

o pHome

o p_aprox

ABB Inc. -228

p40 x

p30 x

x p10

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
x posio no papel

o pHome

o p_aprox
o p_aprox_1
p40 x

p_quad

x p10

ABB Inc. -229

100mm

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
x posio no papel

o pHome

o p_aprox
o p_aprox_1
p40 x

x p10

p_quad

100mm
x
p_centro

ABB Inc. -230

p_aprox_2 o

p30 x

o p_aprox_3

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

ABB Inc. -231

p_aprox_2 o
p30 x

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

ABB Inc. -232

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.

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.

ABB Inc. -233

Sinal do PLC

Rob

Executar 1 Arco

Executar 1 Retngulo

Executar 1 Crculo

Executar 1 Quadrado

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.

ABB Inc. -234

Sinal do PLC

Rob

Executar 2 Quadrados

Executar 3 Retngulos

Executar 2 Crculos

Executar 1 Arco

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

ABB Inc. -235

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

Parado em Home aguardando autorizao

Continuidade na execuo do programa

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

ABB Inc. -236

operador solicitar. O operador pode solicitar apenas uma pea por vez.

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

ABB Inc. -237

operador solicitar. O operador pode solicitar quantas peas desejar de uma


s vez, porm o rob no precisa necessariamente executar na sequncia
pedida.

IRC5 Programao
Programming Bsica
Basic

Exerccio 13

ABB Inc. -238

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.

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.

ABB Inc. -239

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


ltimo lote produzido.

IRC5 Programao
Programming Bsica
Basic

Exerccio 15

ABB Inc. -240

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.

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -241

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
C/
S/
DI08
Pegar na esteira A
Pegar na esteira B
A6
A3
LOGO LOGO
B3
B6
DI09 Posio (A1/B1) sem Logo Posio (A1/B1) com Logo
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
A4
A1
C5
C2
B1
B4
DO01
Desliga Vcuo
Liga Vcuo
DO08
DO09
C4
C1
DO10
Esteira de
DO11
Sada C
DO12
Palete Incompleto
Pelete Completo
DO13

IRC5 Programao
Programming Bsica
Basic

Resumo - Instrues / Funes de Programa

Instrues de Movimento

Instrues de Espera

WaitTime
WaitDI
WaitUntil

CDate
CTime
CLKStart
CLKReset
CLKStop

Funes de Movimento

TPWrite
TPErase
TPReadFK
TPReadNum

Instrues de Tempo

Set
Reset
SetDO
InvertDO
PulseDO

:=
ADD
Incr
Decr
Clear

Instrues Interface

ABB Inc. -242

Instrues de I/O

ProcCall
IF
Compact IF
While
For
Goto
Label
Test
Stop

Instrues de Matemticas

MoveJ
MoveL
MoveC
MoveAbsJ

Instrues de Controle de Fluxo

OffSet

Funes de Clock

CLKRead

OBS: Para conhecer demais Instrues / Funes consultar manual de Programao RAPID

IRC5 Programao
Programming Bsica
Basic

Contatos ABB

ABB Inc. -243

Coordenao de Treinamentos
Charles Souza
charles.souza@br.abb.com

11 3688-8481

Coordenao Tcnica
Margareth Silva
margareth.silva@br.abb.com

11 3688-9223

Suporte Tcnico
Ricardo Maia
ricardo.maia@br.abb.com

11 3688-9032

Planto 24h ABB


planto.24horas@br.abb.com

0800-12-2500

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -244

Em Branco

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -245

Avaliao do Curso

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -246

Avaliao do Curso

IRC5 Programao
Programming Bsica
Basic

ABB Inc. -247

Em Branco

Você também pode gostar