Você está na página 1de 61

Padronização do Konzern

Diretrizes para programação de Robô


FANUC
A partir da versão de software 7.63
Fundamentos
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

Índice:
1 Fundamentos ............................................................................................................................. 4
1.1 Comissionamento ........................................................................................................................... 4
1.2 Averiguar padronização dos dados de referencia para iRKalibration (Sistema Câmera) ......... 4
1.3 Executar padronização calibração iR (Sistema Câmera) .............................................................. 5
1.4 Programas padrão ........................................................................................................................... 5
1.5 Tecnologia de Subprogramas ........................................................................................................ 5
1.6 Elaboração de Programas............................................................................................................... 6
1.6.1 Contornar interferências ................................................................................................................................ 6
1.7 Comentários de Pontos e Programas ............................................................................................ 7
1.8 Posições de Liberação e Intertravamentos ................................................................................... 7
1.9 Retroaviso de Grampos e Controles de Peças.............................................................................. 7
1.10 Makros .......................................................................................................................................... 7
1.11 Medição de Tempo de Ciclo ........................................................................................................ 8
1.12 Bloqueio de Folges e UPs............................................................................................................ 8
1.13 Função de comutação na trajetória ............................................................................................ 8
1.14 Função Parênteses ...................................................................................................................... 8
1.15 Coordenadas ................................................................................................................................ 8
1.16 Garras, Liberações e Marcadores ............................................................................................... 9
1.17 Velocidade final ............................................................................................................................ 9
1.18 Pontos de aproximação ............................................................................................................... 9
1.19 Número de ferramenta ................................................................................................................. 9
1.20 FB PSPS ........................................................................................................................................ 9
1.21 Grafagem de roletes ..................................................................................................................... 9
1.22 Velocidade reduzida ................................................................................................................... 10
1.23 Tipos de interpolação ................................................................................................................ 10
1.24 Modo de economia de energia para componentes .................................................................. 10
2 Parâmetros de movimentação ................................................................................................ 11
2.1 Parâmetros em movimentação JOINT.......................................................................................... 11
Pontos de Aproximação .......................................................................................................................................... 11
Pontos de Trabalho ................................................................................................................................................. 11
2.2 Parâmetros em movimentação linear........................................................................................... 11
Pontos de Aproximação .......................................................................................................................................... 11
Pontos de Trabalho ................................................................................................................................................. 11
2.3 Parâmetros em movimentação circular ....................................................................................... 11
3 Utilização de Folges................................................................................................................. 12
3.1 Folges ............................................................................................................................................. 12
3.2 UPs ................................................................................................................................................. 12
Robotertechnik 2 de 61 Planung Automatisierungstechnik I/PG-C61
Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

UP 216 FD1 Zerar ................................................................................................................................ 15


UP 217 FD2 Zerar ................................................................................................................................ 15
UP551 ALO3/APN Escrever dados Programação ............................................................................... 16
4 Programação ............................................................................................................................ 17
4.1 Programação do ponto 1 de uma Folge ...................................................................................... 17
4.2 Programação do 2º ponto de uma Folge e o 1º ponto de uma UP ............................................. 17
4.3 Programação do último ponto do programa ............................................................................... 18
4.4 Programação de repetição de Folge (Loop) ................................................................................ 19
4.5 Programação da Folge124 (Posição de manutenção)................................................................. 20
4.6 Posição de Manutenção para robôs com mais de uma ferramenta ........................................... 21
4.7 UP para inspeção do TCP ............................................................................................................. 24
4.8 Robô na área de manutenção ....................................................................................................... 25
4.8.1 Programação do robô na área de manutenção ........................................................................................... 25
4.8.2 Programação de área de manutenção com chamada de UP ..................................................................... 28
4.8.3 Mover para posição de manutenção da ferramenta do robô ....................................................................... 30
4.8.4 Anunciar dispositivos de processo no PLC ................................................................................................. 31
4.9 Programação da Folge125 ............................................................................................................ 32
4.10 Programação da Makro50 .......................................................................................................... 33
4.11 Programação da função “Parada no fim do ponto / Grade de proteção bloqueada” ............ 36
4.12 Programação do aviso de Trabalho Pronto .............................................................................. 36
4.13 Programação das UP´s .............................................................................................................. 37
4.13.1 Alicates, garras, liberações e Marcas .......................................................................................................... 37
4.13.2 Primeiro e último ponto ................................................................................................................................ 37
4.13.3 Chamada de UPs ........................................................................................................................................ 37
4.13.4 Chamada de UP com Überschleif................................................................................................................ 38
4.14 Programação de intertravamentos............................................................................................ 39
4.14.1 Intertravamento Robô  Robô ................................................................................................................ 39
4.14.2 Intertravamento Robô  Instalações / Ferramenta ................................................................................ 40
4.15 Programação de um movimento linear com ciclo de busca (Suchlauf) ................................ 44
4.15.1 Ciclo de busca sem deslocamento de base ................................................................................................ 44
4.15.2 Ciclo de busca com deslocamento de base (Parte relativa do programa) .................................................. 46
4.15.3 Delocamento de Base com movimento relativo .......................................................................................... 49
4.16 Programação de um monitoramento de torque intenso .......................................................... 52
4.16.1 Programação da função Collision Guard ..................................................................................................... 52
4.16.2 Operação de torque ..................................................................................................................................... 53
4.17 Programação do Buffer de peças.............................................................................................. 54
4.17.1 Visão geral registradores de posição:.......................................................................................................... 54
4.17.2 Visão geral Programas MOTN ..................................................................................................................... 54
4.17.3 UP sem deslocamento BASE_BASE........................................................................................................... 56
4.17.4 UP com deslocamento BASE_BASE........................................................................................................... 58
4.18 Utilização de liberação de arranque Online .............................................................................. 59
5 Jornal de alterações ................................................................................................................ 60
6 Controle da versão................................................................................................................... 61

Robotertechnik 3 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

1 Fundamentos

1.1 Comissionamento

O comissionamento e primeira masterização do robô realizada por completo pela empresa FANUC.
O programador de robôs deve checar ou caso necessário, editar os seuintes pontos antes de iniciar a
programação:

Endereçamento e configuração dos grupos de Entradas e Saídas


Configuração do BUS
Configuração dos canais analógicos e os respectivos comentários
Velocidade-TCP para canais analógicos
Comissionamento / Configuração eixos lineares externos
Nome do arquivo SVC deve corresponder ao nome do robô (Ex.: 1010R01) Nome e extensão do arquivo
devem impreterivelmente ser geradas em letras maiusculas. Ex.: 1010R01.SVC
Instalação de programas de ciclo de procura em dependencia de eixos lineares existentes ou não.

As seguintes tarefas devem ser executadas antes do início da programação:


Avaliação dos dados de carga da ferramenta e respectivo Pêndulo, os quais contem também a
averiguação dos dados de referencia para normalização IRVisions (Masterização Vision)
Programar Menu de Pinças e Atribuição das mesmas
UPs para checar TCP – Vide ponto 4.6

Tarefas de manutenção devem ser realizadas pelos próprios departamentos de manutenção de robôs.

1.2 Averiguar padronização dos dados de referencia para iRKalibration (Sistema Câmera)

Para uma posterior padronização da iRKalibration são necessários os chamados dados de referencia para
mecânica sem carga que, já foram fornecidos pela Fanuc e posteriormente devam ser outra vez conferidos sob
carga.

Para controlar, se os dados de referencia já foram conferidos:


MENU  ZUSATZ PRG.  iRKalibration
Ponto de menu [1] Selecionar Padronizar Eixo Vision e confirmar com Enter.
Ponto de menu [4] Selecionar Dados de Referencia e confirmar com Enter.

1 [N. GESET] [REFERENCE 1]


9 [N. GESET] [REFERENCE 9]
10 [ SETZ ] [FACTORY DATA]

A documentação da FANUC “INSTRUÇÃO Padronizar iRKalibration FANUC SYSTEM R-30iA” representa o


procedimento para determinar os dados de referencia apropriados.

Robotertechnik 4 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

1.3 Executar padronização calibração iR (Sistema Câmera)

Para a masterização por meio do sistema de câmera iRKalibration dos possíveis casos são necessários dados
de referência. Aqui diferencia-se sob sem carga e outros dados específicos do usuário.
Os dados de referencia sem carga são memorizados sob [10] Factory Data.

Para controlar se os dados correspondentes de referencia foram mantidos:

MENUE  ZUSATZ PRG.  iRKalibration

Ponto de menu [1] Selecionar Normalizar Eixo Vision Vision e confirmar com Enter.
Ponto de menu [4] Selecionar Dados de Referencia e confirmar com Enter.

A documentação da FANUC “INSTRUÇÃO Padronizar iRKalibration FANUC SYSTEM R-30iA” representa o


procedimento para determinar os dados de referencia apropriados.

1.4 Programas padrão

Deve se criar os seguintes programas padrão de acordo com os fundamentos de programação:

Posição de Ajuste Folge 123 (Dica: Deve se aplicar o “Teach” com Frame 0)
Posição de Manutenção Folge 124
Posição Básica Folge 125

Estes programas precisam ser elaborados de tal modo que uma funcionalidade do programa esteja assegurada
em qualquer estado da instalação.

1.5 Tecnologia de Subprogramas

Fundamentalmente devem ser empregadas as “Folges“ para a elaboração de rotinas.


Em caso de partes idênticas de programas, em diversos programas principais, obrigatoriamente precisa ser
aplicada a tecnologia dos subprogramas. O primeiro e último ponto de UPs devem permitir a movimentação a
partir da Homeposition livre de colisão.
Uma chamada de UP em uma UP não é permitida.

Robotertechnik 5 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

1.6 Elaboração de Programas

Os programas precisam ser elaborados de tal modo que um perfeito andamento do programa seja assegurado
em automático sob 100% da velocidade de deslocamento (sem bater na peça, sem mensagens de falha, sem
contatos de solda na peça além dos eletrodos do alicate de solda, sem forçar o robo ao fechar ou abrir garras
etc.)

1.6.1 Contornar interferências

VERMELHO = Execução incorreta


VERDE = Execução correta

Robotertechnik 6 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

1.7 Comentários de Pontos e Programas

Para as Folges utilizadas, UPs e trechos marcantes do programa, bem como pontos de solda, liberações de
ferramentas ou posições de acoplamento (Docking), os respectivos comentários em português precisam ser
registrados.

Exemplo 1:
„Ponto de Solda Nr. “AD-0930”,
Imediatamente antes do ponto de solda, onde a descrição deve estar de acordo com o cliente.

Exemplo 2:
„Depositar Docking EZ1/SP1 SZ1“.

Não utilizar comentários que não sirvam para o projeto e/ou do fluxo do programa (Ex.: Dados da
Empresa Integradora/Fornecedora, Publicidade etc.)

1.8 Posições de Liberação e Intertravamentos

As Entradas e Saídas utilizadas para Liberações e Intertravamentos devem obrigatoriamente ser


correspondentes.

1.9 Retroaviso de Grampos e Controles de Peças

É importante assegurar que o grupo de grampos e controles de cada peça sejam definidos de forma coerente.
Levando em consideração ampliações de modelos subsequentes, deve se planejar resevas significativas.

Exemplo:

Controle de peça:
G1BT1 = E579
G1BT2 = E580
G1BT3 = E581 Reservado
G1BT4 = E582 Reservado

Grupo de grampos 1:
G1BE1R = E583
G1BE1V = E584
G1BE1BR = E585
G1BE1BV = E586

Grupo de grampos 2:
G1BE2R = E587
G1BE2V = E588
G1BE2BR = E589
G1BE2BV = E590

1.10 Makros

Em princípio, as Makros a serem empregadas são disponibilizadas pelos departamentos de planejamento de


instalações elétricas Audi AG I/PG-C61 e Volkswagen AG Technologieplanung und –entwicklung PMT/A2.
Caso sejam necessários Makros adicionais, suas respectivas funções e necessidades precisam ser esclarecidas
junto ao Planejamento Elétrico da VWB (Robótica).

Robotertechnik 7 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

1.11 Medição de Tempo de Ciclo

A medição do tempo total de ciclo deve ser inicializada no segundo ponto de cada programa principal. Sendo
paralisada respectivamente no último ponto. Da mesma forma, nos casos onde são empregados UPs, devem ser
programados temporizadores para levantamento do tempo de ciclo (iniciar no primeiro ponto e parar no último
ponto). Os temporizadores a serem utilizados devem ser obtidos da “lista de referências”.

1.12 Bloqueio de Folges e UPs

Com FB-PSPS (AUS) e CNT0 são bloqueadas respectivamente uma Folge e/ou uma UP.
As Folges e UPs não utilizadas devem ser excluidas.

1.13 Função de comutação na trajetória

A função de comutação na trajetória deve ser obrigatoriamente usada na aplicação de Laser, MIG/MAG e de
cola.

Especificações para função de comutação na trajetória

BS Zeit: -0.00sek

BS Weg: somente valores positivos


(min. Weg +1mm)

Quantidade de cordões de cola por ponto: 1 até 5

Exemplo:
Cordão de cola com um comprimento de 15mm e Painel de Parâmetros 1

L P[A] 250mm/sek CNT100 ACC100 ZEIT VOR 0.0sek, P-SPS


1: BS +1mm -0.00sek, gA[11]=(1) -- Painel de Parâmetros 1

L P[B] 250mm/sek CNT100 ACC100 ZEIT VOR 0.0sek, P-SPS


1: BS +1mm -0.00sek, A[1544] = (!E15) -- KL1 Pistola ABRIR
2: BS +16mm -0.00sek, A[1544] = (AUS) -- KL1 Pistola FECHAR

1.14 Função Parênteses

O controlador FANUC não suporta funções “E” antes de “OU”. Sempre que necessário, as associações devem
ser formadas em conjunto entre parênteses para garantir o funcionamento correto das operações lógicas. Ao
contrário de associações complexas deve-se utilizar formações simplificadas de Marcas.
A inicialização das Marcas deve ser programada na Makro50 e esta Makro deve ser chamada no segundo ponto
de cada Folge, bem como, no primeiro ponto de cada UP.

1.15 Coordenadas

O primeiro, o segundo e o último ponto de todos os programas principais (Folge) tem que ser programados nas
mesmas coordenadas.
Na utilização de repetição de Folge (Loop na Folge), o primeiro, o segundo, o penúltimo e o último ponto do
programa principal (Folge) devem ser programados nas mesmas coordenadas.

Robotertechnik 8 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

Na aplicação de subprogramas, os primeiros e os últimos pontos podem ter coordenadas diferentes.


Na utilização de UPs é preciso dar atenção para que o respectivo programa principal consiga avançar e recuar
mesmo sem entrar na UP.

1.16 Garras, Liberações e Marcadores

Todas as garras utilizadas precisam ser levadas na posição de modo definido no início da Folge e/ou no início da
UP e a posição das mesmas precisa ser verificada. A fim de evitar problemas na seleção manual e
respectivamente na execução do DryRun, é obrigatório que todos os sinais de liberações e definições de
Marcadores (Makro50), que encontram-se em nível lógico 1 sejam novamente programados no início de cada
UP!

1.17 Velocidade final

Quando são programados vários pontos sobre a mesma coordenada, a velocidade final precisa ser CNT=0

1.18 Pontos de aproximação

É permitido programar saídas sobre os pontos de aproximação, o valor do ZEIT VOR PSPS deve ser 0,0.

1.19 Número de ferramenta

Na criação ou correção de uma Folge precisa-se obrigatoriamente dar atenção ao número correto da ferramenta
nos respectivos pontos.
F1 [ANWEI] 8  Próx.Pág.  4 Offset/Koord.  WKZ_NUM=…2 Konstante  inserir Nr. da Ferramenta
 ENTER

A numeração das ferramentas deve começar com 1 para a inicial e para as demais obedecer a sequencia do
processo.

1.20 FB PSPS

Liberações de ferramentas, controle de peças, posição do alicate de solda, utilidades, seguranças de máquina e
retroavisos de grampos das garras devem ser verificadas ‘Online’ no FB PSPS.

1.21 Grafagem de roletes

Os modelos são distinguidos na grafagem de roletes com base em 10 contadores. Há, portanto, nove UPs
disponíveis para cada tipo de peça.
Começando pela UP11 para Tipo 1 Circulação 1 (Passo de grafagem 1) é sucessivamente incrementado até a
roletagem completa. Via de regra são necessárias até 3-4 UPs para completar a grafagem. A quantidade de
passos de grafagem (Falzsteps) depende do ângulo de abertura da borda designada. As áreas de grafagem
serão futuramente agrupadas na UP1. Portanto, não mais separadas como por exemplo soleira, lado da
fechadura, lado da dobradiça etc.

Uma nova posição de peça (Ex.: uma nova posição de mesa giratória) deve ser tratada como um segundo tipo.

Os valores de TCP a serem empregados devem ser provenientes do programa de simulação.

Para calibração é usado o TCP10.


Este permanece no controlador do robô. Importante na recalibração, transferência etc.

Se a instalação destinada à grafagem de roletes for calibradada com sistema de câmera, então deve-se utilizar
as UP211-215 para este propósito.

Robotertechnik 9 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

1.22 Velocidade reduzida

Nos movimentos que necessitam de uma velocidade reduzida, apenas o valor de velocidade do ponto em
questão é reduzido.

1.23 Tipos de interpolação

Todos os movimentos do robô devem ser programados por princípio com a instrução de interpolação JP[x]-.
Quando for cabível podem ser usadas também outras instruções de interpolação como LP[x]. Na aplicação da
cola deve se utilizar sempre LP[x]ou CP[x].

1.24 Modo de economia de energia para componentes

Chamada na Makro57:

F[522] -- Ativar modo de economia de energia no pacote tecnológico


-- (validade Global para todos componentes suportados pelo robô)

Seleção deste modo pode suceder somente após concordância do planejamento resposável.

Robotertechnik 10 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

2 Parâmetros de movimentação

2.1 Parâmetros em movimentação JOINT

Pontos de Aproximação
JP[x] 100% CNT100 ACC100 ZEIT VOR 0.00sek, PSPS

Pontos de Trabalho
JP[x] 100% CNT0 ACC100 ZEIT VOR 0.1sek, PSPS

2.2 Parâmetros em movimentação linear

Pontos de Aproximação
LP[x] max 2000mm/sek CNT100 ACC100 ZEIT VOR 0,0mm

Pontos de Trabalho
LP[x] max 2000mm/sek CNT0 ACC100 ZEIT VOR 0.1sek

2.3 Parâmetros em movimentação circular

JP [x] 100% FINE -- Ponto inicial


CP[xa] -- Ponto auxiliar
[xb] 2000mm/sek FINE -- Ponto alvo

Robotertechnik 11 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

3 Utilização de Folges

3.1 Folges

Programas em função do tipo Folge1 até Folge120

Posição de Ajuste Folge123

Posição de Manutenção Folge124

Posição Básica Folge125

3.2 UPs

UPs de trabalho UP1 até UP80

UPs de trabalhos específicos UP70 ATÉ UP80


Utilizar após concordância do planejamento, se o 1º ponto não for acessível direto do HOME!

Cola UP70 ATÉ UP80


UP70 até UP80 examinar peça Modelo 1 – Modelo 10

Grafagem de roletes UP 11 até UP79


UP11 até 19 -- Tipo 1 Circulação 1 até 9
UP21 até 29 -- Tipo 2 Circulação 1 até 9
UP31 até 39 -- Tipo 3 Circulação 1 até 9
UP41 até 49 -- Tipo 4 Circulação 1 até 9
UP51 até 59 -- Tipo 5 Circulação 1 até 9
UP61 até 69 -- Tipo 6 Circulação 1 até 9
UP71 até 79 -- Tipo 7 Circulação 1 até 9

MIG/MAG UP 11 até UP49 UP91 até UP99


UP11 até 19 -- Cordão 1 até 9 Modelo 1
UP21 até 29 -- Cordão 1 até 9 Modelo 2
UP31 até 39 -- Cordão 1 até 9 Modelo 3
UP41 até 49 -- Cordão 1 até 9 Modelo 4
UP91 MS Limpeza de tocha 1
UP92 MS Manutenção TCP 1
UP93 MS Manutenção TCP 2
UP94 MS Manutenção TCP 3
UP95 MS Manutenção TCP 4
UP96 MS Manutenção TCP 5
UP97 MS Manutenção TCP 6
UP98 MS Correção do TCP da tocha (chamada manual)
UP99 MS Limpeza de tocha 2

Robotertechnik 12 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

Docking UP 81 até UP86


UP81 depositar a ferramenta 2 e buscar a ferramenta 1
UP82 depositar a ferramenta 1 e buscar a ferramenta 2
UP83 depositar a ferramenta 1 e buscar a ferramenta 3
UP84 depositar a ferramenta 2 e buscar a ferramenta 3
UP85 depositar a ferramenta 3 e buscar a ferramenta 1
UP86 depositar a ferramenta 3 e buscar a ferramenta 2

Caso mais do que três ferramentas devam ser cambiadas (docking) proceder da seguinte maneira!

UP140 Ferramenta 1 depositar


UP141 Ferramenta 1 buscar
UP142 Ferramenta 2 depositar
UP143 Ferramenta 2 buscar
UP144 Ferramenta 3 depositar
UP145 Ferramenta 3 buscar
UP146 Ferramenta 4 depositar
UP147 Ferramenta 4 buscar
UP148 Ferramenta 5 depositar
UP149 Ferramenta 5 buscar
UP150 Ferramenta 6 depositar
UP151 Ferramenta 6 buscar
UP152 Ferramenta 7 depositar
UP153 Ferramenta 7 buscar
UP154 Ferramenta 8 depositar
UP155 Ferramenta 8 buscar
UP156 Ferramenta 9 depositar
UP157 Ferramenta 9 buscar
UP158 Ferramenta 10 depositar
UP159 Ferramenta 10 buscar
UP160 Ferramenta 11 depositar
UP161 Ferramenta 11 buscar
UP162 Ferramenta 12 depositar
UP163 Ferramenta 12 buscar

Robotertechnik 13 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

Medição-Inline UP 10 até UP99


UP10 até UP19 Modelo1 Rotina 1 até 10
UP20 até UP29 Modelo2 Rotina 1 até 10
UP40 até UP39 Modelo4 Rotina 1 até 10
UP50 até UP39 Modelo5 Rotina 1 até 10
UP60 até UP39 Modelo6 Rotina 1 até 10
UP70 até UP39 Modelo7 Rotina 1 até 10
UP80 até UP39 Modelo8 Rotina 1 até 10
UP90 até UP39 Modelo9 Rotina 1 até 10

Compensação de temperatura UP 100 até UP130


UP100 Rotina 1
UP101 Rotina 2
UP102 Rotina 3
UP103 Rotina 4
UP104 Rotina 5
UP105 Rotina 6
UP106 Rotina 7
UP107 Rotina 8
UP108 Rotina 9
UP109 Rotina 10
UP110 Rotina 11
UP111 Rotina 12
UP112 Rotina 13
UP113 Rotina 14
UP114 Rotina 15
UP115 Rotina 16
UP116 Rotina 17
UP117 Rotina 18
UP118 Rotina 19
UP119 Rotina 20
UP120 até 129 Reservado

Sistema de visão UP 240 até UP 250


UP 240 Ajustar Vision
UP 241 Calibrar Vision
UP 242 Troca de câmera
UP 243 Troca de câmera
UP 244 Troca de câmera
UP 245 Troca de ferramenta
UP 246 Troca de ferramenta
UP 247 Troca de ferramenta
UP 248 Troca de robô
UP 249 Troca de robô
UP 250 Troca de robô

Robotertechnik 14 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

UPs de serviço UP 101 até UP 128


UP 101 Fresagem de capas EZ1/SP1/PZ1 SZ1
UP 102 Fresagem de capas EZ1/SP1/PZ1 SZ2
UP 103 Fresagem de capas EZ1/SP1/PZ1 SZ3
UP 104 Fresagem de capas EZ1/SP1/PZ1 SZ4
UP 105 Reservado
UP 106 EZ1/SP1 Escalonamento de força / corrente
UP 107 EZ2/SP2 Escalonamento de força / corrente
UP 108 EZ3/SP3 Escalonamento de força / corrente
UP 109 EZ1/SP1 Calibração
UP 110 EZ2/SP2 Calibração
UP 111 EZ3/SP3 Calibração
UP 112 Posição de manutenção 1
UP 113 Posição de manutenção 2
UP 114 Posição de manutenção 3
UP 115 Posição de manutenção 4
UP 116 Posição de manutenção 5
UP 117 Testar KL1
UP 118 Testar KL2
UP 119 Testar KL3
UP 120 Purgar KL1
UP 121 Purgar KL2
UP 122 Purgar KL3
UP 126 Calibração NK
UP 127 Testar motor de arame DG
UP 128 Posição de troca de graxa
UP131 Parafusar MFU Fuso 1
UP132 Parafusar MFU Fuso 2
UP133 Parafusar MFU Fuso 3
UP134 Parafusar MFU Fuso 4
UP 201 Posição de troca de ferramenta 1
UP 202 Posição de troca de ferramenta 2
UP 203 Posição de troca de ferramenta 3
UP 204 Posição de troca de ferramenta 4
UP 205 Posição de troca de ferramenta 5
UP 206 Inspeção TCP 1
UP 207 Inspeção TCP 2
UP 208 Inspeção TCP 3
UP 209 Inspeção TCP 4
UP 210 Inspeção TCP 5
UP 211 Calibração Rollfalzbett 1
UP 212 Reservado
UP 213 Reservado
UP 214 CZ2 Controle de Matriz
UP 215 CZ1 Controle de Matriz
UP 216 FD1 Zerar
UP 217 FD2 Zerar

Robotertechnik 15 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

UP 501 até UP 515


UP 501 Testar Schutzglas
UP 502 Reservado
UP 503 Reservado
UP 504 Reservado
UP 505 Reservado
UP 506 Calibraçãodo controle de cordão
UP 507 Reservado
UP 508 Reservado
UP 509 Reservado
UP 510 Reservado
UP 511 Cortar arame/Medir Catodo
UP 512 Testar alimentação de arame
UP 513 Troca de arame
UP 514 Reservado
UP 515 Reservado

UP 550 até UP 551


UP550 ALO3/APN Ler dados
UP551 ALO3/APN Escrever dados

Robotertechnik 16 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

Programação

4 Programação

Detalhamentos, exemplos e variantes devem ser consultados nas diretrizes dos sistemas de processo!

4.1 Programação do ponto 1 de uma Folge

No ponto 1 pode ser programado somente a saída 15 (Posição básica), a saída 16 (Robô na trajetória) e a
Makro0. O valor de JP[x] deve ser de 10% e de ZEIT VOR deve ser 0,0.

Exemplo:

: WKZ_NUM=1 -- WKZ 1 ativa


: TRAGLAST[1] -- Dados de carga da Wzg-Nr.1 ativos
: BENUTZER_NUM=0 -- Nullframe ativo
J P[1] 10% CNT0 ACC100 ZEIT VOR 0.0sek, P-SPS
1: WENN A[12], AUFRUF MAKRO998 -- Cancela simulação das E/S --
2: A[15] = (AN) -- Robô no ponto 0 --
3: A[16] = (AN) -- Robô na trajetória --
4: AUFRUF MAKRO000 -- Reset das saídas e Flags --
5: WARTE (E[9]) -- Aguarda Start de Folge --

4.2 Programação do 2º ponto de uma Folge e o 1º ponto de uma UP

Liberações de posições, saídas e Makros que sejam necessários no começo do programa, bem como o início
da medição do tempo de ciclo devem ser programados no ponto 2 da respectiva Folge.
É importante certificar-se de que a saída15 esteja desligada, após ligar as liberações das posições
necessárias!
As liberações de posições devem impreterivelmente serem programadas antes das funções dos alicates. Na
função do alicate, a verificação da presença de peça obrigatoriamente precisa verificar o “não”. Os pontos 1 e 2
precisam estar nas mesma coordenadas.
O valor do ZEIT VOR tem que ser 0,0 Sek.

No ponto 1 de uma UP’s deve ser programado adicionalmente A[16] = (AN)

Exemplo:

J P[2] 100% CNT0 ACC100 ZEIT VOR 0.0sek, P-SPS


1: FB-PSPS (AN) -- Condições de movimento online desligado --
2: A[23] = (AUS) -- Grade de proteção liberada –
3: TIMER[1]=RESET -- Reset medição do tempo do ciclo --
4: TIMER[1]=START -- Início da medição do tempo do ciclo --
5: AUFRUF MAKRO50 -- Inicialização de Marcas --
6: A[80] = (AN) -- Liberação grampo abrir/fechar --
7: A[41] = (AN) -- Liberação 1 da posição no robô B --
8: A[15] = (AUS) -- Posição básica desligar --
9: F[1] = (AN) -- Seleção grupo de grampos 1 --
10: F[2] = (AN) -- Seleção grupo de grampos 2 --
11: F[3] = (AN) -- Seleção grupo de grampos 3 --
12: F[4] = (AN) -- Seleção grupo de grampos 4 --
13: WENN (!E[626] & !E[627]), AUFRUF MAKRO342 -- Abrir garra --
14:AUFRUF MAKRO340 -- Garra INIT --
15: WARTE (M[31] & M[33] & M[35] & M[37]) -- Consulta Garra está aberta --
16: WARTE (E[23]) -- Liberação de arranque do PLC --
17: A[23] = (AN) -- Grade de proteção bloqueada --
18: FB-PSPS (E[14] & E[24] & E[80] & M[31] & M[33] & M[35] & M[37] & M[81] & [95])
Robotertechnik 17 de 61 Planung Automatisierungstechnik I/PG-C61
Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

4.3 Programação do último ponto do programa

No último ponto do respectivo programa principal precisa ser parado o temporizador tempo de ciclo completo e
seu valor salvo. Se necessário disparar os tempos de monitoração de tempo.

Exemplo:

J P [ 55 ] 100% CNT0 ACC100 ZEIT VOR 0.00sek, P-SPS


1: FB-PSPS (AN)
2: A[14] = (AN) -- Último ponto --
3: A[15] = (AN) -- Posição básica --
4: TIMER[1] = STOP -- Tempo total do ciclo atual --
5: TIMER[2] = (TIMER[1]) -- Tempo total do último ciclo --
6: TIMER[2] = STOP

Robotertechnik 18 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

4.4 Programação de repetição de Folge (Loop)

Pode ser empregada somente em consteleções de instalações adequadas.

Exemplo:

J P [ 1 ] 10% CNT0 ACC100 ZEIT VOR 0.00sek, P-SPS


1: WENN A[12], AUFRUF MAKRO998 -- Cancelar simulação de E/S –
2: A[15] = (AN) -- Robô no ponto 0 --
3: A[16] = (AN) -- Robô na trajetória --
4: AUFRUF MAKRO000 -- Reset de Saídas e Flags --
5: WARTE (E[9]) -- Aguarda start de Folge --

LBL[1]

J P [ 2 ] 100% CNT0 ACC100 ZEIT VOR 0.00sek, P-SPS


1: FB-PSPS (AN) -- Condições de avanço Online desligadas --
2: A[23] = (AUS) -- Liberar grade de proteção --
3: TIMER[1]=RESET -- Reset medição de tempo de ciclo --
4: TIMER[1]=START -- Start medição de tempo de ciclo --
5: AUFRUF MAKRO50 -- Inicialização de marcas --
6: F[899] = (AUS) -- Repetição de Folge DESL --
7: A[15] = (AUS) -- Desligar posição básica --
8: WARTE (E[23]) -- Liberação de arranque do PLC --
9: E[23] = (AN) -- Grade de proteção bloqueada --
10: FB PSPS (E[14] & E[24])
X
X
J P [ 9 ] 100% CNT0 ACC100 ZEIT VOR 0.00sek, P-SPS
1: FB-PSPS (AN) -- Condições de avanço Online desligadas --
2: A[23] = (AUS) -- Liberar grade de proteção --
3: F[899] = (E[22]) -- Seleção repetição de Folge --
4: A[22] = (F[899]) -- Retroaviso repetição de Folge ativa --
5: TIMER[1] = STOP -- Tempo de ciclo total do fluxo atual --
6: TIMER[2] = (TIMER[1]) -- Tempo de ciclo total do último fluxo --
7: TIMER[2] = STOP
8: WARTE (E[23]) -- Liberação de arranque do PLC --
9: E[23] = (AN) -- Grade de proteção bloqueada --
10: FB PSPS (E[14] & E[24])

WENN (F[899]), JMP LBL[1]

J P [ 10 ] 100% CNT0 ACC100 ZEIT VOR 0.00sek, P-SPS


1: FB-PSPS (AN) -- Condições de avanço Online desligadas --
2: A[14] = (AN) -- Último ponto --
3: A[15] = (AN) -- Posição básica --
4: TIMER[1] = STOP -- Tempo de ciclo total do fluxo atual --
5: TIMER[2] = (TIMER[1]) -- Tempo de ciclo total do último fluxo --
6: TIMER[2] = STOP

Primeiro, segundo, penúltimo e último pontos devem ser programados sob as mesmas coordenadas.

Robotertechnik 19 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

4.5 Programação da Folge124 (Posição de manutenção)

Nesta Folge não podem ser programadas liberações ou intertravamentos de robôs!


O controle sobre a disponibilidade da área ocorre no PLC e o sinal PF0 dos outros robôs.
As liberações de ferramentas são setadas exatamente como nas outras Folges!

Exemplo:

: WKZ_NUM=1 -- WKZ 1 ativa


: TRAGLAST[1] -- Dados de carga da Wzg-Nr.1 ativos
: BENUTZER_NUM=0 -- Nullframe ativo

J P[1] 10% CNT0 ACC100 ZEIT VOR 0.0sek, P-SPS


1: WENN A[12], AUFRUF MAKRO998 -- Cancelar simulação de E/S –
2: A[15] = (AN) -- Robô no ponto 0 --
3: A[16] = (AN) -- Robô na trajetória --
4: AUFRUF MAKRO000 -- Reset de Saídas e Flags --
5: WARTE (E[9]) -- Aguarda start de Folge --

J P[2] 100% CNT0 ACC100 ZEIT VOR 0.00sek, P-SPS


1: FB-PSPS (AN)
2: A[15] = (AUS)
3: AUFRUF MAKRO050
4: FB-PSPS (E[14] & M[95])

J P[3] 100% CNT0 ACC100 ZEIT VOR 0.00sek, P-SPS


1: FB-PSPS (AN)
2: A[17] = (AN) -- Robô está na posição de manutenção --
3: WARTE (E[17]) -- Quitt posição de manutenção --
4: A[17] = (AUS)
5: FB-PSPS (E[14] & M[95])

J P[4] 100% CNT0 ACC100 ZEIT VOR 0.00sek, P-SPS


1: FB-PSPS (AN)
2: A[14] = (AN) -- Último ponto --
3: A[15] = (AN) -- Posição básica --

Robotertechnik 20 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

4.6 Posição de Manutenção para robôs com mais de uma ferramenta

: WKZ_NUM=1 ~ WKZ 1 ativa


: TRAGLAST[1] ~ Dados de carga da Wzg-Nr.1 ativos
: BENUTZER_NUM=0 ~ Nullframe ativo

J P[1] 10% CNT0 ACC100 ZEIT VOR 0.00sek, P-SPS


1: A[15] = (AN) -- Robo no Ponto 0 --
2: A[16] = (AN) -- Robo na trajetória --
3: AUFRUF MAKRO000 -- Reset de Saídas e Flags --
4: WARTE (E[9]) -- Aguarda Start de Folge --

J P[2] 100% CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS


1: FB-PSPS (AN)
2: A[15] = (AUS)
3: FB-PSPS E[14] & M[95]
WENN (!E[777] & !E[801] & !E[132]), AUFRUF UP112 -- Conduzir para pos.de manutenção da garra --
WENN (E[777] + E[801] + E[132]), AUFRUF UP113 -- Conduzir para pos.de manutenção do EMZ1 --
LABEL[2] -- Marca de salto 2 --
WENN (F[78] + F[79]), AUFRUF UP101
WENN (F[298]), SPRUNG LABEL[2] -- Salto condicional --
E[877] ~ Meldung EMZ 1 „maximaler Kappenverschleiß“
E[801] ~ Meldung SST 1 „maximale Standmenge“

J P[3] 100% CNT0 ACC100 ZEIT VOR 0.00sek, P-SPS


1: FB-PSPS (AN)
2: A[14] = (AN) -- Último ponto --
3: A[15] = (AN) -- Pos. Básica --

Se não for selecionado nenhum dispositivo de processo para manutenção o EZ/SP é conduzido para a posição
de manutenção.
Em todas as situações deve-se garantir que após a troca de capas o robô parta para a fresagem.

Não é possível realizar um ponto de solda com capas sem fresar !!!

Robotertechnik 21 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

Exemplo da UP112

J P[1] 100% CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS


1: FB-PSPS (AN)
2:AUFRUF MAKRO050
3: FB-PSPS (E[14] & M[95])

J P[2] 100% CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS


1: FB-PSPS (AN)
2: F[281] = (AN) -- Refrigeração DESL --
3: F[64] = (AN) -- Pre-seleção alicate 1 --
4: F[65] = (AUS)
5: F[66] = (AUS)
6: F[67] = (AUS)
7: WENN ((E[777] + E[801] + E[132] + E[133] + !A[12])), SPRUNG LABEL[1]
8: A[17] = (AN) -- Posição de Manutenção --
9: GA[19] = 11 -- Dispositivo de processo para PLC --
10: WARTE (E[17])
11: LABEL[1]
12: A[17] = (AN) -- Posição de Manutenção --
13: WARTE (E[17])
14: WENN (E[132] & !E[133] & !E[134] & !E[135]), AUFRUF MAKRO081-- Trocar capas --
15: LABEL[2]
16: WARTE (!F[85] + E[26]) -- Sem falha de Geometria/Quit --
17: WENN (F[85]), AUFRUF MAKRO081
18: WENN (F[85]), SPRUNG LABEL[2]
19 A[17] = (AUS) -- Posição de Manutenção --
20: F[281] = (AUS) -- Refrigeração LIGA --
21: WARTE (!E[132] & !E[133] & !E[134] & !E[135]) -- Sem seleção de nr.de alicate --
22: FB-PSPS (E[14] & M[95])

J P[3] 100% CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS


1: FB-PSPS (AN)
2: F[298] = (AUS)
3: AUFRUF VW_USER(Basic1,EZSP,Nr1,ProgNr=31, , ,S-Punkt=31,,EIN/AUS=1)
4: WARTE 0.1(sec) -- Delay para solicitação de fresagem --
5: F[79] = ((E[786] & !E[788]) + (!E[788] & E[130])) -- Fresagem contínua --
6: F[78] = (E[788] & !F[79]) -- Fresagem inicial --
7: FB-PSPS (E[14] & E[24] & M[95])

J P[4] 100% CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS


1: FB-PSPS (E[14] & M[95])

Robotertechnik 22 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

Exemplo da UP113

J P[1] 100% CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS


1: FB-PSPS (AN)
2:AUFRUF MAKRO050
3: FB-PSPS (E[14] & M[95])

J P[2] 100% CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS


1: FB-PSPS (AN)
2: F[281] = (AN) -- Refrigeração DESL --
3: F[64] = (AN) -- Pre-seleção alicate 1 --
4: F[65] = (AUS)
5: F[66] = (AUS)
6: F[67] = (AUS)
7: WENN ((E[777] + E[801] + E[132] + E[133] + !A[12])), SPRUNG LABEL[1]
8: A[17] = (AN) -- Posição de Manutenção --
9: GA[19] = 11 -- Dispositivo de processo para PLC --
10: WARTE (E[17])
11: LABEL[1]
12: A[17] = (AN) -- Posição de Manutenção --
13: WARTE (E[17])
14: WENN (E[132] & !E[133] & !E[134] & !E[135]), AUFRUF MAKRO081-- Trocar capas --
15: LABEL[2]
16: WARTE (!F[85] + E[26]) -- Sem falha de Geometria/Quit --
17: WENN (F[85]), AUFRUF MAKRO081
18: WENN (F[85]), SPRUNG LABEL[2]
19 A[17] = (AUS) -- Posição de Manutenção --
20: F[281] = (AUS) -- Refrigeração LIGA --
21: WARTE (!E[132] & !E[133] & !E[134] & !E[135]) -- Sem seleção de nr.de alicate --
22: FB-PSPS (E[14] & M[95])

J P[3] 100% CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS


1: FB-PSPS (AN)
2: F[298] = (AUS)
3: AUFRUF VW_USER(Basic1,EZSP,Nr1,ProgNr=31, , ,S-Punkt=31,,EIN/AUS=1)
4: WARTE 0.1(sec) -- Delay para solicitação de fresagem --
5: F[79] = ((E[786] & !E[788]) + (!E[788] & E[130])) -- Fresagem contínua --
6: F[78] = (E[788] & !F[79]) -- Fresagem inicial --
7: FB-PSPS (E[14] & E[24] & M[95])

J P[4] 100% CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS


1: FB-PSPS (E[14] & M[95])

Robotertechnik 23 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

4.7 UP para inspeção do TCP

!!! Nesta UP podem ser programados intertravamentos de robôs somente se não há solução construtiva
ou quando vários robôs compartilham um ponto de checagem !!!

!!! Esta UP é executada somente em modo manual no SmartPad ou chamada pelo IHM de acordo com
especificação do projeto !!!

Exemplo:

UP 206 -- UP para inspeção do TCP --

J P[2] 100% CNT0 ACC100 ZEIT VOR 0.00sek, P-SPS


1: FB-PSPS (E[14] & M[95])

-- Posicao Verificar TCP --


J P[4] 100% CNT0 ACC100 ZEIT VOR 0.00sek, P-SPS
1: FB-PSPS (AN)
2: WARTE (E[17]) -- Robo na posição de inspeção do TCP --
3: FB-PSPS (E[14] & M[95])

J P[6] 100% CNT0 ACC100 ZEIT VOR 0.00sek, P-SPS


1: FB-PSPS (E[14] & M[95])

Robotertechnik 24 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

4.8 Robô na área de manutenção

4.8.1 Programação do robô na área de manutenção


Especialmente em ilhas robotizadas podem ocorrer situações, em que a instalação está cheia ou um ou mais
robôs não podem depositar sua peça e por isso é impossível a seleção da Folge 124.
Com a finalidade de poder realizar trabalhos de manutenção em tais casos (Ex.: troca de capas), foi criada o
retroaviso “Robô em área de manutenção“.

Exemplo 1:

Situação „Instalação cheia“ com Garra:


Robô parado com peça na garra em frente ao dispositivo / transportador

J P[XY] 100% CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS


1: FB-PSPS (AN)
2: A[23] = (AUS)
3: LABEL[1] -- Marca de salto 1 --
4: A[18] = (AN) -- Robô na área de manutenção --
5: WARTE ((E[79] & !E[18]) + E[19]) -- LIB depositar peça Sel. Manutenção –
!!! Mais uma associação „OU“nesta posição não é permitida !!!
6: WENN (E[19]), SPRUNG LABEL[3] -- Salto se Manutenção --
7: WENN (E[79]), SPRUNG LABEL[2] -- Salto se lib. Depositar --
8: LABEL[3] -- Marca de salto 3 --
9: A[17] = (AN) -- Robô na posição de manutenção --
10: WARTE (E[17]) -- Espera Quit posição de manutenção --
11: A[17] = (AUS)
12: WARTE (!E[19]) -- NÃO Seleção Manutenção --
13: SPRUNG LABEL[1] -- Salto absoluto --
14: LABEL[2] -- Marca de salto 2 --
15: A[18] = (AUS)
16: WARTE (E[23])
17: A[23] = (AN)
18: FB-PSPS = (E[14] & E[24] & M[2] & M[32] & E[79])

Robotertechnik 25 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

Exemplo 2

Seguinte situação „Instalação cheia“ com Garra Kombi: (Troca de Capas)

Robô parado com peça na garra em frente ao dispositivo / transportador

Folge 1
J P[XY] 100% CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS
1: FB PSPS (AN)
2: A[23] = (AUS)
3: LABEL[1] -- Marca de salto 1 --
4: A[18] = (AN)
5: WARTE ((E[79] & !E[18]) + E[19]) -- LIB depositar peça ou Sel. Manutenção --
!!! Mais uma associação „OU“ nesta posição não é permitida !!!
6: WENN (E[19], SPRUNG LABEL[3] -- Salto se Manutenção --
7: WENN (E[79], SPRUNG LABEL[2] -- Salto se lib. Depositar --
8: LABEL[3] -- Marca de salto 3 --
9: A[17] = (AN)
10: GA[19] = 11 -- Dispositivo de processo para BMS --
11: F[281] = (AN) -- Refrigeração DESL --
12: WARTE (E[17])
13: F[64] = (AN) -- Pré-seleção EZ1/SP1 SZ1--
14: F[65] = (AUS)
15: F[66] = (AUS)
16: F[67] = (AUS)
17: LABEL[4]
18: WENN (E[132] & !E[133] & !E[134] & !E[135] & E[17), AUFRUF MAKRO081-- Troca de capas --
19: WENN (F[85]), SPRUNG LABEL[4] + Cursos de inserção --
20: A[17] = (AUS)
21: WARTE (!E[19]) -- NÃO Seleção Manutenção --
22: SPRUNG LABEL[1] -- Salto absoluto --
23: LABEL[2] -- Marca de salto 2 --
24: A[18] = (AUS)
25: F[281] = (AUS) -- Refrigeração LIGA --
26: WARTE (E[23] & !E[132] & !E[133] & E[134] & !E[135])
27: A[23] = (AN)
28: FB PSPS (E[14] & E[24] & M[2] & M[32] & M[95] & E[79])

Robotertechnik 26 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

Exemplo 3

Seguinte situação „Instalação cheia“ com Garra e alicate estacionário: (Troca de capas)

Para o caso em que a fresagem contínua pode ser iniciada neste momento de forma condicional a
mesma deve ser previamente finalizada na seleção da posição de manutenção!!

Robô parado com peça na garra em frente ao dispositivo / transportador

Folge 1

J P[XY] 100% CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS


1: FB-PSPS (AN)
2: LABEL[1] -- Marca de salto 1 --
3: A[18] = (AN) -- Robô na área de manutenção --
4: WARTE ((E[79] & !E[18]) + E[19]) -- LIB depositar peça ou Sel. Manutenção –
!!! Eine weitere „oder“ Verknüpfung ist an dieser Stelle nicht erlaubt !!!
5: WENN (E[19]), SPRUNG LABEL[3] -- Salto se Manutenção --
6: WENN (E[79]), SPRUNG LABEL[2] -- Salto se lib. Depositar --
7: LABEL[3] -- Marca de salto 3 --
8: WENN ((F[78] + F[79]), AUFRUF MAKRO084
9: A[17] = (AN) -- Robô na posição de manutenção --
10: GA[19] = 11 -- Dispositivo de processo para BMS --
11: F[281] = (AN) -- Refrigeração DESL --
12: WARTE (E[17]) -- Quitar posição de manutenção --
13: F[64] = (AN) -- Pré-seleção EZ1/SP1 SZ1 --
14: F[65] = (AUS)
15: F[66] = (AUS)
16: F[67] = (AUS)
17: LABEL[4] ~ Sprungmarke 4
18: WENN (E[132] & !E[133] & !E[134] & !E[135] & E[17), AUFRUF MAKRO081-- Troca de capas --
19: WENN (F[85]), SPRUNG LABEL [4] + Cursos de inserção --
20: F[87] = (AUS)
21: AUFRUF VW_USER(Basic1,EZSP,Nr1,ProgNr=31, , ,S-Punkt=31, ,EIN/AUS=1)
22: F[79] = ((!E[788] & E[130]) + (!E[786] & !E[788] & F[87]))
23: F[78] = (E[788] & !F[79])
24: gA[2] = xy -- Valor de compensação (Alicate com compensação)--
25: WENN (F[78] + F[79]), AUFRUF MAKRO085 -- Liberação fresagem de capas estacionária --
26: WENN (F[78] + F[79]), AUFRUF MAKRO084 -- Reset liberação de fresagem de capas --
27: WARTE (M[96] & !E[132]) -- Fresadora de capas na posição básica --
28: A[17] = (AUS)
29: WARTE (!E[19]) -- NÃO Seleção Manutenção --]
30: SPRUNG LABEL [1] -- Salto absoluto --
31: LABEL[2] -- Marca de salto 2 --
32: A[18] = (AUS) -- Robô na área de manutenção --
33: WARTE (!E[132])
34: FB-PSPS = (E[14] & E[24] & E[79] & M[2] & M[12] & M[95] & M[96])

Robotertechnik 27 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

4.8.2 Programação de área de manutenção com chamada de UP

Seguinte situação „Instalação cheia“ com Garra Kombi:

Exemplo:

Robô parado com peça na garra em frente ao dispositivo / transportador

Folge 1

LBL[1]
J P[G] 100% CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS
1: FB-PSPS (AN)
2: A[23] = (AUS) -- Liberar grade de proteção --
3: A[18] = (AN) -- Robô na área de manutenção --
4: WARTE ((E[79] & !E[18]) + E[19]) -- LIB depositar peça Sel. Manutenção --
!!! Eine weitere „oder“ Verknüpfung ist an dieser Stelle nicht erlaubt !!!
5: A[18] = (E[19]) -- Robô na área de manutenção --
6: WARTE (E[23])
7: A[23] = (AN) -- Grade de proteção bloqueada --
8: FB-PSPS = (E[14] & E[24] & (E79 + E[19]) & M[2] & M[32] & M[95])
WENN (E19), AUFRUF UP701 -- Conduzir EZ1/SP1 SZ1 para área de manutenção --
IF (A18), JMP LBL[1]

Robotertechnik 28 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

UP 701
J P[1] 100% CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS
1: FB-PSPS (AN)
2:AUFRUF MAKRO050
3: A[18] = (AN) -- Robô na área de manutenção --
4: FB-PSPS (E[14] & E[24] & M[2] & M[32] & M[95])

J P[2] 100% CNT100 ACC100 ZEIT VOR 0.0sek, P-SPS


1: FB-PSPS (E[14] & E[24] & M[2] & M[32] & M[95])

Wartungsbereich

J P[5] 100% CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS


1: FB-PSPS (AN)
2: A[23] = (AUS) -- Liberar grade de proteção --
3: A[17] = (AN) -- Robô na área de manutenção --
4: GA[19] = 11 -- Dispositivo de processo para BMS --
5: WARTE (E[17])
6: F[281] = (AN) -- Refrigeração DESL --
7: F[64] = (AN) -- Pré-seleção Alicate 1 --
8: F[65] = (AUS)
9: F[66] = (AUS)
10: F[67] = (AUS)
11: WENN (E[132] & !E[133] & !E[134] & !E[135]), AUFRUF MAKRO081-- Trocar capas --
12: LABEL[1]
13: WARTE (!F[85] + E[26]) -- Sem falha de geometria/Quit --
14: WENN (F[85]), AUFRUF MAKRO081
15: WENN (F[85]), SPRUNG LABEL[1]
16: F[281] = (AUS)
17: A[17] = (AUS) -- Robô na área de manutenção --
18: WARTE (!E[19]) -- NAO Seleção manutenção--
19: WARTE (E[23])
20: A[23] = (AN) -- Grade de proteção bloqueada --
21: FB-PSPS (E[14] & E[24] & M[2] & M[32] & M[95])

J P[8] 100% CNT100 ACC100 ZEIT VOR 0.0sek, P-SPS


1: FB-PSPS (E[14] & E[24] & M[2] & M[32] & M[95])

J P[9] 100% CNT100 ACC100 ZEIT VOR 0.0sek, P-SPS


1: FB-PSPS (E[14] & E[24] & M[2] & M[32] & M[95])

Robotertechnik 29 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

4.8.3 Mover para posição de manutenção da ferramenta do robô

Folge 124

J P[1] 100% CNT0 ACC100 ZEIT VOR 0.0sek, P-SPS


1: A[15] = (AN) -- Posição básica --
2: AUFRUF MAKRO000
3: WARTE E[9]

J P[2] 100% CNT0 ACC100 ZEIT VOR 0.0sek, P-SPS


1: FB PSPS (AN)
2: A[15] = (AUS)
3: F[940] = (E[20] & E[121] -- Mover para pos.troca de ferramenta 1 GARRA --
4: F[941] = (E[20] & E[132] -- Mover para pos.troca de ferramenta 2 EZ1/SP1 SZ1 --
5: F[942] = (E[21] & E[132] -- Mover p/ Verificação TCP 1 EZ1/SP1 SZ1 --
6: FB PSPS (E[14]) (Projeto específico!)
WENN (F[940]), AUFRUF UP201 -- Mover para pos.troca de ferramenta 1 GARRA --
WENN (F[941]), AUFRUF UP202 -- Mover para pos.troca de ferramenta 2 EZ1/SP1 SZ1 --
WENN (F[942]), AUFRUF UP206 -- Mover p/ Verificação TCP 1 EZ1/SP1 SZ1 --
(Projeto específico!)

J P[4] 100% CNT0 ACC100 ZEIT VOR 0.0sek, P-SPS


1: FB-PSPS (AN)
2: A[14] = (AN) -- Último ponto --
3: A[15] = (AN) -- Posição básica --

UP 201

J P[1] 100% CNT0 ACC100 ZEIT VOR 0.0sek, P-SPS


1: FB PSPS (E[14])

J P[2] 100% CNT0 ACC100 ZEIT VOR 0.0sek, P-SPS


1: FB PSPS (E[14])

J P[1] 100% CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS


1: FB PSPS (AN)
2: A[17] = (AN)
3: WARTE (E[17]) -- Robô está na pos.de manutenção --
4: A[17] = (AN)
5: FB PSPS (E[14])

4: PTP VB=100% VE=0% ACC=100% RobWzg=1 SPSTrig=0[1/100s]


1: FB PSPS (E[14])

A posição de troca de ferramenta deve ser selecionada, de forma que o robô permaneça posicionado com a
ferramenta sobre a estação de troca de ferramenta.

!!! Nesta UP podem ser programados intertravamentos de robôs somente se não há solução construtiva
ou quando vários robôs compartilham um ponto de troca !!!

Robotertechnik 30 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

4.8.4 Anunciar dispositivos de processo no PLC

Com o auxílio da saída binaria 19 é informado ao PLC qual dispositivo de processo encontra-se na posição de
manutenção.

Exemplo:

A[17] = (EIN) -- Robô está na pos. de manut. --


gA[19] = 11 -- EZ1/SP1 SZ1 está na pos. de manut. --
ou
gA[19] = 51 -- EZ2/SP2 SZ1 está na pos. de manut.

A visão geral dos números de dispositivos de processo encontra-se na documentação


Konzernstandard
KS_Parte_5_1_1_ROB-SLAVE_BASICO_pt-BR.pdf
Capítulo 4. números de dispositivos de processo

Robotertechnik 31 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

4.9 Programação da Folge125

Exemplo:

: WKZ_NUM=1 -- WKZ 1 está ativa


: BENUTZER_NUM=0 -- Nullframe está ativo
: TRAGLAST[1] -- Dados de carga da Wzg-Nr.1 ativos
J P[1] 10% CNT0 ACC100 ZEIT VOR 0.0sek, P-SPS
1: WENN A[12], AUFRUF MAKRO998 -- Cancelar simulação de E/S --
2: A[15] = (AN) -- Posição básica --
3: A[16] = (AN) -- Robô na trajetória --
4: AUFRUF MAKRO000 -- Reset de Saídas e Flags --
5: WARTE (E[9]) -- Aguarda Start de Folge --

J P[2] 100% CNT0 ACC100 ZEIT VOR 0.0sek, P-SPS


1: FB-PSPS (AN)
2: A[15] = (AUS)
3: A[14] = (AN)
4: A[15] = (AN)

Robotertechnik 32 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

4.10 Programação da Makro50

Se forem necessárias Marcas para consulta de controle de peça, então deve se utilizar as Marcas 1 -16.
As Marcas M[31] até M[68] devem ser definidas na Makro50 mesmo que não sejam empregadas.

Exemplo:
1: M[31]=(AUS)
2: M[32]=(AUS)
3: M[33]=(AUS)
4: M[34]=(AUS)
5: M[35]=(AUS)
6: M[36]=(AUS)
7: M[37]=(AUS)
8: M[38]=(AUS)
9: M[39]=(AUS)
10: M[40]=(AUS)
11: M[41]=(AUS)
12: M[42]=(AUS)
13: M[43]=(AUS)
14: M[44]=(AUS)
15: M[45]=(AUS)
16: M[46]=(AUS)
17: M[47]=(AUS)
18: M[48]=(AUS)
19: M[49]=(AUS)
20: M[50]=(AUS)
21: M[51]=(AUS)
22: M[52]=(AUS)
23: M[53]=(AUS)
24: M[54]=(AUS)
25: M[55]=(AUS)
26: M[56]=(AUS)
27: M[57]=(AUS)
28: M[58]=(AUS)
29: M[59]=(AUS)
30: M[60]=(AUS)
31: M[61]=(AUS)
32: M[62]=(AUS)
33: M[63]=(AUS)
34: M[64]=(AUS)
35: M[65]=(AUS)
36: M[66]=(AUS)
37: M[67]=(AUS)
38: M[68]=(AUS)

Robotertechnik 33 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

39: M[95] = (E[705] & E[713] & E[714] & ((!E[715] & E[719]) + A[715] + (!A[4060] & E[719]))
& !E[773] & !E[779] & A[716]) -- Seguranças EZ1/SP1 --
40: M[81] = (E[537] & E[538] & !E[539]) -- Placa docking encaixada e travada --
41: F[283] = (E[547] & !E[551] & !E[555]) -- Utilidades Lig. Simulada, pois a Garra está acoplada no docking --
42: i[2] = 4 -- EZ1/SP1/PZ1 SZ1Rotações Fresagem inicial parte 1 --
43: i[3] = 4 -- EZ1/SP1/PZ1 SZ1Rotações Fresagem inicial parte 2 --
44: i[4] = 3 -- EZ1/SP1/PZ1 SZ1Rotações Fresagem contínua --
45: i[5] = 4 -- EZ2/SP2/PZ2 SZ1Rotações Fresagem inicial parte 1 --
46: i[6] = 3 -- EZ2/SP2/PZ2 SZ1Rotações Fresagem inicial parte 2 --
47: i[7] = 3 -- EZ2/SP2/PZ2 SZ1Rotações Fresagem contínua --
48: i[8] = 3 -- EZ1/SP1/PZ1 SZ2 (Docking) Rotações Fresagem inicial parte 1 --
49: i[9] = 4 -- EZ1/SP1/PZ1 SZ2 (Docking) Rotações Fresagem inicial parte 2 --
50: i[10] = 3 -- EZ1/SP1/PZ1 SZ2 (Docking) Rotações Fresagem contínua --

Chamada de Makro:
CHAMADA MAKRO057 Chamada Makro 57 „Seleções diversas“

Robotertechnik 34 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

Para o caso em que mais do que 30 Marcas devam ser utilizadas, vale a seguinte regra:

• Simultaneamente podem ser ativados somente 60 Marcas


• A Makro50 deve sempre existir
• Distribuição das Marcas de acordo com a sequencias dos modelos utilizados

Tipo 1 -- Makro51
Tipo 2 -- Makro52
Tipo 3 -- Makro53
Tipo 4 -- Makro54

Robotertechnik 35 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

4.11 Programação da função “Parada no fim do ponto / Grade de proteção bloqueada”

Esta função deve ser programada em cada ponto de parada exata do respectivo programa do robô (Folge e/ou
UP).
Esta função não deve ser chamada no primeiro e no último ponto de uma Folge de trabalho!

4.12 Programação do aviso de Trabalho Pronto

O aviso de Trabalho Pronto deve ser programado, via de regra após o último ponto de solda em operações
de solda e da mesma forma para operações de manipulação.
Em uma programação do robô para serviço de solda deve-se programar o aviso de Trabalho Pronto como se
segue:

Exemplo:

Com SK1

J P[T] 100% CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS, WKZ_Offset[PR1]


1: FB-PSPS (AN)
2: A[23] = (AUS) -- Lib.grade de proteção --
3: WARTE (!E[16] & E[23]) -- Para p/ corrigir --
4: AUFRUF VW_USER (Basic1,EZSP,Nr1,ProgNr,Offset,Weg,S-Punkt,Fzg_Typ,EIN)
5: Warte (!E[129] + E[26]) -- Com estrutura de força --
6: AUFRUF MAKRO080 -- Soldar --
7: WARTE (!E[145]) -- Com solda SK1 --
8: WENN (!E[145]), AUFRUF MAKRO001 -- Aviso de pronto se “Com Solda”--
9: WARTE (E[23]) -- Lib.de arranque do PLC --
10: A[23] = (AN) -- Grade de proteção bloq.--
11: FB-PSPS (E[14] & E[24] & E[80] & M[95])

J P[W] 100% CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS, WKZ_Offset[PR1]


1: FB-PSPS (AN)
2: A[23] = (AUS) -- Lib.grade de proteção --
3: WENN (!E[145] &!E[14]), AUFRUF MAKRO015 -- FK Total --
4: WARTE (E[23]) -- Lib.de arranque do PLC --
5: A[23] = (AN) -- Grade de proteção bloq.--
6: FB-PSPS (E[14] & E[24] & E[80] & M[95])

A Makro15 (Pronto de trabalho geral) deve ser chamada somente na Folge !!!

Robotertechnik 36 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

4.13 Programação das UP´s

4.13.1 Alicates, garras, liberações e Marcas


Todas as garras e aliocates utilizados devem ser conduzidas na posição de modo definido no início da Folge
e/ou no início de UPs e a posição precisa ser verificada. A fim de evitar problemas na seleção manual de
programas (Trockenlauf), devem ser programadas novamente no início de todas UP’s todos os sinais de
liberações que constam em sinal “1” e as definições das Marcas (Makro50).

4.13.2 Primeiro e último ponto


Pontos iniciais e finais de UPs podem ser programados com CNT100 desde que possuam coordenadas
diferentes.

4.13.3 Chamada de UPs

Para chamadas condicionais de UPs é obrigatório considerar o exemplo a seguir. Além disso, deve certificar-se
que o programa principal (Folge) possa tanto avançar quanto retroceder mesmo sem a chamada da UP!

J P[X] 100% CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS


1: FB-PSPS (AN)
2: A[23] = (AUS) -- Liberar Grade de Proteção --
3: WARTE (E[78] + E[79] + E[80])
4: F[930] = (E[78] & !E[79] & !E[80])
5: F[931] = (!E[78] & E[79] & !E[80])
6: F[932] = (!E[78] & !E[79] & E[80])
7: WARTE (F[930] + F[931] + F[932])
8: WARTE (E[23]) -- Liberação de aranque do PC --
9: A[23] = (AN) -- Grade de Proteção bloqueada --
10: FB-PSPS (E[14] & E[24] & M[95])
WENN (F[930]), AUFRUF UP001
WENN (F[931]), AUFRUF UP002
WENN (F[932]), AUFRUF UP003

Para o caso em que Flags são formados em UPs, e em seguida, são novamente empregados em Folges para
chamadas condicionais de UPs, deve-se obrigatoriamente usar os Flags 930 – 959!
Esta área de Flags é estática e, portanto é excluida do DryRun!!!

Robotertechnik 37 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

4.13.4 Chamada de UP com Überschleif


UPs podem ser conduzidas nas Folges com Überschleif. Deve-se contudo ser observado que os pontos no
espaço do salto da FOLGE, o primeiro ponto da UP, o último ponto da UP e o ponto de de salto devolta na
FOLGE não podem estar nas mesmas coordenadas.

Exemplo:

Folge1:
: WKZ_NUM=1 -- WKZ 1 está ativa
: TRAGLAST[1] -- Dados de carga da Wzg-Nr.1 ativos
: BENUTZER_NUM=0 -- Nullframe está ativo
J P[1] 10% CNT0 ACC100 ZEIT VOR 0.0sek, P-SPS
1: WENN A[12], AUFRUF MAKRO998 --Cancelar simulação de E/A’s --
2: A[15] = (AN) -- Robo no Punto 0 --
3: A[16] = (AN) -- Robo na trajetória --
4: AUFRUF MAKRO000 -- Reset de Saídas e Flags --
5: WARTE (E[9]) -- Aguarda Start de Folge --
J P[2] 100% CNT0 ACC100 ZEIT VOR 0.0sek, P-SPS
1: FB-PSPS (AN) -- Condições de avanço online desligadas --
2: A[23] = (AUS) -- Liberar grade de proteção --
3: TIMER[1]=RESET -- Reset temporizador para medição de tacto --
4: TIMER[1]=START -- Start temporizador para medição de tacto --
5: AUFRUF MAKRO50 -- Inicialização de marcas --
6: WARTE (E[23]) -- Lliberação de avanço do PLC --
7: A[23] = (AN) -- Grade de proteção bloqueada --
8: FB-PSPS (E[14] & E[24])
J P[3] 100% CNT100 ACC100 ZEIT VOR 0.0sek, P-SPS
AUFRUF UP001
UP1:
J P[1] 100% CNT100 ACC100 ZEIT VOR 0.0sek, P-SPS
1: WENN (!A[12] + F[314] + F[315] + F[316] + F[317]), AUFRUF MAKRO050
2: FB-PSPS (E[14] & E[24])
J P[2] 100% CNT100 ACC100 ZEIT VOR 0.0sek, P-SPS
J P[3] 100% CNT100 ACC100 ZEIT VOR 0.0sek, P-SPS

Folge1:
J P[4] 100% CNT100 ACC100 ZEIT VOR 0.0sek, P-SPS
AUFRUF UP002

UP2:
J P[1] 100% CNT100 ACC100 ZEIT VOR 0.0sek, P-SPS
1: WENN (!A[12] + F[314] + F[315] + F[316] + F[317]), AUFRUF MAKRO050
2: FB-PSPS (E[14] & E[24])

J P[2] 100% CNT100 ACC100 ZEIT VOR 0.0sek, P-SPS


J P[3] 100% CNT100 ACC100 ZEIT VOR 0.0sek, P-SPS

Folge1:
J P[7] 100% CNT100 ACC100 ZEIT VOR 0.0sek, P-SPS

Robotertechnik 38 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

4.14 Programação de intertravamentos

4.14.1 Intertravamento Robô  Robô

De forma padronizada, estão disponíveis por Robô, 16 comandos de intertravamento, os quais estão atribuídos às
entradas e saídas de forma fixa. A respectiva entrada de intertravamento deve ser obrigatoriamente verificada na
condição de avanço online.

Exemplo de programação de intertravamento de robô:

J P[1] 100% CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS


1: FB-PSPS (AN)
2: A[16] = (AN) -- Robô na trajetória --
3: A[23] = (AUS) -- Liberar Grade de Proteção --
4: TIMER[3] = RESET -- Start medição de tacto --
5: TIMER[3] = START
6: AUFRUF MAKRO050 -- Inicialização de marcas --
7: A[81] = (AN) -- Solicit. Intertravamento 1 --
8: A[82] = (AN) -- Solicit. Intertravamento 2 --
9: A[83] = (AN) -- Solicit. Intertravamento 3 --
10: AUFRUF MAKRO020 -- Ativar Intertravamentos do Robô --
11: WARTE (E[23]) -- Sem solicitação de acesso --
12: A[23] = (AN) -- Grade de Proteção bloqueada--
13: FB-PSPS (E[14] & E[24] & E[41] & E[42] & E[43] & E[80] & M[95])

A Makro 20 deve ser obrigatoriamente chamada no mesmo ponto onde a solicitação de intertravamento é feita!!!

Robotertechnik 39 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

J P[16] 100% CNT100 ACC100 ZEIT VOR 0.00sek, P-SPS


1: FB-PSPS (E[14] & E[24] & E[41] & E[43] & E[80] & M[95])

4.14.2 Intertravamento Robô  Instalações / Ferramenta

Exemplo 1:

Depositar uma peça no dispositivo

J P[16] 100% CNT0 ACC100 ZEIT VOR 0.00sek, P-SPS


1: FB-PSPS (AN)
2: A[23] = (AUS) -- Grade de Proteção bloqueada --
3: A[80] = (AN) -- Liberação de ferramenta 1 Robô > Instalação --
4: WARTE (E[80]) -- OP05 pronta para depositar peça --
5: A[80] = (AUS) -- Desl. liberação de área OP05 --
6: WARTE (E[23]) -- Sem solicitação de acesso --
7: A[23] = (AN) -- Liberar Grade de Proteção --
8: FB-PSPS (E[14] & E[24] & E[80] & M[12] & M[95])

J P[17] 100% CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS


1: FB-PSPS (AN)
2: A[23] = (AUS) -- Grade de Proteção bloqueada --
3: WARTE (!E[16] & E[23]) -- Parada para correcão --
4: F[1] = (AN) -- Sel. Grupo de Grampos 1 --
5: AUFRUF MAKRO342 -- Garra grupo de grampos 1 abrir--
6: A[79] = (AN) -- Peça depositada na OP05 LIB para fechar grampo --
7: WARTE (E[79]) -- Liberação sair da OP05 --
8: A[79] = (AUS) -- Liberação de ferramenta 2 Robô > Instalação --
9: WARTE (E[23]) -- Liberar Grade de Proteção --
10: A[23] = (AN)
11: FB-PSPS (E[14] & E[24] & E[80] & M[12] & M[95])

J P[18] 100% CNT100 ACC100 ZEIT VOR 0.00sek, P-SPS


1: FB-PSPS (E[14] & E[24] & E[80] & M[12] & M[95])

J P[19] 100% CNT100 ACC100 ZEIT VOR 0.00sek, P-SPS


1: A[80] = (AN) -- Liga liberação de área OP05 --
2: FB-PSPS (E[14] & E[24] & E[80] & M[12] & M[95]) -- Garra aberta e controle de peça não ocupado --

Robotertechnik 40 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

Exemplo 2:

Depositar três peças no dispositivo

Perfil livre OP XY depositar desliga (A80)


M[1] = Peça 1 inexistente
M[2] = Peça 1 existente
M[3] = Peça 2 inexistente
M[4] = Peça 2 existente
M[5] = Peça 3 inexistente
M[6] = Peça 3 existente
M[30] = E14 & E24

J P[1] 100% CNT100 ACC100 ZEIT VOR 0.00sek, P-SPS


1: WENN A[12], AUFRUF MAKRO998 -- Cancelar simulação de E/S --
2: FB-PSPS (AN) -- Condição de avanço online desligada --
3: A[16] = (AN) -- Robô na trajetória --
4: A[23] = (AUS) -- liberar Grade de proteção --
5: TIMER[3] = RESET
6: TIMER[3] = START -- Iniciar medição de ciclo da UP --
7: AUFRUF MAKRO050 -- Inicialização de Marcas --
8: A[41] = (AN) -- Liberação de posição1 para Robô B --
9: A[80] = (AN) -- Perfil livre área OPXXX --
10: F[1] = (AN) -- Pré-seleção Grupo de grampos 1 --
11: F[2] = (AN) -- Pré-seleção Grupo de grampos 2 --
12: F[3] = (AN) -- Pré-seleção Grupo de grampos 3 --
13: AUFRUF MAKRO343 -- Garra fechar --
14: AUFRUF MAKRO340 -- Garra inicializar --
15: WARTE (E[80]) -- Espera até liberação OP XY --
16: A[80] = (AUS) -- Perfil livre DESL --
17: A[81] = (AN) -- Solicit. Intertravamento 1 --
18: AUFRUF MAKRO020
19: WARTE (E[23]) -- Liberação de avanço do PLC --
20: A[23] = (AN) -- Grade de proteção bloqueada --
21: FB-PSPS = (M[30] & E[41] & E[80] & M[2 ]& M[4]& M[6] & M[32] & M[34] & M[36])

J P[2] 100% CNT100 ACC100 ZEIT VOR 0.00sek, P-SPS


1: FB-PSPS = (M[30] & E[41] & E[80] & M[2 ]& M[4]& M[6] & M[32] & M[34] & M[36])

J P[3] 100% CNT100 ACC100 ZEIT VOR 0.00sek, P-SPS


1: FB-PSPS = (M[30] & E[41] & E[80] & M[2 ]& M[4]& M[6] & M[32] & M[34] & M[36])

Robotertechnik 41 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

Pos. depositar reforço do espelho (A79) na OP XY


Aviso de trabalho pronto 1 LIGA

L P[4] 1500mm/sek CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS Offset, PR[i[100]]
1: FB-PSPS (AN)
2: A[23] = (AUS) -- Liberar Grade de proteção --
3: WARTE (!E[16] & E[23])
4: A[79] = (AN) -- Na Posição Depositar Parte 1 --
5: F[1] = (AN) -- Pré-seleção Grupo de grampos 1 --
6: AUFRUF MAKRO342 -- Garra ABRIR --
7: AUFRUF MAKRO001 -- Aviso de trabalho pronto 1 Parte 1 depositar --
8: WARTE E[79] -- Espera até liberação de saída --
9: A[79] = (AUS) -- Aviso de posição DESL.--
10: Warte (E[23]) -- Lib.de arranque do PLC --
11: A[23] = (AN) -- Grade de proteção bloqueada --
12: FB-PSPS = (M[30] & E[41] & E[80] & M[2 ]& M[4]& M[6] & M[32] & M[34] & M[36])

J P[5] 100% CNT100 ACC100 ZEIT VOR 0.00sek, P-SPS


1: FB-PSPS = (M[30] & E[41] & E[80] & M[2 ]& M[4]& M[6] & M[32] & M[34] & M[36])

J P[6] 100% CNT100 ACC100 ZEIT VOR 0.00sek, P-SPS


1: FB-PSPS = (M[30] & E[41] & E[80] & M[2 ]& M[4]& M[6] & M[32] & M[34] & M[36])

Pos. depositar vão da janela (A78) na OP XY


Aviso de trabalho pronto 2 LIGA

L P[7] 1500mm/sek CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS Offset, PR[i[100]]
1: FB-PSPS (AN)
2: A[23] = (AUS) -- Liberar Grade de proteção --
3: WARTE (!E[16] & E[23])
4: A[78] = (AN) -- Na Posição Depositar Parte 2 --
5: F[2] = (AN) -- Pré-seleção Grupo de grampos 2 --
6: AUFRUF MAKRO342 -- Garra ABRIR --
7: AUFRUF MAKRO -- Aviso de trabalho pronto 2 peça 2 depositar --
8: WARTE (E[78]) -- Espera até liberação de saída --
9: A[78] = (AUS) -- Aviso de posição DESL.--
10: WARTE (E[23]) -- Lib.de arranque do PLC --
11: A[23] = (AN) -- Grade de proteção bloqueada --
12: FB-PSPS = (M[30] & E[41] & E[80] & M[2 ]& M[4]& M[6] & M[32] & M[34] & M[36])

J P[8] 100% CNT100 ACC100 ZEIT VOR 0.00sek, P-SPS


1: FB-PSPS = (M[30] & E[41] & E[80] & M[2 ]& M[4]& M[6] & M[32] & M[34] & M[36])

J P[9] 100% CNT100 ACC100 ZEIT VOR 0.00sek, P-SPS


1: FB-PSPS = (M[30] & E[41] & E[80] & M[2 ]& M[4]& M[6] & M[32] & M[34] & M[36])

J P[10] 100% CNT100 ACC100 ZEIT VOR 0.00sek, P-SPS

Robotertechnik 42 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

De forma padronizada, estão disponíveis por Robô 24 liberações de posição, os quais estão atribuídos às
entradas e saídas de forma fixa.
Caso o robô trabalhe com várias operações, as liberações de ferramentas Robô   Instalações devem ser
programadas em áreas.

Exemplo:

Robotertechnik 43 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

4.15 Programação de um movimento linear com ciclo de busca (Suchlauf)

4.15.1 Ciclo de busca sem deslocamento de base

Para o Suchlauf sem deslocamento de Base estão disponíveis os seguintes programas de sistema:
ATENÇÃO: nestes programas com robôs FANUC deve-se sempre distinguir se o robô está sobre uma unidade
linear ou não!

SUCHL001 – SUCHL010 1 Sensor de distancia e 1 Sensor de aproximação


SUCHL011 – SUCHL020 1 Sensor de distancia e 2 Sensores de aproximação

Exemplo:

: WKZ_NUM=1 -- WKZ 1 está ativa


: BENUTZER_NUM=0 -- Nullframe está ativo
: TRAGLAST[1] -- Dados de carga da Wzg-Nr.1 ativos

J P[1] 10% CNT0 ACC100 ZEIT VOR 0.0sek, P-SPS


1: A[15] = (AN)
2: A[16] = (AN) -- Robô na trajetória --
3: AUFRUF MAKRO000 -- Reset E/S --
4: WARTE (E[9])

J P[C] 100% CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS


1: FB-PSPS (AN)
2: A[23] = (AUS) -- Liberar Grade de proteção --
3: A[80] = (AN) -- Liberação Grampos Abrir/Fechar --
4: A[41] = (AN) -- Liberação de Posição 1 para robô B --
5: A[15] = (AUS) -- Desligar Aviso „Pos.Básica“ --
6: F[1] = (AN) -- Pré-seleção Grupo de grampos 1 --
7: WENN (!M[31]), AUFRUF MAKRO342 -- Abrir Grampos --
8: AUFRUF MAKRO340 -- Garra INIT --
9: WARTE (M[31]) -- Consulta Garra aberta --
10: WARTE (E[23]) -- Liberação de arranque do PLC --
11: A[23] = (AN) -- Grade bloqueada --
12: FB-PSPS (E[14] & E[24] & E[80] & M[31] & M[81] & M[95])

!Suchlauf 1 remover Tunel OP20 ;


WENN (E[75] & M[31]),AUFRUF SUCHL001

L P[D] 100mm/sec CNT0 ACC100 ZEIT VOR 0.0sek, P-SPS


1: FB-PSPS (E[14] & E[24] & E[80] & M[32] & M[81] & M[95])

!!! Atenção !!!


Os pontos C e D devem permanecer nas mesmas coordenadas !!!
As E/S de ambos sensores devem ser definidas nos programas de Suchlauf correspondentes!!!!

Em tarefas de paletização deve-se preferencialmente utilizar a programação com a função de ciclo de busca
em vez de UPs!

Robotertechnik 44 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

Exemplo:
SUCHL001 Suchlauf sem deslocamento de Base:

!Suchlauf Nr.1 1 Sensor de Distancia / 1 Sensor de Aproximacao


! Sensor de Aproximacao com High Speed SKIP
!Sem deslocamento de Base
;
!Atencao definir Enderecos de E/S para
!Sensores de Distancia-Aproximacao !!!
;
!Definir Sensor de Distancia
SKIP CONDITION DI[4001]=ON
;
!Movimentar com controle de sensor de distancia
!Ponto deve ser conhecido !!!
L P[1:FN] 300mm/sec FINE Skip,LBL[1]
;
LBL[1]
! Definir Sensor de Aproximacao
SKIP CONDITION DI[4002]=ON
;
! Movimentar com controle de sensor de aproximacao
L P[1:FN] 20mm/sec FINE Skip,LBL[2],PR[60]=LPOS ACC100
;
LBL[2]
!Aguarda sinal de sensor de aproximacao
WAIT (DI[4002] OR DI[15])
;
!Define posicao
PR[60]=LPOS
;
!Condicao de espera adicional
WAIT (DI[3986] OR DO[12])
;
!Partir para posicao -- Area de usuario
L PR[60] 100mm/sec CNT0 ACC100 TB 0.1sec,P-SPS
1: TC_ONLINE (ON)
2: CALL MAKRO050
3: TC_ONLINE (DI[14] AND DI[24] AND M[31])
;
L PR[60] 100mm/sec CNT0 ACC100 TB 0.1sec,P-SPS
1: TC_ONLINE (ON)
2: F[1]=(ON)
3: CALL MAKRO343
4: WAIT (M[32])
5: TC_ONLINE (DI[14] AND DI[24] AND M[32])
;
! Condicao de espera adicional
WAIT (DI[3986] OR DO[12])

Robotertechnik 45 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

4.15.2 Ciclo de busca com deslocamento de base (Parte relativa do programa)


Para o Suchlauf sem deslocamento de Base estão disponíveis os seguintes programas de sistema:
ATENÇÃO: nestes programas com robôs FANUC deve-se sempre distinguir, se o robô está sobre uma
unidade linear ou não!

SUCHL021 – SUCHL030 1 Sensor de distancia e 1 Sensor de aproximação


SUCHL031 – SUCHL040 1 Sensor de distancia e 2 Sensores de aproximação

Exemplo:

: WKZ_NUM=1 -- WKZ 1 está ativa


: BENUTZER_NUM=0 -- Nullframe está ativo
: TRAGLAST[1] -- Dados de carga da Wzg-Nr.1 ativos

J P[1] 10% CNT0 ACC100 ZEIT VOR 0.0sek, P-SPS


1: A[15] = (AN)
2: A[16] = (AN) -- Robô na Trajetória --
3: AUFRUF MAKRO000 -- Reset E/S --
4: WARTE (E[9])

J P[C] 100% CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS


1: FB-PSPS (AN)
2: A[23] = (AUS) -- Liberar Grade de proteção --
3: A[80] = (AN) -- Liberação Grampos Abrir/Fechar --
4: A[41] = (AN) -- Liberação de Posição 1 para robô B --
5: A[15] = (AUS) -- Desligar Aviso „Pos.Básica“ --
6: F[1] = (AN) -- Pré-seleção Grupo de grampos 1 --
7: WENN (!M[31]), AUFRUF MAKRO342 -- Abrir Grampos --
8: AUFRUF MAKRO340 -- Garra INIT --
9: WARTE (M[31]) -- Consulta Garra aberta --
10: WARTE (E[23]) -- Liberação de arranque do PLC --
11: A[23] = (AN) -- Grade bloqueada --
12: FB-PSPS (E[14] & E[24] & E[80] & M[31] & M[81] & M[95])

!Suchlauf 1 remover Tunel OP20 ;


WENN (E[75] & M[31]),AUFRUF SUCHL021

L P[D] 100mm/sec CNT0 ACC100 ZEIT VOR 0.0sek, P-SPS


1: FB-PSPS (E[14] & E[24] & E[80] & M[32] & M[81] & M[95])

!!! Atenção !!!


Os pontos C e D devem permanecer nas mesmas coordenadas !!!
As E/S de ambos sensores devem ser definidas nos programas de Suchlauf correspondentes!!!!

Robotertechnik 46 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

Exemplo:
SUCHL021 Suchlauf com deslocamento de Base:

!Suchlauf Nr.21 1 Sensor de Distancia / 1 Sensor de Aproximacao


! Sensor de Aproximacao com High Speed SKIP
!Com deslocamento de Base
;
!Atencao definir Enderecos de E/S para
!Sensores de Distancia-Aproximacao !!!
;
R[100]=($MNUFRAMENUM[1])
UFRAME_NUM=0
;
!Definir Sensor de Distancia
SKIP CONDITION DI[4001]=ON
;
!Movimentar com controle de sensor de distancia
!Ponto deve ser conhecido !!!
L P[1:FN] 300mm/sec FINE Skip,LBL[1]
LBL[1]
PR[70]=LPOS
;
! Definir Sensor de Aproximacao
SKIP CONDITION DI[4002]=ON
;
! Movimentar com controle de sensor de aproximacao
L P[1 :FN] 20mm/sec FINE Skip,LBL[2],PR[70]=LPOS ACC100
;
LBL[2]
!Aguarda sinal de sensor de aproximacao
WAIT (DI[4002] OR DI[15])
;
!Define posicao
PR[70]=LPOS
;
!Define nova Base
UFRAME[20]=PR[70]
UFRAME_NUM=20
;
!Condicao de espera adicional
WAIT (DI[3986] OR DO[12])
;
! Area de usuario
L P[2] 100mm/sec CNT0 ACC100 TB 0.00sec,P-SPS
1: TC_ONLINE (ON)
2: CALL MAKRO050
3: TC_ONLINE (DI[14] AND DI[24] AND M[31])
;
L P[3] 100mm/sec CNT0 ACC100 TB 0.00sec,P-SPS
1: TC_ONLINE (DI[14] AND DI[24] AND M[31]) ;
;
L P[4] 100mm/sec CNT0 ACC100 TB 0.00sec,P-SPS
1: TC_ONLINE (DI[14] AND DI[24] AND M[31])
;

Robotertechnik 47 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

L P[5] 100mm/sec CNT0 ACC100 TB 0.00sec,P-SPS


1: TC_ONLINE (ON)
2: F[1]=(ON) ;
3: CALL MAKRO343 ;
4: WAIT (M[32]) ;
5: TC_ONLINE (DI[14] AND DI[24] AND M[32])
;
L P[6] 100mm/sec CNT0 ACC100 TB 0.00sec,P-SPS
1: TC_ONLINE (DI[14] AND DI[24] AND M[32])
;
! Condicao de espera adicional
WAIT (DI[3986] OR DO[12])
;
!Define Base Original;
UFRAME_NUM=R[100]

Robotertechnik 48 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

4.15.3 Delocamento de Base com movimento relativo


Para o Suchlauf sem deslocamento de Base estão disponíveis os seguintes programas de sistema:
ATENÇÃO: nestes programas com robôs FANUC deve-se sempre distinguir se o robô está sobre uma unidade
linear ou não!

SUCHL041 – SUCHL050 1 Sensor de distancia e 1 Sensor de aproximação


SUCHL051 – SUCHL060 1 Sensor de distancia e 2 Sensores de aproximação

Exemplo:

: WKZ_NUM=1 -- WKZ 1 está ativa


: BENUTZER_NUM=0 -- Nullframe está ativo
: TRAGLAST[1] -- Dados de carga da Wzg-Nr.1 ativos

J P[1] 10% CNT0 ACC100 ZEIT VOR 0.0sek, P-SPS


1: A[15] = (AN)
2: A[16] = (AN) -- Robô na Trajetória --
3: AUFRUF MAKRO000 -- Reset E/S --
4: WARTE (E[9])

J P[C] 100% CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS


1: FB-PSPS (AN)
2: A[23] = (AUS) -- Liberar Grade de proteção --
3: A[80] = (AN) -- Liberação Grampos Abrir/Fechar --
4: A[41] = (AN) -- Liberação de Posição 1 para robô B --
5: A[15] = (AUS) -- Desligar Aviso „Pos.Básica“ --
6: F[1] = (AN) -- Pré-seleção Grupo de grampos 1 --
7: WENN (!M[31]), AUFRUF MAKRO342 -- Abrir Grampos --
8: AUFRUF MAKRO340 -- Garra INIT --
9: WARTE (M[31]) -- Consulta Garra aberta --
10: WARTE (E[23]) -- Liberação de arranque do PLC --
11: A[23] = (AN) -- Grade bloqueada --
12: FB-PSPS (E[14] & E[24] & E[80] & M[31] & M[81] & M[95])

!Suchlauf 1 remover Tunel OP20 ;


WENN (E[75] & M[31]),AUFRUF SUCHL041

L P[D] 100mm/sec CNT0 ACC100 ZEIT VOR 0.0sek, P-SPS


1: FB-PSPS (E[14] & E[24] & E[80] & M[32] & M[81] & M[95])

!!! Atenção !!!


Os pontos C e D devem permanecer nas mesmas coordenadas !!!
As E/S de ambos sensores devem ser definidas nos programas de Suchlauf correspondentes!!!!

Robotertechnik 49 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

Exemplo:
SUCHL041 Suchlauf com movimento relativo:

!Suchlauf Nr.41 1 Sensor de Distancia / 1 Sensor de Aproximacao


! Sensor de Aproximacao com High Speed SKIP
!Com movimento relativo
;
UTOOL_NUM=1
UFRAME_NUM=1
PAYLOAD[1]
;
!PR Init
UNLOCK PREG
PR[81]=LPOS
PR[82]=LPOS
PR[83]=LPOS
!PR Rücksetzen
CALL PRNULL(81)
CALL PRNULL(82)
CALL PRNULL(83)
;
!Define Deslocamento 1 (X)
PR[GP1:81,1]= (0)
;
!Define Deslocamento 2 (Y)
PR[GP1:82,2]= (0)
;
!Define Deslocamento 3 (Z)
PR[GP1:83,3]= (0)
;
;
!Define Sensor de distancia
SKIP CONDITION DI[4001]=ON
;
!Movimenta com controle de sensor de distancia
!Ponto deve ser conhecido !!!
L P[1:FN] 300mm/sec FINE Skip,LBL[1]
LBL[1]
;
!Define Sensor de aproximacao
SKIP CONDITION DI[4002]=ON
;
!Movimenta com controle de sensor de aproximacao
L P[1:FN] 20mm/sec FINE Skip,LBL[2],PR[80]=LPOS ACC100
;
LBL[2]
!Aguarda sinal do sensor de aproximacao
WAIT (DI[4002] OR DI[15])
;
!Define posicao
PR[80]=LPOS
;
!Condicao de espera adicional
WAIT (DI[3986] OR DO[12])
;

Robotertechnik 50 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

!Executar deslocamento
!Movimentar Deslocamento 1
L PR[80] 100mm/sec CNT0 ACC100 TB 0.00sec,P-SPS Offset,PR[81]
1: TC_ONLINE (ON)
2: CALL MAKRO050
3: TC_ONLINE (DI[14] AND DI[24] AND M[31])
;
!Define posicao
PR[80]=LPOS
;
!Movimentar Deslocamento 2
L PR[80] 100mm/sec CNT0 ACC100 TB 0.00sec,P-SPS Offset,PR[82]
1: TC_ONLINE (DI[14] AND DI[24] AND M[31])
,
!Define posicao
PR[80]=LPOS
;
! Movimentar Deslocamento 3
L PR[80] 100mm/sec CNT0 ACC100 TB 0.00sec,P-SPS Offset,PR[83]
1: TC_ONLINE (ON)
2: F[1]=(ON)
3: CALL MAKRO343
4: WAIT (M[32])
5: TC_ONLINE (DI[14] AND DI[24] AND M[32])
;
! Condicao de espera adicional
WAIT (DI[3986] OR DO[12])

Robotertechnik 51 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

4.16 Programação de um monitoramento de torque intenso

Esta função deve ser obrigatoriamente ativada no depósito e retirada de peças de conteineres, bem como em
Buffers de peças.

Da mesma forma, pode ser usada para o abastecimento e retirada de estações críticas.

Para o monitoramento de torques intensos é empregado o comando „COL GUARD EINSTL = XY“. Valor
Standard = 100. Valores rasoáveis para o monitoramento estão na faixa <=180. O valor correto deve ser
determinado empiricamente. (Isto significa definir através de experiencia). Assim, inicia-se com o valor 180 e
reduzindo-se até o robô arrancar na sequencia sem mensagem de falha.

4.16.1 Programação da função Collision Guard


Exemplo:
: WKZ_NUM=1 -- WKZ 1 está ativa
: TRAGLAST[1] -- Dados de carga da Wzg-Nr.1 ativos
: BENUTZER_NUM=0 -- Nullframe está ativo
J P[1] 10% CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS
1: A[15] = (AN) -- Posição básica --
2: A[16] = (AN) -- Robô na trajetória --
3: AUFRUF MAKRO000 -- Reset de Saídas e Flags --
4: WARTE (E[9]) -- Aguarda Start de Folge --

COL GUARD EINSTL 100 -- Standard


J P[2] 100% CNT0 ACC100 ZEIT VOR 0.Exemplo
1: FB-PSPS (AN) -- Condição de arranque online desligada --
2: A[15] = (AUS) -- Desligar posição básica --
3: A[23] = (AUS) -- Liberar Grade de Proteção --
4: TIMER[1]=RESET -- Reset temporizador para medição do ciclo --
5: TIMER[1]=START -- Start temporizador para medição do ciclo --
6: AUFRUF MAKRO050 -- Inicialização de marcas --
7: A[80] = (AN) -- Liberação grampos Abrir/Fechar --
8: A[41] = (AN) -- Liberação 1 para robô B --
9: F[1] = (AN) -- Pré-seleção Grampos 1 --
10: F[2] = (AN) -- Pré-seleção Grampos 2 --
11: F[4] = (AN) -- Pré-seleção Grampos 4 --
12: WENN (E[510] + E[511]), AUFRUF MAKRO0342 -- Abrir Garra --
13: WARTE (M[11] & M[13] & M[17]) -- Checa se garra está ABERTA --
14: WARTE (E[23]) -- Liberação de arranque do PLC --
15: A[23] = (AN) -- Grade de Proteção bloqueada --
16: FB-PSPS (E[14] & E[24] & M[12] & M[14])

COL GUARD EINSTL 180 -- Ajuste fino


J P[X] 100% CNT0 ACC100 ZEIT VOR 0.00sek, P-SPS
1: FB-PSPS (AN) -- Condição de arranque online desligada --
2: A[23] = (AUS) -- Liberar Grade de Proteção --
3: WARTE E[23] -- Liberação de arranque do PLC --
4: A[23] = (AN) -- Grade de Proteção bloqueada --
5: FB-PSPS (E[14] & E[24] & M[12] & M[14])

COL GUARD END

Robotertechnik 52 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

4.16.2 Operação de torque


Exemplo:
: WKZ_NUM=1 -- WKZ 1 está ativa
: BENUTZER_NUM=0 -- Nullframe está ativo
: TRAGLAST[1] -- Dados de carga da Wzg-Nr.1 ativos
J P[1] 10% CNT0 ACC100 ZEIT VOR 0.00sek, P-SPS
1: A[15] = (AN) -- Posição básica --
2: A[16] = (AN) -- Robô na trajetória --
3: AUFRUF MAKRO000 -- Reset de Saídas e Flags --
4: WARTE (E[9]) -- Aguarda Start Folge --

J P[A] 100% CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS


1: FB-PSPS (AN) -- Liberação de avanço Online desligada --
2: A[23] = (AUS) -- Liberar Grade de Proteção --
3. WARTE (E[23]) -- Liberação de arranque do PLC --
4. A[23] = (AN) -- Grade de Proteção bloqueada --
5: FB-PSPS (E[14] & E[24] & E[80] & M[12] & M[14])

SOFTFLOAT[1] -- Ligar operação de torque --

J P[B] 100% CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS


1: FB-PSPS (AN) -- Liberação de avanço Online desligada --
2: A[23] = (AUS) -- Liberar Grade de Proteção --
3: A[79] = (AN) -- Robô no dispositivo GEO --
4: WARTE (E[79]) -- Liberação de partida --
5. WARTE (E[23]) -- Liberação de arranque do PLC--
6. A[23] = (AN) -- Grade de Proteção bloqueada--
7: FB-PSPS (E[14] & E[24] & E[80] & M[12] & M[14])

SOFTFLOAT END -- Desligar operação de torque --

J P[C] 100% CNT100 ACC100 ZEIT VOR 0.00sek, P-SPS


1: FB-PSPS (E[14] & E[24] & E[80] & M[12] & M[14])

Os valores par a Softfloat[x] são declarados no ponto de Menu:

MENUEINSTELLUNGENSOFTLOAT
Atenção: Os pontos A e B devem ser prgramados sobre as mesmas coordenadas !!!!!

Robotertechnik 53 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

4.17 Programação do Buffer de peças

Em buffers de peças nos quais não há possibilidade de utilizar a função do ciclo de busca, deve se utilizar a
seguinte diretriz de programação. Com isso é reduzida para a somente uma UP por pilha, a quantidade de
UP’s para empilhamento ou retirada.

Antes do 1º ponto da UP deve-se impreterivelmente chamar o Motion xxx para inicialização da paletização
da pilha em questão. Os registradores de posição para cada um dos compartimentos desta pilha sejam
pré-ocupados.
Na UP são programados os pontos que o deslocamento da base necessita com a chamada de registrador de
posição.

As posições de memória são alocadas nos registradores de posição 101 -170.


O contador i[101] é escrito com o número para o local de memória enviado pelo PLC sobre a entrada gE[20].
Sobre a saída binária gA[20] (para PLC) o número do compartimento é espelhado.

4.17.1 Visão geral registradores de posição:

Número Local de utilização Significado


MOTN101 –MOTN110, Compartimento 1 – 70
101 – 170
Usuário (Pilha 1 – 10)

4.17.2 Visão geral Programas MOTN

Número Local de utilização Significado


Compartimento Pilha 1
101 Usuário
(Inicialização Pilha 1 – 70)
Compartimento Pilha 2
102 Usuário
(Inicialização Pilha 1 – 70)
Compartimento Pilha 3
103 Usuário
(Inicialização Pilha 1 – 70)
Compartimento Pilha 4
104 Usuário
(Inicialização Pilha 1 – 70)
Compartimento Pilha 5
105 Usuário
(Inicialização Pilha 1 – 70)
Compartimento Pilha 6
106 Usuário
(Inicialização Pilha 1 – 70)
Compartimento Pilha 7
107 Usuário
(Inicialização Pilha 1 – 70)
Compartimento Pilha 8
108 Usuário
(Inicialização Pilha 1 – 70)
Compartimento Pilha 9
109 Usuário
(Inicialização Pilha 1 – 70)
Compartimento Pilha 10
110 Usuário
(Inicialização Pilha 1 – 70)

Robotertechnik 54 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

Exemplo:

: WKZ_NUM=1 -- WKZ 1 está ativa


: BENUTZER_NUM=1 -- Base 1 está ativa
: TRAGLAST[1] -- Dados de carga da Wzg-Nr.1 ativos
J P[1] 10% CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS
1: A[15] = (AN) -- Posição básica --
2: A[16] = (AN) -- Robô na trajetória --
3: AUFRUF MAKRO000 -- Reset de Saídas e Flags --
4: WARTE (E[9]) -- Aguarda Start Folge --

-- UP1 = Retirar peca da OP180 --


-- UP31 = Retirar peca do compartimento 1 ou 2 --
-- UP33 = Retirar peca do compartimento 3 ou 4 --
-- UP35 = Retirar peca do compartimento 5 ou 6 --

J P[2] 100% CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS


1: FB-PSPS (AN) -- Liberação de avanço Online desligada --
2: A[23] = (AUS) -- Liberar Grade de Proteção --
3: A[78] = (AN) -- Liberação de Ferramenta 3 Robô > Instalação --
4: !Perfil livre para OP180
5: A[80] = (AN) -- Liberação de Ferramenta 1 Robô > Instalação --
6: !Perfil livre para o buffer de peças
7: A[64] = (AN) -- Liberação medir / Pilha perfil livre --
8: WARTE (E[64]) -- Liberação Buffer e nr de .compartimento válido --
9: !Aguarda liberacao retirar peca OP180
10: WARTE (E[80] + E[64] + M[3])
11: A[80] = (AUS) -- Liberação de Ferramenta 1 Robô > Instalação
12: F[910] = (!E[80] & E[64])
13: F[911] = ((!E[80] & E[64] & E[57] & !E[58] & !E[59])
14: F[912] = (!E[80] & E[64] & !E[57] & !E[58] & !E[59])
15: WARTE (F[910] + F[911] + F[912] + (!M[2] & M[3]))
16: WARTE (E[23])
17: A[23] = (AN) -- Liberar Grade de Proteção –
18: FB-PSPS (E[14] & E[24])
WENN (F[910] & M[2] & !M[3]), AUFRUF UP001
WENN (F[911] & !F[912]), AUFRUF UP031
WENN (!F[911] & F[912]), AUFRUF UP032

Robotertechnik 55 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

4.17.3 UP sem deslocamento BASE_BASE


Exemplo UP31:

: WKZ_NUM=1 -- WKZ 1 está ativa


: BENUTZER_NUM=1 -- Base 1 está ativa
: TRAGLAST[1] -- Dados de carga da Wzg-Nr.1 ativos

: AUFRUF MOTN101 -- Registrador de posição-Inicialização (Pilha 1)--

J P[1] 100% CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS


1: FB-PSPS (AN) -- Liberação de avanço Online desligada --
2: A[16] = (AN) -- Robô na trajetória --
3: A[23] = (AUS) -- Liberar Grade de Proteção --
4: AUFRUF MAKRO050 -- Inicialização de Marcas --
5: WENN (gE[20] ≥1), F[921] = (AN) -- Checa se PLC Info Ok (min) --
6: WENN (gE[20] ≤6), F[922] = (AN) -- Checa se PLC Info Ok (min) --
7: gA[20] = gE[20] -- Retroaviso local de memória selecionado --
8: i[101]=(gE[3]+100) -- Registrador de posição a partir de 100 --
9: WARTE (E[23] & F[921] & F[922]) -- Aguarda liberação depositar na memória --
10: A[23] = (AN)
11: FB-PSPS (M[2] & M[4] & E[14] & E[24] & E[64] & F[921] & F[922])

Pontos sem Offset são programados com Joint !!

J P[2] 100% CNT100 ACC100 ZEIT VOR 0.00sek, P-SPS


1: FB-PSPS (E[14] & E[24] & E[64] & M[12])

J P[3] 100% CNT100 ACC100 ZEIT VOR 0.00sek, P-SPS


1: FB-PSPS (AN) -- Liberação de avanço Online desligada --
2: A[64] = (AUS) -- Liberar Medir / Perfillivre Pilha –
-- A partir daqui não são mais checadas as posições de memória --
3: FB-PSPS FB-PSPS (M[2] & M[4] & E[14] & E[24] & E[64] & F[921] & F[922])

A partir deste ponto não é mais reconhecida uma alteração do preenchimento do buffer.
De acordo com a possibilidade escolher este ponto para que uma alteração de preenchimento não seja
mais possível.

- Ponto de parada anterior


- A partir daqui o deslocamento de base é necessário
- Pontos com Offset devem ser obrigatoriamente programados em Linear

L P[4] 2000mm/sek CNT100 ACC100 ZEIT VOR 0.1sek, P-SPS Offset, PR[i[101]]
1: FB-PSPS FB-PSPS (M[2] & M[4] & E[14] & E[24] & E[64] & F[921] & F[922])

L P[5] 2000mm/sek CNT100 ACC100 ZEIT VOR 0.1sek, P-SPS Offset, PR[i[101]]
1: FB-PSPS (M[2] & M[4] & E[14] & E[24] & E[64] & F[921] & F[922])

Robotertechnik 56 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

L P[6] 2000mm/sek CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS Offset, PR[i[101]]
1: FB-PSPS (AN)
2: F[1] = (AN)
3: AUFRUF MAKRO342
4: WARTE M[1]
5:F[2] = (AN)
6: AUFRUF MAKRO342
7: WARTE (M[3])
8: FB-PSPS (E[14] & E[24] & M[1] & M[3])

L P[7] 2000mm/sek CNT100 ACC100 ZEIT VOR 0.1sek, P-SPS Offset, PR[i[101]]
1: FB-PSPS (E[14] & E[24] & M[1] & M[3])

L P[8] 2000mm/sek CNT100 ACC100 ZEIT VOR 0.1sek, P-SPS Offset, PR[i[101]]
1: FB-PSPS (E[14] & E[24] & M[1] & M[3])

- A partir daqui os pontos são novamente arrancados sem deslocamento


J P[9] 100% CNT100 ACC100 ZEIT VOR 0.00sek, P-SPS
1: FB-PSPS (E[14] & E[24] & M[1] & M[3])

J P[10] 100% CNT100 ACC100 ZEIT VOR 0.00sek, P-SPS


1: FB-PSPS (E[14] & E[24] & M[1] & M[3])

Robotertechnik 57 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

4.17.4 UP com deslocamento BASE_BASE


Exemplo UP31:

: WKZ_NUM=1 -- WKZ 1 está ativa


: BENUTZER_NUM=1 -- Base 1 está ativa
: TRAGLAST[1] -- Dados de carga da Wzg-Nr.1 ativos

: AUFRUF MOTN101 -- Registrador de posição-Inicialização (Pilha 1)--

J P[1] 100% CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS


1: FB-PSPS (AN) -- Liberação de avanço Online desligada --
2: A[16] = (AN) -- Robô na trajetória --
3: A[23] = (AUS) -- Liberar Grade de Proteção --
4: AUFRUF MAKRO050 -- Inicialização de Marcas --
5: WENN (gE[20] ≥1), F[921] = (AN) -- Checa se PLC Info Ok (min) --
6: WENN (gE[20] ≤6), F[922] = (AN) -- Checa se PLC Info Ok (min) --
7: gA[20] = (gE[20]) -- Retroaviso local de memória selecionado --
8: i[101]=(gE[20]+100) -- Registrador de posição a partir de 100 --
9: WARTE (E[23] & F[921] & F[922]) -- Espera liberação depositar na memória --
10: A[23] = (AN) (Flags da área de usuário livre escolha)
11: FB-PSPS (M[2] & M[4] & E[14] & E[24] & E[64] & F[921] & F[922])

Punkte ohne Offset werden mit Joint programmiert!!


J P[2] 100% CNT100 ACC100 ZEIT VOR 0.00sek, P-SPS
1: FB-PSPS (E[14] & E[24] & E[64] & M[12])

J P[3] 100% CNT100 ACC100 ZEIT VOR 0.00sek, P-SPS


1: FB-PSPS (AN) -- Liberação de avanço Online desligada --
2: A[64] = (AUS) -- LIB Medir / Pilha Perfil livre --
-- A partir daqui não são mais checadas as posições de memória --

3: FB-PSPS (M[2] & M[4] & E[14] & E[24] & E[64] & F[921] & F[922])

A partir deste ponto não é mais reconhecida uma alteração do preenchimento do buffer.
De acordo com a possibilidade escolher este ponto para que uma alteração de preenchimento não seja
mais possível.

- Ponto de parada anterior


- A partir daqui o deslocamento de base é necessário
- Pontos com Offset devem ser obrigatoriamente programados em Linear

: WKZ_NUM=1 -- WKZ 1 está ativa


: BENUTZER_NUM=2 -- Base 2está ativa (Base pilha 1)
: TRAGLAST[1] -- Dados de carga da Wzg-Nr.1 ativos

L P[4] 2000mm/sek CNT100 ACC100 ZEIT VOR 0.1sek, P-SPS Offset, PR[i[101]]
1: FB-PSPS (M[2] & M[4] & E[14] & E[24] & E[64] & F[921] & F[922])

L P[5] 2000mm/sek CNT100 ACC100 ZEIT VOR 0.1sek, P-SPS Offset, PR[i[101]]
1: FB-PSPS (M[2] & M[4] & E[14] & E[24] & E[64] & F[921] & F[922])

Robotertechnik 58 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

L P[6] 2000mm/sek CNT0 ACC100 ZEIT VOR 0.1sek, P-SPS Offset, PR[i[101]]
1: FB-PSPS (AN)
2: F[1] = (AN)
3: AUFRUF MAKRO342
4: WARTE M[1]
5: F[2] = (AN)
6: AUFRUF MAKRO342
7: WARTE (M[3])
8: FB-PSPS (E[14] & E[24] & M[1] & M[3])

L P[7] 2000mm/sek CNT100 ACC100 ZEIT VOR 0.1sek, P-SPS Offset, PR[i[101]]
1: FB-PSPS (E[14] & E[24] & M[1] & M[3])

L P[8] 2000mm/sek CNT100 ACC100 ZEIT VOR 0.1sek, P-SPS Offset, PR[i[101]]
1: FB-PSPS (E[14] & E[24] & M[1] & M[3])
- Ab hier werden die Punkte wieder ohne Verschiebung angefahren

: WKZ_NUM=1 -- WKZ 1 está ativa


: BENUTZER_NUM=1 -- Base 1 está ativa
: TRAGLAST[1] -- Dados de carga da Wzg-Nr.1 ativos

J P[9] 100% CNT100 ACC100 ZEIT VOR 0.00sek, P-SPS


1: FB-PSPS (E[14] & E[24] & M[1] & M[3])

J P[10] 100% CNT100 ACC100 ZEIT VOR 0.00sek, P-SPS


1: FB-PSPS (E[14] & E[24] & M[1] & M[3])

4.18 Utilização de liberação de arranque Online

O estado das marcas M128 e M129 é espelahado permanentemente no PLC.

M[128] A[127]
M[129] A[128]

Exemplo:
Robô com Garra Framer – 4 Grupos de Grampos e 2 Sensores de presença de peça

Liberação Online 1 na Garra Framer (Aviso para PLC)


M[128] = (M[31] & M[33] & M[35] & M[37] & !M[1]) -- Grupo de Grampos 1-4 ABRIR, BT1 e BT2 sem presença –

Robotertechnik 59 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

5 Jornal de alterações
Data Versão Alteração Editor
04.05.2010 V1.0 Nova elaboração CB
04.05.2010 V1.1 Documento ajustado para FANUC CB
13.09.2010 V1.2 Denominação do documento alterada CB
22.10.2010 V1.3 Sintaxe e textos corrigidos CB
11.11.2010 V1.4 Formato ajustado, Sintaxe corrigida CB
12.11.2010 V1.5 Ponto 3.2 Revisado CB
19.11.2010 V1.6 Ponto 4.4 revisado, Comentários inseridos CB
24.11.2010 V1.7 Sintaxe corrigida, Exemplos VW_USER inseridos. CB
13.12.2010 V1.8 Programa para checar TCP complementado (Ponto 4.4) CB
22.12.2010 V1.9 Pontos 1.5 e 4.7 complementados CB
23.02.2011 V1.10 Formato ajustado, Sintaxe corrigida CB
07.03.2011 V1.11 FB_ONLINE modificado para FB-PSPS CB
16.03.2011 V1.12 Formato ajustado, Sintaxe corrigida CB
14.06.2011 V1.13 Collision Guard e Softfloat formatados. CE
Liberação PREG removida.
A[16] Robô na trajetória complementado.
Documento formatado
16.06.2011 V1.13 Ponto 4 e 4.3 – Descrição revisada LZ
22.06.2011 V1.13 Falhas de digitação removidas CB
28.06.2011 V1.14 Chamada condicional da MAKRO998 inserida CB
29.06.2011 V1.15 Sintaxe corrigida CB
01.07.2011 V1.16 Ponto 4.9 adicionado CB
04.07.2011 V1.16 Descrição da posição de masterização complementada ( Ponto 1.2) SM
05.07.2011 V1.17 Sintaxe corrigida CB
26.07.2011 V1.18 Ponto 4.17 inserido CB
01.09.2011 V1.19 Ponto 4.4 descrição revisada. LZ
Ponto 4.6.2 Chamada de UP revisada e complementada
01.09.2011 V1.19 Códigos de departamentos atualizados CE
05.09.2011 V1.20 Suchlauf revisado CE
07.09.2011 V1.21 Programação da Folge125 revisada CE
Programação do último ponto da Folge adaptado
13.09.2011 V1.22 Ponto 4.5 alterado, texto do ponto1.19 alterado CB/CE
Pontos 4.2, 4.8, 4.14.2 alterados
Suchlauf revisado
15.09.2011 V1.23 UP de Vision revisada CE
27.09.2011 V1.24 Ponto 4.11 e ponto 4.17 revisados CE
30.11.2011 V1.25 Pontos 1.19 complementado e 3.2 revisados CE
01.02.2012 V1.26 Ponto 4.14 revisado. CE
Repetição de FOLGE 4.4 inserido
08.02.2012 V1.27 Ponto 4.15 revisado. CB
09.02.2012 V1.28 Pontos 4.7 e 4.6.1 UPs de Manutenção ajustadas (UP111- LZ
>112, UP112->113)
09.02.2012 V1.29 Ponto 1.1 Startup atualizado (IBN Linearachsen) CB
22.02.2012 V1.30 Complementado com iRVision e Determinação de dados de referencia JW
27.02.2012 V1.31 Robô na Área de Manutenção revisado CE
01.03.2012 V1.32 Pontos 1.3, 4.16.1 e 4.16.2 alterados CB
15.03.2012 V1.33 Ponto 4.16 descrição revisada CE
16.04.2012 V1.33 Corrigida falha de digitação CE/CB
25.04.2012 V1.34 Ponto 4.14.1 revisado CE
08.05.2010 V1.35 Descrição da técnica de UP revisada CE
29.05.2012 V1.36 Adaptado ao design corporativo SM
14.06.2012 V1.36 Ponto 4.8.2 Negação removida Lz
19.06.2012 V1.36 Cabeçalho doponto 4.2 ampliado Lz
05.07.2012 V1.37 Ponto.4.6 UP206 eponto 4.8.2 UP201 Descrição dos Intertravamentos revisados Lz
20.08.2012 V1.37 Buffer de peças revisado CE

Robotertechnik 60 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3
Padronização do Konzern
Parte 3_3_00
Diretrizes para programação de Robô FANUC
Fundamentos

28.08.2012 V1.38 Programação de Makro50 revisada CE


Buffer de peças revisado
03.09.2012 V1.38 Ponto 4.7 Falha de digitação removida CE
07.09.2012 V1.39 UP214,UP215 introduzidas CE
11.10.2012 V1.39 Programação Softfloat ampliada CE
Posição de manutenção revisada
(Robô com mais de uma ferramenta)
15.11.2012 V1.40 UPs especificas introduzidas (UP701 – 780) CE/MB
A/LZ
19.12.2012 V1.41 Ponto 1.24 Modo de Economia de Energia para componentes introduzido CE
14.01.2013 V1.42 Descrição de parâmetros de movimento revisada CE
Descrição de Col Guard Revisada
28.01.2013 V1.43 Descrição Intertravamentos-Robô revisada CE
04.03.2013 V1.44 Descrição de função de parada na trajetória ampliada CE
Descrição Makro50 adaptada
20.03.2013 V1.45 Descrição de elaboração de programa ampliada CE
16.04.2013 V1.46 Descrição área de manutenção ampliada CE
22.04.2013 V1.46 Falha corrigida no ponto 4.16.1 Programação da função de Collision Guard – MBA
Chamada Makro 30 substituida pela Makro 342
22.05.2013 V1.47 Programação de FK ajustada CE/MB
Programação da Folge124 (Posição de Manutenção), Descrição ajustada A/LZ
Comentários de pontos e programa, descrição ampliada
28.08.2013 V1.47 FK Geral ajustado CE/MB
A/LZ
29.08.2013 V1.47 Colado A[16] para o 1º ponto na UP CE/MB
A/LZ
16.09.2013 V1.47 Formato no Indice ajustado MBA
01.10.2013 V1.48 Programas de seviço ampliados CE
04.11.2013 V1.49 Ponto 4.13.4 introduzido CB
15.11.2013 V1.50 Ponto 3.2 Programas de serviço UP216, 217 FD Ponto de zeramento CB
introduzido
19.11.2013 V1.51 Ponto 1.19 Nr.de ferramenta complementado CE/MB
A/LZ
08.01.2014 V1.52 Descrição de Modo de Economia de Energia para componentes ajustado CE
(Makro57)
21.03.2014 V1.53 Ponto 4.9 Flag283 Chamada da Makro50 removida OL/LZ
Ponto 4.13 Exemplo diagramade ciclo novo

6 Controle da versão
Data Versão Alteração Editor
28.02.2014 V1.37_pt-BR Tradução EC
28.02.2014 Release 1.0 Liberação para publicação EC
30.07.2014 V1.53_pt-BR Atualização de versão EC
30.07.2014 Release 2.0 Liberação para publicação EC

Robotertechnik 61 de 61 Planung Automatisierungstechnik I/PG-C61


Versão V1.53_pt-BR Data: 28.02.2014 Technologieplanung und –entwicklung PMT-A/2
Release 2.0 KS_Parte_3_3_00_ROBO-FANUC_Fundamentos_pt-BR.doc Planejamento Elétrico B-OEP-3

Você também pode gostar