


















Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Encontra documentos específicos para os exames da tua universidade
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Programação MACRO-PARAMETRICA
Tipologia: Notas de estudo
Oferta por tempo limitado
Compartilhado em 19/06/2011
4.3
(9)4 documentos
1 / 26
Esta página não é visível na pré-visualização
Não perca as partes importantes!



















Em oferta
® S43784D - Manual de Programação e Operação - CNC Fanuc 21i - MB
Através do uso de subprograma pode-se repetir facilmente a mesma operação. Com a função MACRO também, pois permite o uso de variáveis, operações aritméticas, desvios condicionais, etc. Com isso o usuário consegue criar desde programas como alojamentos e ciclos próprios definidos pelo usuário. Um programa pode invocar uma macros através de um simples comando.
Explanação:
Quando definimos uma variável, especificamos um símbolo (#) seguido pelo numero da variável. computadores pessoais permitem assinalar um nome para variável, porém esta possibilidade não e permitida nesta macro.
Exemplo : #
Uma expressão pode ser usada para especificar o numero da uma variável, nesse caso, a expressão deve ser expressa entre colchetes. Exemplo: # [#1+#2-12]
As variáveis são classificadas em 4 tipos: a) #0 - Sempre nula Valores podem ser assinalados para esta variável; b) #1 - #33 - Variáveis locais Podem apenas ser usadas em macro para carregar dados como resultado de operações quando o comando e as variáveis locais são inicializadas sem valores (nulas). Quando uma macro e invocada, argumentos são assinalados para a variáveis locais; c) #100 - #149 (#199) / #500 - #531 (#999) - Variáveis comuns Podem estar parcialmente entre diferentes programas Macros. Quando o comando e desligado, as variáveis #100 a #531 mantém os dados sempre que o comando for desligado. Como opção, variáveis comuns, #150 a #199 e #532 a #999 são permitidas (opcional); d) #1000 - Variáveis de Sistema São usadas para ler uma variedade de dados NC como posição atual, valores de compensação de ferramenta.
1
® S43784D - Manual de Programação e Operação - CNC Fanuc 21i - MB
Variáveis locais e comuns podem ter valor = 0 ou um valor na seguinte faixa
-10 47 a -10 - 10 -29^ a 10 47
Se o resultado do calculo for invalido, um alarme 111 será mostrado.
Quando um valor de variável for definido em um programa, o ponto decimal pode ser omitido. Exemplo: Quando #1=123 for definido, o valor real da variável #1 é 123.
Para referenciar o valor de uma variável em um programa, especifique o endereço seguido pelo numero da variável. Quando uma expressão for usada para especificar uma variável, inclua a expressão entre colchetes.
Exemplo: G01 X[#1+#2] F#
Um valor de variável e automaticamente arredondado de acordo com o mínimo incremento do endereço
Exemplo : Quando G0 X#1; for executado no CNC 1/1000mm e o valor for 12,3456 for assinalado para a variável #1 o comando interpreta como G0 X12,346.
Para reverter o sinal do valor de uma variável, programe o sinal menos (-) para uma variável.
Exemplo: G0 X-#
As operações listadas na tabela seguinte podem ser executadas com variáveis. A expressão a direita da operação pode conter constantes e/ou variáveis combinadas por uma função ou operação. As variáveis #J e #K podem ser substituídas por uma constante. As variáveis da esquerda também podem ser substituídas por uma expressão.
® S43784D - Manual de Programação e Operação - CNC Fanuc 21i - MB
Variáveis locais e comuns podem ter valor = 0 ou um valor na seguinte faixa
-10 47 a -10 - 10 -29^ a 10 47
Se o resultado do calculo for invalido, um alarme 111 será mostrado.
Quando um valor de variável for definido em um programa, o ponto decimal pode ser omitido. Exemplo: Quando #1=123 for definido, o valor real da variável #1 é 123.
Para referenciar o valor de uma variável em um programa, especifique o endereço seguido pelo numero da variável. Quando uma expressão for usada para especificar uma variável, inclua a expressão entre colchetes.
Exemplo: G01 X[#1+#2] F#
Um valor de variável e automaticamente arredondado de acordo com o mínimo incremento do endereço
Exemplo : Quando G0 X#1; for executado no CNC 1/1000mm e o valor for 12,3456 for assinalado para a variável #1 o comando interpreta como G0 X12,346.
Para reverter o sinal do valor de uma variável, programe o sinal menos (-) para uma variável.
Exemplo: G0 X-#
As operações listadas na tabela seguinte podem ser executadas com variáveis. A expressão a direita da operação pode conter constantes e/ou variáveis combinadas por uma função ou operação. As variáveis #J e #K podem ser substituídas por uma constante. As variáveis da esquerda também podem ser substituídas por uma expressão.
® S43784D - Manual de Programação e Operação - CNC Fanuc 21i - MB
Função Formato
PRODUTO #I=#Jx#K
OBSERVAÇÃO : Uma operação lógica se executa em números binários bit a bit.
® S43784D - Manual de Programação e Operação - CNC Fanuc 21i - MB
® S43784D - Manual de Programação e Operação - CNC Fanuc 21i - MB
Exemplo:
#1=#2+#3*SIN[#4]
Primeira resolução SIN[#4] Segunda resolução #3SIN[#4] Terceira resolução #2+#3SIN[#4]
Para modificar as ordens das operações deve-se usar colchete []. Os colchetes podem ser usados ate 5 níveis incluindo os colchetes usados ate fechar a expressão. Quando um nível de 5 colchetes for ultrapassado um alarme 118 ocorrera.
Exemplo: #1=SIN[[[#2+#3]#4+#5]#6]
1ª operação [#2+#3] 2ª operação [#2+#3]# 3ª operação [[#2+#3]#4+#5] 4ª operação [[#2+#3]#4+#5]# 5ª operação SIN[[[#2+#3]#4+#5]#6]
Em um programa o fluxo do controle pode modificar-se usando a declaração GOTO e a declaração IF de desvio e repetições. Três tipos de operações são usadas:
1ª GOTO - desvio incondicional 2ª IF - desvio condicional: SE, ENTAO. 3ª WHILE - repetição: ENQUANTO.
Executa um desvio para o número de seqüência N. Quando se especifica um numero de seqüência não compreendido entre 1 ate 99999, um alarme 128 será mostrado. Também pode-se especificar um numero de seqüência usando uma expressão.
GOTO N N - número de seqüência (1 ate 99999)
Exemplo: GOTO500; (desvia para o bloco N500)
® S43784D - Manual de Programação e Operação - CNC Fanuc 21i - MB
Programa exemplo:
Determinar a soma dos números de 1 a 10.
O #2=1 Valor inicial da variável #2= N1 IF[#2 GT10] GOTO2 Desviar para N2 se #2 for maior que 10 #2=#2+1 Incrementando a variável GOTO 1 Desviar para N N2 M30 Fim do programa
Os valores das variáveis #2 a cada etapa. #2=2,3,4,5,6,7,7,8,9,10,11.
Especifique uma expressão condicional depois de WHILE. Enquanto a condição especificada for verdadeira, o programa vai sendo executado desde a declaração DO ate a declaração END. Se a condição especificada for falsa o programa passa a ser executado no bloco que vem em seguida a declaração END.
se for falsa a condição
WHILE [expressão condicional] DOm (m=1,2,3)
Processamento END
m : :
se for verdadeira a condição
Explicação:
Enquanto a condição especificada for verdadeira, depois de WHILE 0, desde a declaração DO ate a declaração END. Se a condição especificada for falsa o programa continua sendo executado a partir do bloco que vem depois de END. Se aplica idêntico formato para a declaração IF. Um numero depois de DO e um numero depois de END são números de identificação para especificar um intervalo de execução. Deve-se usar os números 1, 2 e 3, quando se usa um numero diferente de 1, 2 e 3 e mostrado o alarme 126.
Os números de identificação de 1 ate 3 em um desvio DO-END pode ser usado quantas vezes desejado. Note porem que quando um programa inclui rotinas de repetição entrelaçados (intervalos do sobrepostos) um alarme 124 ocorrerá.
4 - O comando pode ser transferido para uma rotina externa.
IF [.....] GOTO n : END 1 : N n
5 - Os desvios não podem ocorrer para um ponto dentro da rotina.
IF [.....] GOTO n : WHILE [.....] DO : N n : END 1
Quando se especifica DOm sem especificar a declaração WHILE, se executa uma rotina infinita que vai desde DO ate END. Tempo de processamento: Quando se executa um desvio a um numero de seqüência especificada em uma declaração GOTO se busca um numero de seqüência. Por este motivo o processamento no sentido inverso (para trás), demora-se mais que o processamento no sentido direto (para frente). Utilizando a declaração WHILE para repetição se reduz o tempo de processamento.
Em uma expressão condicional que utiliza EQ ou NE, uma variável nula e o zero tem efeitos diferentes. Em outros tipos de expressões condicionais, um valor nulo e considerado zero.
Pode-se invocar um programa macro usando os seguintes métodos. Chamada simples G65. Chamada modal G66. Chamada de macro através do código G. Chamada de macro através do código M. Chamada de subprograma com código M. Chamada de subprograma com código T.
OBSERVAÇÃO: Os endereços G, L, N, O, e P não podem ser usados como argumento, os endereços que não se usam podem ser omitidos, as variáveis locais correspondentes a um endereço
Endereço Número da OBSERVAÇÃO: Os subíndices de I, J, K, para indicar a ordem da especificação de
#100 - , #500 - Variáveis que podem ser lidas e gravadas por macros em diferentes níveis.
Ativa uma macro depois do deslocamento dos eixos. Isto continua ate que se programe a função G67 para anular uma chamada MODAL.
Sintaxe:
G66 P__ L_____
Onde:
P - número do subprograma L - número de repetições
Argumentos dados transferidos a macro. Exemplo: O . G66 P9101 A1 B2 O G0 G90 X0 Y0 G01 Z-#1 F X50 Y50 Z-# G6 7 M9 9 M
Explicações:
Após especificar G66, programe o endereço P com o numero do programa que contem a macro. Quando se deseja o numero de repetições, o endereço L pode conter um numero de 1 ate
Cancelamento: Quando se especifica um código G67 já não se excetua as chamadas modais nos blocos posteriores. Níveis de chamadas: As chamadas podem ser especificadas usando desvios ate 4 níveis incluindo as chamadas modais. Níveis de chamadas modais: Pode-se ativar uma chamada modal dentro de outras especificando outro código G66. Limitações: Em um bloco G66 não se pode ativar macros. G66 deve ser especificado antes de qualquer argumento. As variáveis locais (argumentos) podem ser definidas unicamente em blocos G66.
Abaixo estão alguns exemplos de aplicação da programação parametrizada.
Exemplo 1: Programa parametrizado para executar uma família de peças, conforme o desenho abaixo:
N50 #5=5 (LARG. DO CHANFRO x 45 GRAUS) N60 #6=25 (RAIO 1) N70 #7=7 (RAIO 2) N80 #8=20 (RAIO 3) N90 #9=20 (DIAMETRO DA FERRAMENTA) N100 #10=400 (AVANCO) N110 # 1 1=0 (Z INICIAL) N120 #12=-20 (Z FINAL ) N130 #13=2 (PROFUNDIDADE DE CORTE) N140 #14=5 (FOLGA P/ APROXIM. EM X E Y) N150 #15=5 (FOLGA P/ APROXIM. EM Z) N160 #9=#9/2 (CALCULO DO RAIO DA FERRAM.) N170 # 1 1=# 1 1+#15 (CALCULO DO Z INICIAL) N180 #20=# 1 1-#13 (COORD. PRIMEIRA PASSADA) N190 G17 G21 G90 G N200 G53 G0 Z- 1 10 H
Exemplo 2: Programa parametrizado para fazer um arco (círculo) de posicionamentos, conforme o desenho abaixo:
#5x45º