Ver todos os artigos

Uso da Programação Macro para Criar Programas CNC de Ciclos Repetitivos de Furação

TRASA3 Blog

G-code Publicado: 2026-09-22 Autor: trasa3 4 visualizações
Uso da Programação Macro para Criar Programas CNC de Ciclos Repetitivos de Furação

Padrões repetitivos de furos raramente exigem programas CNC extensos. Quando as coordenadas formam uma linha simples, um ciclo fixo G81, posicionamento incremental G91 e um número de repetições L costumam ser suficientes. Porém, para uma grade retangular, múltiplos tamanhos de peça ou passo que varia frequentemente, editar cada coordenada manualmente torna-se lento e sujeito a erros. A programação macro mantém a lógica repetida em uma sub-rotina, recebendo dimensões e quantidade de furos como parâmetros.

O exemplo a seguir é para comando de fresadora Haas com suporte a macros. A sintaxe de variáveis, laços e chamadas de subprograma varia conforme o CNC e as opções ativadas. Sempre consulte o manual do comando específico, verifique o programa graficamente e faça o primeiro teste acima da peça.

Quando o ciclo fixo é suficiente

O G81 já elimina a maior parte do código repetitivo em operações de furação. Após ativado, o comando realiza o furo em cada nova posição X/Y até ser cancelado pelo G80. A documentação Haas mostra como um movimento incremental em X e o parâmetro L geram uma fileira de furos igualmente espaçados:

G90 G54 X10. Y20.
G43 H01 Z50.
G99 G81 Z-12. R2. F120.
G91 X25. L4
G80
G90

Essa solução é adequada para uma única linha reta. O primeiro furo ocorre no ponto onde o G81 é ativado, e a linha com G91 X25. L4 adiciona mais quatro posições. Perder o controle dessa primeira execução pode gerar um furo extra ou deslocar o padrão.

Outros ciclos fixos atendem a diferentes tipos de furação. G82 adiciona pausa no fundo, G83 é usado para furação intermitente (peck drilling), e G98 ou G99 definem o nível de retorno. A escolha do ciclo deve considerar ferramenta, profundidade, material e evacuação de cavaco. A macro gerencia coordenadas e repetições, não substitui o processo correto de furação.

O que uma macro parametrizada oferece

Uma grade retangular pode ser definida por nove valores: coordenadas do primeiro furo, passo em X e Y, número de colunas e linhas, profundidade, plano R e avanço. O operador altera uma única chamada, enquanto laços aninhados calculam cada posição.

Na chamada abaixo, X e Y definem a origem da grade, I e J o passo, e A e B o número de colunas e linhas:

G65 P9010 X10. Y20. I25. J20. A4. B3. Z-12. R2. F120.

No comando Haas, os argumentos do G65 são mapeados para variáveis locais na macro. Neste exemplo, X corresponde a #24, Y a #25, I a #4, J a #5, A a #1, B a #2, Z a #26, R a #18 e F a #9. Cada chamada G65 fornece um novo conjunto de variáveis locais, permitindo reutilizar o mesmo código com diferentes parâmetros.

Macro para grade retangular

O09010 (DRILL RECTANGULAR PATTERN)

#30 = 0 (ROW INDEX)

WHILE [#30 LT #2] DO1
  #31 = 0 (COLUMN INDEX)

  WHILE [#31 LT #1] DO2
    #32 = [#24 + #31 * #4] (CURRENT X)
    #33 = [#25 + #30 * #5] (CURRENT Y)

    G90 G00 X#32 Y#33
    G81 Z#26 R#18 F#9
    G80

    #31 = #31 + 1
  END2

  #30 = #30 + 1
END1

M99

O laço externo conta as linhas e o interno as colunas. Cada coordenada é calculada somando à origem o índice da posição multiplicado pelo passo. Com A4 e B3, a macro executa doze furos: quatro em cada uma das três linhas.

Nesta versão didática, o G81 é ativado e cancelado em cada ponto, o que aumenta um pouco o tempo de execução, mas limita o estado do ciclo a uma operação. Em produção, o ciclo pode permanecer ativo entre posições, desde que o programador controle cuidadosamente a primeira execução, o estado modal e o cancelamento final com G80.

Programa principal e estados seguros

A macro não deve inferir número da ferramenta, compensação de comprimento, rotação ou deslocamento de trabalho. Manter esses dados no programa principal facilita a revisão da preparação da operação.

O01000
G90 G17 G40 G49 G80 G94
G54
T1 M06
S1800 M03
G00 X10. Y20.
G43 H01 Z50.
M08

G65 P9010 X10. Y20. I25. J20. A4. B3. Z-12. R2. F120.

G80
G00 Z50.
M09
M05
G53 G00 Z0.
M30

Este programa define o plano G17, posicionamento absoluto G90, sistema de coordenadas G54 e compensação de comprimento G43 H01 antes de chamar a macro. Alturas seguras, retração para o zero da máquina e sequência de ativação dos equipamentos devem seguir as normas da máquina e o padrão da empresa.

Validações essenciais para macros de produção

Código parametrizado reduz edição manual, mas um argumento incorreto pode alterar todo o padrão de furos. Uma macro para produção deve validar suas entradas. Contagens de linhas e colunas precisam ser inteiros positivos, o plano R deve estar do lado seguro da superfície da peça, e as posições X/Y calculadas devem estar dentro dos limites da peça e do curso da máquina.

  • Confirme o mapeamento dos argumentos para variáveis locais no comando específico.
  • Verifique se cada número DO tem o END correspondente correto nos laços aninhados.
  • Calcule antecipadamente o ponto final: X + (A − 1) × I e Y + (B − 1) × J.
  • Cheque o sinal de Z, a posição do plano R e o modo de retorno G98 ou G99.
  • Execute primeiro a simulação gráfica e depois um passo único com avanço rápido reduzido.
  • Se houver morsa ou grampos, verifique não só os pontos de furação, mas também as trajetórias de transição.

Também é útil proteção contra argumentos ausentes. Em comandos onde variáveis locais não definidas têm valor nulo, a macro pode gerar alarme antes de qualquer movimento. A sintaxe correta para testar variável vazia e emitir alarme deve ser consultada no manual do CNC.

Quando a macro realmente facilita o trabalho

Para uma peça única com cinco furos conhecidos, um ciclo G81 simples e uma lista de coordenadas costumam ser mais claros. A macro é vantajosa quando o padrão muda segundo regras claras: matrizes retangulares ou circulares, vários tamanhos da mesma peça, furos repetidos sob diferentes deslocamentos de trabalho ou famílias de produtos com processo comum de furação.

Uma macro bem mantida tem uma tarefa clara e interface definida. Cada argumento deve ser documentado em comentários ou ficha de setup, e um exemplo válido de chamada deve acompanhar o programa. Assim, o operador altera dimensões e parâmetros sem editar fórmulas ou contadores.

A documentação oficial da Haas detalha mapeamento de argumentos G65 e variáveis locais e funcionamento dos ciclos fixos de furação. Use essas referências como base e confirme o comportamento conforme a versão do software da máquina.

Uso da Programação Macro para Criar Programas CNC de Ciclos Repetitivos de Furação

Este artigo está disponível nos seguintes idiomas: