Traduzido do Espanhol para o Português - www.onlinedoctranslator.com
_________________________ LIVRO
DE
PROGRAMAÇÃO DE ROBÔS ESPECIALIZADA
Para o software KUKA V5.x
PROGRAMADOR
O Manual MP4 05.06.00 é
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
ÍNDICE
2. MEDIDAS ANTICOLISÃO PARA ROBÔ (DISPOSITIVO DE
SEGURANÇA)................................................................................................... 18
2.2 Monitoramento do Espaço de Trabalho ............................................................. 41
3. PROGRAMAÇÃO DE MENSAGENS ......................................................... 57
3.1 Sintaxe de Programação de Mensagens KRL........................................ 57
3.2 Mensagens de aviso ...................................................................................... 65
3.3 Mensagens de Confirmação ......................................................................... 67
3.4 Mensagens de Status .................................................................................... 69
3.5 Mensagens de Diálogo................................................................................... 72
3.6 Mensagens com variáveis.............................................................................. 75
4. OPERADOR GEOMÉTRICO ................................................................... 85
5. PROGRAMAÇÃO DE INTERRUPÇÕES ............................................. 89
5.1 Teoria e Sintaxe KRL para Programação de Interrupções................. 89
5.2 Cancelar movimento com interrupções .............................................. 104
6. FUNÇÕES DE COMUTAÇÃO RELACIONADAS AO CAMINHO
(GATILHO)..................................................................................................... 109
8. TRABALHANDO COM ENTRADAS/SAÍDAS....................................... 140
8.1 Entradas/Saídas Digitais ...................................................................... 140
8.2 Entradas predefinidas .............................................................................. 152
8.3 Entradas/Saídas Analógicas.................................................................. 157
Expert_book_mp4.doc
3
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
2.2 Monitoramento do Espaço de Trabalho
Expert_book_mp4.doc
41
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Prevenção de colisões com robôs: Monitoramento da área de trabalho
Opções de bloqueio entre um robô e uma área de trabalho:Monitoramento da área de
trabalho
É possível monitorar até 8 áreas de trabalho cúbicas ou específicas de
eixo. Essas áreas de trabalho podem se sobrepor para definir volumes
mais complexos.
Operação:
Violação da área de trabalho
Sinal de saída
Processamento em
Opção KRL ou PLC: pare o robô e emita uma mensagem.
01/2006
1
robot_workspace_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
42
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
monitoramento cartesiano da área de trabalho
Opções de bloqueio entre o robô e a área de trabalho:$ESPAÇO DE TRABALHO
O sistema pode ser ajustado para monitorar se o TCP selecionado entra
ou sai da área definida..
CUIDADO:Utilizar dados incorretos em “$TOOL” pode ter
consequências inesperadas.
01/2006
2
robot_workspace_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
43
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
monitoramento cartesiano da área de trabalho
Guia de Configuração: CONFIGURAÇÃO
01/2006
3
robot_workspace_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
44
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
monitoramento cartesiano da área de trabalho
Nome
Número da área de trabalho (1-8)
Origem
trabalho
da área
relativo
de
para o
sistema de coordenadas
universal
Dimensões da área de
trabalho em relação à
origem especificada acima.
Modo de monitoramento
da área de trabalho
01/2006
4
robot_workspace_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
45
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Monitoramento do espaço de trabalho cartesiano - $WORKSPACE
Estrutura/fonte do $WORKSPACE
X, Y, Z:
Posição da área de trabalho nos eixos principais, em
relação ao sistema de coordenadas universal.
A, B, C:
Orientação da área de trabalho em relação ao sistema de
coordenadas universal.
$WORKSPACE[n]={X 500,Y 500, Z 1000, A 0, B 0, C 0, X1 ... }
01/2006
5
robot_workspace_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
46
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Monitoramento do espaço de trabalho cartesiano - $WORKSPACE
Estrutura $WORKSPACE / distância da origem
X1, Y1, Z1:Defina x1, y1 e z1 em relação ao primeiro ponto e abra o
cubóide
X2, Y2, Z2:Defina x2, y2 e z2 em relação ao primeiro ponto e
expande o cuboide
$WORKSPACE[n]={...
01/2006
6
robot_workspace_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
47
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Monitoramento do espaço de trabalho cartesiano - $WORKSPACE
Opções para ajustar o “MODO”
# DESLIGADO:
Sem monitoramento
# DENTRO:
A saída especificada é ativada se o TCP for
encontrado.dentroda área de trabalho
# FORA:
A saída especificada é ativada se o TCP for
encontrado.forada área de trabalho
# DENTRO_DO_PARAR:
A saída especificada é ativada se o TCP for
encontrado.dentroda área de trabalho; além
disso, o robô para.
# PARADA_EXTERNA:
A saída especificada é ativada se o TCP for
encontrado.forada área de trabalho; além
disso, o robô para.
$WORKSPACE[n]={..., MODO #DENTRO }
01/2006
7
robot_workspace_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
48
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Monitoramento da área de trabalho específica dos eixos
As áreas definidas pelos limites do software podem ser ajustadas ainda
mais usando esta função, a fim de proteger o robô, a ferramenta ou a
peça de trabalho.
O grau de liberdade de cada eixo depende diretamente de sua
posição atual.
Particularmente para:
• Robôs montados na parede
• Robôs montados em pedestal
• Robôs de paletização
No modo de movimentação manual, a frenagem em
rampa ocorre quando uma área de trabalho é violada;
em todos os outros modos, a frenagem é dinâmica.
01/2006
8
robot_workspace_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
49
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Monitoramento da área de trabalho específica dos eixos
Número da área de trabalho (1-8)
Nome
Especificação dos limites
superior e inferior do
ângulo de cada eixo
Modo de monitoramento
da área de trabalho
01/2006
9
robot_workspace_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
50
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Monitoramento da área de trabalho específica dos eixos
Exemplo:
01/2006
10
robot_workspace_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
51
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Monitoramento da área de trabalho específica dos eixos
Exemplo:
- 45°
+45°
Área 2
Área 1
+35°
- 160°
01/2006
+160°
11
robot_workspace_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
52
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Monitoramento da área de trabalho específica dos eixos
Exemplo de configuração:
01/2006
12
robot_workspace_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
53
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Monitoramento do espaço de trabalho - $WORKSTATE
Cada saída é ativada com
base na configuração
MODE.
SINAL $WORKSTATE1 $OUT[984]
01/2006
13
robot_workspace_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
54
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Monitoramento da área de trabalho - Geral
menu de desativação da vigilância da área de trabalho
Essa função permite mover o robô para fora da área de
trabalho invadida. Isso só é possível no modo T1.
01/2006
14
robot_workspace_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
55
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Monitoramento da área de trabalho - Geral
As áreas de trabalho podem ser definidas, ativadas
ou desativadas em arquivos *.SRC.
Comando KRL:
$WORKSPACE[1].MODE = #OFF
Manualmente, através da modificação de
variáveis:
$WORKSPACE[1].MODE
# DENTRO_PARA
# DESLIGADO
01/2006
15
robot_workspace_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
56
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
3. Agendamento de mensagens
3.1 Sintaxe de Programação de Mensagens KRL
Expert_book_mp4.doc
57
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Agendamento de mensagens do usuário
Em programas de aplicação e pacotes de tecnologia (KRLs), é possível exibir
mensagens definidas pelo usuário no KCP. Podemos fazer uma distinção
básica entre essas mensagens: notificações, mensagens de status,
mensagens de confirmação e mensagens de diálogo. O principal requisito é
uma interface padronizada entre o kernel do sistema e a interface do
usuário.
C..
Tempo
!18:14
01/2006
Não. Fonte
1
Usuário
Mensagem
ERRO: sem pressão de ar
1
mensagem_principal_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
58
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Variáveis para exibição de mensagens
Estrutura para exibição de mensagens:$MSG_T
DeclaraçãoMSG_Tnome= {VÁLIDOVERDADEIRO,LIBERARVERDADEIRO,TÍPICO#ESTADO,MÓDULO[ ]"-- ",
CHAVE[ ]"------",TIPO_DE_PARÂMETRO#VALOR,PARAM[ ]" ",
DLG_FORMAT[ ]" ",RESPONDER0}
01/2006
MSG_T
Nome fixo da estrutura
nome
Você pode selecionar livremente mensagens
personalizadas, $MSG_T
2
mensagem_principal_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
59
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Variáveis para exibição de mensagens
Estrutura para exibição de mensagens:$MSG_T
Decl MSG_T nome = {VÁLIDOVERDADEIRO,LIBERARVERDADEIRO,TÍPICO#ESTADO,MÓDULO[ ]"-- ",
CHAVE[ ]"------",TIPO_DE_PARÂMETRO#VALOR,PARAM[ ]" ",
DLG_FORMAT[ ]" ",RESPONDER0}
01/2006
VÁLIDO
VERDADEIRO gera uma mensagem;
LIBERAR
TRUE exclui mensagens do tipo (type), #STATE e #QUIT, e
FALSE mantém as mensagens.
FALSE salva a mensagem.
3
mensagem_principal_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
60
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Variáveis para exibição de mensagens
Estrutura para exibição de mensagens:$MSG_T
Decl MSG_T nome = ",
TÍPICO
{VÁLIDOVERDADEIRO,LIBERARVERDADEIRO,TÍPICO#ESTADO,
MÓDULO[ ]"-- CHAVE[ ]"------",TIPO_DE_PARÂMETRO#VALOR,PARAM[ ]"
", DLG_FORMAT[ ]" ",RESPONDER0}
# NOTIFICAR
# ESTADO
# DESISTIR
# DIÁLOGO
MÓDULO[ ]
01/2006
Mensagem de notificação
Mensagem de status
Mensagem de confirmação
Mensagem de diálogo
Origem; exibida junto com o texto da mensagem, na coluna
“abs.” (máximo de 24 caracteres).
4
mensagem_principal_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
61
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Variáveis para exibição de mensagens
Estrutura para exibição de mensagens:$MSG_T
Decl MSG_T nome = ",
CHAVE[ ]
personagens).
{VÁLIDOVERDADEIRO,LIBERARVERDADEIRO,TÍPICO#ESTADO,
MÓDULO[ ]"-- CHAVE[ ]"------",TIPO_DE_PARÂMETRO#VALOR,PARAM[ ]"
", DLG_FORMAT[ ]" ",RESPONDER0}
Texto da mensagem que será exibida (máximo de 80 caracteres)
TIPO_DE_PARÂMETRO
# VALOR
# PALAVRAS
# CHAVE
01/2006
Para textos personalizados (=padrão),
ignore PARAM[ ]
para mensagens de um banco de dados
5
mensagem_principal_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
62
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Variáveis para exibição de mensagens
Estrutura para exibição de mensagens:$MSG_T
Decl MSG_T nome = ",
{VÁLIDOVERDADEIRO,LIBERARVERDADEIRO,TÍPICO#ESTADO,
MÓDULO[ ]"-- CHAVE[ ]"------",TIPO_DE_PARÂMETRO#VALOR,PARAM[ ]"
", DLG_FORMAT[ ]" ",RESPONDER0}
PARAM[ ]
parâmetro adicional que pode ser inserido no texto
da mensagem KEY[ ]. Uma reserva de espaço%1Deve ser
inserido na posição desejada. Funciona apenas com
PARAM_TYP #VALUE. Este parâmetro adicional pode
conter no máximo 20 caracteres.
01/2006
6
mensagem_principal_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
63
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Variáveis para exibição de mensagens
Estrutura para exibição de mensagens:$MSG_T
Decl MSG_T nome = ",
DLG_FORMAT[ ]
{VÁLIDOVERDADEIRO,LIBERARVERDADEIRO,TÍPICO#ESTADO,
MÓDULO[ ]"-- CHAVE[ ]"------",TIPO_DE_PARÂMETRO#VALOR,PARAM[ ]"
", DLG_FORMAT[ ]" ",RESPONDER0}
Nomes de teclas programáveis. Estes devem ser
separados por uma linha vertical | (ALT 124). Deve-se
verificar se o nome das teclas programáveis individuais não
excede 10 caracteres (por exemplo, no máximo 70
caracteres).
RESPONDER
01/2006
O número da tecla programável pressionada em resposta à
mensagem de diálogo é salvo aqui. A numeração das teclas
programáveis começa à esquerda (1) e incrementa em um para
cada tecla programável..
7
mensagem_principal_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
64
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
3.2 Mensagens de aviso
Expert_book_mp4.doc
65
Sistemas de Automação KUKA, África do Sul
08800 Vilanova i la Geltrú
Pol. Ind. Torrent de la Pastera
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Mensagem de notificação
1
2
3
DECL MSG_T EMPTY_MSG
EMPTY_MSG={MSG_T: VALID FALSE,RELEASE FALSE,TYP #NOTIFY,MODUL[] " ",KEY[] "
",PARAM_TYP #VALUE,PARAM[] " ",DLG_FORMAT[] " ",ANSWER 0}
4
5
6
7
8
9
10
11
12
13
14
15
16
; *************** mensagem de notificação
********************* $MSG_T=EMPTY_MSG inicialização
;
$MSG_T.MODUL[]="USER";
$MSG_T.KEY[]="sem vácuo";
$MSG_T.PARAM_TYP=#VALOR
$MSG_T.TYP=#NOTIFY;
$MSG_T.VALID=TRUE;
texto na fonte
texto da mensagem
mensagem de notificação
dispare a mensagem
ENQUANTO $MSG_T.VALID
AGUARDE 0,05 SEGUNDOS
FIM ENQUANTO
AGUARDE 0,2 SEGUNDOS
$MSG_T.VALID permanece como VERDADEIRO somente até que
o texto da mensagem seja exibido (sensível ao loop).
C..
Tempo
! 18:14
01/2006
Não. Fonte
1
USUÁRIO
Mensagem
sem aspirador
1
mensagem_notificar_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
66
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
3.3 Mensagens de Confirmação
Expert_book_mp4.doc
67
Sistemas de Automação KUKA, África do Sul
08800 Vilanova i la Geltrú
Pol. Ind. Torrent de la Pastera
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Mensagens de confirmação
1
2
3
DECL MSG_T EMPTY_MSG
EMPTY_MSG={MSG_T: VALID FALSE,RELEASE FALSE,TYP #NOTIFY,MODUL[] " ",KEY[] "
",PARAM_TYP #VALUE,PARAM[] " ",DLG_FORMAT[] " ",ANSWER 0}
4
5
6
7
8
9
10
11
12
13
14
15
16
; *************** mensagem de saída
********************* $MSG_T=EMPTY_MSG inicialização
;
$MSG_T.MODUL[]="USER";
$MSG_T.KEY[]=„sem água";
$MSG_T.PARAM_TYP=#VALOR
$MSG_T.TYP=#SAIR;
$MSG_T.VALID=TRUE;
texto na fonte
texto da mensagem
mensagem de confirmação
disparar a mensagem
ENQUANTO $MSG_T.VALID
AGUARDE 0,05 SEGUNDOS
FIM ENQUANTO
AGUARDE 0,2 SEGUNDOS
$MSG_T.VALID permanece como VERDADEIRO até que a mensagem de
texto seja confirmada (sensível ao loop).
01/2006
C..
Tempo
PARAR
18:14
Não. Fonte
1
USUÁRIO
Mensagem
sem água
1
mensagem_sair_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
68
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
3.4 Mensagens de status
Expert_book_mp4.doc
69
Sistemas de Automação KUKA, África do Sul
08800 Vilanova i la Geltrú
Pol. Ind. Torrent de la Pastera
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Mensagem de status
1
2
3
DECL MSG_T EMPTY_MSG
EMPTY_MSG={MSG_T: VALID FALSE,RELEASE FALSE,TYP #NOTIFY,MODUL[] " ",KEY[] "
",PARAM_TYP #VALUE,PARAM[] " ",DLG_FORMAT[] " ",ANSWER 0}
4
5
6
7
8
9
10
11
12
13
14
15
16
; *************** mensagem de status
********************* $MSG_T=EMPTY_MSG
inicialização
;
$MSG_T.MODUL[]="USER";
$MSG_T.KEY[]=“Erro no fornecimento
de ar”; $MSG_T.PARAM_TYP=#VALOR
$MSG_T.TYP=#ESTADO;
texto na fonte
texto da mensagem
mensagem de status
$MSG_T.VALID=TRUE;
dispare a mensagem
ENQUANTO $IN[15]==FALSO;
entrada de erro 15
FIM ENQUANTO
$MSG_T.RELEASE=TRUE;
excluir mensagem de status
$MSG_T.VALID permanece TRUE até que $MSG_T.RELEASE=TRUE
(mensagem de exclusão) seja gerada (sem loop).
C..
Tempo
E aí
18:16
01/2006
Não. Fonte
1
USUÁRIO
Mensagem
Erro no fornecimento de ar
1
mensagem_estado_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
70
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Mensagens de status
1
2
3
DECL MSG_T EMPTY_MSG
EMPTY_MSG={MSG_T: VALID FALSE,RELEASE FALSE,TYP #NOTIFY,MODUL[] " ",KEY[] "
",PARAM_TYP #VALUE,PARAM[] " ",DLG_FORMAT[] " ",ANSWER 0}
4
5
6
7
8
9
10
11
12
13
14
15
16
; *************** mensagem de status
********************* $MSG_T=EMPTY_MSG
inicialização
;
$MSG_T.MODUL[]="USER";
$MSG_T.KEY[]=“Erro no fornecimento
de ar”; $MSG_T.PARAM_TYP=#VALOR
$MSG_T.TYP=#ESTADO;
texto na fonte
texto da mensagem
mensagem de status
$MSG_T.VALID=TRUE;
dispare a mensagem
ENQUANTO $IN[15]==FALSO;
entrada de erro 15
FIM ENQUANTO
$MSG_T.RELEASE=TRUE;
excluir mensagem de status
$MSG_T.VALID permanece TRUE até que $MSG_T.RELEASE=TRUE
(mensagem de exclusão) seja gerada (sem loop).
C..
01/2006
Tempo
Não. Fonte
Mensagem
2
mensagem_estado_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
71
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
3.5 Mensagens de Diálogo
Expert_book_mp4.doc
72
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Mensagem de diálogo
1
2
3
DECL MSG_T EMPTY_MSG
DECL INT RESPOSTA
EMPTY_MSG={MSG_T: VALID FALSE,RELEASE FALSE,TYP #NOTIFY,MODUL[] " ",KEY[] "
",PARAM_TYP #VALUE,PARAM[] " ",DLG_FORMAT[] " ",ANSWER 0}
4
5
6
7
8
9
10
11
12
13
14
15
16
17
; *************** mensagem de diálogo
********************* $MSG_T=EMPTY_MSG ; inicialização
$MSG_T.MODUL[]="USER";
$MSG_T.KEY[]=„selecionar parte";
$MSG_T.PARAM_TYP=#VALOR
$MSG_T.TYP=#DIALOG;
texto na fonte
texto da mensagem
mensagem de diálogo
$MSG_T.DLG_FORMAT[ ]=“Parte x|Parte y|Parte z|FIM“; rotulando teclas de função
$MSG_T.VALID=TRUE;
dispare a mensagem
ENQUANTO $MSG_T.VALID
AGUARDE 0,05 SEGUNDOS
FIM ENQUANTO
AGUARDE 0,2 SEGUNDOS
18
$MSG_T.ANSWER=RESPOSTA;
Salvar a resposta (botão) em RESPOSTA
O valor de $MSG_T.VALID permanece VERDADEIRO até que uma tecla de
função (loop sensível) seja pressionada.
01/2006
1
message_dialog_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
73
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Mensagem de diálogo
C..
Tempo
número
? 18:14
1
Parte x
Parte e
Origem
Mensagem
USUÁRIO
Selecione a parte
Parte Z
RETORNO=1
01/2006
FIM
Confid.all
RETORNO=4
2
message_dialog_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
74
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
3.6 Mensagens com variáveis
Expert_book_mp4.doc
75
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Exibir uma mensagem com uma variável
Doença:
1. Uma reserva de espaço%1$MSG_T.KEY[ ] deve estar
presente no texto da mensagem.
Exemplo:$MSG_T.KEY[ ]=“Nº da peça.%1está pronto”
2. O valor de $MSG_T.PARAM[ ] é gravado na reserva de
espaço. O valor é atribuído como uma string usando
"Texto".
01/2006
1
message_parameter_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
76
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Exibindo uma mensagem com uma variável: TEXTO
Exemplo 1: Transferência de texto simples
…
…
$MSG_T.KEY[ ]=“Falha em %1”
$MSG_T.KEY[ ]=“Falha em %1”
$MSG_T.PARAM[ ]=“gripper”
$MSG_T.PARAM[ ]=“gripper”
...
...
; Gerar mensagem 1
; Gerar mensagem 1
...
...
$MSG_T.PARAM[ ]=“arma”
$MSG_T.PARAM[ ]=“arma”
...
...
; Gerar mensagem 2
; Gerar mensagem 2
01/2006
Falha na garra
Mensagem 1
Falha na braçadeira
Mensagem 2
2
message_parameter_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
77
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Exibindo uma mensagem com uma variável: VARIÁVEL
Exemplo 2: variável do tipo inteiro
parte INT
parte INT
…
…
parte=parte+1
parte=parte+1
$MSG_T.KEY[ ]=“A peça nº %1 está pronta”
$MSG_T.KEY[ ]=“A peça nº %1 está pronta”
SWRITE($MSG_T.PARAM[ ],STATE,OFFSET,“%d”,part)
SWRITE($MSG_T.PARAM[ ],STATE,OFFSET,“%d”,part)
; Gerar mensagem
; Gerar mensagem
...
...
O SWRITE é descrito abaixo.
01/2006
A peça nº 1 está pronta.
1ª mensagem
A peça número 2 está pronta.
2ª mensagem
3
message_parameter_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
78
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
ESCREVER (String)
Sintaxe da instrução SWRITE:
SWRITE (Corda, Status, DESLOCAMENTO, Formato, VALOR)
Argumento
Cara
Explicação
Corda
CHAR[]
A sequência manipulada é escrita nesta sequência de
caracteres.
01/2006
4
message_parameter_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
79
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
SWRITE (Status)
Sintaxe da instrução SWRITE:
ESCREVA (String1,Status, DESLOCAMENTO, Formato, VALOR)
Argumento
Cara
Explicação
Status
ESTADO_T
• Esta estrutura retorna informações sobre o estado
do kernel do sistema, que o usuário pode avaliar.
•ESTADO.MSG_NÃOSe ocorrer um erro durante a
execução da instrução, esta variável conterá o
número do erro.
•CMD_OKInstrução executada com sucesso.
•CMD_ABORTInstrução não executada com sucesso.
• Estado da variável: HITS, número de formatos escritos
corretamente.
01/2006
5
message_parameter_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
80
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
ESCREVER (DESLOCAMENTO, Formato, VALOR)
Sintaxe da instrução SWRITE:
ESCREVER (String1, Status,DESVIO,Formatar,VALOR)
Argumento
Cara
Explicação
DESVIO
INT
Especifica a posição a partir da qual a String2 deve ser copiada
para a String1.
Formatar
CHAR[]
A variável “Formato” contém o formato do texto
que deve ser gerado. Isso pode ser visto na tabela
a seguir.
VALOR
INT
O conteúdo desta variável é copiado para String2 no
formato especificado. Valores booleanos são exibidos
como 0 ou 1, e valores ENUM como números.
REAL
BOOL
CHAR[]
01/2006
6
message_parameter_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
81
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
SWRITE (formato de tabela)
A conversão de
caracteres permitidos para a
stringFormatarvariedade é:
c, d, f, sy %.
Nosso exemplo:
Variável INT %d
01/2006
7
message_parameter_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
82
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Exemplo de SWRITE com PARAM[ ]
SWRITE do nosso programa de exemplo
Corrente para
Valor transferido
manipular
por String
SWRITE($MSG_T.PARAM[ ],STATE,OFFSET,“%d”,part)
Informações de
estado de
sistema kernel
01/2006
Formato de texto a ser
criado
8
message_parameter_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
83
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Exemplo de SWRITE com PARAM[ ]
Programa de exemplo com todas as declarações
necessárias e inicialização de OFFSET.
parte INT
DECL INT OFFSET
DECL ESTADO_T ESTADO
…
parte = parte + 1
$MSG_T.KEY[ ]=“A peça nº %1 está pronta”
DESLOCAMENTO=0
SWRITE($MSG_T.PARAM[ ],STATE,OFFSET,“%d”,part)
Gerar mensagem
...
A peça nº 1 está pronta.
01/2006
1ª mensagem
9
message_parameter_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
84
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
4. Operador geométrico
Expert_book_mp4.doc
85
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Operador geométrico
O operador geométrico realiza um acoplamento lógico (operação
lógica) entre os operandos do tipo FRAME e POS.
ZR
Base = Mesa : Peça
EB
XB
ER
se
Ba ZT
Papel
ZB
ET
XT
a
Mes
01/2006
XR
1
geometric_operator_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
86
Sistemas de Automação KUKA, África do Sul
08800 Vilanova i la Geltrú
Pol. Ind. Torrent de la Pastera
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Combinação lógica de quadros
Combinações de tipos de dados no operador geométrico
Operacional
esquerda
(Referência SC)
Operador
Operando diretamente
(Destino SC)
Resultado
POS
:
POS
POS
POS
:
QUADRO
QUADRO
QUADRO
:
POS
POS
QUADRO
:
QUADRO
QUADRO
Uma combinação lógica de frames é avaliada da esquerda
para a direita. O resultado sempre terá o tipo de dados do
opand mais à direita.
01/2006
2
geometric_operator_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
87
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Exemplo: Retorne na direção da ferramenta.
Pré-requisitos:
A direção da ferramenta deve ser medida ao longo
do eixo X. É importante também que essa
ferramenta esteja ativa.
Tarefa:
Retorno da mesa (100 mm),
independentemente de onde o robô esteja
localizado.
Solução:
LIN $POS_ACT:{x -100, y 0, z 0, a 0, b 0, c 0}
EFerramenta
ZFerramenta
Nota: $POS_ACT (variável de sistema que
contém a posição atual do robô)
XFerramenta
01/2006
3
geometric_operator_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
88
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
5. Agendamento de interrupções
5.1 Teoria e sintaxe KRL para programação de
interrupções
Expert_book_mp4.doc
89
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Interrupções - Descrição
As rotinas de interrupção são usadas para fazer o robô reagir imediatamente
a um evento interno ou externo; por exemplo, um programa em execução
pode ser interrompido e um subprograma ou função iniciada. Os
movimentos do robô e as rotinas de interrupção também podem operar em
paralelo.
01/2006
1
interrupt_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
90
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Interrupção - Exemplo
Exemplo:
Programa
Programa
EIjn
reutcenurnrcu
iinópgnt
retomado
Salto
Sinal
Rotina
Rotina
interrupção
interrupção
ing
correrFnin
Robô
01/2006
Retornar
PLC
2
interrupt_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
91
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Interrupção – Processamento paralelo do programa principal e da interrupção.
A rotina de interrupção é executada em paralelo com os movimentos do robô
(P3 para P4).
Programa principal
Programa de interrupção
...
...
INT DECL 7...
INT DECL 7...
Movimento
de robô
...
...
LIN P3
LIN P3
LIN P4
LIN P4
...
...
7
DEF INTER7 ( )
DEF INTER7 ( )
$OUT...
$OUT...
$OUT...
$OUT...
$OUT...
$OUT...
FIM
FIM
...
...
FIM
FIM
01/2006
3
interrupt_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
92
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Interrupção - Sintaxe
Declaração:
DECLARAÇÃO DE INTERRUPÇÃOPrioridadeQUANDOEventoFAZERSubprogram
• É possível declarar um máximo de 32 interrupções simultaneamente.
• É possível ativar no máximo 16 interrupções simultaneamente.
• Níveis de prioridade 1-39 e 81-128
• O nível 1 tem a prioridade mais alta
• Este evento é detectado por meio de um pulso quando ocorre (disparado por borda).
• As interrupções devem ser declaradas na seção de instruções.
DEF Principal ( )
DEF Principal ( )
INI
INI
DECLARAÇÃO DE INTERRUPÇÃO20QUANDO$IN[22]==VERDADEIROFAZERSP1() )
DECLARAÇÃO DE INTERRUPÇÃO20QUANDO$IN[22]==VERDADEIROFAZERSP1() )
...
...
FIM
FIM
...
...
01/2006
4
interrupt_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
93
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Habilitar e desabilitar interrupções
INTERROMPER LIGADONúmero
Acionar uma interrupção
DESLIGAMENTONúmero
Desativar uma interrupção
Se a instrução 'INTERRUPT ON' não contiver um número de interrupção (prioridade),
todas as interrupções declaradas serão ativadas.
INI
INI
INTERROMPER DECL 20 QUANDO $IN[22]==TRUE FAÇA SP1( )
INTERROMPER DECL 20 QUANDO $IN[22]==TRUE FAÇA SP1( )
...
...
INTERROMPER EM 20
INTERROMPER EM 20
A interrupção foi reconhecida e executada.
INTERROMPER DESLIGADO 20
INTERROMPER DESLIGADO 20
FIM
FIM
01/2006
5
interrupt_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
94
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Habilitar e desabilitar interrupções
INTERROMPER LIGADONúmero
Ativar interrupção
DESLIGAMENTONúmero
Desativar interrupção
Se houver risco de uma interrupção ser acionada incorretamente várias vezes
devido aos sensores(“rebote de contatos”Isso pode ser evitado desabilitando
a interrupção na primeira linha do programa de interrupção. No entanto, uma
interrupção desabilitada durante o processo de interrupção não pode ser
reconhecida novamente. Se a interrupção precisar permanecer ativa, ela deverá
ser reabilitada antes de retornar ao programa principal.
01/2006
6
interrupt_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
95
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Ativar e desativar interrupções
DESATIVAR INTERRUPÇÃONúmero
Desativar interrupção
ATIVAR INTERRUPÇÃONúmero
Ativar interrupção
Se as instruções não contiverem um número de interrupção (prioridades),
todas as interrupções serão consideradas.
INI
INI
...
...
INTERROMPER EM 20
INTERROMPER EM 20
...
...
DESATIVAR INTERRUPÇÃO 20
DESATIVAR INTERRUPÇÃO 20
A interrupção é reconhecida e salva. Ela não
será executada até que seja habilitada.
INTERRUPÇÃO ATIVADA 20
INTERRUPÇÃO ATIVADA 20
FIM
FIM
01/2006
7
interrupt_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
96
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Interrupção – Diagnóstico
Ligar para
diagnóstico de
interrupções
DEF Principal ( )
DEF Principal ( )
INI
INI
DECLARAÇÃO DE INTERRUPÇÃO20QUANDO$IN[22]==VERDADEIROFAZERUP1( )
DECLARAÇÃO DE INTERRUPÇÃO20QUANDO$IN[22]==VERDADEIROFAZERUP1( )
DECLARAÇÃO DE INTERRUPÇÃO99QUANDO$IN[23]==VERDADEIROFAZERUP2() )
NE
RP
OUT NE2C
0L99QUANDO$IN[23]==VERDADEIROFAZERUP2() )
ROU
TR
ER
PTQUALQUERD
EME aíT
INTERROMPER EM 20
DESATIVAR INTERRUPÇÃO 20
DESATIVAR INTERRUPÇÃO 20
...
. .HABILITAÇÃO DE INTERRUPÇÃO 20
EM.T
INTERRUPÇÃO ATIVADA 20
...
. .INTERRUPÇÃO DESLIGADA 20
EM.T
INTERROMPER DESLIGADO 20
...
...
EMD
FIM
É possível a declaração dupla. Atenção, pois já existem interrupções
declaradas no arquivo Fold “INI” (por exemplo, INTERRUPT 3).
01/2006
8
interrupt_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
97
Sistemas de Automação KUKA, África do Sul
08800 Vilanova i la Geltrú
Pol. Ind. Torrent de la Pastera
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Interrupção - Diagnóstico
Tipo de interrupção*
Interrupção local ou global
Prioridade
Estado de interrupção**
Nome do módulo e linha do
programa da declaração de
interrupção
* Tipo de interrupção
O tipo de interrupção depende do evento
definido na declaração do
interrupção:
$PARAR
$ALARM_STOP
$MEAS_PULSE[1..5]
Exemplo: $IN[1…4096]
Subprograma de gatilho
01/2006
?
?
?
?
?
* * Estado de interrupção
E
Interrupção habilitada – INTERRUPÇÃO LIGADA/HABILITADA
D
Interrupção desativada – DESATIVAR INTERRUPÇÃO
Parado por engano
Parada de emergência
Padrão de Medição (Medição
Rápida)
Interrupção inativa – INTERRUPÇÃO DESATIVADA ou não
ativada
Acionar
9
interrupt_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
98
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Interrupção – Amplitude de ação
DEF Principal ( )
DEF Principal ( )
...
...
DECLARAÇÃO DE INTERRUPÇÃO 1...
DECLARAÇÃO DE INTERRUPÇÃO 1...
DECLARAÇÃO DE INTERRUPÇÃO 8... .
DECLARAÇÃO DE INTERRUPÇÃO 8...
..
.
SP()
. SP()
..
..
.
Fim
Fim
DEF SP ( )
. DEF SP ( )
..
..
.
DECLARAÇÃO DE INTERRUPÇÃO 23...
Interrupção 1,8
Interrupção 2
Interrupção 23
DECLARAÇÃO DE INTERRUPÇÃO 23...
DECLARAÇÃO DE INTERRUPÇÃO GLOBAL 2... .
DECLARAÇÃO DE INTERRUPÇÃO GLOBAL 2...
..
..
.
FIM
FIM
01/2006
10
interrupt_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
99
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Interrupção - Prioridade
Principal()
Principal()
INTER13 ( )
...
...
$OUT...
DECLARAÇÃO DE INTERRUPÇÃO 12
DECLARAÇÃO DE INTERRUPÇÃO 12
SAÍDA..
DECLARAÇÃO DE INTERRUPÇÃO 13
DECLARAÇÃO DE INTERRUPÇÃO 13
DECLARAÇÃO DE INTERRUPÇÃO 14
DECLARAÇÃO DE INTERRUPÇÃO 14
01/2006
$OUT...
$OUT...
INTERROMPER LIGADO
INTERROMPER LIGADO
LIN
LIN
LIN
LIN
LIN
LIN
LIN
LIN
$OUT...
13
INTER12 ( )
$OUT
$OUT
$OUT
12
$OUT
$OUT
FIM
14
FIM
Programa 132 é ienexecrruutped
tecnologia
completamente
INTER14 ( )
11
interrupt_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
100
Sistemas de Automação KUKA, África do Sul
08800 Vilanova i la Geltrú
Pol. Ind. Torrent de la Pastera
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Interrupção – Variáveis úteis do sistema (Posicionamento exato)
$POS_RET
$EIXO_RET
$POS_INT
$EIXO_INT
P2
$POS_FOR
$EIXO_PARA
$PO_BACK
$EIXO_DE_VOLTA
P1
P3
$POS_ACT
$AXIS_ACT
Descrição
Eixos específicos
cartesiano
$EIXO_INT
$POS_INT
Posição a partir da qual a interrupção foi lançada.
$AXIS_ACT
$POS_ACT
Posição atual
$EIXO_RET
$POS_RET
Posição onde o robô saiu da trajetória
$EIXO_DE_VOLTA
$PO_BACK
Posição do ponto inicial da trajetória
$EIXO_PARA
$POS_FOR
Posição do ponto final da trajetória
01/2006
12
interrupt_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
101
Sistemas de Automação KUKA, África do Sul
08800 Vilanova i la Geltrú
Pol. Ind. Torrent de la Pastera
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Interrupção – Variáveis úteis do sistema (posição aproximada)
P2
$POS_RET
$EIXO_RET
$PO_BACK
$POS_FOR
$EIXO_DE_VOLTA
$EIXO_PARA
$POS_INT
$EIXO_INT
P1
$POS_ACT
$AXIS_ACT
P3
Descrição
Eixos específicos
cartesiano
$EIXO_INT
$POS_INT
Posição em que a interrupção foi iniciada.
$AXIS_ACT
$POS_ACT
Posição atual
$EIXO_RET
$POS_RET
Posição onde o robô saiu da trajetória
$EIXO_DE_VOLTA
$PO_BACK
Posição do ponto inicial da trajetória
$EIXO_PARA
$POS_FOR
Posição do ponto final da trajetória
01/2006
13
interrupt_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
102
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Uso de bandeiras cíclicas
Não são permitidas operações lógicas na declaração de interrupção. Na
verdade, para definir eventos complexos, é necessário trabalhar com flags
cíclicas, pois essa é a maneira de habilitar atualizações constantes.
DEF Principal ( )
DEF Principal ( )
...
...
$CYCFLAG[3] = $IN[12] AND ($IN[34] OR $IN[3])
$CYCFLAG[3] = $IN[12] AND ($IN[34] OR $IN[3])
INTERRUPÇÃO DECL 10 QUANDO$CYCFLAG[3]FAÇA IR_PROG ( )
INTERRUPÇÃO DECL 10 QUANDO$CYCFLAG[3]FAÇA IR_PROG ( )
INTERROMPER LIGADO
INTERROMPER LIGADO
…
…
FIM
FIM
Esta sequência de programa permite controlar e combinar 3
entradas simultaneamente.
01/2006
14
interrupt_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
103
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
5.2 Cancelar movimento com interrupções
Expert_book_mp4.doc
104
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Interrompa – instrução de FREIO
FREIO
FREIO F
Isso diminui a velocidade e interrompe o movimento do robô.
Isso reduz e interrompe o movimento do robô com os
valores máximos.
A instrução BRAKE interrompe o movimento do robô. O movimento do robô é
retomado assim que a rotina de parada for concluída.
DEF INT4 ( )
DEF INT4 ( )
...
...
FREIO F
FREIO F
$OUT...
$OUT...
A instrução BRAKE só pode ser usada em
um programa de interrupção.
FIM
FIM
01/2006
1
interrupt_resume_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
105
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Interrupção – Cancelar rotinas de interrupção
RESUMO
• Cancela programas e subprogramas de interrupção até
o nível em que a interrupção ativa foi declarada.
• Isso pode significar interromper os movimentos do robô.
A instrução RESUME só pode ser executada
em um programa de interrupção.
Quando a instrução RESUME é ativada, o ponteiro
de avanço do programa não deve estar no nível
em que a interrupção foi declarada, mas sim pelo
menos um nível abaixo.
01/2006
2
interrupt_resume_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
106
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Condições para o cancelamento de uma rotina de interrupção
As seguintes condições devem ser atendidas para que
cancelar uma transação:
1. Combinação de 'Frear/Retomar' no programa de
interrupção.
2. O movimento deve estar pelo menos um nível abaixo da
declaração de interrupção.
3. O ponteiro de avanço do programa ainda não deve estar no
nível em que a interrupção foi declarada.
01/2006
3
interrupt_resume_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
107
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Interrupção – Exemplo: Cancelar rotinas de interrupção
Exemplo:
DEF Pesquisar ( )
INTERROMPER NA LINHA 21
LIN Strtpt
DEF Prog1 ( )
DEF Prog1 ( )
Ponto final LIN
INI
INI
...
...
INTERROMPER DECL 21 QUANDO $IN[1] FAÇA
INTERROMPER DECL 21 QUANDO $IN[1] FAÇA
...
...
$AVANÇO = 0
...
Encontrado ( )
Encontrado ( )
FIM; da pesquisa
PTP HOME
PTP HOME
...
...
DEF Encontrado ( )
PROCURAR ( )
PROCURAR ( )
$AVANÇO=3
$AVANÇO=3
...
...
FIM
FIM
FREIO
LIN $POS_INT
;pegar parte
RESUME é cancelado imediatamente.
ambos subprogramas e salto
para o programa principal
01/2006
INTERROMPER DESLIGADO 21
...
RESUMO; cancelar
FIM
4
interrupt_resume_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
108
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
6. Funções de comutação relacionadas ao
caminho (Gatilho)
Expert_book_mp4.doc
109
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Gatilho – Ações de disparo dependentes da trajetória
Ao contrário das interrupções, que são independentes do movimento do robô,
algumas aplicações também exigem ações de gatilho que dependem da
trajetória do movimento. Aplicações típicas incluem:
!Disparo de corrente liga/desliga em processos de soldagem
arco.
Abra ou feche a pistola de solda durante o processo de soldagem.
Soldagem por resistência.
Início ou interrupção do fluxo adesivo em processos de
colado ou selado.
01/2006
1
trigger_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
110
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Acione funções no início ou no fim da trajetória.
Sintaxe:
ACIONAR QUANDO A DISTÂNCIA =Ponto de disparoATRASO =TempoFAZER
Instrução<PRIORIDADE =Prioridade>
• Para cada instrução TRIGGER com umÉ necessário atribuir uma prioridade à chamada do
subprograma.São permitidos valores de 1 a 39 e de 81 a 128. As prioridades são então as
mesmas que as das interrupções.
• Os valores de 40 a 80 são reservados para atribuição automática de prioridade pelo
sistema. Para essa atribuição, escreva PRIO=--1.
• É possível usar até 8 gatilhos simultaneamente.
• O tempo máximo de disparo é > 1.000.000 (ms)
Exemplo:
...
...
LIN
PONTO 2
...
PONTO LIN 2
TR.E aí.GGER QUANDO DISTÂNCIA = 0
ATRASO =
20 FAÇA $OUT[4] = VERDADEIRO
GE
GR
Pronto-socorro
EM
NE
CE==10DE DLEPARALEOH==-22 50FAZER
FAZER $1
QUALQUER(OU] =QUALQUERT=R-1UE
HN
TRTEGEaíR
aíG
CCELE
DID
SE aíTSPARATN
PARAC
ACIMA
) T[P4RI
TRPIG
GT
R3QUANDO DISTÂNCIA = 1 ATRASO =
LIN
UM
EQUALQUER
...
PONTO LIN 3
...
PONTO LIN 4
- 25 DO UP1() PRIORIDADE=-1
...
LIN
PONTO 4
...
01/2006
2
trigger_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
111
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Pontos de partida e de chegada com posicionamento exato.
Exemplo:
...
LIN P2
...
DISPARAR QUANDO DISTÂNCIA = 0 ATRASO = 20 FAÇA $OUT[4] = VERDADEIRO
ACIONAR QUANDO DISTÂNCIA = 1 ATRASO = -25 FAÇA SP1() PRIORIDADE = -1 LIN P3
1
...
LIN P4
0
...
P2
DISTÂNCIA
E
01/2006
Gama de
ATRASO
+
P3
-
tomada
0
0-1
+
1
1-0
-
P1
P4
3
trigger_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
112
Sistemas de Automação KUKA, África do Sul
08800 Vilanova i la Geltrú
Pol. Ind. Torrent de la Pastera
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Ponto de partida com parada exata, ponto de chegada com posicionamento aproximado.
Exemplo:
...
LIN P2
...
DISPARAR QUANDO DISTÂNCIA = 0 ATRASO = 20 FAÇA $OUT[4] = VERDADEIRO
ACIONAR QUANDO DISTÂNCIA = 1 ATRASO = -25 FAÇA SP1() PRIORIDADE = -1
LIN P3C_DIS
...
LIN P4
0
...
P2
DISTÂNCIA
E
01/2006
Gama de
ATRASO
1
1º
P3
+
-
+
1b
tomada
0
0
- 1º
+
1
1º - 1b
+ /-
P1
P4
4
trigger_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
113
Sistemas de Automação KUKA, África do Sul
08800 Vilanova i la Geltrú
Pol. Ind. Torrent de la Pastera
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Ponto inicial e final com posicionamento aproximado
Exemplo:
...
LIN P2C_DIS
...
DISPARAR QUANDO DISTÂNCIA = 0 ATRASO = 20 FAÇA $OUT[4] = VERDADEIRO
ACIONAR QUANDO DISTÂNCIA = 1 ATRASO = -25 FAÇA SP1() PRIORIDADE = -1
LIN P3C_DIS
...
0
LIN P4
...
P2
DISTÂNCIA
E
01/2006
Gama de
ATRASO
+
1para
1
P3
-
+
1b
tomada
0
0
- 1º
+
1
1º - 1b
+ /-
P1
P4
5
trigger_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
114
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Ponto de partida com posicionamento aproximado, ponto de chegada com parada exata.
Exemplo:
...
LIN P2C_DIS
...
DISPARAR QUANDO DISTÂNCIA = 0 ATRASO = 20 FAÇA $OUT[4] = VERDADEIRO
ACIONAR QUANDO DISTÂNCIA = 1 ATRASO = -25 FAÇA SP1() PRIORIDADE = -1 LIN P3
...
0
LIN P4
...
P2
DISTÂNCIA
E
01/2006
Gama de
1
+
P3
-
ATRASO
tomada
0
0-1
+
1
1-0
-
P1
P4
6
trigger_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
115
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Acione as funções em qualquer ponto ao longo da trajetória.
Sintaxe:
ACIONAR QUANDO CAMINHO =DistânciaATRASO =TempoFAZERInstrução
<PRIORIDADE =Prioridade>
• Para cada instrução TRIGGER com umÉ necessário atribuir uma prioridade à chamada do
subprograma.São permitidos valores de 1 a 39 e de 81 a 128. As prioridades são então as
mesmas que as das interrupções.
• Os valores de 40 a 80 são reservados para atribuição automática de prioridade pelo
sistema. Para essa atribuição, escreva PRIO=--1.
• É possível usar até 8 gatilhos simultaneamente.
• O tempo máximo de disparo é > 1.000.000 (ms)
Exemplo:
...
. . . P2 C_DIS
LIN
_DHES
NGPE2RCC
EN CAMINHO = -20 ATRASO = -10 FAÇA $OUT[2] = VERDADEIRO
TRLE aíE aíG
TRPIG
3GCE_D
QUANDO CAMINHO = -20 ATRASO = -10 FAÇA $OUT[2] = VERDADEIRO
LIN
RES
LIN
3_CD_E aíD
SES
LIN
P4PC
LIN
P5P4 C_DIS
LIN
...
LIN P5
O ponto de referência
é o ponto de
destino!!
...
01/2006
7
trigger_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
116
Sistemas de Automação KUKA, África do Sul
08800 Vilanova i la Geltrú
Pol. Ind. Torrent de la Pastera
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Exemplo: Tiro em trajetória
Exemplo:
...
LIN P2 C_DIS
ACIONAR QUANDOCAMINHO = -20ATRASO = -10FAÇA $OUT[2] = VERDADEIRO
LIN P3 C_DIS
LIN P4 C_DIS
LIN P5
...
P1
P2
P5
P3
P4
ATRASO = -10
CAMINHO = -20
01/2006
8
trigger_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
117
Sistemas de Automação KUKA, África do Sul
08800 Vilanova i la Geltrú
Pol. Ind. Torrent de la Pastera
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Exemplo: Campos de tiro
Exemplo:
...
LIN P2 C_DIS
ACIONAR QUANDOCAMINHO = YATRASO = XFAÇA $OUT[2] = VERDADEIRO
LIN P3 C_DIS
LIN P4 C_DIS
LIN P5
...
P2
P1
O limite está no início
do
posicionamento
ponto de partida
aproximado (aqui P2)
01/2006
P5
-
CAMINHO Y<0
P3
ATRASO X
+-
ATRASO = 0
+
CAMINHO = 0
CAMINHO Y>0
+
P4
O limite é a próxima parada exata! (aqui P5)
9
trigger_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
118
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Interrupção/Gatilho – Diagnóstico
Chamada para o
diagnóstico de
interrupções
DEF principal ( ) EM
DE aíEF Principal ( )
PTEMPE aíPONTO 1
LIP
NTPPOUPNOUTN
QUALQUERT2
LIE aíN PE
QUALQUERC1_DIS
GG OTRUR
STANCE = 1 DELAY = -25 DO SP1() PRIO=-1
NRPIG
OUG
R3CCH_EDNESDISTÂNCIA = 1 ATRASO = -25 FAÇA SP1() PRIORIDADE = -1
LIT
NE
PARA
NTCQUALQUERH2ECN_D
DE aíE aíS
LIN DOT3 C_DIS
...
...
EMD
FIM
É possível fazer declarações duplas com prioridades. Lembre-se de
que já existem prioridades de interrupção predefinidas (por
exemplo, INTERRUPT 3).
01/2006
10
trigger_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
119
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Casos especiais
"Execução BCO:Execução do último ponto.
"Não é possível fazer uma aproximação:Os valores do Caminho Positivo são mantidos.
(execução não exata); valores negativos de Path são executados no
ponto.
"Cancelamento do movimento:As ações de
tomada.
"Instruções de gatilho referentes à trajetória de um
Movimento PTP:Eles são rejeitados durante a execução.
"Posicionamento aproximado PTP-CP:Se o ponto de partida for um PTP
Com posicionamento aproximado, as ações de disparo serão executadas antes do
final do intervalo de posicionamento aproximado. Se o ponto final for um ponto de
posicionamento aproximado (PTP), todas as ações de disparo que ainda não foram
executadas serão executadas no centro do intervalo de posicionamento
aproximado.
01/2006
11
trigger_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
120
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
8. Trabalhando com entradas/saídas
8.1 Entradas/Saídas Digitais
Expert_book_mp4.doc
140
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Entradas e saídas com o software KUKA
01/2006
1
entrada_saída_digital_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
141
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Instruções de entrada/saída
!Um máximo de4096
4096 entradas e 4096 saídas.
!Com oKR C2, ummódulo de E/S adicional. !Outras entradas/
saídas podem ser configuradas usando osistema
ônibus rural.
A variável “$SET_IO_SIZE” é usada para alterar o número
de entradas/saídas especificado na tabela. Este arquivo
está localizado em Steu\Mada\$option.dat
Valor da variável
Número de
entradas/saídas
preparado
01/2006
1 (padrão)
1024
2
2048
4
4096
2
entrada_saída_digital_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
142
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Instruções de entrada/saída
A entrada $IN[1025] é sempre VERDADEIRA; a entrada $IN[1026] é sempre
FALSA. Essas variáveis podem ser usadas quantas vezes forem desejadas.
Por motivos de segurança, todas as instruções de entrada/
saída ou o uso de entrada/saída por meio de variáveis do
sistema farão com que o avanço seja interrompido.
Utilizar entradas/saídas por meio de variáveis de sistema precedidas
pela instrução CONTINUE impede a interrupção do avanço.
01/2006
3
entrada_saída_digital_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
143
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Entradas/saídas binárias
Se as entradas/saídas forem endereçadas individualmente, elas são chamadas de
entradas/saídas binárias. As saídas binárias podem ter apenas dois estados: baixo
ou alto.
Sintaxe:
$OUT[Não] =Valor
ou
Argumento
Cara
Explicação
Valor
BOOL
FALSO:
A saída está desativada. A
VERDADEIRO:
saída está ativada.
$IN[Não]
Exemplo:
01/2006
$OUT[1] = VERDADEIRO
$OUT[1] = VERDADEIRO
A saída 1 está ativada.
A saída 1 está ativada.
SE $IN[3] == FALSO ENTÃO
SE $IN[3] == FALSO ENTÃO
A entrada 3 é consultada.
A entrada 3 é consultada.
4
entrada_saída_digital_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
144
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Ative as saídas no ponto final.
Assim que o robô atingir o ponto final de uma instrução de
movimento, até8 saídase sem interromper o avanço.
Sintaxe:
$OUT_C[Não] =Valor
Argumento
Cara
Explicação
Valor
BOOL
FALSO:
A saída está desativada.
VERDADEIRO:
A saída está ativada.
Quando o cursor principal de operação atinge o final do ponto, a saída é
definida para o valor booleano que era válido no momento da interpretação,
mesmo que o valor tenha sido alterado posteriormente.
01/2006
5
entrada_saída_digital_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
145
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Exemplo: Comparação entre $OUT e $OUT_C
LIN P2 C_DIS
$OUT[10]=VERDADEIRO
$OUT[11]=FALSO
LIN P2 C_DIS
$OUT[12]=VERDADEIRO
$OUT_C[10]=VERDADEIRO
LIN P3
Intérprete e
$OUT_C[11]=FALSO
$OUT_C[12]=VERDADEIRO
P2
LIN P3
ativar ou
desativar
Ativar ou
desativar
P1
P2
P3
P1
Intérprete,
P3
Depende do
avançar
01/2006
6
entrada_saída_digital_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
146
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Declaração de um sinal
No KRC é possível atribuir um nome individual a cada entrada ou saída.
Odeclaração de sinalizaçãoAssim como todas as declarações, ela deve estar
localizada na seção de declarações do programa.
Sintaxe:
SINALVariável$FORA [Não]ou
SINALVariável$EM[Não]
Exemplo:
BOTÃO DE SINALIZAÇÃO $IN[6]
BOTÃO DE SINALIZAÇÃO $IN[6]
INI
INI
...
...
SE BOTÃO == FALSO ENTÃO
SE BOTÃO == FALSO ENTÃO
...
...
FIM SE
FIM SE
01/2006
qualquer
SE $IN[6] == FALSO
SE $IN[6] == FALSO
ENTÃO
ENTÃO
...
...
...
...
FIM SE
FIM SE
7
entrada_saída_digital_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
147
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Entradas/saídas digitais
As entradas e saídas binárias podem ser agrupadas
usando a palavra-chavePARA(máximo 32).
Sintaxe:
SINALVariável$FORA[NãoPARA
$OUT[Não]
qualquer
SINALVariável$EM[Não]
PARA$IN[Não]
Exemplo:
SINALIZAR MINHA_SAÍDA_DIGITAL $OUT[10] PARA $OUT[20]
SINALIZAR MINHA_SAÍDA_DIGITAL $OUT[10] PARA $OUT[20]
...
...
MINHA_SAÍDA_DIGITAL = 35
MINHA_SAÍDA_DIGITAL = 35
...
...
MY_OUTPUT_OUTPUT = 'B100011' ; Decimal: 25+21+20=35
MY_OUTPUT_OUTPUT = 'B100011' ; Decimal: 25+21+20=35
01/2006
8
entrada_saída_digital_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
148
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Exibindo os resultados
Bit 1 com valor baixo
Saídas
SISTEMA
1
2
3
4
Saídas
Saída
Saída
Saída
Saída
Bit 3 de alto valor
01/2006
9
entrada_saída_digital_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
149
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Informações importantes sobre pulso nas saídas
É possível programar um máximo de 16 saídas de pulso simultaneamente. Os
pulsos podem ser programados em níveis altos e baixos.
"Reiniciar Programa" e "Cancelar Programa" encerram o pulso. Os pulsos
podem ser programados no nível do programador.
Os pulsos interrompem o avanço.
Um pulsoNÃOTermina com:
Parada de emergência, parada do operador ou erro
que provoca uma parada,
!Chegar ao final do programa (instrução END),
Pressione a tecla Iniciar se o pulso já tiver sido programado antes do primeiro.
A instrução de movimento e o robô ainda não alcançaram o centro de interesse (COI).
01/2006
10
entrada_saída_digital_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
150
Sistemas de Automação KUKA, África do Sul
08800 Vilanova i la Geltrú
Pol. Ind. Torrent de la Pastera
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Pulso nas saídas
As saídas podem ser ligadas e desligadas por um período de tempo
específico usando a instrução PULSE.
Sintaxe:
PULSO ( $OUT[Não]Valor,Tempo)
Argumento
Cara
Explicação
Valor
BOOL
FALSO:
VERDADEIRO:
Tempo
REAL
Entrada/Saída desativada
Entrada/Saída ativada
Intervalo de valores: 0,012 s...231s
Incremento: 0,1 s; O controle arredonda os valores para
o décimo de segundo.
1
0
01/2006
Tempo
1
Tempo
0
11
entrada_saída_digital_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
151
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
8.2 Entradas predefinidas
Expert_book_mp4.doc
152
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Entradas digitais predefinidas
O controlador possui seis entradas digitais disponíveis, que podem ser lidas usando os
nomes de variáveis $DIGIN1…$DIGIN6. Essas entradas estão incluídas nas entradas
normais do usuário. Elas podem ter 32 bits de comprimento e possuem uma saída de
strobe correspondente.
As entradas são configuradas nos dados da máquina: “/
steu/mada/$maschine.dat”.
As seguintes variáveis devem ser definidas aqui: !
!
!
!
01/2006
$DIGIN1
$DIGIN1CODE
$STROBE1
$STROBE1LEV
…
…
…
…
$DIGIN6
$DIGIN6CODE
$STROBE6
$STROBE6LEV
1
input_output_predefined_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
153
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Entradas digitais predefinidas
$STROBE1LEV
Bloqueio e leitura de sinais
$STROBE1
Codificador
E aí L $ II 1
$I [ ]
$I [ ]
$DIGIN1CODE
BINAR
INT
Valor
$ II 1
Aplicação: Registrar uma leitura de medição
01/2006
2
input_output_predefined_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
154
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Entradas digitais predefinidas
Sinal$DIGIN3$EM[1000] para $IN[1011]
Faixa e tamanho da entrada digital
DECL DIGINCOE$CÓDIGO DIGIN3= #NÃO ASSINADO ou #ASSINADO
# NÃO ASSINADO:
aqui12 bits sem sinal (intervalo de valores de 0 a +4095) aqui12
bits com sinal (intervalo de valores de -2048 a +2047)
# ASSINADO:
Sinal$ESTROBOSCÓPICO3$FORA[1000]
Bool$STROBE3LEV=verdadeiro
01/2006
Saída que congela o sinal do dispositivo
externo para que ele possa ser lido.
A luz estroboscópica está pulsando em alta intensidade.
3
input_output_predefined_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
155
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Leitura cíclica da entrada digital predefinida
Pré-definição de entrada:
CIVIN'Valor = Fator * Nome_do_Sinal < +/- Deslocamento>
Conclusão da supervisão:
ESCAVAÇANDONome do sinal
Exemplo:
...
...
NÚMERO INT
NÚMERO INT
...
...
CIVIN'NÚMERO = FATOR * $DIGIN2 + DESLOCAMENTO
CIVIN'NÚMERO = FATOR * $DIGIN2 + DESLOCAMENTO
...
...
ESCAVAÇANDO$DIGIN2
ESCAVAÇANDO$DIGIN2
...
...
01/2006
4
input_output_predefined_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
156
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
8.3 Entradas/saídas analógicas
Expert_book_mp4.doc
157
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Entradas/saídas analógicas
• O KRC tem32 entradas analógicase32 saídas analógicas.
• As saídas analógicas podem ser lidas ou escritas usando ovariáveis de
sistema $ANOUT[1]...[32].
• As entradas analógicas só podem ser lidas usando ovariáveis de
sistema $ANIN[1]...[32].
• Para a função de entrada/saída analógica, umÔnibus ruralopcional.
* com software 4.x: somente8entradas analógicas /16saídas analógicas
01/2006
1
input_output_predefined_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
158
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Saídas analógicas (estáticas)
Informações gerais sobre saídas analógicas:
Os valores das 32 saídas analógicas do KRC estão entre -1,0 e
+1,0 e são dimensionados para uma tensão de saída entre ±10,0
V.
Exemplo: Atribuir um valor estático
...
...
$ANOUT[2] = 0.5
$ANOUT[2] = 0.5
...
...
O canal de saída analógica 2 está configurado para +5V.
O canal de saída analógica 2 está configurado para +5V.
Válvula = -0,9
Válvula = -0,9
$ANOUT[5] = Válvula
$ANOUT[5] = Válvula
...
...
O canal de saída analógica 5 está configurado para -9V.
O canal de saída analógica 5 está configurado para -9V.
Essas atribuições são estáticas porque o valor de saída do canal
correspondente não mudará até que uma atribuição explícita seja
feita à variável de sistema correspondente $ANOUT[No].
01/2006
2
input_output_predefined_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
159
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Saídas analógicas (dinâmicas)
Início da saída analógica cíclica:
SOBRENome_do_sinal = Fator * Elemento_de_controleDeslocamento +/-
<Atraso = t> <Mínimo = U1> <Máximo = U2>
Fim da saída analógica cíclica:
SOBRE DESLIGADONome_do_sinal
Exemplo:
...
...
SINAL ADESIVO $ANOUT[1]
SINAL ADESIVO $ANOUT[1]
...
...
SOBREADESIVO = 0,5 * $VEL_ACT
SOBREADESIVO = 0,5 * $VEL_ACT
...
...
SOBRE DESLIGADOADESIVO
SOBRE DESLIGADOADESIVO
...
...
01/2006
3
input_output_predefined_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
160
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Saídas analógicas (dinâmicas)
Início da saída analógica cíclica: com RETARDO
SOBRENome_do_sinal = Fator * Elemento_de_controle+/-Desvio
<Atraso = t> <Mínimo = U1> <Máximo = U2>
Deslocamento +/-
Opcionalmente, um deslocamento pode ser programado como um
elemento de controle. O deslocamento pode ser uma variável, uma
declaração de sinal, um sinal analógico ou uma constante.
Exemplo:
...
...
SINAL ADESIVO $ANOUT[1]
SINAL ADESIVO $ANOUT[1]
...
...
SOBREADESIVO = 0,5 * $VEL_ACT+0,15
SOBREADESIVO = 0,5 * $VEL_ACT+0,15
...
...
SOBRE DESLIGADOADESIVO
SOBRE DESLIGADOADESIVO
...
...
01/2006
4
input_output_predefined_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
161
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Saídas analógicas (dinâmicas)
Você pode ter no máximo 4 saídas analógicas ativas.
Início da saída analógica cíclica: com RETARDO
SOBRENome_do_sinal = Fator * Elemento_de_controle +/- Deslocamento
<Atraso = t><Mínimo = U1> <Máximo = U2>
<DELAY = t>
Ao usar a palavra-chave DELAY e incorporar um valor
de tempo positivo ou negativo em segundos, o sinal
de saída pode ser atrasado (+) ou adiantado (-).
Exemplo:
...
...
SINAL ADESIVO $ANOUT[1]
SINAL ADESIVO $ANOUT[1]
...
...
SOBREADESIVO = 0,5 * $VEL_ACTATRASO = 0,75
SOBREADESIVO = 0,5 * $VEL_ACTATRASO = 0,75
...
...
SOBRE DESLIGADOADESIVO
SOBRE DESLIGADOADESIVO
...
...
01/2006
5
input_output_predefined_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
162
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Saídas analógicas (dinâmicas)
Início da saída analógica cíclica: com RETARDO
SOBRENome_do_Sinal = Fator * Elemento_de_Controle +/- Deslocamento
<Atraso = t> <Mínimo = U1> <Máximo = U2>
<U1 mínimo>
A palavra-chave MINIMUM define a tensão mínima
presente na saída. Os valores permitidos são -1,0 ...
+1,0 (= -10 V ... +10 V). O valor também pode ser uma
variável. (Condição U1 < U2)
Exemplo:
...
...
SINAL ADESIVO $ANOUT[1]
SINAL ADESIVO $ANOUT[1]
...
...
SOBREADESIVO = 0,5 * $VEL_ACTMÍNIMO = 0,30
SOBREADESIVO = 0,5 * $VEL_ACTMÍNIMO = 0,30
...
...
SOBRE DESLIGADOADESIVO
SOBRE DESLIGADOADESIVO
...
...
01/2006
6
input_output_predefined_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
163
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Saídas analógicas (dinâmicas)
Início da saída analógica cíclica: com RETARDO
SOBRENome_do_Sinal = Fator * Elemento_de_Controle +/- Deslocamento
<Atraso = t> <Mínimo = U1> <Máximo = U2>
<U2 máximo>A palavra-chave MÁXIMO define a tensão máxima.
presente na saída. Os valores permitidos são -1,0 ...
+1,0 (= -10 V ... +10 V). O valor também pode ser uma
variável. (Condição U2>U1)
Exemplo:
...
...
SINAL ADESIVO $ANOUT[1]
SINAL ADESIVO $ANOUT[1]
...
...
SOBREADESIVO = 0,5 * $VEL_ACTMÁXIMO = 0,97
SOBREADESIVO = 0,5 * $VEL_ACTMÁXIMO = 0,97
...
...
SOBRE DESLIGADOADESIVO
SOBRE DESLIGADOADESIVO
...
...
01/2006
7
input_output_predefined_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
164
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Tensão analógica dependendo da velocidade do CP
Exemplo
Máximo
Tensão analógica em [mV]
10000
8000
6000
4000
ME aí ninium
2000
0
100
200
Velocidade CP em [mm/s]
300
400
ANOUT NO ADESIVO = 3,375 * $VEL_ACT MÍNIMO = 0,30 MÁXIMO = 0,97
01/2006
8
input_output_predefined_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
165
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Entradas analógicas (estáticas)
Informações gerais sobre entradas analógicas:
As 32 entradas analógicas podem ser lidas usando as variáveis
$ANIN[1] a $ANIN[32] atribuindo um valor a uma variável REAL:
Exemplo: Atribuir um valor estático
SENSOR DE SINAL3 $ANIN[5]
SENSOR DE SINAL3 $ANIN[5]
Peça REAL, Medida
Peça REAL, Medida
...
...
PARTE = $ANIN[2]
PARTE = $ANIN[2]
...
...
A parte possui o valor real do canal analógico 2.
A parte possui o valor real do canal analógico 2.
QUALQUER
QUALQUER
...
...
Medição = SENSOR3
Medição = SENSOR3
analógico 5
analógico 5
A medição apresenta o valor real do canal.
A medição apresenta o valor real do canal.
O intervalo de valores para $ANIN[No] está entre +1,0 e -1,0 e
representa uma tensão de entrada de +10V a -10V.
01/2006
9
input_output_predefined_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
166
Sistemas de Automação KUKA, África do Sul
Pol. Ind. Torrent de la Pastera
08800 Vilanova i la Geltrú
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Entradas analógicas (dinâmicas)
Você pode ter no máximo 3 entradas analógicas
ativas.
Leitura cíclica da entrada analógica:
ANIN EMValor = Fator * Nome_do_SinalDeslocamento +/-
Fim da supervisão cíclica:
ANIN OFFNome do sinal
Exemplo:
...
...
CORREÇÃO DE SINAL $ANIN[3]
CORREÇÃO DE SINAL $ANIN[3]
;PEÇA REALEsta declaração deve ser feita no
;PEÇA REALEsta declaração deve ser feita no
...
...
Arquivo DAT (local ou $config.dat)
Arquivo DAT (local ou $config.dat)
ANIN EMPARTE = 1,4 * CORREÇÃO
ANIN EMPARTE = 1,4 * CORREÇÃO
...
...
ANIN OFFCORREÇÃO
ANIN OFFCORREÇÃO
...
...
01/2006
10
input_output_predefined_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
167
Sistemas de Automação KUKA, África do Sul
08800 Vilanova i la Geltrú
Pol. Ind. Torrent de la Pastera
Tel. +34 93 814 23 53
Fax +34 93 814 29 50
Entradas analógicas (dinâmicas)
Leitura cíclica de uma entrada analógica:
ANIN EMValor = Fator * Nome_do_Sinal +/- Deslocamento
Deslocamento +/-
Opcionalmente, um deslocamento pode ser programado
como um elemento de controle. O deslocamento pode ser
uma variável, uma declaração de sinal ou uma constante.
Exemplo:
...
...
CORREÇÃO DE SINAL $ANIN[3]
CORREÇÃO DE SINAL $ANIN[3]
PEÇA REAL
PEÇA REAL
...
...
ANIN EMPARTE = 1,4 * CORREÇÃO-1,27
ANIN EMPARTE = 1,4 * CORREÇÃO-1,27
...
...
ANIN OFFCORREÇÃO
ANIN OFFCORREÇÃO
...
...
01/2006
11
input_output_predefined_en.ppt
© Direitos autorais da KUKA Roboter GmbH College
Expert_book_mp4.doc
168
0
You can add this document to your study collection(s)
Sign in Available only to authorized usersYou can add this document to your saved list
Sign in Available only to authorized users(For complaints, use another form )