Buscar

DX100-Intermediário - REVISAO

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 75 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 75 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 75 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

As informações contidas neste manual são de uso exclusivo da 
MOTOMAN INC, não podem ser copiadas, reproduzidas e 
transmitidas por qualquer meio sem autorização documentada pela 
MOTOMAN ROBÓTICA DO BRASIL. 
 
 
Treinamento 
em Programação de 
Nível Intermediário 
para o Controlador 
DX-100 
Curso: TP-12 
 
 
 
 
 
Programação Intermediária do DX-100 Página 2 Curso: TP-12 
 
PREFÁCIO 
 
 
PROPÓSITO DESTE MANUAL 
 
Os manuais do Centro de Educação Técnica da Motoman não podem ser 
utilizados como ferramentas para treinamentos particulares. Esse manual deve ser 
usado em conjunto com o curso de Programação Básica DX100 
 
QUEM DEVE USAR ESSE MANUAL 
 
Esse manual é fornecido apenas para alunos do curso de Programação 
Intermediária do controlador DX100. Não use esse manual como referência se 
você não tiver feito o curso e recebido o certificado do instrutor do Centro de 
Educação Técnica da Motoman. 
 
COMO USAR ESSE MANUAL 
 
Esse manual de treinamento foi criado de acordo com a estrutura diária do curso 
de Programação Intermediária DX100. Foi criado para ajudar os estudantes a 
entender as operações básicas e funções do controlador DX100 e um robô 
Motoman correspondente. Use esse manual como um guia passo-a-passo através 
do curso. 
 
AVISO LEGAL 
 
As informações contidas nesse manual são baseadas na hipótese de que o 
controlador DX100 está no modo de edição e usando linguagem Standard. Fique 
ciente de que os atalhos apresentados no manual podem variar devido à outras 
opções, versão de software e configurações. 
 
A informação contida neste documento é de propriedade da Motoman Robótica do 
Brasil e não pode ser copiada, reproduzida ou transmitida para terceiros sem a 
autorização expressa da Motoman. 
 
Devido à constante atualização de nossos produtos, nos reservamos do direito de 
mudar especificações sem aviso prévio. YASNAC e Motoman são marcas 
registradas da YASKAWA Electric Manufacturing. 
 
NOTA: Esse manual não pode ser revendido e não pode ser vendido 
separadamente. Todos os manuais de treinamento desenvolvidos pelo Centro de 
Educação Técnica Motoman são registrados. Não copie qualquer parte deste 
manual. 
 
 
 
Programação Intermediária do DX-100 Página 3 Curso: TP-12 
 
SUMÁRIO 
 
1.0 INFORM LIST ............................................................................ 7 
1.1 Tecla INFORM LIST .................................................................................................. 7 
1.2 Nível de Linguagem ............................................................................................... 8 
2.0 INSTRUÇÕES DE CONTROLE ................................................ 9 
2.1 CALL e RET .......................................................................................................... 9 
2.1.1 Conectando Programas com CALL ................................................................................. 9 
2.1.2 Direct Open .................................................................................................................... 10 
2.1.3 Uso da Instrução RET .................................................................................................... 11 
2.1.4 Seqüência de Programas Filhos ..................................................................................... 13 
2.2 JUMP*LABEL e *LABEL ...................................................................................... 14 
2.2.1 JUMP para Ignorar Linhas ............................................................................................. 14 
2.2.2 JUMP para Criar um Loop ............................................................................................. 16 
2.2.3 Uso da Instrução *LABEL ............................................................................................. 17 
2.3 JUMP JOB ........................................................................................................... 17 
2.4 COMMENT .......................................................................................................... 18 
2.5 TIMER (Temporizador) ........................................................................................ 19 
2.6 PAUSE................................................................................................................. 19 
3.0 IF e IF-THEN .......................................................................... 20 
3.1 Condição IF Baseada em Entradas (IN#) ............................................................ 21 
3.2 “IF” Baseada em Input Group .............................................................................. 23 
3.3 “IF” Baseada em Variável .................................................................................... 23 
3.4 Editando uma Condição “IF” Existente ................................................................ 24 
3.5 Removendo um Tag “IF” ...................................................................................... 26 
3.6 Condições com IN#( ), IG#( ) ou VAR .................................................................. 27 
3.7 IFTHEN; ELSEIF; ELSE e ENDIF ....................................................................... 28 
4.0 VARIÁVEIS E INSTRUÇÕES ARITMÉTICAS ........................ 29 
4.1 Variáveis Aritméticas ........................................................................................... 29 
4.1.1 Visualizando variáveis aritméticas ................................................................................. 29 
4.1.2 Editando Variáveis ......................................................................................................... 30 
4.2 Instruções Aritméticas ......................................................................................... 30 
4.2.1 INC (Incremento) ........................................................................................................... 31 
4.2.2 DEC (Decrementar) ....................................................................................................... 32 
4.2.3 SET................................................................................................................................. 33 
4.2.4 CLEAR........................................................................................................................... 34 
5.0 MONITORANDO ENTRADAS E SAÍDAS .............................. 36 
5.1 Monitorando Entradas Universais ........................................................................ 36 
5.2 Monitorando Saídas Universais ........................................................................... 38 
5.3 Status Binário e Grupos de I/O ............................................................................ 40 
 
 
 
Programação Intermediária do DX-100 Página 4 Curso: TP-12 
 
6.0 INSTRUÇÕES DE I/O ............................................................. 41 
6.1 DOUT OT#( ) Saída Digital .................................................................................. 41 
6.2 DOUT OG#( ) Saída Digital de Grupos ................................................................ 42 
6.3 PULSE OT#( ) ou OG#( ) .................................................................................. 43 
6.4 WAIT.................................................................................................................... 44 
6.5 DIN (Digital Input) ................................................................................................ 45 
6.6 AOUT (Saída Analógica) ..................................................................................... 46 
6.7 Monitorando Saídas Analógicas .......................................................................... 46 
7.0 FUNÇÕES EXTRAS DE VELOCIDADE ................................. 47 
7.1 Traverse Run Time (TRT) .................................................................................... 47 
7.2 Speed Override ...................................................................................................48 
8.0 FUNÇÃO PASSWORD DX100 ............................................... 50 
8.1 Opção de Proteção por Senha ............................................................................ 50 
9.0 MODOS ESPECIAIS ............................................................... 51 
9.1 Special Run em Modo Play ................................................................................. 51 
9.1.1 Low Speed Start ............................................................................................................. 51 
9.1.2 Speed Limit .................................................................................................................... 52 
9.1.3 Dry-Run Speed ............................................................................................................... 52 
9.1.4 Check-Run ..................................................................................................................... 53 
9.1.5 Machine Lock ................................................................................................................ 53 
9.2 Special Run em Modo Teach ............................................................................... 53 
9.2.1 Machine Lock em Teach ................................................................................................ 54 
9.2.2 Weave Prohibit em Teach ............................................................................................... 54 
10.0 USER FRAMES..................................................................... 55 
10.1 Criando um User Frame ...................................................................................... 56 
10.2 Selecionando um User Frame ............................................................................. 57 
10.3 Posição Atual em USER ...................................................................................... 58 
11.0 TOOL CONTROL POINT (TCP) ............................................ 59 
11.1 Lista de Ferramentas e Seleção .......................................................................... 59 
11.1.1 Selecionar o número da Ferramenta ........................................................................... 59 
11.1.2 Selecionando uma ferramenta .................................................................................... 60 
11.2 Entrada de Dados de TCP Manual ...................................................................... 61 
11.3 Calibração de Ferramentas ................................................................................. 62 
 
 
 
 
 
 
 
Programação Intermediária do DX-100 Página 5 Curso: TP-12 
 
 
ÍNDICE DE FIGURAS 
 
 
Figura 1. 1: Inform List ........................................................................................................................ 7 
Figura 1. 2: Menu CONTROL da Inform List ..................................................................................... 8 
 
Figura 2. 1: Conectando Programas com a Instrução CALL ............................................................. 10 
Figura 2. 2: Abrindo um Programa Filho com Direct Open .............................................................. 11 
Figura 2. 3: Instrução RET no Programa Filho .................................................................................. 11 
Figura 2. 4: Enfileirando Programas com CALL ............................................................................... 13 
Figura 2. 5: Seqüência de Programas com o Programa Filho Ativo .................................................. 14 
Figura 2. 6: Jump para Saltar Linhas ................................................................................................. 14 
Figura 2. 7: Jump para Criação de Loop ............................................................................................ 16 
Figura 2. 8: Instrução Jump Job ......................................................................................................... 17 
 
Figura 3. 1: Programa com Várias Funções “IF” ............................................................................... 20 
Figura 3. 2: Exemplo de IF Baseado em uma Entrada Universal ...................................................... 21 
Figura 3. 3: Tela de Detalhes para CALL IF IN# ............................................................................... 21 
Figura 3. 4: Exemplo de IF baseado em um Grupo de Entradas Universais ..................................... 23 
Figura 3. 5: Exemplo de IF com Variável .......................................................................................... 23 
Figura 3. 6: Alterando Valores Numéricos na Linha de Buffer .......................................................... 25 
Figura 3. 7: Acesso a Tela de Detalhes da Função “IF” ..................................................................... 25 
Figura 3. 8: Condição com Status de Entradas .................................................................................. 27 
Figura 3. 9: Condicional com Status de Grupo de Entradas .............................................................. 27 
Figura 3. 10: Condição com uma Variável Byte ................................................................................ 27 
Figura 3. 11: Várias Instruções de Controle ....................................................................................... 28 
 
Figura 4. 1: Variáveis Aritméticas ...................................................................................................... 29 
Figura 4. 2: Exemplo com Variável Byte ........................................................................................... 30 
Figura 4. 3: Instruções Aritméticas .................................................................................................... 31 
Figura 4. 4: Exemplo de Programa com INC ..................................................................................... 31 
Figura 4. 5: Exemplo de Programa usando DEC ............................................................................... 32 
Figura 4. 6: Exemplo de Instrução SET com Constante .................................................................... 33 
Figura 4. 7: Exemplo de Instrução SET com Variáveis ..................................................................... 34 
Figura 4. 8: Exemplo de Programa com Instrução CLEAR .............................................................. 34 
 
Figura 5. 1: Tela de Entradas Universais SIMPLE e DETAIL .......................................................... 36 
Figura 5. 2: Simulação de Entradas ................................................................................................... 37 
Figura 5. 3: Verificação de Simulação ............................................................................................... 38 
Figura 5. 4: Tela DETAIL para Saídas Universais ............................................................................. 39 
Figura 5. 5: Valores de um Grupo de 8 Bits em Binário .................................................................... 40 
Figura 5. 6: Telas de Entrada e Saída Universal ................................................................................ 40 
 
Figura 6. 1: Exemplo de Instrução DOUT ......................................................................................... 41 
Figura 6. 2: Exemplo de Programa Usando DOUT para um Grupo .................................................. 42 
 
 
 
Programação Intermediária do DX-100 Página 6 Curso: TP-12 
 
Figura 6. 3: DOUT com uma Variável Byte ...................................................................................... 42 
Figura 6. 4: Exemplo de Programa com Instruções PULSE .............................................................. 43 
Figura 6. 5: Exemplo de Instruções WAIT......................................................................................... 44 
Figura 6. 6: Exemplo de Programa Usando DIN ...............................................................................45 
Figura 6. 7: Exemplo de Programa com a Instrução AOUT .............................................................. 46 
 
Figura 7. 1: Tela da Função TRT ........................................................................................................ 47 
Figura 7. 2: Speed Override ............................................................................................................... 49 
 
Figura 8. 1: A Tela de Login para Digitar o Nome de Usuário e Senha ............................................. 50 
 
Figura 9. 1: Special Run Disponíveis................................................................................................. 51 
 
Figura 10. 1: Pontos de um User Frame............................................................................................. 55 
Figura 10. 2: Exemplo de User Frames .............................................................................................. 55 
Figura 10. 3: Coordenadas de Usuário ............................................................................................... 56 
Figura 10. 4: Definindo um User Frame ............................................................................................ 56 
Figura 10. 5: Lista de Coordenadas de Usuário ................................................................................. 57 
 
Figura 11. 1: Seleção de Ferramentas Múltiplas ................................................................................ 59 
Figura 11. 2: Seleção de Ferramentas ................................................................................................ 60 
Figura 11. 3: TCP Referência de cada Movimento ............................................................................ 60 
Figura 11. 4: Digitando as Dimensões das Ferramentas .................................................................... 61 
Figura 11. 5: Exemplo dos 05 pontos de Referência para Calibração ............................................... 62 
Figura 11. 6: Gravando os Pontos TC1 a TC5 de um TCP ................................................................ 63 
Figura 11. 7: Tela de Dados de Ferramenta ....................................................................................... 64 
 
 
 
 
 
Programação Intermediária do DX-100 Página 7 Curso: TP-12 
 
1.0 INFORM LIST 
 
 O INFORM LIST contém todas as instruções que não são de movimentação. 
Essas instruções executam funções de controle de ferramenta e sequência do 
programa, operam e monitoram entradas e saídas e executam operações 
aritméticas. A disponibilidade das instruções depende da versão e opcionais de 
software e da aplicação ativa no controlador DX100. 
 
1.1 Tecla INFORM LIST 
 
 A tecla INFORM LIST funciona apenas no modo de EDIÇÃO e 
GERENCIAMENTO. O cursor deve estar no lado dos endereços do programa. 
 
 A lista é aberta e fechada através da tecla INFORM LIST; ela aparece no lado 
direito da tela conforme mostra a figura: 
 
 
 
 
 
 
 
 
 
 
 Figura 1. 1: Inform List 
 
Cada título representa uma categoria de funções disponíveis. Uma seleção 
errada pode ser desfeita pressionando o botão CANCEL. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Programação Intermediária do DX-100 Página 8 Curso: TP-12 
 
 
 Figura 1. 2: Menu CONTROL da Inform List 
 
NOTA: Toque a tela para alternar o cursor entre a Inform List e a última linha do 
programa selecionada pelo cursor. 
 
1.2 Nível de Linguagem 
 
Existem três diferentes níveis de linguagem (LANGUAGE LEVEL). O mais 
baixo possui apenas as instruções básicas e o maior possui todas as funções 
disponíveis 
 
 SUBSET A linguagem SUBSET disponibiliza no INFORM LIST as 
 funções de MOTION, IN/OUT, ARITH, CONTROL, SHIFT 
 e DEVICE; 
 
 STANDARD A linguagem STANDARD disponibiliza todas as funções 
 padrão do INFORM LIST (Inclusive funções opcionais, 
 quando habilitadas); 
 
 EXPANDED A linguagem EXPANDED disponibiliza todas as funções 
 disponíveis, além de: 
 
• Permite alocar variáveis locais no JOB HEADER; 
• Permite endereçamento de array para qualquer tipo de variável; 
• Todas as funções disponíveis podem ser utilizadas 
(Por exemplo, a função CWAIT não aparece em SUBSET e 
STANDARD). 
 
NOTA: Instruções existentes em um programa serão executadas, independente do nível 
de linguagem selecionado. 
 
 
 Para configurar o nível de linguagem, siga os seguintes passos: 
1. Abra o Main Menu; 
2. Selecione SETUP; 
3. Selecione TEACHING COND; 
4. Selecione o Language Level ativo; 
5. Pressione SELECT, escolha o nível desejado e pressione SELECT. 
 
 
NOTA: Esse manual é baseado no nível de linguagem STANDARD
 
 
 
Programação Intermediária do DX-100 Página 9 Curso: TP-12 
 
2.0 INSTRUÇÕES DE CONTROLE 
 
 As instruções de controle, como CALL, RET, JUMP ou PAUSE, são usadas para 
controlar a seqüência do programa em execução. Essas quatro instruções podem 
ter instruções condicionais atreladas, permitindo que o controlador decida sobre a 
execução da instrução. 
 
2.1 CALL e RET 
 
A instrução CALL permite que um programa chame outro como uma sub-rotina. 
O programa que chama o outro é chamado de “Pai”. O programa chamado é o 
“filho”, que pode ser finalizado com a instrução RET ou pelo fim do programa 
(linha END). O controlador continuará executando o programa pai com a próxima 
linha após a instrução CALL executada. 
 
2.1.1 Conectando Programas com CALL 
 
Programas podem ser conectados criando um programa Pai com instruções 
CALL para cada programa Filho na ordem que eles devem ser executados. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Programação Intermediária do DX-100 Página 10 Curso: TP-12 
 
Figura 2. 1: Conectando Programas com a Instrução CALL 
 
NOTA: As teclas FWD/BACK não executam instruções que não sejam de movimento. A 
instrução CALL deve ser executada em TEACH usando INTERLOCK+TEST 
START para execução contínua. 
 
CUIDADO! Se o programa chamado tiver instruções de movimento, tenha 
certeza de que o caminho do robô está livre. 
 
 Para programar uma instrução CALL, faça o seguinte: 
1. Em TEACH, mova o cursor para o lado dos endereços da linha acima da linha 
em que a instrução CALL será inserida; 
2. Pressione a tecla INFORM LIST; 
3. Selecione CONTROL a partir da INFORM LIST; 
4. Selecione CALL. Pressione SELECT caso queira inserir alguma função extra; 
5. Selecione o nome do programa a direita com o cursor e pressione SELECT; 
6. Selecione o programa a ser chamado na lista que surge; 
7. Pressione ENTER para aceitar as mudanças feitas na linha de Buffer (linha 
temporária); 
8. Pressione [INSERT] e ENTER para inserir a instrução no programa. 
 
2.1.2 Direct Open 
 
Pressionar a tecla DIRECT OPEN com o cursor no lado dos endereços de uma 
linha com uma instrução CALL JOB:1234 abrirá esse programa 1234. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Programação Intermediária do DX-100 Página 11 Curso: TP-12 
 
 
 
Figura 2. 2: Abrindo um Programa Filho com Direct Open 
 
 Pressione DIRECT OPEN novamente para fechar o programa filho e retornar ao 
programa Pai. 
 
NOTA: Acessar um programa por DIRECT OPEN permite a edição do mesmo, assim 
como execução por FWD/BACK ou INTERLOCK+TEST START. 
 
 
2.1.3 Uso da Instrução RET 
 
 A instrução RET faz com que um programa filho seja finalizado antes que o 
cursor chegue a linha final do programa. Isso faz com que apenas as instruções 
anteriores ao RET sejam executadas. 
 
 No exemplo abaixo, se a condicão for verdadeira, o programa filho será finalizado 
na linha 0003 e o programa pai continuará a execução da linha 0004. Se a 
condicional for falsa, o programa filho continuará sendo executado até a instrução 
END, e depois retornar ao programa pai. 
 
 
 
 
 
 
 
 
 
 
 
 
 
Figura 2. 3: Instrução RET no Programa Filho 
 
CUIDADO! Garantacaminho livre para o robô caso a instrução RET seja 
executada. 
 
Para inserir uma instrução RET em um programa, faça o seguinte 
1. Mova o cursor para o lado dos endereços e pressione a tecla INFORM LIST; 
2. Selecione CONTROL; 
3. Selecione RET. Acesse a tela de detalhes caso seja necessário; 
4. Pressione ENTER para fechar a tela de detalhes, caso esta tenha sido aberta; 
5. Pressione [INSERT], ENTER para inserir a instrução na linha abaixo do 
cursor. 
 
 
 
 
Programação Intermediária do DX-100 Página 12 Curso: TP-12 
 
NOTA: Quando um programa filho é executado manualmente, sem ter sido chamado 
por uma instrução CALL, a tentativa de execução da instrução RET gera o 
alarme 4440 – UNDEFINED RETURN JOB. 
 
 
 
Programação Intermediária do DX-100 Página 13 Curso: TP-12 
 
2.1.4 Sequência de Programas Filhos 
 
 A instrução CALL pode ser usada dentro de programas filhos para chamar outro 
programa. Com isso, uma seqüência de programas pai/filho é criada, permitindo 
que o controlador saiba para qual programa voltar com as instruções RET ou 
END. 
 
 Até doze programas podem ser seqüenciados, onde o primeiro programa está no 
nível um. O exemplo abaixo mostra uma seqüência de programas filho: 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Figura 2. 4: Enfileirando Programas com CALL 
 
 Para mostrar a seqüência de programas, faça o seguinte: 
 
1. Em PLAY, selecione DISPLAY no menu superior; 
2. Selecione JOB STACK. 
 
Um asterisco “*” aparece indicando que a tela sempre será mostrada em modo 
PLAY. Para remover a tela, repita o procedimento acima. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Programação Intermediária do DX-100 Página 14 Curso: TP-12 
 
 
Figura 2. 5: Seqüência de Programas com o Programa Filho Ativo 
 
NOTA: O alarme 4452 STACK MORE THAN 12 (JOB CALL) surge caso mais de 12 
programas sejam chamados em sequência. 
 
 
2.2 JUMP*LABEL e *LABEL 
 
 A instrução JUMP*LABEL funciona apenas com a instrução *LABEL. 
 
 Juntas, elas instruem o controlador a ir de uma linha com a instrução 
JUMP*LABEL para outra com a mesma função *LABEL. 
 
 Essas instruções podem ser utilizadas para pular uma parte do programa ou criar 
um loop infinito. 
 
NOTA: Um label automaticamente inclui um asterisco (*). O programador pode alterar 
os caracteres padrão, LABEL, por até 8 caracteres usando qualquer 
combinação de letras, números e símbolos. 
 
2.2.1 JUMP para Ignorar Linhas 
 
Para ignorar uma parte de um programa, a instrução JUMP*LABEL precisa 
preceder a instrução *LABEL. 
 
 No exemplo abaixo, o controlador pulará as linhas 6, 7 e 8, encontrando o label 
correspondente na linha 9, e continuará a execução na linha 10 (se a condição for 
verdadeira); caso contrário, o controlador executará todas as linhas. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Figura 2. 6: Jump para Saltar Linhas 
 
 
 
 
 
Programação Intermediária do DX-100 Página 15 Curso: TP-12 
 
CUIDADO! Garanta que o caminho do robô esteja livre caso as linhas sejam 
ignoradas. 
 
 
 
Programação Intermediária do DX-100 Página 16 Curso: TP-12 
 
2.2.2 JUMP para Criar um Loop 
 
Para criar um loop, a instrução *LABEL deve preceder a JUMP*LABEL 
 
 No exemplo abaixo, o controlador passa pela instrução *LABEL na linha 5 até 
chegar à instrução JUMP*LABEL na linha 11. O programa voltará até a linha 5 e 
executará aquela parte do programa novamente enquanto a condição for 
verdadeira. Quando a condição for falsa, o controlador não voltará para a linha do 
label, seguindo para a linha 12. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Figura 2. 7: Jump para Criação de Loop 
 
Para inserir uma instrução JUMP*LABEL, siga o seguinte procedimento: 
 
1. Em TEACH, mova o cursor para o lado dos endereços da linha acima da qual 
se deseja inserir a instrução JUMP; 
2. Pressione a tecla INFORM LIST; 
3. Selecione CONTROL; 
4. Selecione JUMP; 
5. “JUMP*LABEL” aparece na linha de buffer. Selecione a palavra LABEL (ou 
algum outro nome que esteja após o asterisco, caso a instrução já tenha sido 
usada) com o cursor e pressione SELECT; 
6. Digite o novo nome da LABEL no teclado (até 8 caracteres) e pressione 
ENTER; 
7. Pressione [INSERT], ENTER para inserir a instrução no programa. 
 
 
 
Programação Intermediária do DX-100 Página 17 Curso: TP-12 
 
2.2.3 Uso da Instrução *LABEL 
 
 Uma instrução *LABEL sempre deve ser inserida em um programa quando uma 
instrução JUMP*LABEL for usada. O nome da *LABEL deve ser exatamente 
igual ao nome presente na instrução JUMP*LABEL 
 
 Para inserir um label em um programa, siga os seguintes passos: 
 
1. Em TEACH, mova o cursor para o lado dos endereços; 
2. Pressione a tecla INFORM LIST; 
3. Selecione CONTROL; 
4. Selecione LABEL; 
5. “*LABEL” aparece na linha de buffer. Selecione o nome do label e pressione 
SELECT; 
NOTA: Um label sempre vem precedido de um asterisco (*) e o não pode haver duas 
instruções *LABEL com o mesmo nome. 
6. Digite o nome desejado para a Label e pressione ENTER; 
7. Pressione [INSERT], ENTER para inserir o Label no programa. 
 
2.3 JUMP JOB 
 
A função JUMP JOB:(nome) é usada para encerrar o programa ativo e chamar 
outro totalmente diferente, sem nenhuma relação com o primeiro. O controlador 
não retorna para o programa original quando termina a execução do programa. 
 
 Na linha 3 do exemplo abaixo, o controlador interrompe a execução do programa 
original e iniciar a execução do programa R até sua instrução END (se a condição 
for verdadeira); caso contrário, o programa original continua sendo executado. 
 
 
 
 
 
 
 
 
 
 
Figura 2. 8: Instrução Jump Job 
 
 
Para inserir uma instrução JUMP JOB no programa, faça o seguinte: 
 
1. Em TEACH, mova o cursor para o lado dos endereços na linha acima onde se 
deseja inserir a instrução JUMP JOB; 
 
 
 
Programação Intermediária do DX-100 Página 18 Curso: TP-12 
 
2. Pressione a tecla INFORM LIST; 
3. Selecione CONTROL; 
4. Selecione JUMP; 
5. Pressione SELECT para acessar a tela de detalhes; 
6. Com o cursor no asterisco, pressione SELECT; 
7. Selecione a Tag “JOB:” e pressione SELECT; 
8. Mova o cursor para a direita e pressione SELECT para acessar a lista de 
programas. Selecione o programa desejado e pressione SELECT; 
9. Pressione ENTER para aceitar as modificações feitas, fechar a tela de 
detalhes e retornar ao programa; 
10. Pressione [INSERT], ENTER para inserir a instrução no programa. 
 
 
2.4 COMMENT 
 
Comentários são mensagens do programados para o operador, identificados no 
programa pelo apóstrofo (‘) e têm no máximo 32 caracteres 
 
 Para inserir um comentário em um programa, faça o seguinte: 
 
1. Em TEACH, mova o cursor para o lado dos endereços; 
2. Pressione a tecla INFORM LIST; 
3. Selecione CONTROL; 
4. Selecione COMMENT; 
5. Um apóstrofo (‘) aparece na linha de buffer. Mova o cursor para a direita, 
selecionando COMMENT, e pressione SELECT; 
 
NOTA: O comentário pode ter até 32 caracteres, incluindo letras, números e símbolos. 
Um botão de Espaço está disponível. Ao pressionar e segurar a tecla SHIFT o 
cursor se move para a linha de nome, permitindo o uso do cursor para 
direita/esquerda e o uso do Backspace para apagar caracteres individuais. A 
tecla CANCEL apaga todos os caracteres digitados. 
 
6. Digite o comentário desejado e pressione ENTER; 
7. Pressione [INSERT], ENTER para inserir o comentário no programa. 
 
 
 
Programação Intermediária do DX-100 Página 19 Curso: TP-12 
 
2.5 TIMER (Temporizador) 
 
 A instrução TIMER causa um delay na execução do programa até que o valor da 
instrução seja alcançado. O cursor permanece na linha enquanto o robô aguarda o 
encerramento do TIMER. 
 
 A instrução TIMER é usada quando o robô precisa ficar em uma posição por um 
período de tempo, como por exemplo, antesdo início de um arco de solda. 
 
 O TIMER pode assumir valores entre 0.01 e 655.35 segundos. 
 
 Para inserir uma instrução TIMER no programa, faça o seguinte: 
 
1. Em TEACH, mova o cursor para o lado dos endereços; 
2. Pressione a tecla INFORM LIST; 
3. Selecione CONTROL; 
4. Selecione TIMER; 
5. Selecione o campo T= (em segundos) e pressione SELECT; 
6. Digite o valor desejado (de 0.01 a 655.35s) e pressione ENTER; 
7. Pressione [INSERT], ENTER para inserir o TIMER no programa. 
 
NOTA: Em alguns sistemas, a instrução TIMER pode ser acessada pressionando o 
botão “1” no teclado numérico. 
 
2.6 PAUSE 
 
A instrução PAUSE é usada para programar um hold para suspender a execução 
do programa. A lâmpada de START apaga, e o robô mantém sua posição 
 
 A linha de mensagem mostra 
 
 Para continuar o programa, pressione START 
 
 Para programar uma instrução PAUSE, faça os seguintes passos: 
 
1. Em TEACH, mova o cursor para o lado de endereços; 
2. Pressione a tecla INFORM LIST; 
3. Selecione CONTROL ; 
4. vkcSelecione PAUSE; 
5. Pressione [INSERT], ENTER para inserir o PAUSE no programa. 
 
 
 
 
Programação Intermediária do DX-100 Página 20 Curso: TP-12 
 
3.0 IF e IF-THEN 
 
A condição IF é uma condição que diz se a instrução de controle a ela atrelada 
será executada. Ela pode ser adicionada na Linha de Buffer (linha temporária) 
para uma nova instrução no lado dos endereços, ou para uma instrução existente 
no lado das instruções. 
 
 A condição IF só pode ser acessada pela tela de detalhes das seguintes 
instruções de controle: 
• JUMP; 
• CALL; 
• RET; 
• PAUSE. 
 
 As condições disponíveis para a função IF são 
• IN# - verifica o status de uma Input (ON ou OFF); 
• IG# - verifica o status de um input group (= ou <>; 0 a 255); 
• Var – compara valores de variáveis (=,<>,>,>=,< ou <=). 
 
 O programa abaixo mostra um exemplo para cada uso da instrução IF com várias 
instruções de controle: 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Figura 3. 1: Programa com Várias Funções “IF”
 
 
Programação Intermediária do DX-100 Página 21 Curso: TP-12 
 
3.1 Condição IF Baseada em Entradas (IN#) 
 
Quando um IF é baseado no status de uma entrada universal, as únicas escolhas 
disponíveis são ON ou OFF. 
 
 
 
 
Figura 3. 2: Exemplo de IF Baseado em uma Entrada Universal 
 
 Para programar um CALL, RET, JUMP ou PAUSE com um IF baseado 
numa entrada universal, faça o seguinte: 
 
1. Selecione a instrução principal da linha de buffer e pressione SELECT para 
acessar a tela de detalhes; 
2. Selecione o campo CONDITION “UNUSED” e pressione SELECT; 
3. Selecione “IF” e pressione SELECT; 
4. Selecione TARGET e pressione SELECT; 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Figura 3. 3: Tela de Detalhes para CALL IF IN# 
 
 
 
 
5. Selecione IN# e pressione SELECT; 
6. Selecione o número da entrada e pressione SELECT; 
7. Digite o valor da entrada desejada e pressione ENTER; 
8. Mova o cursor para baixo até CONDITION “ON”. Pressione SELECT para 
 
 
Programação Intermediária do DX-100 Página 22 Curso: TP-12 
 
escolher entre ON e OFF; 
9. Pressione ENTER conforme necessário para aceitar as alterações e voltar à 
tela de programa; 
10. Pressione [INSERT], ENTER para inserir a instrução no programa. 
 
 
Programação Intermediária do DX-100 Página 23 Curso: TP-12 
 
3.2 “IF” Baseada em Input Group 
 
 Quando um “IF” se baseia em um grupo de Entradas Universais, o controlador 
pode comparar seu valor usando os operadores “=” (igual) ou “<>” (diferente). 
 
 
 
 
 
Figura 3. 4: Exemplo de IF baseado em um Grupo de Entradas Universais 
 
 
Para programar um CALL, RET, JUMP ou PAUSE com um IF IG#( ) = 
baseado em um grupo de entradas universais, faça o seguinte: 
 
 
1. Selecione a instrução principal da linha de buffer e pressione SELECT para 
acessar a tela de detalhes; 
2. Selecione o campo CONDITION “UNUSED” e pressione SELECT; 
3. Selecione “IF” e pressione SELECT; 
4. Selecione TARGET e pressione SELECT; 
5. Selecione IG# e pressione SELECT; 
6. Selecione o número do grupo e pressione SELECT; 
7. Digite o número do grupo desejado e pressione ENTER; 
8. Selecione CONDITION e pressione SELECT. Selecione CONSTANT e 
pressione SELECT; 
9. Selecione o valor e pressione SELECT. Digite o valor da combinação binária 
desejada (0-255) e pressione ENTER; 
10. Pressione ENTER para aceitar as informações digitadas e voltar para a tela de 
programa; 
11. Pressione [INSERT], ENTER para inserir a instrução no programa. 
 
 
3.3 “IF” Baseada em Variável 
 
 Quando o IF se baseia em uma variável, o controlador compara o conteúdo de 
uma variável usando alguns dos operadores lógicos. 
 
 
 
 
 
Figura 3. 5: Exemplo de IF com Variável 
 
 
 
Programação Intermediária do DX-100 Página 24 Curso: TP-12 
 
 
Os operadores abaixo podem ser usados para comparação de variáveis 
 
= Igual; 
<> Diferente; 
> Maior que; 
>= Maior ou Igual; 
< Menor que; 
<= Menor ou Igual. 
 
 
 Para programar um CALL, RET, JUMP ou PAUSE com um IF baseado em 
uma variável, faça o seguinte: 
 
 
1. Selecione a instrução principal da linha de buffer e pressione SELECT para 
acessar a tela de detalhes; 
2. Selecione o campo CONDITION “UNUSED” e pressione SELECT; 
3. Selecione “IF” e pressione SELECT; 
4. Selecione TARGET, IN#, e pressione SELECT; 
5. Selecione o tipo de variável desejada e pressione SELECT; 
6. Selecione o endereço da variável e pressione SELECT; 
7. Digite o número do endereço da variável desejado e pressione ENTER; 
8. Selecione CONDITION “=” e pressione SELECT; 
9. Selecione o operador lógico desejado e pressione SELECT; 
10. Selecione o valor da condição e pressione SELECT; 
11. Digite no teclado numérico o valor desejado e pressione ENTER; 
12. Pressione ENTER novamente para aceitar as alterações e voltar à tela de 
programa; 
13. Pressione [INSERT], ENTER para inserir a instrução no programa. 
 
 
 
3.4 Editando uma Condição “IF” Existente 
 
 
Apenas valores numéricos de uma condicional podem ser alterados diretamente da 
linha de buffer. 
 
 
 
 
 
Programação Intermediária do DX-100 Página 25 Curso: TP-12 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Figura 3. 6: Alterando Valores Numéricos na Linha de Buffer 
 
 
Para alterar o tipo de condicional, a tela de detalhes deve ser utilizada 
 
 A tela de detalhes para “IF” pode ser acessada selecionando a tag “IF” na linha 
temporária e pressionando SELECT ou selecionando o ícone “I” na tela de 
detalhes da instrução principal da linha. 
 
Figura 3. 7: Acesso a Tela de Detalhes da Função “IF” 
 
 
 
 
Programação Intermediária do DX-100 Página 26 Curso: TP-12 
 
 
Para editar uma tag IF, faça o seguinte: 
 
1. Acesse a tela de detalhes do IF; 
2. Selecione com o cursor o TARGET atual e pressione SELECT; 
3. Selecione o novo tipo do TARGET e pressione SELECT; 
4. Confirme as mudanças pressionando ENTER, inserindo-as no programa. 
 
3.5 Removendo um Tag “IF” 
 
 Quando a função LEARNING é VALID, as instruções de controle aparecem na 
linha temporária já com o condicional IF. Caso o IF não seja necessário, ele 
precisa ser removido seguindo os passos abaixo. 
 
 Esse procedimento também deve ser usado para remover um IF de uma linha já 
existente no programa 
 
 Para remover uma tag IF da linha temporária, faça o seguinte: 
 
1. Pressione SELECT para acessar a tela de detalhes da instrução; 
2. Selecione o campo CONDITION “IF” e pressione SELECT; 
3. Selecione “UNUSED” e pressione SELECT; 
4. Pressione ENTER para retornar à tela do programa; 
5. Pressione ENTER para inserir as mudanças no programa. 
 
 
Programação Intermediária do DX-100 Página 27 Curso: TP-12 
 
3.6 Condições com IN#( ), IG#( ) ou VAR 
 
 Os exemplosabaixo mostram a diferença do uso, em uma condicional IF, de status 
de entradas individuais ou grupos e variáveis. 
 
 No exemplo abaixo, um programa ou qualquer combinação dos programas serão 
executados em cada ciclo do programa pai. 
 
 
 
 
 
 
 
 
Figura 3. 8: Condição com Status de Entradas 
 
 Observe que no próximo exemplo, em cada ciclo do programa pai, apenas um 
programa será executado. Entretanto, se durante a execução do programa DX a 
IG#(1) mudar seu valor para 2, o programa R será chamado. Do mesmo modo, se 
a IG#(1) mudar para 4 durante a execução do programa R, o programa C será 
chamado no mesmo ciclo. 
 
 
 
 
 
 
 
 
Figura 3. 9: Condicional com Status de Grupo de Entradas 
 
Nesse último exemplo, apenas um programa será executado em cada ciclo do 
programa pai. Isso acontece, pois o valor da variável Byte B004 só será uma vez 
em cada ciclo, na instrução localizada na linha 0001. 
 
 
 
 
 
 
 
 
 
 
Figura 3. 10: Condição com uma Variável Byte 
 
 
Programação Intermediária do DX-100 Página 28 Curso: TP-12 
 
3.7 IFTHEN; ELSEIF; ELSE e ENDIF 
 
As instruções IFTHEN e ENDIF fazem a execução de uma parte de um programa 
condicional, baseado no status de uma IN#( ), IG#( ) ou pela comparação de uma 
variável a outra ou a uma constante. 
 
 As instruções ELSEIF e ELSE devem ser inseridas em qualquer lugar entre o 
IFTHEN e o ENDIF. 
 
NOTA: A instrução ENDIF é automaticamente inserida abaixo da IFTHEN. 
 
 O exemplo abaixo mostra várias combinações dessas instruções de controle. 
 
 
 
Figura 3. 11: Várias Instruções de Controle 
 
 
 
NOTA: As instruções ELSE e ENDIF não possuem tela de detalhes. 
 
 
 
 
Programação Intermediária do DX-100 Página 29 Curso: TP-12 
 
4.0 VARIÁVEIS E INSTRUÇÕES 
ARITMÉTICAS 
 
Qualquer valor que não seja constante, ou seja, que possa variar em um programa 
deve ser armazenado em um tipo apropriado de variável. 
 
 O controlador DX100 possui os seguintes tipos de variáveis: 
 
 ARITHMETIC [Byte, Integer, Double Precision e Real]; 
 POSIÇÃO [Robot, Station, Base]; 
 STRING [Caracteres ASC II]. 
 
 Variáveis globais estão disponíveis para todos os programas, permitindo ser 
manipulada por qualquer programa. 
 
4.1 Variáveis Aritméticas 
 
Cada variável aritmética pode armazenar um valor numérico. O tipo da variável 
determina os valores que a variável pode receber. 
 
 
Tipo Endereços Limites Aplicação 
Integer I000-I099 -32768 a +32767 Contadores 
Double 
Preciosion D000-D099 -2147483649 a +2147483647 Distância (Microns) 
Real R000-R099 
±3.400000 E+38 
(mínimo/máximo) 
±9.999999 E-38 
(valores entre -1 e +1) 
Cálculos Aritméticos 
Avançados (DIV, SQRT, 
SIN, COS, ATAN, etc.) 
Byte B000-B099 0-255 Comunicação I/O 
 
Figura 4. 1: Variáveis Aritméticas 
 
4.1.1 Visualizando variáveis aritméticas 
 
 Para visualizar o conteúdo de qualquer tipo de variável, tanto em TEACH 
como em PLAY, faça o seguinte: 
 
1. No Menu Principal, selecione VARIABLE; 
2. Selecione o tipo de variável desejado (INTEGER, DOUBLE, etc.); 
3. Localize o número da variável desejada com o cursor 
ou 
Com o cursor sobre qualquer variável, pressione SELECT, digite no teclado 
numérico o número do variável desejada e pressione ENTER 
 
 
Programação Intermediária do DX-100 Página 30 Curso: TP-12 
 
ou 
Na área de menus superior, selecione EDIT e SEARCH. Digite o número da 
variável desejada e pressione ENTER. 
 
 
4.1.2 Editando Variáveis 
 
 O conteúdo de uma variável aritmética pode ser editado manualmente apenas em 
TEACH. 
 
 Para alterar o valor de uma variável, siga os seguintes passos: 
 
1. Selecione a variável desejada; 
2. Selecione o conteúdo da variável (valor a direita) e pressione SELECT; 
3. Digite o valor desejado (dentro dos limites da variável) no teclado numérico e 
pressione ENTER. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Figura 4. 2: Exemplo com Variável Byte 
 
 
4.2 Instruções Aritméticas 
 
O menu ARITH do INFORM LIST contém uma vasta seleção de instruções 
usadas para cálculos em geral. A tabela a seguir lista as instruções usadas para 
contadores, começando por um valor inicial, e limpando o conteúdo de uma 
seqüência de variáveis para o padrão, zero. 
 
 
 
 
Programação Intermediária do DX-100 Página 31 Curso: TP-12 
 
 
 Função Sintaxe Exemplo Resultado 
INC 
Adiciona um no valor 
da variável 
especificada 
INC B<endereço> 
INC I<endereço> 
INC D<endereço> 
INC B023 
INC I023 
INC D023 
Se o conteúdo for = 
6, o resultado é 7 
DEC 
Adiciona um no valor 
da variável 
especificada 
DEC B<endereço> 
DEC I<endereço> 
DEC D<endereço> 
DEC B023 DEC 
I023 DEC D023 
Se o conteúdo for = 
6, o resultado é 5 
SET 
Seta o dado 1 igual 
ao dado 2 
SET <Data 1> <Data 2> SET I012 3 I012 passa a valer 3 
CLEAR Limpa os valores das 
variáveis 
CLEAR <endereço> 
CLEAR I007 4 
CLEAR I007 ALL 
Limpa I007, 8, 9 e 10 
Limpa I007 em diante 
(I007-I099) 
Figura 4. 3: Instruções Aritméticas 
 
 
NOTA: Todas as funções aritméticas são acessadas através do INFORM LIST, no 
submenu ARITH. 
 
 
4.2.1 INC (Incremento) 
 
 A instrução INC incrementa o valor armazenado em uma variável (+1). Por 
exemplo, se I012 tem 6 no seu valor, após a execução da instrução INC012, ele 
terá 7 em seu valor. A instrução INC só pode ser utilizada com as variáveis tipo B, 
I e D. 
 
 
 
 
 
 
 
Figura 4. 4: Exemplo de Programa com INC 
 
A função INC é usada para contadores sem valor limite durante a execução de 
programas. Pode ser usado para contar número de ciclos ou peças produzidas pela 
célula. 
 
 A função INC deve estar depois do que deve ser contado de modo a evitar erros de 
contagem caso haja interrupção no programa. Logo, a instrução INC deve ser 
colocada no final de um programa conforme exemplo abaixo. 
 
NOTA: Se o incremento de uma variável exceder o limite do tipo de variável usado, o 
alarme 4446: OVER VARIABLE LIMIT ocorrerá, interrompendo a execução 
do programa na linha da instrução. 
 
 Para inserir uma função INC no programa, faça o seguinte: 
 
 
 
Programação Intermediária do DX-100 Página 32 Curso: TP-12 
 
1. Em TEACH, mova o cursor para o lado dos endereços; 
2. Pressione a tecla INFORM LIST; 
3. Selecione ARITH; 
4. Selecione INC; 
5. Selecione a instrução INC com o cursor na linha temporária e pressione 
SELECT para acessar a tela de detalhes; 
6. Selecione o ícone e pressione SELECT; 
7. Selecione o tipo de variável desejado (B, I ou D); pressione SELECT; 
8. Selecione o número da variável e pressione SELECT, digite o número 
desejado (0 a 99) no teclado numérico e pressione ENTER; 
9. Pressione [INSERT], ENTER para inserir a instrução no programa. 
 
 
4.2.2 DEC (Decrementar) 
 
 A instrução DEC decrementa o valor armazenado em uma variável (-1). Por 
exemplo, se I022 tem 10 no seu valor, após a execução da instrução DEC I022, ele 
terá 9 em seu valor. A instrução DEC só pode ser utilizada com as variáveis do 
tipo B, I e D. 
 
 A instrução DEC deve ser usada para alcançar uma meta de produção. Uma 
variável é selecionada para armazenar o valor necessário de peças a ser 
produzidas. Ela será decrementada cada vez que uma peça for produzida. Para 
melhor resultados, faça o decremento somente no final do programa de produção. 
 
 
 
 
 
 
 
 
 
 
 
Figura 4. 5: Exemplo de Programa usando DEC 
 
NOTA: Se o decremento de uma variável exceder o limite do tipo de variável usado, o 
alarme 4446: OVER VARIABLE LIMIT ocorrerá, interrompendo a execução 
do programa na linha da instrução. 
 
 Para inserir uma função DEC no programa, faça o seguinte: 
 
1. Em TEACH, mova o cursor para o lado dos endereços; 
2. Pressione a tecla INFORM LIST; 
 
 
Programação Intermediária do DX-100 Página 33 Curso: TP-123. Selecione ARITH; 
4. Selecione DEC; 
5. Selecione a instrução DEC com o cursor na linha temporária e pressione 
SELECT para acessar a tela de detalhes; 
6. Selecione o ícone e pressione SELECT; 
7. Selecione o tipo de variável desejado (B, I ou D); pressione SELECT; 
8. Selecione o número da variável e pressione SELECT, digite o número 
desejado (0 a 99) no teclado numérico e pressione ENTER; 
9. Pressione [INSERT], ENTER para inserir a instrução no programa. 
 
4.2.3 SET 
 
 A instrução SET armazena qualquer valor em uma variável. Isso permite que o 
programa determine valores iniciais para variáveis sem depender da entrada 
manual de valores. Pode também ser usada para zerar uma variável individual; se 
for zerar mais de uma variável consecutiva, utilize a função CLEAR. 
 
 
 
 
 
 
 
 
 
Figura 4. 6: Exemplo de Instrução SET com Constante 
 
Para inserir uma função SET em um programa, faça o seguinte: 
 
1. Em TEACH, mova o cursor para o lado dos endereços; 
2. Pressione a tecla INFORM LIST; 
3. Selecione ARITH; 
4. Selecione SET; 
5. Selecione a instrução SET com o cursor na linha temporária e pressione 
SELECT para acessar a tela de detalhes; 
6. Selecione o ícone e pressione SELECT; 
7. Selecione o tipo de variável desejado (B, I ou D) e pressione SELECT; 
8. Selecione o número da variável e pressione SELECT, digite o número 
desejado (0 a 99) no teclado numérico e pressione ENTER; 
9. Selecione SOURCE, pressione SELECT e entre um valor constante no 
teclado numérico e pressione ENTER; 
10. Pressione ENTER para aceitar as mudanças feitas na tela de detalhes; 
11. Pressione [INSERT], ENTER para inserir a instrução no programa. 
 
 
Programação Intermediária do DX-100 Página 34 Curso: TP-12 
 
NOTA: Na tela de detalhes, a instrução SET pode ser configurada para armazenar o 
valor de uma variável em outra, desde que os valores não excedam os limites do 
tipo de variável usado caso os tipos de variáveis usados sejam diferentes. 
 
 
 
 
Figura 4. 7: Exemplo de Instrução SET com Variáveis 
 
 
4.2.4 CLEAR 
 
A instrução CLEAR permite que variáveis consecutivas sejam zeradas. A primeira 
variável da seqüência procede a instrução CLEAR. No exemplo abaixo, CLEAR 
I007 4 zera o conteúdo de 4 variáveis, I007, I008, I009 e I010. 
 
 
 
 
 
 
 
 
Figura 4. 8: Exemplo de Programa com Instrução CLEAR 
 
 Na tela de detalhes de CLEAR, a tag ALL pode ser selecionada, fazendo com que 
todas as variáveis, a partir da variável digitada na instrução, sejam zeradas. Por 
exemplo, CLEAR B000 ALL zera todas as variáveis a partir de B000 (B000 até 
B099). 
 
 Para inserir uma instrução CLEAR em um programa, faça o seguinte: 
 
1. Em TEACH, mova o cursor para o lado dos endereços; 
2. Pressione a tecla INFORM LIST; 
3. Selecione ARITH; 
4. Selecione CLEAR; 
5. Selecione a instrução CLEAR com o cursor na linha temporária e pressione 
SELECT para acessar a tela de detalhes; 
6. Selecione o ícone e pressione SELECT; 
7. Selecione o tipo de variável desejado; pressione SELECT; 
8. Selecione o número da variável e pressione SELECT, digite o número 
desejado (0 a 99) no teclado numérico e pressione ENTER; 
9. Para escolher quantas variáveis serão zeradas, siga os seguintes passos: 
 Selecione CLEAR NUM e pressione SELECT; 
 Digite o número de variáveis a serem zeradas; 
 
 
Programação Intermediária do DX-100 Página 35 Curso: TP-12 
 
 Pressione [INSERT] ENTER para inserir a instrução no programa. 
ou 
 
Para zerar de uma variável selecionada até a 099, faça o seguinte: 
 Selecione CLEAR NUM e pressione SELECT; 
 Selecione o ícone e pressione SELECT; 
 Selecione ALL e pressione SELECT; 
 Pressione [INSERT], ENTER para inserir a instrução no programa.
 
 
Programação Intermediária do DX-100 Página 36 Curso: TP-12 
 
5.0 MONITORANDO ENTRADAS E 
SAÍDAS 
 
 É possível monitorar o estado e/ou alterar a descrição de qualquer entrada ou 
saída universal tanto em TEACH como em PLAY. 
 
 
NOTA: A tela de I/O para Entradas e Saídas Universais oferece dois modos de exibição. 
A tela DETAIL mostra um grupo por tela, com nome e estado. A tela SIMPLE 
mostra vários grupos por tela apenas com o indicador de Bit/Byte. 
 
 
5.1 Monitorando Entradas Universais 
 
 Para acessar a tela de exibição de entradas universais, siga os seguintes 
passos: 
 
1. No Menu Principal, selecione IN/OUT; 
2. Selecione UNIVERSAL INPUT; 
3. Para mudar a tela, selecione DISPLAY na área de menus; 
4. Selecione entre DETAIL ou SIMPLE. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Figura 5. 1: Tela de Entradas Universais SIMPLE e DETAIL 
 
 
 
Para procurar por uma entrada específica na tela DETAIL: 
 
 
Programação Intermediária do DX-100 Página 37 Curso: TP-12 
 
 
 Com a tela em DETAIL, leve o cursor em qualquer campo IN#( ) e pressione 
SELECT. Digite o número da entrada desejada e pressione ENTER 
 Ou 
 Com a tela em DETAIL, selecione EDIT. Selecione SEARCH SIGNAL NO. 
Digite o número da entrada desejada e pressione ENTER. 
 
NOTA: Existem 256 grupos de entrada disponíveis no controlador DX100. 
Individualmente, elas são numeradas de IN#(1) até IN#(2048). 
 
 
 Para forçar uma entrada (simular que a entrada está acionada), faça o 
seguinte em TEACH: 
 
1. Na tela da entrada desejada em DETAIL, leve o cursor para o campo perto do 
símbolo de status; 
2. Pressione SELECT para preencher o campo com SIM; 
3. Selecione o símbolo de status [❍] da entrada a ser simulada; 
4. Segure a tecla INTERLOCK e pressione SELECT para alternar o status da 
entrada entre [ ] ON e [❍] OFF. 
Para remover a opção de simulação de entradas, repita o procedimento acima. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Figura 5. 2: Simulação de Entradas 
 
 
 Quando um programa é executado em TEST START ou em PLAY com qualquer 
entrada simulada, o controlador perguntará se o programa deve mesmo ser 
 
 
Programação Intermediária do DX-100 Página 38 Curso: TP-12 
 
executado com a simulação. Isso evita simulações não intencionais e, 
conseqüentemente, acidentes e colisões que podem ocorrer. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Figura 5. 3: Verificação de Simulação 
 
 
5.2 Monitorando Saídas Universais 
 
 Para monitorar Saídas Universais, faça o seguinte: 
 
1. No Menu Principal, selecione IN/OUT; 
2. Selecione UNIVERSAL OUTPUT; 
3. Para mudar a tela, selecione DISPLAY na área de menus; 
4. Selecione entre DETAIL ou SIMPLE. 
 
 Para procurar por uma saída específica na tela DETAIL: 
 
 Leve o cursor em qualquer campo OT#( ) e pressione SELECT. Digite o 
número da entrada desejada e pressione ENTER 
 Ou 
 Selecione EDIT. Selecione SEARCH SIGNAL NO. Digite o número da saída 
desejada e pressione ENTER. 
 
 A tela DETAIL permite forçar as saídas universais para ON/OFF. 
 
 
 
 
Programação Intermediária do DX-100 Página 39 Curso: TP-12 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Figura 5. 4: Tela DETAIL para Saídas Universais 
 
 
 Para forçar uma saída (simular que a saída está acionada), faça o seguinte 
em TEACH: 
 
1. Selecione o símbolo de status [❍] da saída a ser forçada; 
2. Segure a tecla INTERLOCK e pressione SELECT para alternar o status da 
entrada entre [ ] ON e [❍] OFF. 
 
 
NOTA: Existem 256 grupos de saídas universais disponíveis no controlador DX100. 
Individualmente, elas são numeradas de OT#(1) até OT#(2048). 
 
 
Programação Intermediária do DX-100 Página 40 Curso: TP-12 
 
5.3 Status Binário e Grupos de I/O 
 
 Os dois estados possíveis de uma entrada digital é ON=1 e OFF=0. Os 8 bits de 
um grupo de I/O podem ser vistos como um byte, que pode ser convertido para 
um valor decimal. A tabela abaixo mostra um exemplo de conversão para 
128+16=144. 
 
 
IN#/OT# (8) (7) (6) (5) (4) (3) (2) (1) 
Valor em Base Binária 27 26 25 24 2322 21 20 
Valor Decimal 128 64 32 16 8 4 2 1 
Estado do Bit 1 0 0 1 0 0 0 0 =144 
Figura 5. 5: Valores de um Grupo de 8 Bits em Binário 
 
 
 
 O status de cada grupo é exibido como valor decimal no campo “__:DEC” no 
topo da tela do grupo. 
 
 
 
Figura 5. 6: Telas de Entrada e Saída Universal 
 
 
Na figura acima, o primeiro grupo de entradas IG#001 tem valor 107 
(1+2+8+32+64). O primeiro grupo de saídas OG#001 tem valor 205 
(1+4+8+64+128).
 
 
Programação Intermediária do DX-100 Página 41 Curso: TP-12 
 
6.0 INSTRUÇÕES DE I/O 
 
 Um sistema robótico raramente trabalha sem interação com outros dispositivos. O 
controlador deve se comunicar com equipamentos externos, como fontes de solda, 
posicionadores, dispositivos, sensores. A comunicação pode ser feita através do 
uso de Entradas e Saídas Universais (I/O). A linguagem INFORM III possui 
instruções de I/O digitais e analógicas. 
 
6.1 DOUT OT#( ) Saída Digital 
 
 A instrução DOUT com a tag OT#( ) opera apenas uma saída universal. É 
utilizado a qualquer hora que um dispositivo, como uma lâmpada, grampo, garra, 
deve ser ligado ou desligado. 
 
 O exemplo abaixo mostra a função DOUT sendo utilizada com uma única saída 
universal (OT#): 
 
0003 DOUT OT#(3) ON 
0004 MOVL V=2000 
0005 MOVL V=2000 
0006 DOUT OT#(3) OFF 
 
Figura 6. 1: Exemplo de Instrução DOUT 
 
 Para inserir uma instrução DOUT OT#( ) em um programa, faça o seguinte: 
 
1. Em TEACH, mova o cursor para o lado dos endereços; 
2. Pressione a tecla INFORM LIST; 
3. Selecione IN/OUT; 
4. Selecione DOUT; 
5. Pressione SELECT para acessar a tela de detalhes; 
6. Selecione a linha OUTPUT TO, pressione SELECT, mova o cursor para OT# 
e pressione SELECT; 
7. Selecione o número da Output, pressione SELECT, digite o número da 
Output desejada e pressione ENTER; 
8. Selecione o valor DATA, pressione SELECT para escolher entre ON/OFF; 
9. Pressione ENTER para voltar para a tela do programa; 
10. Pressione [INSERT], ENTER para inserir a instrução no programa. 
 
 
NOTA: Como padrão, uma output alterada para ON permanecerá nesse estado até que 
seja alterada em um programa ou manualmente para OFF. 
 
 
Programação Intermediária do DX-100 Página 42 Curso: TP-12 
 
6.2 DOUT OG#( ) Saída Digital de Grupos 
 
 A instrução DOUT com a tag OG#( ) consegue manipular os 8 bits de um grupo 
de saídas universais, podendo alterar o valor decimal do grupo (0-255). O valor 
decimal é convertido para binário, onde cada bit identifica uma das saídas do 
grupo em questão. 
 
 Por exemplo, o resultado de DOUT OG#(1) = 162 faz com que as saídas 2,6 e 8 
sejam ligadas (2+32+128=162) e o restante seriam desligadas. 
 
 No exemplo abaixo, as saídas 1 e 5 seriam ligadas (1+16 = 17) e todos os outros 
bits seriam desligados. A instrução DOUT OG#(1) = 0 desliga todas as 8 saídas do 
grupo. 
 
0004 DOUT OG#(1) 17 
0005 MOVL V=2000 
0006 DOUT OG#(1) 0 
 
Figura 6. 2: Exemplo de Programa Usando DOUT para um Grupo 
 
 DOUT de grupo também pode referenciar uma variável Byte para valores 0-255 
 
0004 DOUT OG#(1) B000 
 
Figura 6. 3: DOUT com uma Variável Byte 
 
Para programar uma instrução DOUT OG#( ) para um grupo de saídas 
universais, faça o seguinte: 
 
1. Em TEACH, mova o cursor para o lado dos endereços do programa; 
2. Pressione a tecla INFORM LIST; 
3. Selecione IN/OUT; 
4. Selecione DOUT; 
5. Pressione SELECT para acessar a tela de detalhes; 
6. Mova o cursor para a linha OUTPUT TO, pressione SELECT. Selecione OG# 
e pressione SELECT; 
7. Selecione o número do grupo, pressione SELECT. Digite o número do OG# 
desejado e pressione ENTER; 
8. Selecione DATA e pressione SELECT. Selecione CONSTANT e pressione 
SELECT novamente; 
9. Selecione o valor e pressione SELECT. Digite o valor desejado no teclado 
numérico e pressione ENTER; 
10. Pressione ENTER para aceitar as mudanças e retornar ao programa; 
11. Pressione [INSERT], ENTER para inserir a instrução no programa. 
 
 
Programação Intermediária do DX-100 Página 43 Curso: TP-12 
 
6.3 PULSE OT#( ) ou OG#( ) 
 
 A instrução PULSE age como um botão momentâneo para Saídas Universais. 
Pode ser usado para comunicação com PLCs, dando um pulso em determinada 
saída por 0,3 segundos. Também é usado para acionar equipamentos que precisam 
ficar ligados por um certo período de tempo, como cortadores de arame, válvula 
de “purge” de uma linha de gás, etc. 
 
 Porém, a instrução PULSE não pára a execução do programa; o cursor vai para a 
próxima linha e continua processando as instruções enquanto a instrução PULSE 
age na saída. 
 
 O programa abaixo mostra uma instrução PULSE com uma saída individual, 
OT#(8), com uma tag de tempo T=1.50. Na linha 7, o PULSE em grupo, OG#(1) 
127, vai pulsar as saídas 1 a 7 pelo tempo padrão de 0.3 segundos. 
 
 0003 MOVJ VJ = 12.50 PL=0 
 0004 PULSE OT#(8) T=1.50 
 0005 TIMER T=1.55 
 0006 MOVJ VJ = 6.25 
 0007 PULSE OG#(1) 127 
 
Figura 6. 4: Exemplo de Programa com Instruções PULSE 
 
 Para inserir uma instrução PULSE OT#( ) para uma saída, faça o seguinte: 
 
1. Em TEACH, mova o cursor para o lado dos endereços do programa; 
2. Pressione a tecla INFORM LIST; 
3. Selecione IN/OUT; 
4. Selecione PULSE; 
5. Pressione SELECT para acessar a tela de detalhes; 
6. Selecione OUTPUT NO e pressione SELECT, digite o número da saída 
OT#( ) e pressione ENTER; 
7. Se for preciso, selecione TIME UNUSED e pressione SELECT. Selecione 
“T=” e pressione SELECT. Selecione o valor, pressione SELECT e digite o 
tempo desejado para o pulso (0.01-655.35) e pressione ENTER; 
8. Pressione ENTER para aceitar as mudanças e retornar ao programa; 
9. Pressione [INSERT], ENTER para inserir a instrução no programa. 
 
 
NOTA: Insira um TIMER logo depois de um PULSE se necessário. Para acesso rápido 
ao TIMER, pressione [1] no teclado numérico. Podem-se usar valores entre 
0.01 e 655.35. 
 
 
Programação Intermediária do DX-100 Página 44 Curso: TP-12 
 
6.4 WAIT 
 
 A instrução WAIT é usada quando o programa do robô depende de um sinal de 
uma switch, sensor, PLC, etc. Isso abrange IN#, OT#, IG#, OG#, IGH#, OGH# 
(universais) e SIN#, SOUT# (específicos), assim como outras variáveis Byte. Um 
TIMER pode ser usado com WAIT. Quando o timer é utilizado, o robô espera que 
a condição seja verdadeira ou até que o tempo se esgote, o que vier primeiro. 
 
 
NOTA: Se a condição já for verdadeira quando o controlador for executar a instrução 
WAIT, não há qualquer espera. 
 
 A seguir, todas as possibilidades da instrução WAIT: 
 WAIT IN#(3)=ON [espera até que a IN#3 fique ON]; 
 WAIT IG#(1)=255 [espera até que o IG#(1) = 255]; 
 WAIT IN#(5)=OFF T=3.25 [espera que a IN#5 seja desligada por 3.25s, 
 continuando para a próxima linha]. 
 
Figura 6. 5: Exemplo de Instruções WAIT 
 
 
CUIDADO! Quando o timer é utilizado, por exemplo, WAIT IN#(7)=ON T=2.50, 
imediatamente abaixo coloque uma instrução de controle com uma 
condicional IF. 
 
 
 Para programar uma instrução WAIT para uma entrada universal, faça o 
seguinte: 
 
1. Em TEACH, mova o cursor para o lado de endereços do programa; 
2. Pressione INFORM LIST, selecione IN/OUT e selecione WAIT; 
3. Pressione SELECT para abrir a tela de detalhes; 
4. Selecione WAIT TARGET e pressione SELECT. Selecione IN#( ) e 
pressione SELECT; 
5. Selecione o número da entrada e pressione SELECT. Digite o número 
desejado no teclado numérico e pressione ENTER; 
6. Para alternar CONDITION entre ON e OFF, selecione ON/OFF e pressione 
SELECT; 
7. Se necessário, selecione TIME UNUSED; pressione SELECT e selecione T=. 
Selecione o valor do tempo e pressione SELECT. Digite o tempo limite 
(0.01-655.35) para a instrução WAIT e pressione ENTER; 
8. Pressione ENTER para aceitar e retornar à tela do programa; 
9. Pressione [INSERT], ENTER para inserir a instrução no programa. 
 
 
Programação Intermediáriado DX-100 Página 45 Curso: TP-12 
 
6.5 DIN (Digital Input) 
 
 A instrução DIN (Digital Input) é usada para armazenar o estado de I/O em uma 
variável Byte. As informações de I/O são recebidas de um CLP, chave 
thumbwheel (chave hexadecimal) ou qualquer outro dispositivo de entrada. Isso 
inclui I/O universais: IN#, OT#, IG#, OG#, IGH# e OGH# ou específicos: SIN# e 
SOUT#, assim como qualquer outra variável Byte. 
 
 Quando a instrução DIN é executada, o controlador verifica o estado de uma 
entrada ou saída e armazena o valor binário na variável Byte. Esse valor será entre 
0 e 255, conteúdo este que deverá ser utilizado posteriormente no programa. 
 
 
01 DIN B005 IG#(1) 
 
Figura 6. 6: Exemplo de Programa Usando DIN 
 
 
 Para inserir uma instrução DIN em um programa, siga os seguintes passos: 
 
1. Em TEACH, mova o cursor para o lado dos endereços; 
2. Pressione a tecla INFORM LIST; 
3. Selecione IN/OUT; 
4. Selecione DIN; 
5. Pressione SELECT para acessar a tela de detalhes; 
6. Selecione INPUT TO, pressione SELECT, digite o número da variável Byte e 
pressione ENTER; 
7. Selecione INPUT FROM, selecione SELECT, e selecione IG#( ) e pressione 
SELECT; 
8. Selecione o número do Input Group e pressione SELECT. Digite o número do 
grupo no teclado e pressione ENTER; 
9. Pressione ENTER para aceitar e retornar à tela do programa; 
10. Pressione [INSERT], ENTER para inserir a instrução no programa. 
 
 
Programação Intermediária do DX-100 Página 46 Curso: TP-12 
 
6.6 AOUT (Saída Analógica) 
 
 Em um sistema de descarga padrão cada robô envolvido no processo deve ter um 
canal de saída analógico. Em um sistema de solda a arco requere dois canais 
analógicos por robô. Os canais podem assumir valores entre ±14.00 VDC. 
Equipamentos periféricos são acionados por esse sinal. 
 
 No exemplo abaixo, se o fluxo máximo de um aplicador de cola é 100ccm, a 
instrução AOUT para 7.00 VDC faz com que o aplicador despeje 50ccm de cola. 
 
04 AOUT AO#(1) 7.00 
 
Figura 6. 7: Exemplo de Programa com a Instrução AOUT 
 
 Para inserir uma instrução AOUT em um programa, faça o seguinte: 
 
1. Em TEACH, mova o cursor para o lado dos endereços; 
2. Pressione a tecla INFORM LIST; 
3. Selecione IN/OUT; 
4. Selecione AOUT; 
5. Pressione SELECT para acessar a tela de detalhes; 
6. Selecione o ícone e pressione SELECT; 
7. Selecione CONSTANT para o canal de saída e pressione SELECT; 
8. Selecione o número do canal de saída e pressione SELECT; 
9. Digite o número do canal no teclado e pressione ENTER; 
10. Selecione ANALOG DATA e pressione ENTER; 
11. Digite o valor da voltagem desejada e pressione ENTER; 
12. Pressione ENTER para aceitar e retornar à tela do programa; 
13. Pressione [INSERT], ENTER para inserir a instrução no programa. 
 
6.7 Monitorando Saídas Analógicas 
 
 Saídas analógicas podem ser monitoradas em TEACH e em PLAY. 
 Para monitorar saídas analógicas, siga os seguintes passos: 
 
1. No Main Menu, selecione IN/OUT; 
2. Selecione ANALOG OUTPUT. 
 
 
 
Programação Intermediária do DX-100 Página 47 Curso: TP-12 
 
 
7.0 FUNÇÕES EXTRAS DE 
VELOCIDADE 
 
 
7.1 Traverse Run Time (TRT) 
 
A função TRT (disponível no menu EDIT) calcula a velocidade dos pontos 
marcados baseado no tempo de movimentação desejado em segundos (utiliza o 
algoritmo de otimização do DX-100) . A função altera as velocidades do programa 
para alcançar o tempo desejado no programa inteiro ou em uma parte dele. 
 
NOTA: O programa selecionado deve ser executado antes da função TRT para 
estabelecer um primeiro tempo de movimentação. 
 
 Para executar a função TRT, faça o seguinte: 
 
1. Em TEACH, mova o cursor para a primeira linha que se deseja alterar a 
velocidade no lado das instruções; 
2. Segure SHIFT e pressione SELECT; 
3. Selecione as linhas desejadas para executar a função; 
 
NOTA: Instruções CALL e JUMP não podem ser selecionadas no passo anterior. 
 
4. Selecione EDIT no menu superior; 
5. Selecione TRT; 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Figura 7. 1: Tela da Função TRT 
 
 
Programação Intermediária do DX-100 Página 48 Curso: TP-12 
 
 
6. Selecione SETTING TIME; 
7. Digite o valor desejado em segundos e pressione ENTER; 
8. Selecione EXEC. O tempo de movimentação é mostrado. 
 
NOTA: Se o tempo desejado não for alcançado na primeira execução do TRT, pressione 
EXEC novamente até que o resultado seja o desejado. 
 
9. Quando terminar, selecione CANCEL para voltar para o programa. 
 
7.2 Speed Override 
 
Essa função faz com que todas as velocidades CONSTANTES do programa sejam 
alteradas de acordo com uma porcentagem (10-150%) na execução em PLAY. 
 
 Para acessar essa função no menu UTILITY, o controlador deve estar em PLAY e 
nenhum programa pode estar sendo executado. 
 
 
CUIDADO! A função SPEED OVERRIDE altera as velocidades de movimentos de 
programas filho e sub-rotinas, desde que esses movimentos sejam 
executados. 
 
 
Para usar a função SPEED OVERRIDE, faça o seguinte: 
 
1. Em TEACH, coloque o cursor na linha a ser executada e mude para modo 
PLAY; 
2. Pressione o botão PLAY MODE ENABLE; 
3. Selecione UTILITY nos menu superior; 
4. Selecione SPEED OVERRIDE; 
 
 
NOTA: Um asterisco (*) aparece ao lado de SPEED OVERRIDE quando habilitado. A 
mensagem “Over-riding speed” aparece na linha de mensagem. 
 
 
 
 
 
 
 
 
 
 
 
Programação Intermediária do DX-100 Página 49 Curso: TP-12 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Figura 7. 2: Speed Override 
 
5. Selecione RATIO 100% e pressione SELECT; 
6. Digite a porcentagem desejada (10%-150%) e pressione ENTER; 
7. Mova o cursor para MODIFY OFF e pressione SELECT para mudar para 
ON; 
 
NOTA: A opção SPEED ADJUSTMENT MODIFY [OFF] não sobrescreve os valores 
das velocidades quando o botão START é pressionado, permitindo uma previsão 
da nova velocidade. Deve ser usado repetidamente até que a velocidade de 
execução seja aceitável. 
 
8. Pressione START para executar o programa com a alteração na velocidade; 
9. Para voltar à velocidade normal, volte para TEACH ou refaça os passos 2 e 3 
para desabilitar o Speed Override. 
 
NOTA: Se qualquer programa envolvido estiver com a opção EDIT LOCK: ON, o 
SPEED OVERRIDE não pode ser executado. O alarme menor 4476 “Cannot 
Edit (Edit Lock Job)” ocorrerá. 
 
 
 
 
 
 
Programação Intermediária do DX-100 Página 50 Curso: TP-12 
 
8.0 FUNÇÃO PASSWORD DX100 
 
8.1 Opção de Proteção por Senha 
 
A função Password do DX100 pode armazenas até 100 usuários e senhas com 
níveis de segurança individuais. Essa função permite que um usuário logue no 
controlador por vez. 
 
 Um tempo de ociosidade também pode ser configurado, para deslogar 
automaticamente um usuário em modo de operação quando nenhuma tecla for 
pressionada pelo período de tempo configurado. 
 
 Para logar, faça o seguinte: 
 
1. Selecione SYSTEM INFO e LOGON; 
2. Com o cursor em USER NAME pressione SELECT; 
3. Digite o nome de usuário; 
 
NOTA: Os nomes de usuário diferem letras maiúsculas e minúsculas. 
 
4. Com o cursor em PASSWORD pressione SELECT; 
5. Com o teclado numérico, digite a senha e pressione ENTER. 
O usuário está logado. 
 
 
Figura 8. 1: A Tela de Login para Digitar o Nome de Usuário e Senha 
 
 Para deslogar, faça o seguinte: 
 
1. Selecione SYSTEM INFO e LOGOFF; 
2. Verifique o USER NAME e selecione EXECUTE. 
 
 
Programação Intermediária do DX-100 Página 51 Curso: TP-12 
 
 
9.0 MODOS ESPECIAIS 
 
 
Existem vários modos de executar um programa em PLAY ou em TEACH com 
limitações ou restrições para que seja mais fácil encontrar os erros ou por razões 
de segurança. 
 
 O menu SETUP SPECIAL RUN, localizado no menu UTILITY, pode limitar a 
velocidade de execução de um programa,não permitir a execução de instruções 
DEVICE, etc. 
 
 
9.1 Special Run em Modo Play 
 
 
Special Run Mode Speed Device 
Low Speed Start Cursored Step at 10% Max no DEVICE 
Speed Limit Limit 25% Max / Prog. Spd DEVICE! 
Dry-Run Speed CONSTANT 10% Max no DEVICE 
Check-Run Prog. Spd no DEVICE 
Machine Lock Prog. Spd, no MOTION no DEVICE 
Figura 9. 1: Special Run Disponíveis 
 
 
 Para habilitar um modo de execução especial, faça o seguinte: 
 
1. Selecione o modo PLAY; 
2. Na tela de programação, selecione UTILITY no menu superior; 
3. Selecione SETUP SPECIAL RUN; 
4. Coloque o cursor sobre o modo desejado e pressione SELECT para habilitar 
ou desabilitar; 
5. Clique em COMPLETE para retornar à tela de programação. 
 
NOTA: Todos os modos de execução especiais estão desabilitados quando o controlador 
é energizado. Cada modo tem que ser habilitado individualmente quando 
desejado. 
 
9.1.1 Low Speed Start 
 
O modo Low Speed Start move o robô para o ponto selecionado a uma velocidade 
constante de 10% da velocidade máxima (independente da velocidade 
programada) sem executar qualquer instrução externa e pára. O modo é 
automaticamente desabilitado e, ao pressionar novamente o botão START, o 
programa é executado normalmente. 
 
 
Programação Intermediária do DX-100 Página 52 Curso: TP-12 
 
 
 Essa função permite um reinício de ciclo seguro do meio de um programa. Além 
disso, depois de uma parada de emergência, o operador pode querer reiniciar o 
programa do ponto anterior de onde o mesmo foi interrompido (usando o cursor 
em TEACH) ao invés de continuar a mesma trajetória de antes da emergência. 
 
 
NOTA: O pendant do robô mostra a mensagem “SLOW SPEED mode” na linha de 
mensagens quando este modo está ativo. 
 
 
9.1.2 Speed Limit 
 
 O modo Speed Limit limita todas as velocidades em 25% da velocidade máxima. 
Movimentos que não excedam essa velocidade são executados na velocidade 
programada. 
 
 Movimentos com velocidade maiores que o limite serão executados da seguinte 
forma: 
 
 VJ = 25.00; 
 V=375.0 mm/sec; 
 VR=90.0 deg/sec. 
 
 
CUIDADO! Instruções externas são executadas; por isso, ativar apenas o modo 
SPEED LIMIT em programas que executam instruções DEVICE com 
velocidades maiores que o limite de 25% não é recomendado. 
 
Combinar os modos CHECK RUN e SPEED LIMIT faz com que o robô se 
movimente devagar e não execute nenhuma instrução DEVICE. 
 
 
NOTA: O pendant mostra a mensagem “Speed Limit mode” na linha de mensagens 
quando o modo SPEED LIMIT está habilitado. 
 
 
9.1.3 Dry-Run Speed 
 
O modo Dry-Run executa o programa inteiro sem executar instruções DEVICE. 
Além disso, todos os movimentos são executados com um limite de 10% da 
velocidade máxima (VJ=10.00, V=150.0mm/sec e VR=36.0deg/sec). 
 
 Esse modo pode ser útil para movimentar o robô após manutenção da graxa do 
manipulador. 
 
 
NOTA: O pendant mostra a mensagem “Dry-Run mode” na linha de mensagens 
 
 
Programação Intermediária do DX-100 Página 53 Curso: TP-12 
 
quando o modo Dry-run está habilitado. 
 
9.1.4 Check-Run 
 
O modo Check-Run faz com que o programa seja executado na velocidade 
programada, sem as instruções DEVICE (ARCON, GUNON, LASERON,etc.). A 
única instrução desse tipo que é executado é a HAND ON/OFF. 
 
 Esse modo é usado para checar visualmente a trajetória do programa na 
velocidade programada sem que o processo seja executado. 
 
NOTA: O pendant mostra a mensagem “Check Mode” quando o modo Check está 
habilitado. 
 
 
9.1.5 Machine Lock 
 
 O modo Machine Lock executa a parte lógica do programa, sem movimentos ou 
instruções DEVICE (exceto a instrução HAND ON/OFF). Esse modo é usado 
normalmente para testar a comunicação entre o controlador e equipamentos 
externos, assim como para verificar todos os tipos de alarme além do Internal 
Shock Sensor para Collision Detect. 
 
NOTA: O pendant mostra a mensagem “Machine Lock Mode” na linha de mensagem 
quando o modo Machine Lock está habilitado. 
 
 
9.2 Special Run em Modo Teach 
 
Modos de execução especiais também estão disponíveis no modo TEACH. Eles 
permitem que o modo INTERLOCK + TEST START seja executado com as 
limitações nas instruções DEVICE e velocidade de no máximo 25% da máxima. 
 
 Para habilitar um modo de execução em TEACH, faça o seguinte: 
 
1. Selecione o modo TEACH; 
2. Na tela de programação, selecione UTILITY no menu superior; 
3. Selecione SETUP SPECIAL RUN; 
4. Coloque o cursor sobre o modo desejado e pressione SELECT para habilitar 
ou desabilitar; 
5. Clique em COMPLETE para retornar à tela de programação. 
 
 
NOTA: O modo INTERLOCK+TEST START executa o programa com os modos 
habilitados. Os modos habilitados em TEACH permanecem habilitados até que 
sejam desabilitados. 
 
 
Programação Intermediária do DX-100 Página 54 Curso: TP-12 
 
 
9.2.1 Machine Lock em Teach 
 
O modo Machine Lock em TEACH executa a parte lógica do programa, sem 
movimentos ou instruções DEVICE (exceto a instrução HAND ON/OFF). Esse 
modo é usado normalmente para testar a comunicação entre o controlador e 
equipamentos externos, assim como para verificar todos os tipos de alarme além 
do Internal Shock Sensor para Collision Detect. 
 
 
9.2.2 Weave Prohibit em Teach 
 
 O modo Weave Prohibit não permite que as intruções WVON WEV#( ) e WVOF 
sejam executadas em TEACH. Isso permite que trajetórias interpoladas sejam 
checadas sem que a ferramenta faça o movimento de WEAVING programado. 
 
 
 
Programação Intermediária do DX-100 Página 55 Curso: TP-12 
 
10.0 USER FRAMES 
 
 Um sistema de coordenada personalizado, que retrata exatamente o plano de 
trabalho do robô, é muito útil durante a programação de uma trajetória. O DX100 
suporta até 63 sistemas de coordenadas definidos pelo usuário, chamados de User 
Frames (UF #01-63) 
 
 Um User Frame é um plano definido pelos pontos ORG, XX e XY: 
 
• ORG A posição de origem do user frame; 
• XX Um ponto na direção positiva do eixo X; 
• XY Um ponto no lado Y positivo do plano. 
 
 
 
 
 
 
 
 
 
 
 
Figura 10. 1: Pontos de um User Frame 
 
 Com essas informações, o controlador cria um sistema de coordenadas XYZ. 
 
 O local de gravação do ponto ORG é de escolha do programador. 
 
 O vetor criado entre os pontos ORG e XX determina a direção X+ do sistema. 
 
 O ponto XY, juntamente com os pontos ORG e XX, determinam o plano do user 
frame. A direção Z+ é perpendicular ao plano XY. 
CUIDADO! O operador deve confirmar qual User Frame será usado antes de 
movimentar o robô na coordenada USER. 
 
 
 
 
 
 
 
Figura 10. 2: Exemplo de User Frames 
 
 
Programação Intermediária do DX-100 Página 56 Curso: TP-12 
 
10.1 Criando um User Frame 
 
 Para criar um User Frame, siga o seguinte procedimento: 
 
1. Em TEACH, no MAIN MENU, selecione ROBOT; 
2. Selecione USER COORDINATE; 
3. Selecione o User Frame desejado com o cursor e pressione SELECT; 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Figura 10. 3: Coordenadas de Usuário 
 
NOTA: Frames não definidos são indicados por um círculo vazio. Frames previamente 
definidos são indicados por um círculo preenchido (●). 
4. Selecione com o cursor “SET POS: ORG”; 
5. Selecione qualquer coordenada (menos USER). Energize os motores e 
movimente o TCP para o ponto ORG do sistema a ser definido; 
6. Com motores energizados, pressione MODIFY, ENTER. O círculo do ponto 
ORG é preenchido; 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Figura 10. 4: Definindo um User Frame 
 
 
Programação Intermediária do DX-100 Página 57 Curso: TP-12 
 
7. Pressione SELECT, selecione XX para poder modificá-lo; 
8. Movimente o TCP até o ponto XX, seguindo o sentido X+ no coordenada; 
9. Com os motores energizados, pressione MODIFY, ENTER. O círculo do 
ponto XX será preenchido; 
10. Pressione SELECT, selecione XY para modificá-lo;

Outros materiais