Esta lista de códigos G e M abrange os códigos que você digita para operar uma fresadora ou torno CNC: todos os códigos G comuns que controlam movimento e geometria, além dos códigos M que alternam funções da máquina, como o fuso e o fluido de corte. Seja você um leitor de programas CNC no painel de controle ou um editor manual de arquivos gerado pelo seu software CAM, as tabelas e exemplos abaixo foram criados para servir como uma referência única que você pode manter aberta em uma segunda aba, abrangendo tanto a fresagem quanto o torneamento, e as diferenças entre os sistemas Fanuc, Haas, Siemens, GRBL e LinuxCNC.
Guia rápido: G vs M em resumo
| G-code | Preparatório/geometria — informa à máquina onde e como A ferramenta se move (G00 rápido, G01 avanço, G02/G03 arcos). |
| código M | Diversos / máquina — funções de ativação e desativação (M03 fuso ligado, M08 refrigeração ligada, M30 fim do programa). |
| Formato | Endereço por palavra: N50 G01 X1.5 Z-0.75 F0.008 M08 — uma letra + um número por “palavra”. |
| Standards | Com base no padrão EIA RS-274 e ISO-6983 1: 2009; o interpretador aberto do qual a maioria dos controladores descende é o NIST RS274/NGC spec. |
Código G vs. Código M: Qual a diferença?

Classificar cada código em uma de duas categorias é a maneira mais rápida de ler qualquer programa. G-code é um comando preparatório, o “G” geralmente é explicado como Geometria, porque essas palavras indicam ao cortador para onde ir e por qual caminho. Um código M É um comando diverso, ou de máquina: ele aciona um interruptor em algum lugar da máquina, como ligar o fuso ou ativar o sistema de refrigeração por inundação. Ambos utilizam a mesma gramática de endereçamento de palavras que a EIA padronizou para controle numérico no início da década de 1960 e que a ISO posteriormente incorporou à ISO 6983.
Eis a divisão prática que você pode aplicar à vista:
| Questão | Código G | Código M |
|---|---|---|
| O que ele controla? | Movimento da ferramenta, coordenadas, interpolação, deslocamentos | Eixo, fluido de refrigeração, troca de ferramenta, fluxo do programa |
| Isso move os eixos? | Muitas vezes sim (G00, G01, G02) | Não |
| É modal? | Muitos estão (permanecem ativos até serem cancelados) | Algumas (M03/M05); muitas são de dose única. |
| Exemplo | G01 X2.0 F10.0 |
M08 (líquido de arrefecimento ligado) |
Existem cerca de 100 códigos G em todos os dialetos, embora cada máquina utilize um conjunto de código muito menor. Os códigos M são menos numerosos e muito menos consistentes entre os fabricantes, um ponto importante a ser considerado, pois explica a maioria dos problemas do tipo "este programa funcionou bem em outra máquina", que serão abordados posteriormente. Se você ainda está construindo um modelo mental da própria máquina, nosso guia introdutório sobre... Noções básicas de usinagem em torno e fresadora Combina bem com esta referência de código.
Como ler um bloco de código G: letras de endereço e sintaxe

Uma linha de código CNC é chamada de quadraE cada bloco é apenas uma sequência de "palavras". Cada palavra é composta por uma letra (o endereço) seguida de um número (o valor). Depois de entender o significado das letras, você consegue ler quase qualquer bloco em voz alta. Ensinamos isso aos novos operadores como o Regra NG-XYZ-FSTMAs letras tendem a aparecer mais ou menos nessa ordem, e essa ordem corresponde à ordem em que a máquina pensa: número da linha, tipo de movimento, para onde ir, quão rápido, quão rápido girar, qual ferramenta e qual interruptor acionar.
| Carta | Significado | Exemplo |
|---|---|---|
| N | Número do bloco (linha) | N50 |
| G | comando preparatório/de movimento | G01 |
| XYZ | Posição do eixo (destino) | X1.5 Z-0.75 |
| IJK | Centro do arco, em relação ao ponto inicial. | I0.5 J0 |
| F | Taxa de alimentação | F0.008 |
| S | Velocidade do fuso | S1200 |
| T | Número da ferramenta | T0303 |
| M | Função da máquina | M08 |
Leia este blocoN50 G01 X1.5 Z-0.75 F0.008 M08E diz: “Na linha 50, alimente em linha reta até X1.5, Z-0.75 a 0.008 por rotação e ligue o fluido refrigerante por inundação.” Esse é todo o truque. A mesma lógica que impulsiona um Máquina de torno CNC Aciona um centro de usinagem; apenas as letras dos eixos e alguns ciclos predefinidos mudam.
A capital O código permanece ativo após o bloco até que algo no mesmo grupo o cancele. Execute o comando G01 uma vez e cada bloco subsequente continuará alimentando uma linha até que você chame G00, G02 ou G03. Códigos não modais (de execução única), como G04 (permanecer), atuam apenas no bloco em que aparecem. Misturar esses códigos é a causa principal da maioria das falhas que levam ao erro "por que a ferramenta mergulhou rapidamente?".
Grupos modais: por que alguns códigos se cancelam mutuamente?

Eis o conceito que transforma uma lista de códigos em um modelo mental funcional. Os códigos G são classificados em grupos modaisE apenas um código de cada grupo pode estar ativo por vez. Ao chamar um segundo código do mesmo grupo, ele substitui silenciosamente o primeiro. Isso é intencional e também explica por que um bloco com dois códigos de movimento dispara um alarme. Compreender os grupos responde à pergunta de iniciante: "por que um código G cancela outro?"
| Grupo Modal | Códigos no Grupo | Configuração padrão ao ligar |
|---|---|---|
| Movimento | G00, G01, G02, G03 | Geralmente G00 |
| Seleção de avião | G17, G18, G19 | G17 (fresadora), G18 (torno) |
| Monitoradas | G20, G21 | Parâmetro da máquina |
| Modo de distância | G90, G91 | G90 absoluto |
| Compensador de cortador | G40, G41, G42 | G40 desligado |
| Deslocamentos de trabalho | G54–G59 | G54 |
| Modo de alimentação | G93, G94, G95 | G94 (moinho) |
| Ciclo fixo | G73–G89, G80 cancelado | G80 desligado |
Então, quando você escrever G90 G54 G17 G00 X0 Y0 No início de um programa, você define um código de cada um dos vários grupos: distância absoluta, deslocamento de trabalho 1, plano XY, movimento rápido, e todos permanecem fixos até que você os altere. É isso que as pessoas chamam de linha de "início seguro".
Lista completa de códigos G (códigos comuns G00–G99)

Abaixo está a lista completa de códigos G, agrupados por função. Esses são os códigos que você encontrará na grande maioria dos controles do tipo Fanuc; alguns apresentam peculiaridades de dialeto, mencionadas na seção de comparação de controles. Salve esta página, pois ela também serve como um guia prático para impressão, muito procurado por quem busca por "lista de códigos G e M em PDF".
| Code | Grupo | função |
|---|---|---|
| G00 | Movimento | Posicionamento rápido (movimento sem corte) |
| G01 | Movimento | Movimento de alimentação linear na taxa F |
| G02 | Movimento | Interpolação circular no sentido horário (arco) |
| G03 | Movimento | Interpolação circular no sentido anti-horário |
| G04 | Movimento | Aguarde (pausa), pressione P ou X para definir o tempo. |
| G17/G18/G19 | Avião | Selecione o plano de trabalho XY / XZ / YZ |
| G20/G21 | Monitoradas | Programação em polegadas/milímetros |
| G28 | Movimento | Retornar à posição inicial (de referência) da máquina |
| G30 | Movimento | Retornar ao 2º/3º ponto de referência |
| G40/G41/G42 | Comp | Compensação de raio de corte desligada/esquerda/direita |
| G43/G49 | Comp | Compensação de comprimento da ferramenta ativada/desativada |
| G53 | Coordenada | Mover nas coordenadas da máquina (cancela o deslocamento) |
| G54–G59 | Coordenada | Sistemas de coordenadas de trabalho 1–6 |
| G73/G83 | Enlatados | Perfuração por piquetagem de alta velocidade / perfuração por piquetagem com retração total |
| G80 | Enlatados | Cancelar ciclo fixo |
| G81/G82 | Enlatados | Furadeira simples / furadeira com tempo de permanência |
| G84 | Enlatados | Ciclo de batida |
| G85/G86 | Enlatados | Ciclos entediantes |
| G90/G91 | Distância | Programação absoluta/incremental |
| G93/G94/G95 | Modo de alimentação | Alimentação por tempo inverso / por minuto / por rotação |
| G96/G97 | Fuso | Velocidade de superfície constante / cancelar (rotação constante) |
| G98/G99 | Enlatado* | Retorno ao plano inicial / R após um ciclo (fresagem) |
*Em muitos controles de torno Fanuc, G98/G99 definem o avanço por minuto e o avanço por revolução, uma das diferenças de dialeto detalhadas abaixo.
Lista completa de códigos M (funções da máquina e do programa)

Os códigos M controlam tudo o que não envolve movimento: iniciar e parar o fuso, trocar o fluido de corte, trocar ferramentas e finalizar o programa. O conjunto mais comum é curto, e você usará uma dúzia deles todos os dias.
| Code | função | Notas |
|---|---|---|
| M00 | Interrupção do programa (obrigatória) | Pressione Iniciar ciclo para retomar. |
| M01 | Parada opcional | Somente se a opção “parada opcional” estiver ativada. |
| M02 | Fim do programa | Sem retrocesso |
| M03/M04 | Eixo no sentido horário/anti-horário | Precisa de um valor S |
| M05 | Parada do fuso | - |
| M06 | Troca de ferramenta | Combina com uma palavra que começa com T. |
| M07/M08/M09 | Nebulização/inundação de líquido de arrefecimento ligado, líquido de arrefecimento desligado | M07 não está presente em todas as máquinas. |
| M29 | Modo de batida rígida | Fanuc; precede G84 |
| M30 | Encerrar programa e retroceder | Voltar ao topo |
| M98/M99 | Chamada/retorno de subprograma | M99 também executa um programa em loop. |
Os códigos M são a parte menos padronizada da linguagem. Os códigos M para fluido refrigerante, paletes e auxiliares variam de fabricante para fabricante, e máquinas com hardware extra adicionam os seus próprios. Sempre consulte a página de códigos M no manual da sua máquina antes de presumir que um número significa o mesmo que significava no último comando executado.
Códigos G e M para tornos CNC (torneamento)

A maioria das listas de códigos publicadas são escritas para fresadoras, deixando os programadores de tornos no escuro. Os tornos compartilham os códigos básicos de movimento e programação, mas adicionam uma camada específica para torneamento que as fresadoras não possuem. Se você opera um centro de torneamento de leito inclinado ou plano, estes são os códigos que importam.
| Código do torno | função |
|---|---|
| G50 | Limitar a velocidade máxima do fuso (ou definir a coordenada, dependendo do controle) |
| G96/G97 | Velocidade de superfície constante ligada/desligada — a combinação ideal para curvas |
| G70 | Ciclo de finalização |
| G71 | Ciclo de torneamento bruto (remoção de material) |
| G72 | Ciclo de revestimento áspero |
| G74/G75 | Ciclos de perfuração/ranhuramento com quebra de martelo |
| G76 | Ciclo de enfiamento |
| G41/G42/G40 | Compensação do raio da ponta da ferramenta esquerda/direita/desligado |
A velocidade constante da superfície é a grande diferença conceitual. Chamar G96 S500 e o controle varia a rotação do fuso para que a velocidade de corte na ferramenta permaneça em 500 pés de superfície por minuto, mesmo com a redução do diâmetro, exatamente o que você deseja para um acabamento limpo em uma peça cônica ou faceada. Mude para G97 S1500 Para travar uma rotação fixa, necessária para furação no centro ou rosqueamento. Nos controles estilo Fanuc que enviamos na ANTISHICNC. torno CNC de leito inclinado Em alguns modelos, a ausência do comando G97 antes de um ciclo de perfuração é um dos erros mais comuns que observamos na primeira programação, fazendo com que o fuso continue acelerando à medida que a ferramenta se aproxima do centro.
“Na usinagem, a ordem é tão importante quanto os códigos. Defina o offset da peça, depois G96 com uma trava de velocidade G50, e então a ferramenta. Se ignorar a trava, a primeira passada de pequeno diâmetro pode tentar girar o fuso além do seu limite de segurança.”
O que é o código G94?
G94 define o alimentação por minuto Modo: o valor F é lido em unidades (polegadas ou milímetros) de deslocamento da ferramenta por minuto. Ele está localizado no grupo modal de avanço, juntamente com G93 (tempo inverso) e G95 (avanço por revolução), e em controles de fresamento, G94 é o padrão normal. A questão é o torno: em muitos controles de torneamento Fanuc, o par de modos de avanço é, na verdade, G98 (por minuto) e G99 (por revolução), enquanto G94/G95 podem ser atribuídos a outras funções. O torneamento quase sempre exige avanço por revolução para que o acabamento permaneça consistente independentemente da rotação, portanto, a maioria dos programas de torno define G99 (ou G95, dependendo do controle). Em caso de dúvida, verifique qual "sistema" seu controle utiliza; isso está documentado no manual de programação em códigos de modo de avanço.
Ciclos fixos explicados: furação, rosqueamento e mandrilamento

A ciclo enlatado A função G80 reúne uma operação repetitiva — furar, retrair, mover, furar novamente — em uma única linha. Em vez de programar cada perfuração manualmente, você chama o ciclo uma vez, lista as posições dos furos e cancela com G80. Isso economiza dezenas de linhas de código e torna os padrões de furos legíveis à primeira vista.
- ✔G81Perfuração reta: avanço rápido até o plano R, avanço até a profundidade Z, saída rápida.
- ✔G83Perfuração por penetração: realiza pequenos cortes em incrementos Q, retraindo-se completamente para remover cavacos em furos profundos.
- ✔G84Rosqueamento: o material entra, o fuso inverte o sentido de rotação e sai na medida do passo da rosca.
- ✔G85/G86Furação: usinagem precisa e com baixo avanço de um furo pré-perfurado.
Um bloco de perfuração por perfuração com martelo se parece com G83 Z-1.0 R0.1 Q0.2 F8.0Perfure até Z-1.0, partindo de um plano de retração de 0.1, em incrementos de 0.2, a uma velocidade de 8 polegadas por minuto. Liste as coordenadas XY do furo após cada incremento e o ciclo se repete em cada um deles até G80.
Qual a função do G84 em um sistema CNC?
O comando G84 é o ciclo de rosqueamento à direita. Ele avança o macho até a profundidade desejada, para e inverte a rotação do fuso, retornando ao ponto inicial. Tudo sincronizado para que o macho siga sua própria rosca sem danificá-la. A taxa de avanço deve corresponder ao passo da rosca: o avanço é igual à rotação do fuso multiplicada pelo passo da rosca. Para um macho M8×1.25 a 300 rpm no modo de avanço por minuto, isso resulta em 300 × 1.25 = 375 mm/min. Em controles Fanuc, normalmente se executa o comando M29 (modo de rosqueamento rígido) imediatamente antes do G84 para que o fuso e o eixo Z permaneçam travados, o que permite rosquear com precisão sem um porta-ferramentas de tensão-compressão. Posicione o plano R suficientemente acima da peça para permitir que o fuso atinja a velocidade e inverta a rotação sem problemas. Ignorar o comando M29 e executar o G84 no modo "flutuante" com um porta-ferramentas rígido é uma maneira clássica de quebrar um macho.
Um programa de exemplo completo em código G (fresadora e torno)

Ler códigos em uma tabela é uma coisa; vê-los em um programa real é onde tudo faz sentido. Aqui estão dois exemplos curtos e totalmente comentados. Cada linha corresponde às tabelas acima.
Exemplo de fresagemFaça um furo na face da máquina:
O1001 N10 G90 G54 G17 G21 (absoluto, offset 1, plano XY, mm) N20 G00 X0 Y0 (início rápido) N30 T1 M06 (carregar ferramenta 1) N40 S1200 M03 (eixo ligado no sentido horário, 1200 rpm) N50 G43 H1 Z25.0 (offset do comprimento da ferramenta, Z seguro) N60 M08 (refrigeração por inundação ligada) N70 G83 Z-15.0 R2.0 Q3.0 F150 (furação intermitente) N80 G80 (cancelar ciclo) N90 M09 (refrigeração desligada) N100 G28 Z0 M05 (retorno ao ponto inicial Z, parada do eixo) N110 M30 (finalizar e rebobinar)
Exemplo de viradaDesbastar e dar acabamento a um diâmetro:
O2001 N10 G21 G99 G40 (mm, avanço por rotação, compensação desligada) N20 G50 S2500 (fixação, rotação máxima do fuso 2500 rpm) N30 T0101 (ferramenta de torneamento, deslocamento 1) N40 G96 S180 M03 (velocidade de superfície constante 180, fuso CW) N50 G00 X52.0 Z2.0 M08 (aproximação do material, refrigeração ligada) N60 G71 U2.0 R1.0 (ciclo de torneamento de desbaste) N70 G70 P80 Q120 (passe de acabamento sobre o perfil) N130 G97 S1200 (retorno à rotação constante) N140 G00 X200 Z200 M09 (retração, refrigeração desligada) N150 M05 (parada do fuso) N160 M30 (fim do programa)
Antes de qualquer primeira execução, faça um teste a seco do arquivo em um simulador. Simuladores e visualizadores de código G online gratuitos detectam arcos invertidos ou a ausência de um G80 em segundos, muito mais barato do que detectar o problema com a ferramenta na peça. O mesmo hábito de verificar primeiro se aplica tanto ao corte em uma peça quanto em outra. Centro de usinagem vertical CNC ou um centro de viragem.
Diferenças nos códigos G e M por controlador: Fanuc, Haas, Siemens, GRBL, LinuxCNC

Eis a verdade que as listas de comandos únicos escondem: não existe um código G universal. Os códigos de movimento (G00–G03) e os códigos de partida segura permanecem praticamente idênticos em todos os lugares; essa parte é realmente padronizada. Mas os parâmetros de ciclos predefinidos, a sintaxe de macros, as atribuições de modo de avanço e a maioria dos códigos M variam entre os fabricantes. O conceito de "código G padrão" é, além do básico, em parte um mito.
| Controlar | Onde difere |
|---|---|
| fanuc | A configuração básica de facto; variáveis macro B, modo de avanço do torno via G98/G99, macho rígido M29 |
| Haas | Semelhante ao Fanuc, com códigos M Haas adicionais (por exemplo, subchamada local M97) e comportamento orientado por configurações. |
| Siemens (SINUMERIK) | Suporta código G, além de sua própria linguagem de alto nível e etapas ShopTurn/ShopMill. |
| Extensão GRBL | Um subconjunto para roteadores de hobby e hardware de classe de impressora 3D; sem ciclos pré-definidos. |
| linux cnc | Segue de perto o dialeto NIST RS274/NGC; códigos G adicionais para splines e sondagem. |
Os operadores de máquinas geralmente relatam a mesma lição: um programa testado em um controle pode apresentar falhas ou, pior, funcionar incorretamente em outro, geralmente devido a uma diferença no modo de avanço ou no ciclo fixo, e não no código de movimento. A solução é adquirir um hábito, não alterar o código; replique o programa do CAM para o controle de destino ou teste-o na máquina real em bloco único antes de confiar nele. (A publicação gratuita é um recurso útil para este documento.) Referência de código G do LinuxCNC É uma base neutra útil quando se deseja ver como um interpretador "padrão" define um código.
Erros comuns em códigos G e M

Os códigos em si são simples; os erros surgem do contexto. Alguns padrões específicos são responsáveis pela maioria dos problemas que os programadores iniciantes encontram.
- Abra com uma linha de partida segura (G90 G54 G17 G40 G80)
- Cancele os ciclos pré-definidos com G80 antes da próxima operação.
- Ajuste G97 antes de furar ou rosquear em um torno.
- Executar em bloco único a primeira execução de qualquer novo programa
- Deixando o G91 ativado, para que o próximo programa seja executado de forma incremental.
- Partindo do pressuposto de que um código M significa a mesma coisa em todas as máquinas.
- Digitando com G84, mas esquecendo o modo rígido M29.
- Direção do arco incorreta (G02 vs G03) ou sinal I/J/K
Se você está migrando da usinagem manual para a CNC, desenvolver o mesmo instinto que você tinha com os controles manuais ajuda bastante; a maneira como um operador lê um mostrador exige a mesma atenção que um operador de CNC. leitura digital (DRO) recompensas, e isso se estende diretamente à leitura do código antes de pressionar o botão de iniciar o ciclo. Combinar as ferramentas certas para o trabalho é igualmente importante; nosso guia para ferramentas de corte de torno cobre esse lado.
O que está mudando: Programação Conversacional, CAM e IA

Escrever programas completos à mão já não é uma tarefa tão comum como antigamente. A partir de 2026, a maior parte do código G de produção será gerada por software CAM e seu pós-processador, sendo posteriormente editada na máquina. É importante considerar a disponibilidade para trabalhar em dois turnos.
Primeiro, programação conversacional A prática continua a se espalhar. Controladores como o Haas ShopTurn e o Siemens ShopTurn permitem que o operador descreva uma característica, um furo, uma rosca, uma face, e o controlador escreve o código G correspondente. Isso reduz a barreira para peças simples, mas não substitui o conhecimento dos códigos: no momento em que um programa conversacional precisa de uma edição ou dispara um alarme, você volta a usar o código G. Em segundo lugar, a simulação tornou-se uma etapa padrão, em vez de um luxo. O interesse de busca por simuladores de código G gira em torno de 1,000 buscas por mês, um sinal de que a verificação antes do corte agora é prática padrão. Ferramentas de trajetória de ferramenta assistidas por IA que ajustam o avanço e sinalizam colisões estão chegando ao CAM convencional, embora proponham alterações que ainda precisam ser revisadas por um programador.
Se você estiver montando uma loja ou treinando operadores em 2026, a estratégia prática é ensinar primeiro o código G e usar ferramentas de conversação e IA como aceleradores. Os fundamentos desta lista são exatamente o que essas ferramentas geram e o que você encontrará quando algo precisar de reparo. Para entender como a maturidade em programação influencia a compra de uma máquina, confira nossa visão geral sobre o assunto. tornos para torneamento de metais O guia apresenta as opções de controle.
Perguntas frequentes
P: Qual a diferença entre um código G e um código M?
Ver resposta
P: Qual é o código G mais comum?
Ver resposta
P: O que significa o código M em CNC?
Ver resposta
P: Os códigos G e M são os mesmos em todas as máquinas CNC?
Ver resposta
P: Quais são os códigos G e M usados nos tornos CNC?
Ver resposta
P: Onde posso encontrar uma lista em PDF ou um guia de consulta rápida dos códigos G e M?
Ver resposta
Programando um novo centro de viragem?
A ANTISHICNC fabrica tornos CNC que executam código G padrão no estilo Fanuc, com opções de conversação e 3 anos de suporte em mais de 40 países. Conte-nos sobre sua peça e especificaremos a máquina e o controle ideais.
Por que elaboramos esta lista?
Fabricamos tornos CNC para viver, e a primeira coisa que os novos proprietários perguntam após a entrega é alguma variação de "onde está a lista de códigos?". A maioria das referências online cobre apenas fresadoras ou se limita a uma marca de controle, então escrevemos uma que reúne os códigos de fresadora e torno, incluindo os ciclos de torneamento G96/G97 e G70–G76 que nossas máquinas executam diariamente, em um só lugar, com as diferenças entre os controles explicadas detalhadamente.
Referências e fontes
- Interpretador NIST RS274/NGC, versão 3Instituto Nacional de Padrões e Tecnologia (NIST)
- Interpretador NIST RS274NGC, relatório completo (PDF)Relatório interno do NIST
- ISO 6983-1:2009, Sistemas de automação e integração, formato de programa NCInternational Organization for Standardization
- Guia rápido de código G para LinuxCNCLinuxCNC.org
- G-codeWikipédia (visão geral e histórico do RS-274)
Artigos Relacionados
- Entendendo os princípios básicos da usinagem em torno e fresadoracomo as máquinas em que esses códigos são executados realmente funcionam
- Ferramentas essenciais para torneamento para iniciantesCombinar a ferramenta certa com o seu programa de torneamento
- O que são tornos verticais CNC?torneamento de peças de grande diâmetro
- Projetos que você pode criar com tornosColocando seus programas em prática
Revisado pela equipe de engenharia da ANTISHICNC, com mais de 25 anos de experiência na fabricação de tornos CNC e centros de usinagem. Tem alguma dúvida sobre a programação de uma de nossas máquinas? Fale com nossa equipe de engenharia.













