Você está na página 1de 83

9 Prog.

utilizador
SOFTWARE

VKR C1

Programação utilizador

Release 1.3

Programmierung Anwender R1.3 03.99.00 pt

1 de 78
e Copyright KUKA Roboter GmbH
Este documento ou extratos do mesmo não podem ser reproduzidos ou disponibilizados a terceiros sem autorização expressa do editor.
Outras funções de comando não descritas nesta documentação poderão ser postas em prática. No entanto, não está previsto qualquer tipo
de reclamação quanto a estas funções em caso de nova remessa ou de serviço.
Verificámos que o conteúdo do prospeto é compatível com o software e com o hardware descrito. Porém, não são de excluir exeções, de forma
a que não nos responsabilizamos pela total compatibilidade. Os dados contidos neste prospeto serão verificados regulamente e as correções
necessárias serão incluídas nas próximas edições.
Reservado o direito a alterações técnicas que não influenciem o funcionamento.

PD Interleaf

Programmierung Anwender R1.3 03.99.00 pt

2 de 78
Índice

1 Programação de movimentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.1 Generalidades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.1.1 Tipos de movimento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.1.2 Eixos com rotação infinita . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2 Última instrução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.3 Movimento “standard” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.3.1 Movimentos ponto a ponto (PTP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.3.1.1 Considerações básicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.3.1.2 Movimento PTP com paragem exata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.3.1.3 Programar um movimento PTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.3.2 Movimentos lineares (LIN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.3.2.1 Movimento LIN com paragem exata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.3.2.2 Programar um movimento LIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.3.2.3 Movimento PTP ou LIN com aproximação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.3.3 Movimentos circulares (CIRC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.3.3.1 Movimento CIRC com paragem exata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.3.3.2 Movimento CIRC com aproximação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.3.3.3 Programar um movimento CIRC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.4 Movimento de tecnologia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.4.1 Aplicações de cola . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.4.1.1 Generalidades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.4.1.2 Movimento linear (KLIN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.4.1.3 Movimento circular (KCIRC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.4.2 Suchlauf (Movimento de busca) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.4.2.1 Generalidades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.4.2.2 Programar uma busca . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

2 Programação PLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.1 Concepção básica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.1.1 Generalidades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.1.2 Selecionar um programa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.1.3 Abrir PLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.1.4 Formulários inline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.1.5 Outros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.2 Vista geral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.2.1 Elementos, operadores, prioridade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.2.2 Definições . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.2.3 Gamas de valores dos operadores aritméticos num, i, bin, t e ana . . . . . . . . . . . . . . . . . . . . 30
2.3 Ativações de macros e subprogramas e instruções de pinça . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.3.1 Seleção . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.3.2 MAKRO (ativação da macro) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.3.3 MakroSaw (Macro de seleção do passo) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.3.4 MakroSPS (PLC de Makro) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.3.5 UP (Ativação do subprograma) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.3.6 ZANGE (Instruções de pinça) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2.3.7 Laço MAKRO/UP (Instruções de loop) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2.4 Instruções PLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

Programmierung Anwender R1.3 03.99.00 pt

3 de 78
Programação utilizador

2.4.1 Seleção . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.4.2 A/M/F (Saídas / marcas / flags) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
2.4.3 i/bin (Contadores e saídas binárias) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
2.4.4 t= (Arrancar o temporizador) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
2.4.5 t=STOP (Parar um temporizador) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
2.4.6 Comparação (Comparação aritmética) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.4.7 Impulso (Saídas de impulso) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
2.4.8 Flags em função da posição (MakroSPS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
2.5 Instruções de espera e de movimento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
2.5.1 Seleção . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
2.5.2 FB ONL (Condição de movimento) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
2.5.3 W onl/bis (Condição de espera) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
2.5.4 W Tempo (Tempo definido) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
2.5.5 VERR (Bloqueio) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
2.5.6 FB PSPS (Condição de movimento) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
2.5.7 Alternativa I--Bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
2.6 Saída analógica, funções tempo -- distância, oscilar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
2.6.1 Seleção . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
2.6.2 Saída analógica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
2.6.2.1 Generalidades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
2.6.2.2 ana konst: (Tensão analógica constante) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
2.6.2.3 ana vprop: (Tensão analógica proporcional na velocidade) . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
2.6.2.4 ana kst+p: (Tensão constante e desvio de oscilação) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
2.6.3 BS -- Funções tempo -- distância . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
2.6.3.1 Generalidades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
2.6.3.2 BS A/F (Saídas) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
2.6.3.3 BS bin/ana (Saída binária / analógica) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
2.6.4 Pnd (Oscilar) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
2.7 USER (Ativação da função KRL com transferência de parâmetros) . . . . . . . . . . . . . . . . . . . 71
2.7.1 Generalidades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
2.7.2 Ativação da instrução VW_USER através de BOF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72

3 Processamento do programa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
3.1 Ocultar áreas/PLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
3.2 Funções de bloco . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
3.3 Usar comentários . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
3.3.1 ...inserir . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
3.3.2 ...modificar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
3.3.3 ...apagar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

Programmierung Anwender R1.3 03.99.00 pt

4 de 78
1 Programação de movimentos

1 Programação de movimentos
Este capítulo descreve algumas das funções disponíveis no menu VKCP “Instruções”:

Resumo geral
G Última instrução Comando para a entrada da última instrução
realizada;
G Movimento “standard” Permite a programação de movimentos PTP, LIN e
CIRC;
G Movimento de tecnologia Programação de movimentos KLIN, KCIRC e de
movimentos de busca.
G User Programação do VW--User na programação de
perito;

G Comentário No capítulo “Processamento de programa”, parágrafo


“Comentário”

O menu “Instruções” só se encontra disponível, desde que tenha sido selecionado ou


carregado um programa no editor.

Informações acerca das outras instruções do menu “Instruções” encontram--se na docu-


mentação [Programação PLC].

Prog.Anwender: Bewegungsprogrammierung R1.3 03.99.00 pt

5 de 78
Programação de movimentos

1.1 Generalidades
Caso se pretenda que a ferramenta de um robô seja movimentada para um ponto de destino,
comandada através do programa, terá de ser programada uma instrução de movimento.
Esta instrução de movimento é constituída pelo tipo de movimento e pela velocidade, pela
definição do ponto de início, do ponto de destino e quando se trata de trajetos circulares
também de um ponto auxiliar, além de outros tipos de ajuste que dependem do tipo de
movimento.
Nos parágrafos seguintes, são descritas todas as instruções de movimento, incluindo o seu
significado e a sua finalidade.

1.1.1 Tipos de movimento


Para a programação dos movimentos estão disponíveis os seguintes tipos de movimento:

Movimentos “standard”

A ferramenta é deslocada a um ponto de destino, seguindo o


PTP (Ponto a ponto)
trajeto mais rápido
Condução da ferramenta ao longo de uma reta, com uma veloci-
LIN (Linear)
dade definida
Movimento da ferramenta ao longo de um trajeto circular, com
CIRC (Circular )
uma velocidade definida
Movimentos de tecnologia

KLIN (Linear) Para aplicações em colagens ao longo de uma reta


Também para aplicações em colagens, mas ao longo de um
KCIRC (Circular )
trajeto circular
Suchlauf (Busca) Movimento linear controlado por um sensor

Em relação às aplicações de cola, estas duas instruções de movimento KLIN e KCIRC


apresentam um melhor comportamento de aproximação e, simultaneamente, uma veloci-
dade de trajetória elevada. Além disso, o raio de aproximação poderá ser ajustado, de
acordo com um critério de precisão.

O ponto de menu “Suchlauf” tem uma função especial no menu de seleção “Movimento de
tecnologia”. Através desta instrução de movimento, o robô executa um movimento linear até
um determinado ponto, sendo supervisionado por um sensor.
Em caso de uma seqüência de instruções de movimento sucessivas, existem duas possibili-
dades para a realização do movimento entre os vários pontos:

Movimento entre os vários pontos individuais

Paragem exata A deslocação ao ponto programado será feita com paragem exata
Um movimento passa suavemente a um outro, sendo a deslo-
Aproximação
cação ao ponto de destino feita sem paragem exata

A fim de poder programar uma instrução de movimento, terá de trabalhar com um


programa no modo de edição ou este terá de ter sido selecionado. Mais informações
encontram--se nas documentações [Operação], capítulo [Navigator], e [Programação
utilizador], capítulo [Processamento de programa].

Prog.Anwender: Bewegungsprogrammierung R1.3 03.99.00 pt

6 de 78
1 Programação de movimentos (continuação)

Através da menukey “Instruç”, abra o menu de seleção e depois o submenu “Movimento


standard” ou “Movimento de tecnologia”.

Com a ajuda das teclas do cursor escolha agora a respetiva instrução de movimento. Se
atuar depois a tecla “Enter”, é aberto um formulário inline para a parametrização.

A nova linha é introduzida por baixo daquela em que se encontra o cursor de edição (marca
vertical a piscar).

Como alternativa, o formulário inline referente ao “Movimento standard” também poderá


ser aberto através da softkey “PTP/LIN/CIR”. Esta aparece depois de ter sido selecionado
um programa ou depois de este ter sido ativado por meio da softkey “Editar”.

Se um ou vários eixos do robô baterem sem qualquer frenagem contra os respeti-


vos batentes mecânicos, com uma velocidade superior àquela que se verifica com
a deslocação manual (máx. 20 cm/s, ajustado pela fábrica), os respetivos batentes
terão de ser substituídos imediatamente por batentes novos! Quando se trata de
um robô de parede e do seu eixo 1, será necessário substituir o carrossel!

Mais informações encontram--se na documentação [Operação], capítulo [Deslocação


manual do robô].

Prog.Anwender: Bewegungsprogrammierung R1.3 03.99.00 pt

7 de 78
Programação de movimentos

1.1.2 Eixos com rotação infinita


Originalmente, todos os eixos de robô (A1 ... A6) estão concepcionados de forma a
executarem uma rotação definida (portanto, com um fim de curso definido pelo software).
No entanto, em determinados casos de aplicação, os eixos A4 e A6 poderão ser projetados
também como eixos com uma rotação infinita. Os respetivos ajustes são realizados no
ficheiro “$MACHINE.DAT”.

A4 e A6 também poderão ser definidos


como eixos com uma rotação infinita
[$MACHINE.DAT]

Todos os outros eixos apresentam


uma rotação definida.

Caso os dados de máquina tenham sido alterados no sentido de estabelecer uma rotação
infinita dos eixos A4 e/ou A6, tenha em atenção que todos os movimentos de rotação
deverão ser realizados pelo caminho mais curto.
Esse procedimento poderá trazer problemas se o robô estiver equipado com uma
ferramenta que necessita de condutores de alimentação (p.ex., uma pinça de solda-
dura).

Prog.Anwender: Bewegungsprogrammierung R1.3 03.99.00 pt

8 de 78
1 Programação de movimentos (continuação)

No exemplo seguinte são programadas duas instruções de movimento (P1 -- P2 e P2 --


P3) e memorizadas as coordenadas. Veja o esquema seguinte.

Neste exemplo, a primeira Ferramenta P3 (220_)


instrução de movimento tem por
conseqüência que o eixo A6 efe-
tua rotações de 120_, de P1 (0_) P1 (0_) P1 (0_)
para P2 (120_). O segundo roda
A6 mais 100_Ι de P2 (120_) para
P3 (220_). Flange P2 (120_)
do robô

Com a terceira instrução de movi-


mento deve colocar a ferramenta
na direção oposta, rodando o eixo real:
A6 200_ em P3, de forma a dirigir-- P3 (220_) P3 (220_) 160_
se a P4, portanto para a posição
de 20_ em relação à posição inicial
P1. P1 (0_)
Mas durante a execução do pro-
grama, a rotação que o eixo A6 irá P4 (380_)
efetuar de P3 (220_) para P4 P3 (120_) (nominal: 200_)
(380_) será pelo caminho mais
curto, o que significa, portanto,
uma rotação de 160_.
Este processo tem por con-
seqüência inevitável que os con-
dutores de alimentação entre o
robô e a ferramenta fiquem “en-
rolados”.

Por isso, será necessário dividir o


segundo movimento (oposto) em P3 (220_)
duas instruções de movimento.
Neste exemplo foram programa-
dos dois movimentos (P3 -- P4 e 100_ P5 (20_)
P4 -- P5), com ângulos de rotação
de 100_ cada. Desta forma fica as-
segurado que a deslocação ao 100_
P4 (120_)
ponto de destino se processa cor-
retamente durante a execução do
programa.

Prog.Anwender: Bewegungsprogrammierung R1.3 03.99.00 pt

9 de 78
Programação de movimentos

1.2 Última instrução


Este comando permite a entrada da última instrução executada. Os valores que já se encon-
tram introduzidos nos campos representam uma proposta.
Prima a menukey “Instruç” para abrir o menu e selecione a opção “Última instrução”.

Como alternativa à menukey “Instruç” e ao menu “Última instrução”, a função também pode
ser ativada pela softkey “Últ.instr.”.

Prog.Anwender: Bewegungsprogrammierung R1.3 03.99.00 pt

10 de 78
1 Programação de movimentos (continuação)

1.3 Movimento “standard”


1.3.1 Movimentos ponto a ponto (PTP)
1.3.1.1 Considerações básicas
O movimento ponto a ponto proporciona o alcance rápido das posições de destino sendo
o tipo de movimento mais rápido, ou seja, aquele que oferece as condições de tempo mais
favoráveis. Em função da posição inicial, a ferramenta movimenta--se -- desde o ponto de
início até ao ponto de destino -- num trajeto não definido com precisão, mas que resulta da
sincronização das fases dos vários eixos.

Devido ao fato de a trajetória não ser previsível com precisão, o comportamento do


robô a movimentar--se na proximidade de obstáculos, deverá ser ensaiado com
velocidade reduzida. Caso contrário, poderá haver colisões e, como conseqüência,
as peças, ferramentas ou o robô poderão ficar danificados!
Neste contexto tenha em atenção que a trajetória de um movimento PTP também
depende da velocidade de deslocação programada!

Os movimentos PTP são usados, de preferência, quando não é necessária uma trajetória
exata para o movimento entre dois pontos programados.

1.3.1.2 Movimento PTP com paragem exata


Nos movimentos PTP com paragem exata, é feita a deslocação ao ponto de destino na sua
posição exata.

Trajetória PTP Trajetória PTP


possível possível
P2

Paragem
exata P3
P1
Distância mais pequena entre
Paragem exata
dois pontos PTP

1.3.1.3 Programar um movimento PTP


Depois de ter sido selecionado o ponto de menu “PTP”, aparece na janela de programação o
formulário inline, a fim de a instrução PTP ser parametrizada. (ver também parágrafo 1.1.1.)

Simultaneamente, é alterada a ocupação da barra de softkeys

O “foco” encontra--se no campo que tiver um fundo azul escuro, isto é, o conteúdo desse
campo poderá ser alterado. A tecla “Shift” em conjunto com uma das teclas de cursor “z“
ou “!“ ou as teclas “” ou “” permitem a passagem de um dos campos ao seguinte.

Prog.Anwender: Bewegungsprogrammierung R1.3 03.99.00 pt

11 de 78
Programação de movimentos

No quadro e nos gráficos seguintes são indicados os campos de introdução, a sua função
e gamas de valores.

Desig. do Função Gama de valores


campo.
PTP Tipo de movimento PTP, LIN, CIRC, KLIN, KCIRC
1 a 100% do valor máximo
VB Velocidade de deslocação
(Predefinição 100%)
0 a 100% (valor por defeito 0% = sem
VE Zona de aproximação aproximação) da metade do compri-
mento de passo
1 a 100% do valor máximo
ACC Aceleração
(Predefinição 100%)
Wzg Número da ferramenta a utilizar 1 a 16 (Predefinição 1)
SPSTrig Momento de entrada do PLC 0 a 1001/100s (Predefinição 0)

Não se esqueça que uma carga / carga adicional elevada, uma aceleração elevada
e trajetos curtos aumentam, desnecessariamente, o esforço exercido sobre os
motores de acionamento.

O valor do campo de introdução “PTP” poderá ser alterado através das statuskeys,
premindo o campo “+” ou o campo “--”, ou através da softkey “LIN/CIRC”. Além disso, os
valores numéricos também poderão ser introduzidos diretamente, através do campo numé-
rico.
Por meio da softkey “InterrInst”, a programação da instrução de movimento poderá ser
interrompida, a qualquer altura, sem que os dados fiquem gravados. A tecla “ESC” tem a
mesma função.
ESC

Por meio da softkey “LIN/CIRC”, poderá ser ajustado, a qualquer altura, um outro tipo de
movimento, independentemente do campo de introdução em que se encontra. A escolha
poderá ser feita entre PTP, LIN e CIRC. A softkey mostra sempre os tipos de movimento
que não estão a ser utilizados.
Se pretender alterar as coordenadas do robô numa instrução PTP já existente, prima a
softkey “Coord”. As coordenadas atuais do robô são memorizadas se a seguir for premida
a softkey “Sim”.

Pode programar uma série de passos de movimento, cujas coordenadas serão definidas
apenas mais tarde.

As coordenadas são transferidas ao ponto onde se encontra o cursor de edição intermi-


tente e não ao ponto onde se encontra o ponteiro de passos amarelo.

Prog.Anwender: Bewegungsprogrammierung R1.3 03.99.00 pt

12 de 78
1 Programação de movimentos (continuação)

Depois de ter colocado o robô na posição pretendida e de ter introduzido todos os parâme-
tros necessários no formulário inline, pressione a tecla de entrada ou a softkey “Instruç.OK”.
O formulário é fechado, os dados são memorizados e a linha de instrução é introduzida por
baixo do cursor de edição.

1.3.2 Movimentos lineares (LIN)


Num movimento LIN, a ponta da ferramenta é movimentada numa reta, desde o ponto de
início até ao ponto de destino. Como a reta é definida, inequivocamente, por dois pontos,
basta indicar o ponto de destino. Neste tipo de movimento, os eixos em questão são coorde-
nados de forma a resultar uma reta.
Os movimentos LIN são utilizados sempre que se pretende uma trajetória exata, com uma
velocidade definida, quando se trata de um movimento entre dois pontos ou da deslocação
a posições de destino que não poderão ser alcançados com PTP, devido ao perigo de
colisões.

Só a ponta da ferramenta segue exatamente o trajeto definido, enquanto a ferramenta


propriamente dita poderá alterar a sua orientação durante o movimento, em função da
orientação projetada.

1.3.2.1 Movimento LIN com paragem exata


Nos movimentos LIN com paragem exata, é feita a deslocação ao ponto de destino na sua
posição exata.

Paragem exata

P2
P3
P1
Paragem exata

1.3.2.2 Programar um movimento LIN


Depois de ter sido selecionado o ponto de menu “LIN” (ver também parágrafo 1.1.1.), apa-
rece na janela de programação o formulário inline, a fim de a instrução LIN ser parametri-
zada.

Simultaneamente, é alterada a ocupação da barra de softkeys.

O “foco” encontra--se no campo que tiver um fundo azul escuro, isto é, o conteúdo desse
campo poderá ser alterado. A tecla “Shift” em conjunto com uma das teclas de cursor “z”
ou “!” ou as teclas “” ou “” permitem a passagem de um dos campos ao seguinte.

Prog.Anwender: Bewegungsprogrammierung R1.3 03.99.00 pt

13 de 78
Programação de movimentos

No quadro seguinte são indicados os campos de introdução, a sua função e gamas de


valores.

Desig. do Função Gama de valores


campo.
LIN Tipo de movimento PTP, LIN, CIRC, KLIN, KCIRC
1 a 2000 mm/s
VB Velocidade de trajetória
(Predefinição 1750 mm/s)
0 a 100% (valor por defeito 0% = sem
VE Zona de aproximação aproximação) da metade do compri-
mento de passo
1 a 100% do valor máximo
ACC Aceleração
(Predefinição 100%)
Wzg Número da ferramenta a utilizar 1 a 16 (Predefinição 1)
SPSTrig Momento de entrada do PLC 0 a 1001/100s (Predefinição 0)

Tenha em atenção que com uma carga / carga adicional elevada, aceleração elevada
e caminhos reduzidos, os motores de acionamento também são submetidos,
desnecessariamente, a uma carga mais elevada.

De acordo com a extensão do trajeto de deslocação, o nível de aceleração e a extensão da


distância de aproximação, é possível que a velocidade de deslocação programada nem
sequer seja atingida. Isto poderá acontecer quando os eixos do manípulo têm de executar
movimentos muito rápidos, devido à passagem pela posição esticada, ultrapassando, por
isso, os valores máximos permitidos. Por isso verifique se os valores são aplicáveis na
prática.
O ajuste do tipo de movimento no campo de introdução “LIN” poderá ser alterado com a
ajuda dos campos da statuskey “+” ou “--”, ou por meio da softkey “CIR/PTP”. Os valores
numéricos poderão ser introduzidos diretamente através do campo numérico do teclado.
Por meio da softkey “InterrInst”, a programação da instrução de movimento poderá ser inter-
rompida, a qualquer altura, sem que os dados fiquem gravados. A tecla “ESC” tem a mesma
função.
ESC

Através de uma softkey (p.ex., “CIRC/PTP”) poderá ajustar, a qualquer momento, um outro
tipo de movimento, sendo indiferente qual o campo de introdução que tenha o foco. A esco-
lha poderá ser feita entre PTP, LIN e CIRC. A softkey mostra sempre os tipos de movimento
que não estão a ser utilizados.
Se quiser memorizar as coordenadas atuais do robô, enquanto existe uma instrução LIN,
prima a softkey “Coord”. Assim, as coordenadas atuais do robô serão transferidas, depois
de terem sido confirmadas (sim/não).

As coordenadas são transferidas ao ponto onde se encontra o cursor de edição intermi-


tente e não ao ponto onde se encontra o ponteiro de passos amarelo.

Depois de ter colocado o robô na posição pretendida e de ter introduzido todos os parâme-
tros necessários no formulário inline, termine a função, pressionando a tecla “Enter” ou a
softkey “Instruç.OK”. O formulário é fechado, os dados são memorizados e a linha de
instrução é introduzida por baixo do cursor de edição.

Prog.Anwender: Bewegungsprogrammierung R1.3 03.99.00 pt

14 de 78
1 Programação de movimentos (continuação)

1.3.2.3 Movimento PTP ou LIN com aproximação


Quando uma ordem PTP ou LIN inclui a aproximação, a unidade de comando gera em torno
desse ponto uma zona de aproximação (aqui P2). Logo que esta zona tenha sido alcançada,
os movimentos dos eixos são transferidos para o ponto seguinte.
A aproximação depende da velocidade, ou seja, a aproximação máxima de VE100% só é
atingida a uma velocidade de VB100%. Com VE100% e VB100%, a aproximação seria
atingida a meio do trajeto, entre os pontos P1 e P2. Se com VE100% a velocidade fosse
apenas VB75%, a aproximação iria começar só mais tarde.

Zona de aproximação máx.

P2

P1

P3

P2

Zona de aproximação com


P1
VE50% e VB100%
P3

Não é possível fazer a aproximação com instruções de PLC, tais como as macros ou
“Espera até”, mudança da ferramenta; ativação de segmentos de bus alternativos
(Interbus); saídas analógicas proporcionais à velocidade, aqui ana_vprop que ativa um
delay analógico, com todos os outros ana_vprop é possível fazer a aproximação.

Prog.Anwender: Bewegungsprogrammierung R1.3 03.99.00 pt

15 de 78
Programação de movimentos

1.3.3 Movimentos circulares (CIRC)


No movimento CIRC, a ponta da ferramenta é movimentada numa trajetória circular, desde
o ponto de início até ao ponto de destino. A trajetória circular é definida por três pontos: ponto
de início, ponto auxiliar e ponto de destino. O ponto de início é constituído pela paragem
exata do último passo. Para o ponto auxiliar são decisivos apenas as coordenadas X, Y e
Z. A alteração da orientação da ponta da ferramenta durante o movimento é feita continua-
mente, ao longo da trajetória percorrida.
Os movimentos CIRC são utilizados sempre que haja processos de trabalho que terão de ser
executados com uma velocidade de trajetória definida, numa trajetória circular definida.
Os três pontos de um passo circular descrevem um plano no espaço. A fim de determinar
este plano com a maior precisão possível, os três pontos deverão situar--se a uma
distância considerável uns dos outros.
Só a ponta da ferramenta segue exatamente o trajeto definido, enquanto a ferramenta
propriamente dita poderá alterar a sua orientação durante o movimento, em função da
orientação projetada.

1.3.3.1 Movimento CIRC com paragem exata


Nos movimentos CIRC com paragem exata, é feita a deslocação ao ponto de destino na sua
posição exata.
O movimento CIRC é definido pelo ponto de início, o ponto auxiliar e o ponto de destino.

ponto de
ponto destino
auxiliar
ponto de
início
ponto de
destino

ponto de
início
ponto
ponto de auxiliar
destino
1.3.3.2 Movimento CIRC com aproximação
Quando dois movimentos de trajetória forem interligados, a unidade de comando gera na
zona de aproximação uma trajetória constituída por dois segmentos de parábola.

Zona de
aproximação

ponto de
ponto de início
destino
ponto de
destino

ponto
ponto auxiliar
ponto de auxiliar
início

Prog.Anwender: Bewegungsprogrammierung R1.3 03.99.00 pt

16 de 78
1 Programação de movimentos (continuação)

1.3.3.3 Programar um movimento CIRC


Depois de ter sido selecionado o ponto de menu “CIRC”, aparece na janela de programação
o formulário inline, a fim de a instrução CIRC ser parametrizada.

Simultaneamente, é alterada a ocupação da barra de softkeys.

Quando o foco se encontrar na janela de programação, através das teclas do cursor poderão
ser selecionados os campos de introdução. O campo selecionado tem um fundo azul escuro.
No quadro seguinte são indicados os campos de introdução, a sua função e gamas de
valores.

Desig. do Função Gama de valores


campo.
CIR Tipo de movimento PTP, LIN, CIRC, KLIN, KCIRC
1 a 2000 mm/s
VB Velocidade de trajetória
(Predefinição 1750 mm/s)
0 a 100% (valor por defeito 0% =
VE Zona de aproximação sem aproximação) da metade do
comprimento de passo
1 a 100% do valor máximo
ACC Aceleração
(Predefinição 100%)
Wzg Número da ferramenta a utilizar 1 a 16 (valor por defeito 1)
SPSTrig Momento de entrada do PLC 0 a 1001/100s (valor por defeito 0)

Não se esqueça que uma carga / carga adicional elevada, uma aceleração elevada
e trajetos curtos aumentam, desnecessariamente, o esforço exercido sobre os
motores de acionamento.

Conforme o comprimento do trajeto de deslocação, a aceleração e a distância da aproxi-


mação, poderá ser possível que a velocidade de trajetória programada não seja atingida.
Tenha em atenção que os valores terão de ser executáveis na prática.
O valor do campo de introdução “CIR” poderá ser alterado através das statuskeys, premindo
o campo “+” ou o campo “--”, ou através da softkey “PTP/LIN”. Além disso, os valores numéri-
cos também poderão ser introduzidos diretamente, através do campo numérico.
Por meio da softkey “InterrInst”, a programação da instrução de movimento poderá ser inter-
rompida, a qualquer altura, sem que os dados fiquem gravados. A tecla “ESC” tem a mesma
função.
ESC

Por meio da softkey “PTP/LIN”, poderá ser ajustado, a qualquer altura, um outro tipo de
movimento, independentemente do campo de introdução em que se encontra. A escolha
poderá ser feita entre PTP, LIN e CIRC. A softkey mostra sempre os tipos de movimento
que não estão a ser utilizados.
Premindo a softkey “Coord PA”, são memorizadas as coordenadas atuais do robô, em
relação ao ponto auxiliar (PA).
A softkey “Coord PD” arquiva todas as coordenadas atuais do robô referentes ao ponto de
destino (PD).

Prog.Anwender: Bewegungsprogrammierung R1.3 03.99.00 pt

17 de 78
Programação de movimentos

Caso as coordenadas do ponto auxiliar e do ponto de destino se situem muito próximas


umas das outras ou caso sejam idênticas, é emitida, durante a execução do programa,
uma mensagem de erro.
As coordenadas são introduzidas na linha de programa na qual se encontra o cursor de
edição intermitente.
A softkey “Coord.” permite, a qualquer momento, a memorização das coordenadas atuais
do robô em relação à linha na qual se encontra o cursor de edição. Assim, terá a possibili-
dade de programar, p.ex., primeiro uma série de passos de movimento, fixando as coorde-
nadas dos pontos numa altura posterior.
Depois de terem sido realizadas todas as instruções, premindo a softkey “Instruç.OK” ou a
tecla “Enter”, estes dados são memorizados, o formulário é fechado e a instrução é regis-
trada na listagem, na posição onde se encontra o cursor de edição.

Depois de fechar o formulário inline, o passo circular constituído pelo ponto auxiliar e o
ponto de destino é representado numa só linha.
Em caso de ativação de um passo circular, a deslocação é sempre feita ao ponto de destino.

Um círculo completo de 360 deverá ser constituído por pelo menos dois segmentos, a
fim de evitar que o círculo fique desnivelado.

PA
P2
PD PD P3
P1 P4 360 círculo nivelado
PA

Prog.Anwender: Bewegungsprogrammierung R1.3 03.99.00 pt

18 de 78
1 Programação de movimentos (continuação)

1.4 Movimento de tecnologia


1.4.1 Aplicações de cola
1.4.1.1 Generalidades
Devido às rampas de arranque e de frenagem mais íngremes das funções KLIN e KCIRC
e às elevadas acelerações daí resultantes, não são permitidas ferramentas ou peças
pesadas, como, p.ex., uma pinça de soldadura. Assim, estas instruções são adequadas
para aplicações, como a colagem ou a soldadura a gás de proteção.

A aceleração máxima possível para a função KLIN é de 2,3 m/s2, enquanto na função
KCIRC a aceleração poderá ir até aos 4,6 m/s2.

1.4.1.2 Movimento linear (KLIN)


A função KLIN é selecionada, exclusivamente, através dos campos “+” ou “--” da statuskey
que se encontra em baixo, do lado direito.
Ao contrário do movimento linear normal LIN nos movimentos KLIN é indicado o critério de
aproximação em mm. Assim, poderá ser conseguido um comportamento de aproximação
apropriado para uma aplicação de cola, mesmo quando a velocidade de trajetória é elevada.
Quando o foco estiver no campo “Genau” (“Precisão”), poderá ser indicado quantos mm
antes de atingir o ponto de destino deverá começar a aproximação. Se a introdução for 0,
não haverá aproximação.
De resto, a instrução “KLIN” corresponde à instrução de movimento “LIN”.

Movimentos lineares (LIN) no parágrafo 1.3.2.

1.4.1.3 Movimento circular (KCIRC)


Também a função KCIRC é selecionada, exclusivamente, através dos campos “+” ou “--” da
statuskey que se encontra em baixo, do lado direito.
Ao contrário do movimento circular normal CIRC nos movimentos KCIRC é indicado o
critério de aproximação em mm. Assim, poderá ser conseguido um comportamento de
aproximação apropriado para uma aplicação de cola, mesmo quando a velocidade de
trajetória é elevada.
Quando o foco estiver no campo “Genau” (“Precisão”), poderá ser indicado quantos mm
antes de atingir o ponto de destino deverá começar a aproximação. Se a introdução for 0,
não haverá aproximação.
De resto, a instrução “KCIRC” corresponde à instrução de movimento “CIRC”.

Os movimentos circulares (CIRC) são descritos no parágrafo 1.3.3.

Prog.Anwender: Bewegungsprogrammierung R1.3 03.99.00 pt

19 de 78
Programação de movimentos

1.4.2 Suchlauf (Movimento de busca)

1.4.2.1 Generalidades
Esta função poderá ser utilizada, p.ex., para realizar tarefas de paletização.
Com um movimento de busca, o robô executa um movimento linear em direção a um ponto.
Nesse caso, é programado o ponto de destino da busca e não o ponto de início.

No exemplo é, portanto, indicado o ponto P2. A busca inicia--se no ponto P1. Se o sensor
afastado ativar a entrada do sensor afastado (o campo “afastado”), a velocidade de busca
é reduzida para o valor “Vred”. “Vred” refere--se à velocidade de trajetória programada VB
[mm/s]. Caso não seja determinada qualquer entrada do sensor afastado ou “Vred” seja
definido com 100, a velocidade de busca não é reduzida. Se o sensor próximo ativar a
entrada do sensor próximo (próximo), a busca e, por conseguinte, o movimento do robô
são parados continuando a deslocação em direção ao ponto seguinte. No exemplo este
é o ponto P3.

Sensor afastado

P1 P2
LIN
P3
Direção de busca

Sensor próximo
Depósito de paletes

O ponto LIN ao qual é feita a deslocação, deverá encontrar--se por trás do depósito.

1.4.2.2 Programar uma busca


Depois de ter sido ativado o ponto de menu “Suchlauf” (“Movimento de busca”), através da
menukey “Instruç”, aparece na janela de programas o formulário inline referente à parametri-
zação da instrução para o movimento de busca.

Ao mesmo tempo, a ocupação da barra de softkeys sofre uma alteração.

Se o foco estiver num dos campo do formulário inline, poderá ativar os campos de introdução
por meio das teclas do cursor. O campo selecionado apresenta um fundo azul escuro.

Prog.Anwender: Bewegungsprogrammierung R1.3 03.99.00 pt

20 de 78
1 Programação de movimentos (continuação)

Na tabela seguinte são apresentados os campos de introdução, incluindo a função e as


gamas de valores destes.

Desig. do Função Gama de valores


campo.
1 a 2000 mm/s
VB Velocidade de trajetória
(Predefinição 1750 mm/s)
Wzg Número da ferramenta a utilizar 1 a 16 (Predefinição 1)
Fern Entrada do sensor afastado 1 a 1024 (Predefinição 1)
VRED Redução de velocidade 1 a 100 % Predefinição 10%)
Nah Entrada do sensor próximo 1 a 1024 (Predefinição 1)

Os valores dos campos de introdução numéricos poderão ser alterados, por meio do campo
numérico ou a statuskey “Mais/menos”.

Através da softkey “InterrInst”, a programação da instrução de movimento poderá ser


cancelada, a qualquer momento, sem que os dados fiquem memorizados. A tecla “ESC” tem
a mesma função.
ESC

Se premir a softkey “Coord”, são memorizadas as coordenadas atuais do robô.

Depois de terem sido realizadas todas as parametrizações, prima a softkey “Instruç.OK” ou


a tecla “Enter”. Os dados são memorizados, o formulário é fechado e a instrução é introdu-
zida na listagem, na posição onde se encontra o cursor.

Prog.Anwender: Bewegungsprogrammierung R1.3 03.99.00 pt

21 de 78
Programação de movimentos

Prog.Anwender: Bewegungsprogrammierung R1.3 03.99.00 pt

22 de 78
2 Programação PLC

2 Programação PLC
2.1 Concepção básica
2.1.1 Generalidades
Este capítulo permite ficar com uma idéia geral em relação à concepção que serviu de base
às instruções PLC disponíveis, às suas funções e à programação.
No meio de um programa poderá acrescentar a uma instrução de movimento as chamadas
instruções PLC. Estas instruções são executadas em função do trigger PLC.

Outras informações relacionadas com o trigger encontram--se no parágrafo 2.6.3

O significado dos símbolos, pictogramas e tipos de letra especiais é explicado no capítulo


[Acerca desta documentação].

2.1.2 Selecionar um programa


A fim de poder acrescentar a uma instrução de movimento algumas instruções de PLC, em
primeiro lugar, o programa terá de estar aberto. A softkey “Selecionar” permite colocar o pro-
grama no display. A seguir, use as teclas “” ou “” e coloque o cursor de edição na linha,
abaixo da qual pretende introduzir as novas instruções de comando.

A nova linha de programa é sempre introduzida na linha que se encontra por baixo do
cursor de edição.

Cursor de edição

Ponteiro de passos (ponteiro de programa)

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

23 de 78
Programação PLC

2.1.3 Abrir PLC


Depois de ter entrado no programa selecionado, terá de ser aberta a Fold respetiva de um
ponto programado, o que se realiza através da softkey “abrir PLC” que se encontra no bordo
inferior do display. A seguir, podem ser ativadas as respetivas instruções do PLC do ponto:

As instruções PLC têm o significado seguinte:

Saídas, marcas e flags (ver parágrafo 2.4.2);

A softkey “fechar PLC” fecha a Fold pertencente ao ponto programado, ao mesmo tempo
que a barra de softkeys é comutada novamente para a definição padrão. Desta forma, as
instruções PLC tornaram--se inacessíveis;
Condições de espera e deslocação (ver parágrafo 2.5);

Macros, subprogramas, funções de pinça, Laço MACRO/UP (ver parágrafo 2.3);

Através desta softkey é facultado o acesso a outros comandos PLC;

Esta tecla repõe novamente a barra de softkeys anterior;

Saídas de impulsos (ver parágrafo 2.4.7);

Comparação aritmética (ver parágrafo 2.4.6);

Parar temporizador (ver parágrafo 2.4.5);

Iniciar temporizador (ver parágrafo 2.4.4);

Contadores e saídas binárias (ver parágrafo 2.4.3);

Saída analógica, funções tempo -- distância, oscilar (ver parágrafo 2.6);

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

24 de 78
2 Programação PLC (continuação)

Como alternativa, os comandos PLC também poderão ser selecionados através do


menu “Instruç” e dos submenus “MAKRO/UP/Pinça”, “SPS ==>”, “Esperar/FB” e
“ANA/BS/Oscilar”

Instruções PLC de ponto

Caso no menu “Instruções” seja selecionada uma instrução de PLC referente ao ponto,
sem ter sido aberta uma Fold para a instrução de PLC, é emitida a mensagem de erro
“Comando não permitido”.

Todos os instruções PLC de ponto definidos com números de linha são executados no
ponto programado. É possível efetuar uma deslocação da execução no tempo, na direção
do ponto definido, através do trigger do PLC.
Caso antes dos instruções PLC de ponto numerados haja comandos não numerados, os
não numerados são executados a caminho do ponto programado. Este processo realiza--
se de forma assíncrona em relação ao trigger do PLC de ponto. Destes comandos fazem
parte, p.ex., “TD” e “FB_Onl”.
Caso depois dos instruções PLC de ponto numerados haja comandos não numerados,
os comandos não numerados também só são executados depois de terem sido executa-
dos os numerados, no ponto programado. Destes comandos faz parte, p.ex., o “UP”.

2.1.4 Formulários inline


Os comandos pretendidos poderão ser introduzidos, ativando a respetiva função e editando
o formulário inline seguinte. Em baixo é apresentado um formulário inline destinado ao
comando “SPSMAKRO”:

O foco encontra--se sempre no campo ativo do formulário inline, isto é, o campo ativo
apresenta um fundo azul escuro e pode ser alterado. Com a ajuda das teclas “” ou “”
poderá mover o foco, colocando--o nos vários campos de seleção ou entrada.

Se o foco se encontrar num campo de entrada aberto, onde há várias possibilidades de


escolha, as teclas de cursor “” ou “” movem o foco para o campo seguinte para o
campo anterior do formulário inline.

As entradas nos campos poderão ser realizadas, utilizando os métodos seguintes:


-- premir a statuskey “p.cima/p.baixo”. A definição desta statuskey depende das
entradas possíveis no campo ativo;
-- premir as softkeys na barra de softkeys. A definição destas softkeys também é
alterada, consoante as entradas possíveis;
-- introduzir a primeira letra no teclado do VKCP. Se a tecla for premida várias vezes,
são apresentadas, sucessivamente, as opções que começam com a mesma letra.

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

25 de 78
Programação PLC

Caso seja introduzido no campo de um formulário inline um valor que ultrapassa o valor
máximo permitido, movendo depois o foco, aparece na janela de mensagens uma
chamada de atenção, e no campo é introduzido o valor máximo possível.
As duas softkeys “novo OP” e “Apagar OP” permitem a criação ou a anulação de condições
adicionais (operadores e operandos) de um formulário inline. Estas softkeys só se encon-
tram disponíveis na barra de softkeys, caso o foco (o campo sobre um fundo azul escuro)
se encontre num campo de operador.
Depois de premir a tecla “novo OP”, o formulário inline é aumentado, uma vez que é acres-
centada uma nova condição. O operador novo é introduzido sempre a seguir ao campo que
tenha sido selecionado mediante o foco. Um comando só poderá ser executado, desde que,
p.ex., haja um sinal em duas entradas.
Formulários inline aumentados

O comando “Apagar OP” apaga o operador ou o operando, onde se encontra o foco.

O tipo e o número de campos de seleção ou de entrada de um formulário inline dependem


da respetiva operação ativada. Os operadores adicionais “_” e “!” encontram--se
disponíveis, desde que não se utilizem as constantes booleanas “LIG” ou “DESL”.

Alguns exemplos encontram--se na descrição em relação às várias instruções.

Através da tecla “Enter”, o formulário inline é fechado e as entradas são memorizadas.


Com “ESC” poderá cancelar a entrada, a qualquer momento, e fechar o formulário inline,
sem que os valores sejam memorizados.
ESC

2.1.5 Outros

Os comandos de movimento que incluem uma ou várias instruções PLC, poderão


apresentar as terminações de identificação seguintes:
F, quando estão incluídas condições de movimento Online;
P, quando estão incluídas instruções PLC de ponto, definidas por uma
numeração de linha (p.ex. “A1=LIG”, “Warte bis / Zeit”, “Makro”, etc).
U, quando está incluído um subprograma.

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

26 de 78
2 Programação PLC (continuação)

2.2 Vista geral


Deste parágrafo consta um breve resumo sobre os elementos admissíveis, gamas de
valores, operadores e definições gerais.

2.2.1 Elementos, operadores, prioridade


Elementos
E1 ... E1024 Entradas Operando booleano
A1 ... A1024 Saídas Operando booleano
M1 ... M24 Marcas Operando booleano
F1 ... F999 Flags Operando booleano
T1 ... T10 Flags de temporizador Operando booleano
S1 ... S32 Flags de sensor Operando booleano
num Número Operando aritmético
i1 ... i10 Contador de números inteiros Operando aritmético
bin1 ... bin10 Saída binária Operando aritmético
t1 ... t10 Temporizador Operando aritmético
ana1 ... ana8 Saídas analógicas Operando aritmético

Operadores
+ ou Operador booleano
& e Operador booleano
( parêntese aberto Operador
) parêntese fechado Operador
+ mais Operador aritmético
-- menos Operador aritmético
* vezes Operador aritmético
/ dividido Operador aritmético
> maior Operador de comparação
< menor Operador de comparação
= igual Operador de comparação
! não Operador de comparação
EIN (LIGADO) ou ? Constante booleana
AUS (DESLIGADO) Constante booleana

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

27 de 78
Programação PLC

Prioridade dos operadores


! não Operador comparativo
*, / vezes, dividido Operador aritmético
+, -- mais, menos Operador aritmético
& e Operador booleano
+ ou Operador booleano
==, <, >, <=, >=, <> igual, inferior, superior, não Operador de comparação
igual

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

28 de 78
2 Programação PLC (continuação)

2.2.2 Definições

Operador booleano Operador aritmético Operador de comparação


+ + >

& -- <

* =

/ !
Operando booleano Operando aritmético

EIN INT Konst

AUS i1...10

! A1...1024 bin1...10

E1...1024 t1...10

M1...24 ana1...8
F1 ...999

T1...10

S1...32
EIN

Condição AUS

( ! A1...1024 )

E1...1024

M1...24

F1 ...999

T1...10

S1...32
Operação booleana

( Operando )
booleano
Operador Operando
( )
booleano booleano

(máx. 11 operandos)

Operação aritmética

Operando
aritmético
Operador Operando
aritmético aritmético

(máx. 11 operandos)

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

29 de 78
Programação PLC

2.2.3 Gamas de valores dos operadores aritméticos num, i, bin, t e ana

Operando Valor Saída


num --99999 ... +99999 número, p.ex. “12”
i1 ... i10 --9999 ... +9999 número inteiro, p.ex.“15”
bin1 ... bin10 --9999 ... +9999 número binário, p.ex.,
“10011010”
t1 ... t10 --99999 ... +99999 In [1/10s] p.ex. “300”
ana1 ... ana8 --9999 ... +9999 In [mV] p.ex. “3500”

Comparação entre num, i, t, e ana

num = 5
F1 = ( num = i1 ) => “TRUE”
i1 = 5

num = “1000”
num = 1000
F1 = ( num = t1 ) => “FALSE”
t1 = 1000 ms = 10 * 1/10s t1 = “10” 1/10s

n = 1000
F1 = ( num = ana1 ) => “TRUE”
ana1 = 1000 mV

Mais informações sobre o tema “Comparação aritmética” encontram--se no parágrafo


2.4.6.

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

30 de 78
2 Programação PLC (continuação)

2.3 Ativações de macros e subprogramas e instruções de pinça


2.3.1 Seleção
As funções MAC/SP/P só podem ser utilizadas, se tiver sido selecionado um programa e
aberta uma Fold (relativamente a este assunto, ver 2). A seguir, tem duas hipóteses à esco-
lha:
Premir a menukey “Instruç” e selecionar o menu “MAKRO/UP/Pinça” e depois o comando
pretendido:

ou

Premir a softkey “MAK/UP/Z” e escolher depois a opção pretendida na barra de softkeys:

O tipo e o número de campos de seleção ou de entrada de um formulário inline dependem


da respetiva operação ativada.

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

31 de 78
Programação PLC

2.3.2 MAKRO (ativação da macro)


Numa macro poderá resumir instruções PLC utilizadas com freqüência.

Tenha em atenção as normas para macros. As macros estão predefinidas pelas normas.
Se uma macro for ativada como instrução de PLC, não é possível fazer a aproximação!

A macro é executada, quando a avaliação da expressão booleana tiver como resultado “EIN”
(LIGADO). Desta forma, uma macro poderá ser ativada, em função de determinadas
condições. Uma macro também poderá incluir outras macros (até um máximo de 9).
Esta função baseia--se na sintaxe geral seguinte:
SPSMakro 0...99 = expressão bool

Depois de ter sido selecionada a softkey “MAKRO”, é aberto o formulário inline seguinte:

Desig. de Função Gama de valores


campo
SPSMakro Número da macro 0...99
= Operador _, (
Operador *1) _, !
EIN (LIG), E Tipo de operando EIN (LIG), AUS (DESL), E, A, M, F, T, S
32 Número de operando *1) E (1...1024), S (1...1024),
M (1...24), F (1...999), T (1...10), S (1...32)
Operador _, )
*1) => não indicado com o tipo de operando “EIN” (LIG), “AUS” (DESL)

Exemplo

Aqui é iniciada a SPSMAKRO (PLC de MAKRO) 1, desde que na entrada 32 se verifi-


que um sinal, isto é, quando for atribuído à entrada o valor “lógico 1” ou “TRUE”.

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

32 de 78
2 Programação PLC (continuação)

2.3.3 MakroSaw (Macro de seleção do passo)


Caso a execução normal do programa seja interrompida pelo operador, p.ex., porque este
pretende alterar o programa, é aplicada a macro de seleção do passo. Logo que o operador
prima a softkey ”Seleção de passo”, é executada a macro ”MakroSaw”. Com essa macro
é possível colocar as saídas críticas num estado não crítico, o que tem uma especial
importância, quando se trata, p.ex., de bloquear dispositivos ou robôs.
Em primeiro lugar terá de ser selecionado ou editado um programa. Depois de o cursor de
edição ter sido colocado na linha pretendida e de premir a softkey ”Seleção de passo”, é ex-
ecutada a macro ”MakroSaw” e o ponteiro de programa amarelo é colocado na mesma linha.
A própria macro de seleção do passo pode ser alterada, editando o ficheiro “Makrosaw.src”.
Na macro de seleção do passo só podem ser introduzidas atribuições booleanas referentes
a saídas ou flags. É permitido um máximo de 30 instruções.

Mais informações acerca da seleção do passo, dos cursores de edição e de programa e da


indicação dos vários ficheiros “Seqüência”, “Macro” e “SP” encontram--se na documenta-
ção [Operação] no capítulo [Navigator].

A macro de seleção de passos encontra--se, por defeito, no diretório “C:\KRC\Robo-


ter\KRC\R1\Makros” com o nome de ficheiro “Makrosaw.src”.

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

33 de 78
Programação PLC

2.3.4 MakroSPS (PLC de Makro)

A macro “MakroSPS” (PLC de Makro) é executada, ciclicamente, num segundo plano, e,


ao surgir um erro, permite desencadear uma determinada ação. Assim, na figura seguinte
como exemplo, é ativada na imagem seguinte e após uma mensagem de erro da unidade
de comando de soldadura, a entrada E7, isto é, é--lhe atribuído o valor lógico 1 ou TRUE.
Como conseqüência, a macro ativa a saída 11, a qual poderá ser avaliada pelo PLC ligado.

PLC

com. de sold.
Robby 1 envia
mensagens
de erro

A100

Robby 2 A200 E7
A111

Robby 3

A macro “MakroSPS” encontra--se, por defeito, no diretório “C:\KRC\Roboter\KRC\R1\


Makros e tem o nome “Makrosps.src”.
Esta macro é interrogada ciclicamente (ou seja, permanentemente) e tem o mesmo
comportamento como um PLC livre sendo necessário parametrizá--la para a utilização.
Tenha em atenção as normas para a elaboração do PLC de macro.

Uma instrução PTP, LIN, CIRC, KLIN ou KCIRC não é permitida na “MakroSPS”. Caso
seja feita a respetiva tentativa, é emitida a mensagem de erro “Instrução não permitida na
macro”.
Também não são permitidas determinadas instruções de PLC de ponto. Isto refere--se no-
meadamente aos comandos “MAKRO/UP/Pinça”, “Esperar/FB”, “SPS==> impulso” e
“ANA/BS/Oscilar”. Caso se tente introduzir estes comandos, é emitida a mensagem de
erro “Instrução não permitida em PLC de MAKRO”

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

34 de 78
2 Programação PLC (continuação)

2.3.5 UP (Ativação do subprograma)


A utilização de subprogramas permite uma maior clareza dos programas /seqüências e
reduz o volume de trabalho necessário para efeitos de programação. Os subprogramas
poderão ser ativadas quantas vezes for necessário.

Os comandos de movimento, as instruções de PLC de ponto, macros e outros subprogra-


mas podem ser utilizados.

A função só é executada quando o resultado da expressão booleana equivale a “EIN”


(“LIGADO”).
Esta função baseia--se na sintaxe geral seguinte.

UP 1...99 = expressão bool

Depois de ter sido selecionada a softkey “UP”, é aberto o formulário inline seguinte:

Desig. de Função Gama de valores


campo
UP Número de subprograma 1...99
= Operador _, (
Operador *1) _, !
EIN (LIG), Tipo de operando EIN (LIG), AUS (DESL), E, A, M, F, T, S
E
1 Número de operando *1) E (1...1024), A (1...1024),
M (1...24), F (1...999), T (1...10), S (1...32)
Operador _, )
*1) => não indicado com o tipo de operando “EIN” (LIG), “AUS” (DESL)

Exemplo

O subprograma 1 é iniciado quando a entrada 1 receber um sinal, isto é, quando for


atribuído à entrada o valor “lógico 1” ou “TRUE”.

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

35 de 78
Programação PLC

2.3.6 ZANGE (Instruções de pinça)


Com este comando são ativadas as saídas que desencadeiam determinadas funções da
pinça.
Esta função baseia--se na sintaxe geral seguinte:

Operando
Zange 1 .. 16 AUF =
booleano
Operador Operando
ZU booleano booleano
AUF (ABERTA)
ZU (FECHADA) máx. 11 operandos

Depois de ter sido selecionada a softkey “ZANGE=”, é aberto o formulário inline seguinte.

Desig. de Função Gama de valores


campo
ZANGE Número de pinça 1...16
(PINÇA)
AUF Estado ABERTA, FECHADA
(ABERTA)
= Operador _, (
Operador *1) _, !
EIN (LIG), Tipo de operando EIN (LIG), AUS (DESL), E, A, M, F, T, S
E
1 Número de operando *1) E (1...1024), A (1...1024),
M (1...24), F (1...999), T (1...10), S (1...32)
Operador _, )
*1) => não indicado com o tipo de operando “EIN” (LIG), “AUS” (DESL)

Exemplo

A pinça 1 é aberta, quando não existe qualquer sinal na entrada 25 (“lógico 0” ou


“FALSE”) E um sinal na entrada 26 (“lógico 1” ou “TRUE”).

Mais informações acerca do tema “Pinça” encontram--se na documentação [Configura-


ção], no capítulo [Configurar o sistema].

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

36 de 78
2 Programação PLC (continuação)

2.3.7 Laço MAKRO/UP (Instruções de loop)


Através deste instrução poderão ser controladas repetições de subprogramas e macros.

Antes de ser ativada a respetiva macro ou o respetivo subprograma, será realizado um


ensaio que tem por finalidade constatar se se verifica uma das condições de cancelamento
“N=” ou “STOP=”. Se este for o caso, o comando de loop é terminado.

Desig. do Função Gama de valores


campo
Repeat Tipo UP, MAKRO
1 Número do subprograma UP (1...99), MAKRO (0...99)
ou da macro
N= Operando aritmético num, i, bin, t, ana
(repetições)
1 Número de repetições num (1...99999), i (1...10), bin (1...10),
t (1...10), ana (1...8)
STOP= Operador *1) _, !
EIN (LIG), Tipo de operando EIN (LIG), AUS (DESL), E, A, M, F
E
1 Número de operando *1) E (1...1024), A (1...1024),
M (1...24), F (1...999), T (1...10), S (1...32)
*1) => não indicado com o tipo de operando “EIN” (LIG), “AUS” (DESL)

Exemplo:

No exemplo acima indicado, o subprograma ”UP5” é executado até no máximo, 12 vezes,


mas só até um sinal (“TRUE” ou “lógico 1) ser ativado na entrada 1.
A verificação da instrução de cancelamento realiza--se sempre antes da nova execução
do SP.

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

37 de 78
Programação PLC

2.4 Instruções PLC


2.4.1 Seleção
As instruções de PLC só estão disponíveis, desde que tenha sido selecionado um programa.
Depois, existem duas hipóteses para selecionar as instruções PLC:

Premir a menukey “Instruç” e selecionar o menu “SPS==>” e aí o submenu pretendido:

ou

Premir sucessivamente as softkeys pretendidas:

O tipo e o número de campos de seleção ou introdução dependem da respetiva operação


ativada.

A instrução “Flag de posição” só é acessível através da menukey “Instruç” e do submenu


“SPS==>”.

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

38 de 78
2 Programação PLC (continuação)

2.4.2 A/M/F (Saídas / marcas / flags)


Por meio de operandos, as saídas, marcas ou flags poderão ser combinados obedecendo
a uma lógica. As marcas são interrogadas ciclicamente, as saídas e flags só no momento
da atribuição.
Esta função baseia--se na sintaxe geral seguinte:

Operando
A1 .. 1024 =
booleano
Operador Operando
M1 .. 24 booleano booleano

F1 .. 999 máx. 11 operandos

Depois de ter sido selecionada esta softkey, é aberto o formulário inline seguinte:

Desig. do Função Gama de valores


campo
A Tipo A, M, F
1 Número A (1...1024), M (1...24), F (1...999)
= Operador _, (
Operador *1) _, !
EIN (LIG), Tipo de operando EIN (LIG), AUS (DESL), E, A, M, F, T, S
E
1 Número de operando *1) E (1...1024), A (1...1024),
M (1...24), F (1...999), T (1...10), S (1...32)
Operador _, )
*1) => não indicado com o tipo de operando “EIN” (LIG), “AUS” (DESL)

Exemplo

Neste exemplo é ativada a saída 3, desde que haja


S na entrada 3 E na saída 7 um sinal (“TRUE”), OU
S na entrada 3 E na saída 11 um sinal (“TRUE”).

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

39 de 78
Programação PLC

2.4.3 i/bin (Contadores e saídas binárias)


Por meio desta instrução PLC poderá programar variáveis de números inteiros como
contador ou dar saída a uma expressão aritmética em forma binária, sobre uma seqüência
definida de saídas.
Este tipo de instruções é utilizado para contar pontos de soldadura ou para dar saída a
números de programas a outros aparelhos ou unidades de comando.

Esta função só é executada, desde que se cumpre a condição.

Esta função baseia--se na sintaxe geral seguinte.


expressão
i1 ... 10 condição =
aritmético

bin1..10

Depois de ter sido selecionada esta softkey, é aberto o formulário inline seguinte.

Desig. do Função Gama de valores


campo
i Operador aritmético i, bin
1 Número i (1...10), bin (1...10)
Operador *1) _, !
?, E Tipo de operando ?, EIN (LIG), AUS (DESL), E, A, M, F, T, S
1 Número de operando *1) E (1...1024), A (1...1024),
M (1...24), F (1...999), T (1...10), S (1...32)
Operando aritmético num, i, bin, t, ana
1 Número num (1...9999), i (1...10), bin (1...10),
t (1...10), ana (1...8)
*1) => não indicado com o tipo de operando “?”, “EIN” (LIG), “AUS” (DESL)

Exemplo

Aqui é ativado o contador integral 4, quando na marca 15 estiver ativado um sinal (“lógico
1” ou “TRUE”).

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

40 de 78
2 Programação PLC (continuação)

2.4.4 t= (Arrancar o temporizador)


Através da função “t=” é possível atribuir a um temporizador um valor por defeito e iniciá--lo,
simultaneamente, em função de uma determinada condição.
Esta função baseia--se na sintaxe geral seguinte.
t1 ... 10 condição = [1/10 seg]

Depois de ter sido selecionada esta softkey, é aberto o formulário inline seguinte:

Desig. do Função Gama de valores


campo
t Número do temporizador 1...10
Operador *1) _, !
?, E Tipo de operando ?, EIN (LIG), AUS (DESL), E, A, M, F, T, S
1 Número de operando *1) E (1...1024), A (1...1024),
M (1...24), F (1...999), T (1...10), S (1...32)
= Operando aritmético num, i, bin, t, ana
1 Número num (1...99999), i (1...10), bin (1...10),
t (1...10), ana (1...8)
*1) => não indicado com o tipo de operando “?”, “EIN” (LIG), “AUS” (DESL)

Exemplo

O temporizador 5 é iniciado com o valor inicial de 30 s, quando a marca 25 não estiver


colocada (“FALSE” ou “lógico 0”). Fica em funcionamento até ser executada a instrução
“t=STOP”.

Ao temporizador poderá ser atribuído tanto um valor inicial positivo, como um valor inicial
negativo.

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

41 de 78
Programação PLC

2.4.5 t=STOP (Parar um temporizador)


Através da função “t--STOP” é possível programar a paragem de um temporizador, em
função de uma determinada condição.
Esta função baseia--se na sintaxe geral seguinte.

t1 ... 10 condição = STOP

Depois de ter sido selecionada esta softkey, é aberto o formulário inline seguinte.

Desig. do Função Gama de valores


campo
t Número de paragem do 1...10
temporizador
Operador *1) _, !
?, E Tipo de operando ?, EIN (LIG), AUS (DESL), E, A, M, F, T,S
1 Número de operando *1) E (1...1024), A (1...1024),
M (1...24), F (1...999), T (1...10), S (1...32)
*1) => não indicado com o tipo de operando “?”, “EIN” (LIG), “AUS” (DESL)

Exemplo

O temporizador 1 é parado quando na entrada 1 estiver ativado um sinal (“lógico 1” ou


“TRUE”).

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

42 de 78
2 Programação PLC (continuação)

2.4.6 Comparação (Comparação aritmética)


Através da função “Comparação”, poderá programar comparações aritméticas. O resultado
da comparação fica memorizado num flag cujo estado poderá ser interrogado.
Esta função baseia--se na sintaxe geral seguinte:
Operando Operador de Operando
F1...999 = aritmético comparação aritmético

Depois de ter sido selecionada esta softkey, é aberto o formulário inline seguinte.

Desig. do Função Gama de valores


campo
F Número de Flags 1...999
= Operando aritmético num, i, bin, t, ana
1 Número num (1...9999), i (1...10), bin (1...10),
t (1...10), ana (1...8)
> Operador de comparação >, <, =, !
Operando aritmético num, i, bin, t, ana
1 Número num (1...9999), i (1...10), bin (1...10),
t (1...10), ana (1...8)

Exemplo

Aqui é ativado o flag 3, quando o contador integral 3 ultrapassar o integral 2.

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

43 de 78
Programação PLC

2.4.7 Impulso (Saídas de impulso)


As saídas de impulso são executadas acompanhando o movimento, e durante o tempo
ajustado são mantidas no estado lógico. Uma ativação ou um reset assíncronos ou um
trigger posterior da saída definida é possível.

A utilização na MakroSPS não é possível.

Depois de ter sido selecionada esta softkey, é aberto o formulário inline seguinte.

Desig. do Função Gama de valores


campo
Puls A Saída de impulso que é 1...1024
possível ativar
Operador *1) _, !
EIN (LIG) Tipo de operando EIN (LIG), AUS (DESL), E, A, M, F, T, S
1 Número de operando *1) E (1...1024), A (1...1024),
M (1...24), F (1...999), T (1...10), S (1...32)
Zeit: 1 Tempo que o estado 0...300 1/10Seg
lógico deve ser mantido
*1) => não indicado com o tipo de operando “EIN” (LIG), “AUS” (DESL)

Esta função poderá ser ativada, p.ex., para guiar um outro perno em síncrono com o
movimento do robô, durante a soldadura de pernos.

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

44 de 78
2 Programação PLC (continuação)

2.4.8 Flags em função da posição (MakroSPS)


O comando “Flag de posição” só é acessível através da seleção do menu “Instruç” e seus
submenus “SPS==>”. A instrução destina--se a colocar flags. Quando o eixo atinge uma
determinada posição, através deste flag poderá ser desencadeada uma determinada ação.

Esta função só poderá ser utilizada na macro “MakroSPS”.

Mais informações sobre a MakroSPS encontram--se no parágrafo 2.3.4.

Depois de ter sido selecionada a opção de menu “Flag de posição”, é aberto o formulário
inline seguinte:

Desig. do Função Gama de valores


campo
F Flag 1...999
= Eixo AXIS_1...6, EXAX_1...6
> Operador de comparação <, >, =, !
Operando aritmético num, i, bin, t, ana
20 Valor específico do eixo num (1...9999), i (1...10), bin (1...10),
em graus t (1...10), ana (1...8)

Exemplo

Neste exemplo é ativado o flag 1, logo que o eixo atinge ou ultrapassa um valor específico
do eixo de 20.

Mais informações sobre a indicação dos vários ficheiros “Folge”, “Makro” e “UP” encon-
tram--se na documentação [Operação] no capítulo [Navigator].

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

45 de 78
Programação PLC

2.5 Instruções de espera e de movimento


2.5.1 Seleção
Estes comandos de PLC também só se encontram disponíveis depois de premir a softkey
“Abrir PLC” (mais informações no parágrafo 2).

Prima a menukey “Instruç” e selecione o menu “Esperar/FB” e aí o submenu necessário:

ou

Prima a softkey “Esperar/FB” e a seguir a função pretendida:

Com a ajuda da instrução de espera poderá esperar--se


G um tempo determinado,
G uma condição de espera ou
G uma condição de movimento.
Estas funções são utilizadas, por exemplo, na soldadura de pontos ou para o intertrava-
mento com outros robôs e aparelhos.
Estas instruções de espera são executadas no ponto no qual foram programadas.

Uma exceção constitui a condição de espera ONLINE (W onl). A verificação desta instru-
ção realiza--se a caminho ao ponto no qual está programada a “Espera--onl”.

O tipo e o número de campos de seleção e introdução dos formulários inline depende da


respetiva função ativada.

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

46 de 78
2 Programação PLC (continuação)

2.5.2 FB ONL (Condição de movimento)


O robô só se movimenta enquanto estiver preenchida a condição de movimento progra-
mada. Esta condição também serve para uma paragem guiada do robô, quando já não são
preenchidas determinadas condições exteriores.
Esta função é utilizada, p.ex., para bloquear um robô, mas também para parar, no caso de
surgir alguma avaria.

A função FB ONL é ensaiada durante o movimento. Por esta razão, o robô também poderá
parar entre os vários pontos.

Esta função baseia--se na sintaxe geral seguinte.


FB ONL = expressão bool

Depois de ter sido selecionada a softkey “FB ONL”, é aberto o formulário inline seguinte.

Desig. do Função Gama de valores


campo
FB ONL Operador _, (
Operador *1) _, !
EIN (LIG), Tipo de operando EIN (LIG), AUS (DESL), E, A, M, F, T, S
E
1 Número de operando *1) E (1...1024), A (1...1024),
M (1...24), F (1...999), T (1...10), S (1...32)
Operador _, )
*1) => não indicado com o tipo de operando “EIN” (LIG), “AUS” (DESL)

Exemplo

FB_ONL E1 ativa
FB_ONL E1 Rampa de frenagem

P2

P1 Ponto de paragem

A instrução “FB ONL -- E1” mantém o robô parado, enquanto a


entrada 1 estiver em “FALSE” ou “lógico 0”. P3

FB ONL encontra--se ativa a caminho do ponto, no qual foi programada. Fora disso, até
ser dada uma nova instrução FB.
No final do programa é feito o reset da instrução FB.

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

47 de 78
Programação PLC

2.5.3 W onl/bis (Condição de espera)

Com a ajuda desta instrução poderá programar condições de espera.

Esta função baseia--se na sintaxe geral seguinte.

WARTE bis (até) expressão bool

ONL

Depois de ter sido selecionada a softkey “W onl/bis”, é aberto o formulário inline seguinte.

Desig. do Função Gama de valores


campo
WARTE Tipo onl, bis
Operador _, (
Operador *1) _, !
EIN (LIG), Tipo de operando EIN (LIG), AUS (DESL), E, A, M, F, T, S
E
1 Número de operando *1) E (1...1024), A (1...1024),
M (1...24), F (1...999), T (1...10), S (1...32)
Operador _, )
*1) => não indicado com o tipo de operando “EIN” (LIG), “AUS” (DESL)

Exemplo 1

se E1 = “TRUE”
Pv se E1 = “FALSE”

P2
WARTE ONL E1 ev. ponto de
P1
paragem
A instrução “WARTE ONL -- E1” já é ensaiada no ponto Pv. Caso se P3
verifique a condição naquele momento, a deslocação continua sem
mais ensaios. Caso contrário, realiza--se a paragem no P2.

O ponto de paragem é calculado no avanço, para que o robô pare exatamente no ponto
pretendido. No exemplo acima indicado, o ponto de paragem já é calculado no ponto Pv.

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

48 de 78
2 Programação PLC (continuação)

Exemplo 2

Rampa de frenagem
se E1 = “TRUE”

P2
WARTE bis E1
P1 Ponto de
paragem
Com a instrução “WARTE bis -- E1”, o robô pára no ponto P2. A se-
guir, realiza--se o controle de E1. Caso a avaliação lógica seja P3
“TRUE” (“lógico 1”), a deslocação continua.

Ao contrário do instrução “WARTE ONL”, com a instrução “WARTE bis” não poderá ser
feita a aproximação.

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

49 de 78
Programação PLC

2.5.4 W Tempo (Tempo definido)


Com a ajuda desta função poderá programar um tempo de espera definido.
A função está baseada na sintaxe geral seguinte:

WARTE Zeit (Tempo) expres. aritmética [1/10 seg]

Depois de ter sido selecionada a softkey “W Tempo”, é aberto o formulário inline seguinte:

Desig. do Função Gama de valores


campo
Wartezeit Operando aritmético num, i, bin, t, ana
(tempo de
espera)
Tempo 1/
10 segundo

Exemplo

Rampa de frenagem
ESPERA 300 * 1/10s

P2
P1 Ponto de paragem

“WARTEZEIT” pára o robô durante 300 * 1/10s, portanto,


durante 30 segundos. P3

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

50 de 78
2 Programação PLC (continuação)

2.5.5 VERR (Bloqueio)


A instrução de bloqueio é utilizada quando os espaços de trabalho de vários sistemas de
robô se sobrepõem uns aos outros.

Depois de premir a softkey “VERR”, é aberto um formulário inline que se destina à entrada
dos parâmetros necessários para a execução do comando de bloqueio:

Os números de bloqueio iguais não poderão ser encadeados uns nos outros!

Desig. do Função Gama de valores


campo
VERR. Números de bloqueio 1...8
ROB Nome de robô máximo 8 quaisquer caracteres
EIN (LIG) Tipo de operando EIN (LIG), AUS (DESL)
Warte bis Número de entrada E (1...1024)
E (espera
até E)
dann A Número de saída A (1...1024)
(depois S)
Prio Prioridade 1, 2

Exemplo

Zona de bloqueio

Rob 2
(Prioridade 2)

Rob 1
(Prioridade 1)

Quando os dois robôs tentam entrar, simultanea-


mente, numa zona de bloqueio, o robô 2 é blo-
queado, uma vez que lhe foi atribuída a prioridade
2.
O bloqueio torna--se ativo, quando na entrada 1 do robô 2 estiver ativado o sinal “TRUE”
ou “lógico 1”. Por conseguinte, na saída 1 é ativado “FALSE” ou “lógico 0”.

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

51 de 78
Programação PLC

2.5.6 FB PSPS (Condição de movimento)


O robô só se movimenta enquanto estiver preenchida a condição de movimento progra-
mada. Esta condição também serve para uma paragem guiada do robô, quando já não são
preenchidas determinadas condições exteriores.
Esta função é utilizada, p.ex., para bloquear um robô, mas também para parar, no caso de
surgir alguma avaria.
A função FB PSPS é interrogada durante o movimento.
Esta função baseia--se na sintaxe geral seguinte:
FB PSPS = expressão bool

Depois de ter sido selecionada a softkey “FB PSPS”, é aberto o formulário inline seguinte.

A condição de movimento FB PSPS está ativa a partir do ponto, no qual foi programada,
sendo válida até haver uma instrução FB nova. A FB PSPS sobrescreve a combinação
de uma FB ONL anteriormente programada.

Desig. do Função Gama de valores


campo
FB PSPS-- Operador _, (
Operador *1) _, !
EIN (LIG), Tipo de operando EIN (LIG), AUS (DESL), E, A, M, F, T, S
E
1 Número de operando *1) E (1...1024), A (1...1024),
M (1...24), F (1...999), T (1...10), S (1...32)
Operador _, )
*1) => não indicado com o tipo de operando “EIN” (LIG), “AUS” (DESL)

Exemplo

FB PSPS E1 não ativa


FB PSPS E1 Rampa de frenagem

P2

P1 Ponto de paragem

O instrução “FB PSPS -- E1” faz deslocar o robô, enquanto se


mantém na entrada 1 o sinal “TRUE” ou “lógico 1”. P3

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

52 de 78
2 Programação PLC (continuação)

2.5.7 Alternativa I--Bus


A função “Alternativa I--Bus” permite a desativação temporária de um segmento ou partici-
pante do I--Bus. Este comando é necessário, p.ex., quando um robô dispõe de um disposi-
tivo de mudança automático e na ferramenta a substituir se encontra um participante do
interbus. Caso contrário, a mudança da ferramenta iria provocar um erro de bus.

Desig. do Função Gama de valores


campo
IBG Número segmento IBus 1...256
Número do participante no 1...512
IBus
Operador *1) _, !
EIN (LIG), Tipo de operando EIN (LIG), AUS (DESL), E, A, M, F, T, S
E
1 Número de operando *1) E (1...1024), A (1...1024),
M (1...24), F (1...999), T (1...10), S (1...32)
*1) => não indicado com o tipo de operando “EIN” (LIG), “AUS” (DESL)
Exemplo

3.0
Terminal de bus 3
(fixamente montado
na ferramenta)

Terminal de bus 1 Terminal de bus 2

1.0 2.0

1.1 2.1

1.2 2.2
O segmento de interbus 3.0 é ignorado temporariamente, a fim de poder ser realizada a
mudança da ferramenta. Caso contrário, a interferência no interbus iria causar um erro
de bus durante a mudança da ferramenta.

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

53 de 78
Programação PLC

2.6 Saída analógica, funções tempo -- distância, oscilar


2.6.1 Seleção
As funções “ANA/BS/Oscilar só podem ser utilizadas desde que esteja aberta uma Fold
(mais pormenores ver parágrafo 2):

Prima a menukey “Instruç” e selecione o menu “ANA/BS/Oscilar” e a seguir o comando pre-


tendido:

ou

Prima a softkey “==>”, a seguir ”ana/BS/Pnd” e depois a opção pretendida na barra de


softkeys seguinte:

O tipo e o número de campos de seleção e de entrada de um formulário inline depende


da respetiva operação ativada.

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

54 de 78
2 Programação PLC (continuação)

2.6.2 Saída analógica


2.6.2.1 Generalidades
Depois de ter premido a softkey “ana/BS/Pnd”, poderá escolher entre as três opções
seguintes:

Através da saída analógica, as tensões analógicas poderão ser emitidas por meio da
unidade de comando. As tensões emitidas poderão ser
G constantes no tempo,
G dependentes da velocidade ou
G dependentes da deflexão de oscilação.

Estas funções são utilizadas, p.ex., para a dosagem da cola a parametrização na soldadura
a gás ou o comando dos níveis de pressão nas pinças de soldadura de pontos.
É possível ativar até 8 canais analógicos diferentes ao mesmo tempo, os quais também
poderão depender de determinadas condições.

As saídas analógicas são emitidas na unidade de comando VKR C1 apenas através de


um bus de campo.

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

55 de 78
Programação PLC

2.6.2.2 ana konst: (Tensão analógica constante)


Com a ajuda desta função poderá dar saída a uma tensão analógica constante no tempo.
Esta função baseia--se na sintaxe geral seguinte.
expres.
ana1 .. 8 condição = KONST: [mV]
aritmética

Depois de ter sido selecionada a softkey “ana konst:”, é aberto o formulário inline seguinte.

Desig. do Função Gama de valores


campo
ana Saída analógica 1...8
Operador *1) _, !
EIN (LIG), Tipo de operando ?, EIN (LIG), AUS (DESL), E, A, M, F, T, S
E
1 Número de operando *1) E (1...1024), A (1...1024),
M (1...24), F (1...999), T (1...10), S (1...32)
KONST: Operando aritmético num, i, bin, t, ana
3500 Tensão na saída --10000 ... +10000 [mV]
*1) => não indicado com o tipo de operando “?”, “EIN” (LIG), “AUS” (DESL)

Exemplo

Na saída analógica 3 são emitidos 10000 mV, desde que a marca 21 não esteja ativada
(“lógico 0” ou “FALSE”).

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

56 de 78
2 Programação PLC (continuação)

2.6.2.3 ana vprop: (Tensão analógica proporcional na velocidade)


Com a ajuda desta função é realizada uma saída analógica em função da velocidade.
Esta função baseia--se na sintaxe geral seguinte.

expres. expres.
ana1 .. 8 condição = vprop OFFS: [mV]
aritmética aritmética

Depois de ter sido selecionada a softkey “ana vprop:”, é aberto o formulário inline seguinte.

Se o foco se encontrar no campo ”ana”, encontra--se à disposição a softkey “Delay”. Através


desta poderão ser compensados os tempos mortos provocados pelo próprio processo,
como os que se verificam, p.ex., na colagem. O tempo de delay tanto poderá ser positivo
como negativo.

Desig. do Função Gama de valores


campo
ana Saída analógica 1...8
Operador *1) _, !
EIN (LIG), Tipo de operando ?, EIN (LIG), AUS (DESL), E, A, M, F, T, S
E
1 Número de operando *1) E (1...1024), A (1...1024),
M (1...24), F (1...999), T (1...10), S (1...32)
Vprop: Tipo num, i, bin, t, ana
Velocidade --9999 ... +9999 [mm/seg]
Offs Operando aritmético num, i, bin, t, ana
Tensão na saída --10000 ... +10000 [mV]
Delay Duração *2) --576 ... +576 [ms]
*1) => não indicado com o tipo de operando “?”, “EIN” (LIG), “AUS” (DESL)
*2) => só disponível depois de premir a softkey “Delay”

No campo Vprop é introduzida a velocidade em [mm/s] que corresponde à tensão de saída


máxima possível de 10000mV.
Para a saída analógica proporcional à velocidade só se encontram à disposição os canais
1...4.
Não é possível fazer a aproximação com saídas analógicas com delay ativado.

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

57 de 78
Programação PLC

Exemplo 1 (saída analógica)

A saída analógica proporcional à velocidade é ativada quando não se encontra ativada


a entrada 16 (isto é, esta terá de ser “FALSE” ou “lógico 0”). A saída analógica mantém--se
ativa, até ser desativada por uma saída analógica constante. O valor da saída analógica
é proporcional à velocidade atual do TCP do robô.
Um movimento analógico proporcional à velocidade só é possível com movimentos de
trajetória, mas não com PTP.

v in [mm/s]
500 [mm/s] = 10000 [mV]
+500

0 t [ms]

Exemplo 2 (Offset)
Para uma tarefa de colagem em que o robô trabalha com uma velocidade de 400mm/s,
é necessária uma tensão analógica de 5000mV. Um teste demonstra que a unidade de
comando da colagem só atinge um valor analógico interno de 0V, com uma tensão
analógica de --70mV do robô.

Como neste exemplo são necessários 5000mV (com 400mm/s), o robô teria de deslocar--
se com 800mm/s, a fim de poder atingir os 10000mV máximos possíveis. Este valor é
introduzido no formulário inline.

Uana [mV] vRob [mm/s] 5000 [mV] --70 [mV] Offset


4930 [mV]
5000
400
Saída analógica
vRob
0 t [ms]

Exemplo 3 (Delay analógico)

Neste caso, a unidade de comando da colagem arranca 85ms antes do robô com o respe-
tivo offset.

Uana in [mV] --85ms --70 [mV} Offset


5000
4930
Movimento do robô com offset
Unidade de comando da colagem t [ms]
0

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

58 de 78
2 Programação PLC (continuação)

Se a deslocação for realizada com uma velocidade superior à que corresponde à soma
dos campos “Vprop” e “Offs”, na janela de mensagem é emitida a respetiva mensagem
de informação. O robô não é parado.

“Vprop” é a velocidade à qual a saída analógica com offset = 0 iria atingir o valor máximo
de 10000mV.

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

59 de 78
Programação PLC

2.6.2.4 ana kst+p: (Tensão constante e desvio de oscilação)


Com a ajuda desta função é dada a saída a uma tensão constante à qual é adicionada uma
tensão que depende da posição ao oscilar.
Esta função baseia--se na sintaxe geral seguinte.
expres. expres.
ana1 .. 8 condição = KST+P: [mV] OSCILAÇÃO [mV]
aritmética aritmética

Depois de ter sido selecionada a softkey “ana kst+p”, é aberto o formulário inline seguinte.

Desig. do Função Gama de valores


campo
ana Saída analógica 1...8
Operador *1) _, !
EIN (LIG), Tipo de operando ?, EIN (LIG), AUS (DESL), E, A, M, F, T, S
E
1 Número de operando *1) E (1...1024), A (1...1024),
M (1...24), F (1...999), T (1...10), S (1...32)
KST+P Operando aritmético num, i, bin, t, ana
Tensão --10000 ... +10000 [mV]
Pendel: Operando aritmético num, i, bin, t, ana
(Oscilação:)
Tensão na saída --10000 ... +10000 [mV]
*1) => não indicado com o tipo de operando “?”, “EIN” (LIG), “AUS” (DESL)

Exemplo (Figura de oscilação “Triângulo”)

Tensão em [mV] 4250 [mV]


4250
+750 [mV]
3500
--750 [mV]
2750
0 t [ms]

A saída analógica só é ativada, desde que a entrada 1 seja “TRUE” ou “lógico 1”. A tensão
emitida situa--se entre os 2750mV e os 4250mV e depende da deflexão momentânea da
figura de oscilação.

Para a saída analógica em função da oscilação apenas se encontram à disposição os


canais 1...4.

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

60 de 78
2 Programação PLC (continuação)

2.6.3 BS -- Funções tempo -- distância


2.6.3.1 Generalidades
Premindo a softkey “ana/BS/Pnd” terá acesso às funções tempo -- distância.

Através das funções tempo -- distância, e a uma determinada distância ou num determinado
momento antes do ponto no espaço seguinte, terá a possibilidade de
G realizar saídas binárias/analógicas ou
G ativar saídas ou flags.
Estas funções aplicam--se à colagem, entre outras tarefas.

Existem 4 tipos de passos de movimento que poderão ser utilizados para a função tempo
-- distância:

Parágrafo Paragem VE
rel. (1) Paragem exata --> Paragem exata 0 --> 0 *1)
rel. (2) Paragem exata --> Ponto de aproximação 0 --> 100 *1)
rel. (3) Ponto de aproximação --> Ponto de aproximação 100 --> 100 *1)
rel. (4) Ponto de aproximação --> Paragem exata 100 --> 0 *1)
*1) O segundo valor VE é introduzido no formulário inline do respetivo
comando de movimento.

Os formulários inline para as funções tempo -- distância dispõem da opção “Schaltpkt:”


(“Ponto comutação”). O primeiro valor indica a distância ao ponto de trigger, enquanto o
segundo constitui um tempo de delay adicional, o qual tanto poderá ser positivo como
negativo. De importância fundamental é o tempo de delay para aplicações de cola, visto que
assim poderá ser compensado o tempo morto da unidade de comando da colagem.
Distância Delay

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

61 de 78
Programação PLC

Função tempo -- distância com PTP

P2 x x P3
VE=0 x rel. (2) VE=100

rel. (1) rel. (3)

rel. (4)
P1 x P4 x x P5
VE=0 VE=100 VE=0

Com a indicação “Schaltpkt ***[mm]” e com os movimentos PTP é sempre esperado um


0. Isto significa que na função tempo -- distância ”Paragem exata”, o trigger (Distance=1)
se refere sempre ao ponto de destino, enquanto que para “Aproximação” é sempre rele-
vante o centro da zona de aproximação.

Os dois exemplos seguintes deverão tornar este assunto mais explícito:

Paragem exata
Com a paragem exata (ponto de trigger), o tempo de trigger atua sempre na direção
negativa em relação ao ponto de trigger. O limite constitui o ponto anterior ou o fim da zona
de aproximação anterior.

Ponto de trigger
(Distance=1)
x
Negativo

Zona de Zona de
aproximação aproximação
Ponto de trigger
(Distance=1)
x x
Negativo

Aproximação
Aquando da aproximação, o ponto de trigger situa--se no centro da zona de aproximação.
O tempo de trigger poderá ser emitido com um valor negativo ou um valor positivo. Os
limites constituem o início ou o fim da zona de aproximação.

Ponto de trigger
-- (Distance)
x
+

Zona de
aproximação Zona de
aproximação
--
x x
Ponto de trigger +
(Distance)

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

62 de 78
2 Programação PLC (continuação)

Função tempo -- distância com os movimentos de trajetória (LIN, CIR, KLIN, KCIR)

x
rel. (1) zu (2) P6 rel. (1)
x x x P2 VE=0
P0 P1 VE=100
VE=0 VE=100
x P5
rel. (3)
VE=0

rel. (1)
x rel. (4)
P3 x
VE=100 P4 VE=0

Ao contrário da instrução PTP, com movimentos de trajetória, o trigger de trajetória poderá


ser deslocado até à próxima paragem exata.

Os exemplos seguintes deverão tornar este assunto mais explícito:

Deslocação negativa

Ponto anterior x
x x x P2 P6
P0 P1 --

Ponto de x P5
trigger

x
P3 x
P4
O ponto de comutação de um movimento de trajetória poderá ser deslocado na direção
negativa, começando no ponto programado (ponto de trigger) até ao ponto anterior, o que
também corresponde a um valor negativo no campo “Schaltpkt:” no formulário inline.

Deslocação positiva
x
x x x P2 P6
P0 P1

Ponto de x P5
trigger
+
Paragem exata
x
P3 x
P4
Ao contrário, na direção positiva, o ponto de comutação poderá ser deslocado para além
dos limites do passo de movimento. O próximo ponto de paragem exata ou a passo de
movimento PTP constituem o limite para deslocação.

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

63 de 78
Programação PLC

Caso se pretenda realizar uma alteração posterior de um ponto de comutação, o procedi-


mento será o seguinte:
Em primeiro lugar, selecionar no VKCP o símbolo para o tipo de execução do programa
“GO”.
A seguir, o programa selecionado é executado com um override de programa reduzido,
até ser atingida a posição pretendida para a realização do ponto de comutação. No
formulário inline é selecionado, através das teclas de cursor “” ou “”, o campo
“Schaltpkt:” e premida a softkey “Teach”. Como conseqüência, é atualizada a indicação
da distância e o formulário é fechado.

A distância programada só é aplicável ao ponto, no qual se encontra o ponteiro de


programa amarelo.

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

64 de 78
2 Programação PLC (continuação)

2.6.3.2 BS A/F (Saídas)


Esta função baseia--se na sintaxe geral seguinte:
A1...1024
expressão ponto de
BS condição = +/--9999[mm] +/--9999[ms]
booleana comut.
F 1...999

Depois de ter sido selecionada a softkey “BS A/F”, é aberto o formulário inline seguinte:

Desig. do Função Gama de valores


campo
BS Tipo A, F
1 Número A (1...1024), F (1...999)
Operador *1) _, !
EIN (LIG), E Tipo de operando ?, EIN (LIG), AUS (DESL), E, A, M, F, T, S
1 Número de operando *1) E (1...1024), A (1...1024),
M (1...24), F (1...999), T (1...10), S (1...32)
= Operador _, (
Operador *1) _, !
EIN (LIG), E Tipo de operando ?, EIN (LIG), AUS (DESL), E, A, M, F, T, S
1 Número de operando *1) E (1...1024), A (1...1024),
M (1...24), F (1...999), T (1...10), S (1...32)
Operador _, )
Schaltpkt: Distância do ponto de --9999 ... +9999 [mm]
(Ponto de trigger
comutação:)
Tempo de delay --9999 ... +9999 [ms]
*1) => não indicado com o tipo de operando “?”, “EIN” (LIG), “AUS” (DESL)

Exemplo

À saída 10 é atribuído o valor da entrada 5. O ponto de comutação propriamente dito é desen-


cadeado 100ms antes de atingir a distância de 150mm em relação ao ponto programado.

Ponto de comutação
x x x x P2
P1 x (ponto programado)
--100ms
--150mm

x
P3

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

65 de 78
Programação PLC

Nos pontos PTP não são permitidos pontos de comutação não iguais a zero.

Com um comando PTP, os pontos de comutação só poderão encontrar--se diretamente


num ponto programado. Se, mesmo assim, for necessário compensar o tempo morto
(como, p.ex., na colagem), apenas é possível fazê--lo através do tempo de delay [ms].

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

66 de 78
2 Programação PLC (continuação)

2.6.3.3 BS bin/ana (Saída binária / analógica)


Esta função baseia--se na sintaxe geral seguinte:

ana1...8

bin1..10
expressão ponto de
BS condição = +/--9999[mm] +/--9999[ms]
aritmética comut.
ana_vprop1...8

ana_offs1...8

Depois de ter sido selecionada a softkey “BS bin/ana=”, é aberto o formulário inline seguinte.

Desig. do Função Gama de valores


campo
BS Tipo bin (atua sobre a saída analógica),
ana (atua sobre a saída analógica
constante),
ana_vprop
(atua sobre a saída analógica
proporcional à velocidade),
ana_offs
(atua sobre a saída analógica
proporcional à velocidade)
1 Número bin (1...8), ana (1...10),
ana_vprop (1...8), ana_offs (1...8)
Operador *1) _, !
EIN (LIG), E Tipo de operando ?, EIN (LIG), AUS (DESL), E, A, M, F, T, S
1 Número de operando *1) E (1...1024), A (1...1024),
M (1...24), F (1...999), T (1...10), S (1...32)
= Operando aritmético num, i, bin, t, ana
--9999 ... +9999 [mm]
Schaltpkt: Distância ao ponto de --9999 ... +9999 [mm]
(Ponto de trigger
comutação:)
Tempo de delay --9999 ... +9999 [ms]
*1) => não indicado com o tipo de operando “?”, “EIN” (LIG), “AUS” (DESL)

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

67 de 78
Programação PLC

Exemplo

Na saída analógica 3 são emitidos 250mV, quando na entrada 1 estiver ativado o sinal
“TRUE” ou “lógico 1”. O ponto de comutação é ativado 80ms antes de atingir a distância
de 120mm que se encontra a seguir ao ponto programado.

P2
(ponto programado)
x x
P1 x
Ponto de comutação
x
120mm --80ms
x

x
P3

Nos pontos PTP não são permitidos os pontos de comutação não iguais a zero.

Com um comando PTP, os pontos de comutação só poderão encontrar--se diretamente


num ponto programado. Se, mesmo assim, for necessário compensar o tempo morto
(como, p.ex., na colagem), apenas é possível faze--lo através do tempo de delay [ms].

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

68 de 78
2 Programação PLC (continuação)

2.6.4 Pnd (Oscilar)


A função “Oscilar” sobrepõe a um movimento de trajetória uma figura de oscilação que
poderá ser escolhida.

Para selecionar esta função, prima a softkey “ana/BS/Pnd” e escolha na barra de softkeys
agora alterada a função “Oscilar”. É aberto o formulário inline seguinte:

Desig. do Função Gama de valores


campo
Pendeln Ativar ou desativar a osci- EIN (LIG), AUS (DESL)
(Oscilar) lação
Figur Seleção da figura de osci- 1 = triângulo
(Figura) lação 2 = trapézio
3 = trapézio assimétrico
4 = espiral
5 = oito deitado
6 = definido pelo utilizador (nível de perito)
7 = definido pelo utilizador (nível de perito)
Amplitude Deflexão lateral (corres- 1 a 30 mm
ponde à metade da lar-
gura de oscilação)
Periode Comprimento de oscilação 1 a 50 mm
(Período)
Ebene Rotação do plano de osci- --90˚ a +90˚
(Plano) lação

A escolha poderá ser feita entre as figuras de oscilação seguintes:

s Deflexão lateral Comprimento de oscilação


Figura de (Amplitude)
oscilação
Direção de soldadura
s
Sem oscilação

1 Triângulo

2 Trapézio

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

69 de 78
Programação PLC

3 Trapézio
assimétrico

4 Espiral

5 Oito deitado

6 Definido pelo
utilizador
só a nível de perito
7 Definido pelo
utilizador
só a nível de perito

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

70 de 78
2 Programação PLC (continuação)

2.7 USER (Ativação da função KRL com transferência de parâmetros)


2.7.1 Generalidades
Através do menu “USER”, acessível por meio da menukey “Instruç”, é ativado o programa
“VW_USR_R”. Com a ajuda destes módulos poderão ser programadas as funcionalidades
em KRL. Para esse efeito, existem vários subprogramas locais que poderão ser utilizados,
de acordo com a necessidade e a funcionalidade. Os parâmetros introduzidos no formulário
inline são transferidos para o módulo VW_USR.
Depois de premir a menukey “Instruç”, selecione o comando “USER” :

Esta função só é realizável através da menukey “Instruç”. É apenas permitida dentro de


uma instrução PLC de ponto. Caso contrário, é emitida uma mensagem de erro.

Um usuário pode ativar o formulário inline e proceder apenas a alterações na transferência


dos parâmetros (grandeza do valor). Mas mesmo isso só é possível com uma configura-
ção correspondente realizada por um perito. As ativações do “USER” não são permitidas
nem num PLC de macro nem numa outra macro. Só são possíveis no PLC do ponto.
A seguir é aberto o formulário inline seguinte, dentro do qual poderão ser transferidos, no
máximo, sete parâmetros:

Desig. do Função Gama de valores


campo
P1...6= Operando aritmético i, bin, t, ana
1 Número i (1...10), bin (1...10), t (1...10), ana (1...8)
P7= Operador *1) _, !
EIN (LIG), Tipo de operando EIN (LIG), AUS (DESL), E, A, M, F, T, S
E
1 Número de operando *1) E (1...1024), A (1...1024),
M (1...24), F (1...999), T (1...10), S (1...32)
*1) => não indicado com o estado lógico “EIN” (LIG), “AUS” (DESL)

Mais informações acerca da KRL (KUKA Robot Language) encontram--se no [KRL


Reference Guide].

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

71 de 78
Programação PLC

2.7.2 Ativação da instrução VW_USER através de BOF


Depois de premir a menukey “Instruç” e selecionar a opção de menu “USER”, podem ser
introduzidos os valores pretendidos, desde que o “USER” tenha sido devidamente
configurado.

Prog.Anwender: SPS--Programmierung R1.3 03.99.00 pt

72 de 78
3 Processamento do programa

3 Processamento do programa
3.1 Ocultar áreas/PLC
Para tornar um programa mais claro, as instruções de PLC podem ser ocultadas ou indica-
das para a informação ou o processamento. Estas opções podem ser utilizadas premindo
a menukey “Processar” e selecionando o menu “PLC”.

No menu “PLC” estão disponíveis os submenus seguintes:


G abrir/fechar Abre ou fecha a Fold da linha de instrução na qual se encontra o
cursor de edição no programa.
G Abrir todas Abre todas as Folds num programa.
G Fechar todas Fecha todas as Folds num programa.
A função de abrir ou fechar PLC pode ser realizada também através das softkeys disponí-
veis na barra de softkeys.

O gráfico mostra uma Fold aberta no segundo ponto de programa.

Prog.Anwender: Programmbearbeitung R1.3 03.99.00 pt

73 de 78
Processamento do programa

3.2 Funções de bloco


G Processar
As seguintes funções de bloco são as que geralmente estão disponíveis para o processa-
mento. Estas funções podem ser utilizadas como funções de bloco para vários pontos de
programa em simultâneo ou então para pontos de programa individuais.

Existe a possibilidade de marcar várias linhas ao mesmo tempo. A marcação realiza--se


ESC premindo a tecla Shift e as teclas PGUP “” ou PGDN “”. A última frase de um programa
é marcada com a tecla de cursor “direita”. As linhas marcadas são representadas a
vermelho. A marcação é possível nas duas direções. Para anular uma marcação, pode ser
premida uma das teclas Esc ou PGUP “” ou PGDN “”. Com a ajuda da menukey
“Processar” podem ser selecionadas então as funções padrão aplicáveis ao processamento
de blocos. Destas funções padrão fazem parte: copiar, inserir, cortar e apagar.

A função de bloco não permite:


1. Apagar ou cortar o primeiro ponto de uma seqüência.
2. Copiar, apagar ou cortar: início de macro, espera por início de
seqüência e início de SP.

Copiar
A área de texto marcada é copiada para uma memória tampão. O original é mantido.

Inserir com/sem PLC


O bloco de texto que se encontra na memória tampão é inserido a seguir à linha
marcada. É possível escolher entre a inserção sem PLC ou a inserção com PLC.

Cortar
Uma área de texto marcada é copiada para a memória tampão sendo o original
removido do ficheiro.

Prog.Anwender: Programmbearbeitung R1.3 03.99.00 pt

74 de 78
3 Processamento do programa (continuação)

Apagar
Uma área de texto marcada é removida do programa. Depois da ativação do
programa, é feita uma pergunta de segurança.

A respetiva softkey permite cancelar, aceitar ou rejeitar a função.

Prog.Anwender: Programmbearbeitung R1.3 03.99.00 pt

75 de 78
Processamento do programa

3.3 Usar comentários


A inserção de comentários ou linhas de comentário permite tornar o seu programa mais claro
e mais compreensível também para terceiros.

A velocidade de execução do programa não é influenciada, nem pelo comprimento


nem pelo número de comentários.

3.3.1 ...inserir
Ao premir a menukey “Instruç”, acede ao submenu “Comentário”. A seleção pode ser feita
através das teclas de cursor “” ou “” confirmando esta seleção com a tecla Enter ou
através da introdução do número sublinhado no teclado numérico ativado.

Ao selecionar esta função, é aberto o formulário inline seguinte na janela de programas, e


a barra de softkeys é alterada ficando disponíveis as instruções de cancelamento e confir-
mação.

Depois de ter sido introduzido o texto do comentário, prima a softkey “Instrução OK” ou a
tecla Enter.

A função pode ser terminada, a qualquer momento, premindo a softkey “Interr.instr.” ou a


tecla Enter.

ESC

Prog.Anwender: Programmbearbeitung R1.3 03.99.00 pt

76 de 78
3 Processamento do programa (continuação)

As linhas de comentário podem ser editadas entre dois pontos de movimento, aqui pontos
2 e 3, ou na Fold aberta de um ponto de programa, aqui ponto 4.

Abertura da Fold ou do PLC ver parágrafo 3.1 “Ocultar áreas/PLC”

Ao ativar novamente a instrução “Comentário”, a seqüência de caracteres anteriormente


editada encontra--se no formulário inline, já como predefinição.

3.3.2 ...modificar
Mova o cursor e coloque--o diretamente na linha de comentário, independentemente de esta
se encontrar numa Fold ou entre dois pontos de programa, e prima a softkey “Modificar”.
O formulário inline é aberto e o texto atual pode ser alterado.

Abertura da Fold ou do PLC ver parágrafo 3.1 “Ocultar áreas/PLC”

Faça agora a alteração do texto, conforme pretender. No fim, transfira o texto introduzido
com a ajuda da softkey “Instrução OK” ou da tecla Enter ou então cancele o processo de
edição com a ajuda da softkey “Interr.instr.” ou da tecla Esc.

ESC

3.3.3 ...apagar
Mova o cursor e coloque--o diretamente na linha de comentário, independentemente de esta
se encontrar numa Fold ou entre dois pontos de programa, e prima a menukey “Processar”.
Depois use as teclas do cursor e coloque este na opção “Apagar”.

Prog.Anwender: Programmbearbeitung R1.3 03.99.00 pt

77 de 78
Processamento do programa

Ao premir a tecla Enter, aparece a pergunta de segurança e a respetiva barra de softkeys.

Apagar REALMENTE esta linha?

Prima a softkey “Sim”, se tiver a certeza de que a linha deve ser apagada. Nesse caso, a
linha de comentário é removida do programa. Se premir a softkey “Não” ou a softkey
“Cancelar”, a função de apagamento é cancelada e a linha de comentário mantém--se no
programa no seu estado anterior. O ponteiro de passos e a marca de programa
encontram--se na linha de comentário.

Prog.Anwender: Programmbearbeitung R1.3 03.99.00 pt

78 de 78
Index

A Elemento, 27
A/M/F, 39 Entradas, 27
ACC, 12, 14, 17
Aceleração, 12, 14, 17 F
Amplitude, 69 FB ONL, 47
ana konst:, 56 FB PSPS, 52
ana/BS/Pnd, 61, 69 Fern, 21
anavprop:, 57 Figura, 69
Apagar, 75 Figura de oscilação, 69
Aplicações de cola, 6, 19 Flags, 27, 45, 61
Aproximação, 6, 15, 16, 62 Flags de sensor, 27
Áreas/PLC, 73 Flags de temporizador, 27
Arrancar o temporizador, 41 Flags em função da posição, 45
Ativação da função KRL, 71 Foco, 11, 13
Ativação do subprograma, 35 Formulário inline, 7
Funções de bloco, 74
B Funções de pinça, 24
Funções tempo -- distância, 24, 61
Bloqueio, 51
BS A/F, 65
BS bin/ana=, 67 I
Bus de campo, 55 i/bin, 40
Impulso, 44
C Inserir, 74
Instrução de movimento, 6
CIRC, 6, 16
Instruções de espera e de movimento, 46
Comentário, 76
Instruções de pinça, 36
Comparação, 43
Instruções PLC, 38, 40
Comportamento de aproximação, 6
Comprimento de oscilação, 69
Condição de espera, 46, 48 K
Condição de espera ONLINE, 46 KCIRC, 6, 19
Condição de movimento, 46, 47, 52 KLIN, 6, 19
Condições de espera e deslocação, 24 kst+p, 60
Constante booleana, 27
Contador de números inteiros, 27
L
Contadores e saídas binárias, 40
Laço MACRO/UP, 24
Copiar, 74
LIN, 6, 13
Cortar, 74
Cursor de edição, 7
M
D Macro de seleção do passo, 33
MAKRO, 32
Deflexão de oscilação, 55
Makros, 24
Deflexão lateral, 69
MakroSaw, 33
MakroSPS (PLC de Makro), 34, 44, 45
E Marcas, 27
Editar, 7 Modo de edição, 6
Eixos com rotação infinita, 8 Movimento linear supervisionado por sensor, 6

Index -- i
Index

Movimentos circulares, 16 S
Movimentos de tecnologia, 6 Saída analógica, 24, 55
Movimentos lineares, 13 Saída binária, 27
Movimentos ponto a ponto, 11 Saída binária / analógica, 67
Movimentos standard, 6 Saídas, 27, 61, 65
Saídas analógicas, 27
N Saídas de impulso, 44
Schaltpkt ***[mm], 62
Nah, 21
Seleção da figura de oscilação, 69
Número da ferramenta, 12, 14, 17, 21
Sensor afastado, 20, 21
Números de bloqueio, 51
Sensor próximo, 20, 21
Sincronização das fases, 11
O Softkey, 7
Online, 26 SPSTrig, 12, 14, 17
Operador aritmético, 27, 28 Statuskey “p.cima/p.baixo”, 25
Operador booleano, 27, 28 Subprograma, 24, 26
Operador de comparação, 27, 28 Suchlauf, 6, 20
Operadores, 27
Operando aritmético, 27 T
Operando booleano, 27 t=, 41
Orientação, 13 t=STOP, 42
Oscilar, 24, 60, 69 Tecla “Shift”, 11, 13
Tecla ESC, 12, 14
Teclas de cursor, 11, 13
P
Tempo definido, 50
PA, 17
Tempo determinado, 46
Paragem exata, 6, 11, 13, 16, 61 Temporizador, 27
Parar um temporizador, 42 Tensão analógica, 56
PD, 17 Tensão analógica constante, 56
Período, 69 Tensão analógica proporcional na velocidade,
Plano, 69 57
PLC, 12, 14, 17 Tensão constante e desvio de oscilação, 60
Ponteiro de passo, 12 Tensões analógicas, 55
Ponteiro de passos, 14 Tipo de movimento, 12, 14, 17
Ponto auxiliar, 16, 17 Transferência de parâmetros, 71
Ponto de aproximação, 61
Ponto de destino, 16, 17, 62 U
Ponto de início, 16
Última instrução, 10
Posição esticada, 14 UP, 35
Prioridade, 28 USER, 71
Processar, 74
PTP, 6, 11
V
VB, 12, 14, 17, 21
R VE, 12, 14, 17
Realizar saídas binárias/analógicas, 61 Velocidade de deslocação, 12
Redução de velocidade, 21 Velocidade de trajetória, 14, 17, 21
Rotação do plano de oscilação, 69 VERR, 51

Index -- ii
Index

Vred, 20, 21
VW_USR, 71
VW_USR_R, 71

W
W onl, 46
W onl/bis, 48
W Tempo, 50
Wzg, 12, 14, 17, 21

Z
ZANGE (Pinça), 36
Zona de aproximação, 12, 14, 17

Index -- iii

Você também pode gostar