{"id":10351,"date":"2026-03-20T13:59:24","date_gmt":"2026-03-20T05:59:24","guid":{"rendered":"https:\/\/www.cncmachiningshops.com\/?p=10351"},"modified":"2026-07-19T17:12:07","modified_gmt":"2026-07-19T09:12:07","slug":"what-is-g-code","status":"publish","type":"post","link":"https:\/\/www.cncmachiningshops.com\/pt\/what-is-g-code\/","title":{"rendered":"O que \u00e9 o c\u00f3digo G na usinagem CNC? Sintaxe, estrutura e exemplos pr\u00e1ticos de programa\u00e7\u00e3o"},"content":{"rendered":"<div data-page-id=\"A6cNdQPsso1VkNxnLMecVSBRnhe\" data-lark-html-role=\"root\" data-docx-has-block-data=\"true\">\n<p>O software CAM tornou o c\u00f3digo G menos vis\u00edvel nos fluxos de trabalho di\u00e1rios do CNC \u2014 mas n\u00e3o o tornou menos importante. Cada trajet\u00f3ria de ferramenta gerada por um sistema CAM acaba por se tornar um ficheiro de c\u00f3digo G, e \u00e9 esse ficheiro que o controlador CNC executa efetivamente, linha a linha, sem ter conhecimento do modelo CAD ou da estrat\u00e9gia de maquinagem subjacente. Quando uma ferramenta penetra demasiado fundo, o tempo de ciclo fica inesperadamente elevado ou o acabamento da superf\u00edcie n\u00e3o corresponde \u00e0 simula\u00e7\u00e3o, a resposta est\u00e1 quase sempre no c\u00f3digo G \u2014 e n\u00e3o na configura\u00e7\u00e3o do CAM. Compreender o c\u00f3digo G na maquina\u00e7\u00e3o CNC significa compreender o que a m\u00e1quina est\u00e1 realmente a fazer, em vez do que se pretendia que ela fizesse.<\/p>\n<p>Este artigo aborda o c\u00f3digo G na perspetiva de como os controladores CNC o interpretam e executam em ambientes reais de maquinagem. O objetivo \u00e9 pr\u00e1tico: sintaxe, estrutura, l\u00f3gica modal, erros comuns e um exemplo de c\u00f3digo passo a passo que mostra exatamente o que acontece ao n\u00edvel da m\u00e1quina. Quer esteja a depurar um programa, a rever a configura\u00e7\u00e3o de um fornecedor ou a tentar compreender por que raz\u00e3o um tempo de ciclo indicado parece errado, esta \u00e9 a estrutura a partir da qual deve trabalhar.<\/p>\n<hr \/>\n<h2>O que \u00e9 o G-Code e como \u00e9 que controla as m\u00e1quinas CNC?<\/h2>\n<h3>A defini\u00e7\u00e3o que realmente importa na produ\u00e7\u00e3o<\/h3>\n<p>O c\u00f3digo G \u00e9 a linguagem de instru\u00e7\u00f5es de baixo n\u00edvel que os controladores das m\u00e1quinas CNC executam diretamente. Cada linha especifica comandos de movimento, posi\u00e7\u00f5es dos eixos, velocidades de avan\u00e7o, estados do fuso e fun\u00e7\u00f5es auxiliares. N\u00e3o \u00e9 descritivo \u2014 n\u00e3o diz \u201cusinar este cavidade\u201d ou \u201cacabar esta superf\u00edcie\u201d. Diz \u201cdesloca-te para esta coordenada a esta velocidade de avan\u00e7o neste modo\u201d. O controlador segue essas instru\u00e7\u00f5es \u00e0 risca, sem qualquer interpreta\u00e7\u00e3o da inten\u00e7\u00e3o para al\u00e9m do que est\u00e1 codificado.<\/p>\n<p>Esta distin\u00e7\u00e3o \u00e9 importante na pr\u00e1tica. O software CAM define o que deve acontecer com base na geometria e na estrat\u00e9gia de maquinagem. O ficheiro de c\u00f3digo G define o que o controlador ir\u00e1 efetivamente executar. Muitas vezes, estes est\u00e3o pr\u00f3ximos \u2014 mas nem sempre s\u00e3o id\u00eanticos, e \u00e9 nessa diferen\u00e7a que reside a origem da maioria dos problemas de maquinagem.<\/p>\n<h3>Como os controladores CNC interpretam o c\u00f3digo G<\/h3>\n<p>Os controladores processam o c\u00f3digo G sequencialmente, um bloco de cada vez. Ap\u00f3s ler cada linha, o controlador atualiza o seu estado interno \u2014 modo de movimento ativo, sistema de coordenadas, desvio de comprimento da ferramenta, sele\u00e7\u00e3o do plano \u2014 e, em seguida, executa o comando. Os comandos modais permanecem ativos at\u00e9 serem explicitamente alterados. \u00c9 esta a parte que apanha a maioria das pessoas de surpresa: um comando definido h\u00e1 50 linhas atr\u00e1s pode ainda estar a controlar o comportamento da m\u00e1quina na linha 200, se nada o tiver cancelado.<\/p>\n<p>Os controladores tamb\u00e9m aplicam fun\u00e7\u00f5es de antecipa\u00e7\u00e3o, limites de acelera\u00e7\u00e3o e algoritmos de interpola\u00e7\u00e3o ap\u00f3s a leitura do c\u00f3digo G \u2014 e n\u00e3o durante a gera\u00e7\u00e3o do CAM. Duas m\u00e1quinas que executam o mesmo c\u00f3digo G podem produzir perfis de movimento diferentes se os par\u00e2metros dos respetivos controladores forem distintos. \u00c9 por isso que os resultados da maquina\u00e7\u00e3o n\u00e3o s\u00e3o totalmente determinados na fase do CAM.<\/p>\n<h3>O papel do c\u00f3digo G no fluxo de trabalho do CNC<\/h3>\n<p>O processo, desde a conce\u00e7\u00e3o at\u00e9 ao corte, segue uma sequ\u00eancia clara:<\/p>\n<p><strong>Modelo CAD \u2192 Estrat\u00e9gia de percurso da ferramenta CAM \u2192 Gera\u00e7\u00e3o de c\u00f3digo G \u2192 Controlador CNC \u2192 Movimento servo \u2192 Remo\u00e7\u00e3o de material<\/strong><\/p>\n<p>O c\u00f3digo G \u00e9 o ponto de transi\u00e7\u00e3o. Tudo o que vem antes \u00e9 conce\u00e7\u00e3o e planeamento. Tudo o que vem a seguir \u00e9 o corte f\u00edsico. Compreender o c\u00f3digo G significa compreender o que acontece nessa fronteira \u2014 que \u00e9 exatamente onde os problemas s\u00e3o mais dif\u00edceis de detetar e mais dispendiosos de resolver.<\/p>\n<hr \/>\n<h2>Como est\u00e1 estruturado um programa em c\u00f3digo G para CNC<\/h2>\n<h3>Blocos, linhas e ordem de execu\u00e7\u00e3o<\/h3>\n<p>Um programa em c\u00f3digo G \u00e9 composto por blocos \u2014 linhas individuais que o controlador processa em sequ\u00eancia, de cima para baixo. Cada bloco representa um ciclo de instru\u00e7\u00f5es. O controlador n\u00e3o tem conhecimento dos blocos futuros para al\u00e9m de uma antecipa\u00e7\u00e3o limitada, pelo que a ordem dos comandos determina diretamente o comportamento da m\u00e1quina.<\/p>\n<p>Um programa bem estruturado segue esta sequ\u00eancia:<\/p>\n<ol>\n<li>Arranque do programa e inicializa\u00e7\u00e3o de seguran\u00e7a<\/li>\n<li>Declara\u00e7\u00e3o de unidades, plano e modo de coordenadas<\/li>\n<li>Sele\u00e7\u00e3o da ferramenta e ativa\u00e7\u00e3o do desvio<\/li>\n<li>Movimentos de maquinagem (desbaste, acabamento, perfura\u00e7\u00e3o, etc.)<\/li>\n<li>Retirada e troca de ferramenta (se houver v\u00e1rias ferramentas)<\/li>\n<li>Fim do programa e reinicializa\u00e7\u00e3o<\/li>\n<\/ol>\n<p>Ignorar ou alterar a ordem dos passos acarreta riscos. Um movimento de corte executado antes da ativa\u00e7\u00e3o do desvio do comprimento da ferramenta, por exemplo, posiciona a ferramenta com base numa refer\u00eancia Z n\u00e3o corrigida \u2014 o que \u00e9 uma forma infal\u00edvel de provocar uma colis\u00e3o, mesmo quando a geometria do percurso da ferramenta est\u00e1 correta.<\/p>\n<h3>Palavras de endere\u00e7o: o que cada letra significa<\/h3>\n<p>Cada bloco \u00e9 composto por palavras de endere\u00e7o \u2014 uma letra que identifica a fun\u00e7\u00e3o, seguida de um n\u00famero que define o valor.<\/p>\n<ul>\n<li><strong>G<\/strong> \u2014 Comando de movimento ou modo (r\u00e1pido, linear, circular, sele\u00e7\u00e3o de plano, etc.)<\/li>\n<li><strong>M<\/strong> \u2014 Fun\u00e7\u00f5es da m\u00e1quina e fun\u00e7\u00f5es auxiliares (fuso, l\u00edquido de arrefecimento, troca de ferramenta, fim do programa)<\/li>\n<li><strong>X, Y, Z<\/strong> \u2014 Posi\u00e7\u00f5es-alvo do Eixo<\/li>\n<li><strong>F<\/strong> \u2014 Velocidade de avan\u00e7o (dist\u00e2ncia por minuto ou por volta, dependendo do modo)<\/li>\n<li><strong>S<\/strong> \u2014 Velocidade do fuso (RPM)<\/li>\n<li><strong>T<\/strong> \u2014 N\u00famero da ferramenta<\/li>\n<\/ul>\n<p>Podem aparecer v\u00e1rias palavras de endere\u00e7o numa \u00fanica linha. O controlador interpreta-as em conjunto para determinar o tipo de movimento, a posi\u00e7\u00e3o e o estado da m\u00e1quina. A sequ\u00eancia dentro de um bloco tamb\u00e9m \u00e9 importante em alguns controladores \u2014 consulte sempre o manual do controlador para verificar a ordem de an\u00e1lise dos blocos.<\/p>\n<h3>Comandos modais vs. n\u00e3o modais<\/h3>\n<p>Este \u00e9 o conceito que causa mais erros na programa\u00e7\u00e3o CNC \u2014 e mais confus\u00e3o durante a depura\u00e7\u00e3o.<\/p>\n<p><strong>Comandos modais<\/strong> permanecem ativos em v\u00e1rios blocos at\u00e9 serem explicitamente cancelados ou substitu\u00eddos. G01 (interpola\u00e7\u00e3o linear), G90 (posicionamento absoluto) e F (velocidade de avan\u00e7o) s\u00e3o todos modais. Basta defini-los uma vez e aplicam-se a todos os blocos subsequentes at\u00e9 serem alterados.<\/p>\n<p><strong>Comandos n\u00e3o modais<\/strong> aplicam-se apenas ao bloco em que aparecem. O G04 (dwell) \u00e9 um exemplo t\u00edpico \u2014 faz uma pausa durante um bloco e, em seguida, a execu\u00e7\u00e3o continua sem que o dwell volte a ser aplicado.<\/p>\n<p>O perigo dos comandos modais: um modo definido no in\u00edcio do programa controla o comportamento de tudo o que se segue, incluindo blocos escritos muito mais tarde. A aus\u00eancia de uma transi\u00e7\u00e3o de G00 para G01 onde seria esperada, ou uma velocidade de avan\u00e7o que n\u00e3o tenha sido atualizada entre opera\u00e7\u00f5es, pode provocar um movimento incorreto sem ativar qualquer alarme do controlador.<\/p>\n<h3>An\u00e1lise de uma linha t\u00edpica de c\u00f3digo G<\/h3>\n<pre><code>G01 X50,0 Y20,0 Z-5,0 F300\r\n<\/code><\/pre>\n<ul>\n<li><strong>G01<\/strong> \u2014 Interpola\u00e7\u00e3o linear (modal; permanece ativa at\u00e9 ser especificado outro modo de movimento)<\/li>\n<li><strong>X50,0 Y20,0 Z-5,0<\/strong> \u2014 Posi\u00e7\u00e3o alvo no sistema de coordenadas atual<\/li>\n<li><strong>F300<\/strong> \u2014 Velocidade de avan\u00e7o de 300 mm\/min (modal; aplica-se a todos os movimentos de corte subsequentes)<\/li>\n<\/ul>\n<p>Se o bloco seguinte disser <code>X80,0 Y20,0<\/code> Sem c\u00f3digo G, a m\u00e1quina desloca-se linearmente a 300 mm\/min at\u00e9 \u00e0 nova posi\u00e7\u00e3o \u2014 uma vez que os c\u00f3digos G01 e F300 continuam ativos. Trata-se de um comportamento correto, se for essa a inten\u00e7\u00e3o, e de um problema, se n\u00e3o for o esperado.<\/p>\n<hr \/>\n<h2>Os c\u00f3digos G mais comuns utilizados na maquina\u00e7\u00e3o CNC<\/h2>\n<h3>Comandos de movimento: G00, G01, G02, G03<\/h3>\n<p>Estes quatro c\u00f3digos representam a maior parte do movimento em qualquer programa CNC.<\/p>\n<p><strong>G00 \u2014 Posicionamento r\u00e1pido<\/strong> Desloca a ferramenta para uma posi\u00e7\u00e3o \u00e0 velocidade m\u00e1xima de deslocamento da m\u00e1quina. O controlador n\u00e3o respeita a velocidade de avan\u00e7o programada durante o comando G00. Utilize-o exclusivamente para movimentos que n\u00e3o envolvam corte \u2014 posi\u00e7\u00f5es de seguran\u00e7a, aproxima\u00e7\u00f5es para troca de ferramenta e reposicionamento acima da pe\u00e7a. Nunca utilize o comando G00 enquanto a ferramenta estiver em contacto com o material; os limites de velocidade de avan\u00e7o n\u00e3o se aplicam e o resultado \u00e9 imprevis\u00edvel.<\/p>\n<p><strong>G01 \u2014 Interpola\u00e7\u00e3o linear<\/strong> Executa um movimento de corte em linha reta \u00e0 velocidade de avan\u00e7o programada. Este \u00e9 o comando de corte principal para fresagem, torneamento e qualquer remo\u00e7\u00e3o controlada de material. A sele\u00e7\u00e3o da velocidade de avan\u00e7o deve ter em conta o di\u00e2metro da ferramenta, o material e o revestimento \u2014 e n\u00e3o um valor gen\u00e9rico considerado \u201cseguro\u201d. Para o alum\u00ednio 6061 com uma fresa de metal duro de 10 mm, F400\u2013600 mm\/min a S8000\u201312000 RPM \u00e9 normalmente adequado. Para o a\u00e7o inoxid\u00e1vel 316L com a mesma ferramenta, uma velocidade de avan\u00e7o de 100\u2013180 mm\/min a 3000\u20135000 RPM \u00e9 mais realista devido ao comportamento de endurecimento por deforma\u00e7\u00e3o.<\/p>\n<p><strong>G02 \/ G03 \u2014 Interpola\u00e7\u00e3o circular (no sentido hor\u00e1rio \/ anti-hor\u00e1rio)<\/strong> Gera um movimento em arco no plano ativo. O comando G02 move-se no sentido hor\u00e1rio; o comando G03, no sentido anti-hor\u00e1rio. A geometria do arco \u00e9 definida pelo ponto inicial, pelo ponto final e por um desvio do centro (I, J, K) ou por um valor de raio (R). Uma geometria de arco mal definida \u2014 em que os pontos inicial e final n\u00e3o correspondem ao raio especificado \u2014 provoca alarmes no controlador ou cortes excessivos. Verifique sempre as defini\u00e7\u00f5es do arco na simula\u00e7\u00e3o antes de iniciar o corte.<\/p>\n<h3>Sele\u00e7\u00e3o de planos e unidades: G17\u2013G19, G20, G21<\/h3>\n<p><strong>G17, G18, G19<\/strong> Selecione o plano de maquinagem ativo: XY, XZ e YZ, respetivamente. A sele\u00e7\u00e3o do plano afeta diretamente a forma como os arcos G02\/G03 s\u00e3o interpretados. Um arco G02 programado com coordenadas XY comporta-se corretamente em G17, mas produz um movimento incorreto se G18 ou G19 estiverem ativos devido a uma opera\u00e7\u00e3o anterior.<\/p>\n<p><strong>G20 \/ G21<\/strong> Especifique se utiliza unidades em polegadas ou m\u00e9tricas. Esta defini\u00e7\u00e3o deve ser sempre definida explicitamente no in\u00edcio do programa. Herdar unidades de um programa anterior \u00e9 uma das formas menos \u00f3bvias de provocar uma falha no equipamento \u2014 o controlador escala todas as posi\u00e7\u00f5es pelo fator de convers\u00e3o de unidades, o que faz com que a ferramenta se desloque para locais que n\u00e3o est\u00e3o nem perto das posi\u00e7\u00f5es pretendidas.<\/p>\n<h3>Modos de posicionamento: G90 vs G91<\/h3>\n<p><strong>G90 \u2014 Posicionamento absoluto<\/strong>: Todas as coordenadas t\u00eam como refer\u00eancia o ponto zero de trabalho ativo. Este \u00e9 o modo padr\u00e3o para a maioria das opera\u00e7\u00f5es de maquinagem CNC, uma vez que todas as posi\u00e7\u00f5es s\u00e3o inequ\u00edvocas \u2014 X50,0 significa sempre 50 mm a partir do ponto zero, independentemente da posi\u00e7\u00e3o anterior da ferramenta.<\/p>\n<p><strong>G91 \u2014 Posicionamento incremental<\/strong>: As coordenadas referem-se \u00e0 posi\u00e7\u00e3o atual da ferramenta. \u00datil para padr\u00f5es repetitivos (matrizes de furos, espa\u00e7amento entre ranhuras), em que definir tudo a partir do zero exigiria c\u00e1lculos. O risco \u00e9 o erro cumulativo \u2014 um erro de arredondamento num movimento altera todas as posi\u00e7\u00f5es incrementais subsequentes. Utilize o G91 de forma deliberada e regresse sempre ao G90 ap\u00f3s a sequ\u00eancia incremental.<\/p>\n<h3>C\u00f3digos de seguran\u00e7a e de refer\u00eancia<\/h3>\n<p><strong>G04 (Pausa)<\/strong>: Interrompe o movimento durante um per\u00edodo de tempo definido ou um n\u00famero definido de rota\u00e7\u00f5es do fuso. Entre as utiliza\u00e7\u00f5es mais comuns contam-se a quebra de aparas durante a perfura\u00e7\u00e3o profunda e a estabiliza\u00e7\u00e3o do fuso ap\u00f3s uma altera\u00e7\u00e3o de velocidade, antes de iniciar uma passagem de acabamento de precis\u00e3o.<\/p>\n<p><strong>G28 (Retorno \u00e0 refer\u00eancia da m\u00e1quina)<\/strong>: Envia os eixos atrav\u00e9s de um ponto interm\u00e9dio at\u00e9 \u00e0 posi\u00e7\u00e3o inicial da m\u00e1quina. O ponto interm\u00e9dio \u00e9 fundamental \u2014 se n\u00e3o for explicitamente definido numa posi\u00e7\u00e3o segura, o comando G28 pode fazer com que a ferramenta atravesse a pe\u00e7a ou o dispositivo de fixa\u00e7\u00e3o a caminho da posi\u00e7\u00e3o inicial.<\/p>\n<p><strong>G53 (Deslocamento nas coordenadas da m\u00e1quina)<\/strong>: Desloca-se diretamente nas coordenadas da m\u00e1quina, ignorando os deslocamentos de trabalho. \u00c9 mais previs\u00edvel do que o G28 para movimentos de estacionamento e trocas de ferramentas, quando utilizado corretamente.<\/p>\n<table>\n<thead>\n<tr>\n<th>Categoria<\/th>\n<th>C\u00f3digo G<\/th>\n<th>Fun\u00e7\u00e3o<\/th>\n<th>Utiliza\u00e7\u00e3o t\u00edpica<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Mo\u00e7\u00e3o<\/td>\n<td>G00<\/td>\n<td>Movimento r\u00e1pido<\/td>\n<td>Posicionamento sem corte<\/td>\n<\/tr>\n<tr>\n<td>Mo\u00e7\u00e3o<\/td>\n<td>G01<\/td>\n<td>Corte linear<\/td>\n<td>Maquina\u00e7\u00e3o controlada<\/td>\n<\/tr>\n<tr>\n<td>Mo\u00e7\u00e3o<\/td>\n<td>G02 \/ G03<\/td>\n<td>Corte circular<\/td>\n<td>Arcos, cavidades, perfis<\/td>\n<\/tr>\n<tr>\n<td>Avi\u00e3o<\/td>\n<td>G17\u2013G19<\/td>\n<td>Sele\u00e7\u00e3o do avi\u00e3o<\/td>\n<td>Defini\u00e7\u00e3o da dire\u00e7\u00e3o do arco<\/td>\n<\/tr>\n<tr>\n<td>Unidades<\/td>\n<td>G20 \/ G21<\/td>\n<td>Polegadas \/ Sistema m\u00e9trico<\/td>\n<td>Inicializa\u00e7\u00e3o do programa<\/td>\n<\/tr>\n<tr>\n<td>Posicionamento<\/td>\n<td>G90 \/ G91<\/td>\n<td>Absoluto \/ Incremental<\/td>\n<td>Controlo de coordenadas<\/td>\n<\/tr>\n<tr>\n<td>Seguran\u00e7a<\/td>\n<td>G28 \/ G53<\/td>\n<td>Movimentos de refer\u00eancia<\/td>\n<td>Troca de ferramenta, folga<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<hr \/>\n<h2>Os c\u00f3digos M e como funcionam em conjunto com o c\u00f3digo G<\/h2>\n<h3>O que os c\u00f3digos M controlam<\/h3>\n<p>Enquanto os c\u00f3digos G regem a forma como a ferramenta se move no espa\u00e7o, os c\u00f3digos M regem o que a m\u00e1quina faz \u2014 ligar\/desligar o fuso, ligar\/desligar o l\u00edquido de arrefecimento, troca de ferramenta e fluxo do programa. Nas opera\u00e7\u00f5es pr\u00e1ticas de maquinagem, os c\u00f3digos M definem o estado da m\u00e1quina que os movimentos de corte dos c\u00f3digos G pressup\u00f5em j\u00e1 estar em vigor. Um movimento de corte (G01) executado sem o fuso ativo (M03) danifica a ferramenta e a pe\u00e7a. Uma troca de ferramenta (M06) executada sem a dist\u00e2ncia de seguran\u00e7a adequada entre os eixos acarreta o risco de colis\u00e3o.<\/p>\n<h3>Os c\u00f3digos M que aparecem em quase todos os programas<\/h3>\n<ul>\n<li><strong>M03<\/strong> \u2014 Eixo ligado, rota\u00e7\u00e3o no sentido hor\u00e1rio<\/li>\n<li><strong>M04<\/strong> \u2014 Eixo ligado, no sentido anti-hor\u00e1rio (utilizado para opera\u00e7\u00f5es espec\u00edficas, como rosqueamento inverso)<\/li>\n<li><strong>M05<\/strong> \u2014 Paragem do fuso<\/li>\n<li><strong>M06<\/strong> \u2014 Troca de ferramenta (suspende a execu\u00e7\u00e3o at\u00e9 que a troca esteja conclu\u00edda)<\/li>\n<li><strong>M08<\/strong> \u2014 L\u00edquido de arrefecimento ligado<\/li>\n<li><strong>M09<\/strong> \u2014 Refrigerante desligado<\/li>\n<li><strong>M30<\/strong> \u2014 Fim do programa e rein\u00edcio<\/li>\n<\/ul>\n<p>A sequ\u00eancia \u00e9 importante. O comando M03 deve aparecer antes do primeiro movimento de corte. O comando M08 deve ser ativado antes de a ferramenta entrar em contacto com o material, e n\u00e3o durante o processo. O comando M06 exige que a m\u00e1quina se encontre numa posi\u00e7\u00e3o segura \u2014 o que \u00e9 normalmente verificado atrav\u00e9s de um movimento G28 ou G53 para um local definido de troca de ferramenta.<\/p>\n<h3>C\u00f3digo G e C\u00f3digo M: Complementares, mas n\u00e3o intercambi\u00e1veis<\/h3>\n<table>\n<thead>\n<tr>\n<th>Aspeto<\/th>\n<th>C\u00f3digo G<\/th>\n<th>C\u00f3digo M<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Fun\u00e7\u00e3o principal<\/td>\n<td>Controlo do movimento e da trajet\u00f3ria da ferramenta<\/td>\n<td>Estado da m\u00e1quina e fun\u00e7\u00f5es auxiliares<\/td>\n<\/tr>\n<tr>\n<td>A\u00e7\u00f5es t\u00edpicas<\/td>\n<td>Movimentos lineares, arcos, posicionamento<\/td>\n<td>Fuso, l\u00edquido de arrefecimento, troca de ferramenta, fim do programa<\/td>\n<\/tr>\n<tr>\n<td>Impacto na execu\u00e7\u00e3o<\/td>\n<td>Geometria e velocidade de avan\u00e7o<\/td>\n<td>Prepara\u00e7\u00e3o para o corte e seguran\u00e7a da m\u00e1quina<\/td>\n<\/tr>\n<tr>\n<td>Risco em caso de erro<\/td>\n<td>Colis\u00e3o, erro dimensional<\/td>\n<td>Danos na ferramenta, troca insegura da ferramenta<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<hr \/>\n<h2>Velocidade de avan\u00e7o, velocidade do fuso e comandos da ferramenta: como afetam a qualidade da pe\u00e7a<\/h2>\n<h3>Velocidade de avan\u00e7o (F) e acabamento superficial<\/h3>\n<p>A velocidade de avan\u00e7o determina diretamente a carga de limalhas \u2014 a espessura do material que cada aresta de corte remove por revolu\u00e7\u00e3o. Se for demasiado elevada, a ferramenta fica sobrecarregada, o que provoca vibra\u00e7\u00f5es, rasg\u00f5es e um acabamento superficial insatisfat\u00f3rio. Se for demasiado baixa, a ferramenta ro\u00e7a em vez de cortar, concentrando o calor na aresta de corte e favorecendo a forma\u00e7\u00e3o de ac\u00famulo de material na aresta, o que tamb\u00e9m prejudica o acabamento.<\/p>\n<p>A rela\u00e7\u00e3o entre a velocidade de avan\u00e7o e o acabamento superficial depende do material. No caso do alum\u00ednio 6061, uma fresa de ponta de 10 mm a funcionar a S10 000 RPM com F500 mm\/min produz uma carga de cavacos de aproximadamente 0,025 mm por dente (assumindo uma ferramenta de 2 canais) \u2014 o que normalmente resulta num Ra de 1,6\u20133,2 \u00b5m numa passagem de desbaste. Reduzir a velocidade de avan\u00e7o para F200 mm\/min diminui a carga de cavacos, mas aumenta o calor e o atrito, o que muitas vezes piora o acabamento em vez de o melhorar. As passagens de acabamento utilizam profundidades de corte reduzidas, n\u00e3o necessariamente velocidades de avan\u00e7o reduzidas, para atingir um Ra de 0,8 \u00b5m ou melhor.<\/p>\n<p>No caso do a\u00e7o inoxid\u00e1vel 316L, as velocidades de avan\u00e7o s\u00e3o significativamente mais baixas \u2014 normalmente F100\u2013180 mm\/min \u2014 porque o material sofre endurecimento por deforma\u00e7\u00e3o durante o corte. Exceder as cargas de limalha recomendadas provoca um desgaste r\u00e1pido da ferramenta e rasgos na superf\u00edcie. A aplica\u00e7\u00e3o consistente de l\u00edquido de arrefecimento (por inunda\u00e7\u00e3o ou atrav\u00e9s da ferramenta) \u00e9 essencial para controlar o calor e evitar o aumento do endurecimento por deforma\u00e7\u00e3o entre as passagens.<\/p>\n<h3>Velocidade do fuso (S) e desempenho de corte<\/h3>\n<p>A velocidade do fuso determina a velocidade de corte superficial no di\u00e2metro exterior da ferramenta. A velocidade correta depende do di\u00e2metro da ferramenta, do material e do revestimento da ferramenta. Uma fresa de metal duro de 10 mm com revestimento de TiAlN a cortar alum\u00ednio 6061 funciona normalmente a uma velocidade superficial de 200\u2013400 m\/min \u2014 o que corresponde a aproximadamente S6 400\u201312 700 RPM. A mesma ferramenta, ao trabalhar a\u00e7o inoxid\u00e1vel 316L, funciona a uma velocidade superficial de 40\u201380 m\/min \u2014 aproximadamente S1 270\u20132 550 RPM \u2014 para limitar a gera\u00e7\u00e3o de calor e o desgaste da ferramenta.<\/p>\n<p>Uma velocidade excessiva do fuso na usinagem de a\u00e7o inoxid\u00e1vel gera calor concentrado que amolece a aresta de corte, reduzindo drasticamente a vida \u00fatil da ferramenta. Uma velocidade insuficiente na usinagem de alum\u00ednio resulta num corte ineficiente e numa m\u00e1 evacua\u00e7\u00e3o das limalhas. Acertar na velocidade do fuso n\u00e3o significa utilizar valores conservadores \u2014 trata-se de ajustar a velocidade ao que a ferramenta e o material realmente exigem.<\/p>\n<h3>Comandos de ferramentas e ativa\u00e7\u00e3o do desvio<\/h3>\n<p>A sele\u00e7\u00e3o da ferramenta (T) especifica qual a ferramenta a carregar. A compensa\u00e7\u00e3o do comprimento da ferramenta (G43 com desvio H) aplica a refer\u00eancia correta do eixo Z para essa ferramenta espec\u00edfica. Se for ativado um desvio incorreto \u2014 ou se o G43 for totalmente omitido \u2014, a refer\u00eancia do eixo Z desvia-se na diferen\u00e7a entre o desvio programado e o comprimento real da ferramenta. Isto resulta numa penetra\u00e7\u00e3o demasiado profunda ou numa retra\u00e7\u00e3o insuficiente para libertar a pe\u00e7a.<\/p>\n<p>Antes de qualquer troca de ferramenta, a m\u00e1quina deve estar numa posi\u00e7\u00e3o segura. A maioria dos controladores exige o posicionamento expl\u00edcito numa posi\u00e7\u00e3o de troca de ferramenta antes da execu\u00e7\u00e3o do comando M06. Ignorar este passo acarreta o risco de colis\u00e3o entre a ferramenta e a pe\u00e7a ou o dispositivo de fixa\u00e7\u00e3o durante a troca.<\/p>\n<hr \/>\n<h2>Como ler o G-Code passo a passo: um exemplo completo de fresagem<\/h2>\n<p>Ler o c\u00f3digo G corretamente significa acompanhar o estado da m\u00e1quina ap\u00f3s cada linha \u2014 e n\u00e3o apenas ler as posi\u00e7\u00f5es. Aqui est\u00e1 um programa completo de fresagem 2D com coment\u00e1rios t\u00e9cnicos sobre o que cada sec\u00e7\u00e3o efetivamente faz na m\u00e1quina.<\/p>\n<pre><code>%\r\n<\/code><\/pre>\n<p><strong>G21 G90 G17<\/strong> \u2014 Define as unidades m\u00e9tricas, o posicionamento absoluto e o plano XY. Estes tr\u00eas estados modais controlam a interpreta\u00e7\u00e3o das coordenadas em todo o programa. A aus\u00eancia de qualquer um deles implica herdar o estado do programa anterior \u2014 uma causa comum de comportamentos inesperados quando se executam programas sequencialmente.<\/p>\n<p><strong>G00 X0 Y0<\/strong> \u2014 Desloca\u00e7\u00e3o r\u00e1pida at\u00e9 ao ponto zero no eixo XY. Sem corte. A ferramenta desloca-se \u00e0 velocidade m\u00e1xima de avan\u00e7o r\u00e1pido; n\u00e3o h\u00e1 prote\u00e7\u00e3o da velocidade de avan\u00e7o.<\/p>\n<p><strong>T1 M06<\/strong> \u2014 Seleciona a ferramenta 1 e executa uma troca de ferramenta. A execu\u00e7\u00e3o \u00e9 suspensa at\u00e9 que a troca esteja conclu\u00edda. A m\u00e1quina deve encontrar-se na posi\u00e7\u00e3o designada para a troca de ferramenta antes desta linha, caso contr\u00e1rio, existe o risco de colis\u00e3o.<\/p>\n<p><strong>S8000 M03<\/strong> \u2014 Arranca o fuso a 8 000 RPM no sentido hor\u00e1rio. Para uma fresa de ponta de 10 mm em alum\u00ednio 6061, isto corresponde a uma velocidade superficial de aproximadamente 251 m\/min \u2014 dentro da gama de corte eficiente para metal duro sem revestimento ou com revestimento de TiN.<\/p>\n<p><strong>G43 H01 Z50,0<\/strong> \u2014 Ativa a compensa\u00e7\u00e3o do comprimento da ferramenta utilizando o desvio H01 e desloca-se para Z50 no sistema de refer\u00eancia corrigido. Esta \u00e9 a linha que estabelece o ponto de refer\u00eancia Z correto para o corte. A aus\u00eancia do comando G43 significa que a posi\u00e7\u00e3o Z da ferramenta \u00e9 referenciada sem que seja aplicado o comprimento real da ferramenta.<\/p>\n<p><strong>G00 Z5,0<\/strong> \u2014 Aproxima\u00e7\u00e3o r\u00e1pida at\u00e9 5 mm acima da superf\u00edcie de trabalho. Ainda n\u00e3o h\u00e1 corte \u2014 a ferramenta est\u00e1 a posicionar-se acima da pe\u00e7a.<\/p>\n<p><strong>G01 Z-2,0 F200<\/strong> \u2014 Penetra\u00e7\u00e3o controlada at\u00e9 uma profundidade de 2 mm a F200 mm\/min. A velocidade de avan\u00e7o reduzida durante a penetra\u00e7\u00e3o limita a carga de corte axial. A F200, com uma fresa de ponta de 10 mm com 2 canais, a carga de cavacos por dente na penetra\u00e7\u00e3o \u00e9 de aproximadamente 0,0125 mm \u2014 um valor conservador, mas adequado para um movimento de entrada no eixo Z.<\/p>\n<p><strong>G01 X50,0 Y0,0 F400<\/strong> \u2014 Primeiro movimento de corte linear. A velocidade de avan\u00e7o aumenta para F400 mm\/min na passagem de corte lateral, produzindo uma carga de cavacos de aproximadamente 0,025 mm por dente a S8000 RPM \u2014 valor t\u00edpico para o desbaste de alum\u00ednio.<\/p>\n<p><strong>Movimentos G01 subsequentes<\/strong> \u2014 Trace os tr\u00eas lados restantes do perfil retangular. G01 e F400 permanecem ativos (modais) \u2014 n\u00e3o \u00e9 necess\u00e1rio repeti-los, a menos que o avan\u00e7o mude.<\/p>\n<p><strong>G00 Z50,0<\/strong> \u2014 Retra\u00e7\u00e3o r\u00e1pida at\u00e9 \u00e0 altura Z de seguran\u00e7a. O corte est\u00e1 conclu\u00eddo; a m\u00e1quina sai \u00e0 velocidade m\u00e1xima de avan\u00e7o r\u00e1pido.<\/p>\n<p><strong>M05<\/strong> \u2014 Paragem do fuso. Pare sempre o fuso antes do fim do programa.<\/p>\n<p><strong>M30<\/strong> \u2014 Fim do programa e rein\u00edcio. O controlador regressa ao in\u00edcio do programa, pronto para a pr\u00f3xima parte.<\/p>\n<h3>Erros comuns na leitura<\/h3>\n<p><strong>Ignorar o estado do modal:<\/strong> O G01 e o F400 permanecem ativos at\u00e9 serem alterados explicitamente. Um programador que, mais tarde, adicione uma nova opera\u00e7\u00e3o e se esque\u00e7a de que estas ainda est\u00e3o ativas, obter\u00e1 uma opera\u00e7\u00e3o de corte quando a inten\u00e7\u00e3o era uma opera\u00e7\u00e3o r\u00e1pida.<\/p>\n<p><strong>Partindo do princ\u00edpio de que a ordem \u00e9 flex\u00edvel:<\/strong> A ativa\u00e7\u00e3o do fuso (M03) deve preceder o movimento de corte. O desvio da ferramenta (G43) deve ser ativado antes do posicionamento no eixo Z. Estas n\u00e3o s\u00e3o sugest\u00f5es \u2014 s\u00e3o requisitos para uma execu\u00e7\u00e3o segura.<\/p>\n<p><strong>Leitura de coordenadas sem estado de rastreamento:<\/strong> Uma posi\u00e7\u00e3o como Z-2,0 s\u00f3 faz sentido no contexto do sistema de coordenadas ativo, do desvio da ferramenta e do modo de posicionamento. Leia o estado e, em seguida, leia as coordenadas.<\/p>\n<hr \/>\n<h2>Erros comuns no G-Code e como diagnostic\u00e1-los<\/h2>\n<p>A maioria dos problemas graves relacionados com o CNC n\u00e3o decorre de c\u00f3digo complexo. Decorre de pequenos erros nos modais, deslocamentos errados ou incompatibilidades de unidades que se propagam ao longo do programa.<\/p>\n<h3>Erros de modalidade<\/h3>\n<p>Um comando modal definido incorretamente \u2014 ou que nunca tenha sido cancelado ap\u00f3s a utiliza\u00e7\u00e3o \u2014 afeta todos os blocos seguintes at\u00e9 que algo o altere. O G91 (modo incremental) deixado ativo ap\u00f3s uma sub-rotina de sondagem faz com que todos os movimentos subsequentes, que se destinavam a ser absolutos, sejam executados como deslocamentos incrementais. A ferramenta acaba por ficar muito longe da posi\u00e7\u00e3o pretendida e o controlador n\u00e3o gera qualquer alarme, uma vez que o movimento era sintaticamente v\u00e1lido.<\/p>\n<p>Estes erros n\u00e3o s\u00e3o detetados atrav\u00e9s da an\u00e1lise de linhas individuais. Exigem o acompanhamento do estado da m\u00e1quina ao longo da sequ\u00eancia do programa \u2014 mentalmente ou atrav\u00e9s de simula\u00e7\u00e3o.<\/p>\n<h3>Erros de coordenadas e de desvio<\/h3>\n<p>Os erros de c\u00f3digo G que apresentam maior risco prendem-se com erros no sistema de coordenadas e nos deslocamentos:<\/p>\n<ul>\n<li>Desvio de trabalho incorreto (por exemplo, G54 selecionado quando o programa espera G55)<\/li>\n<li>Compensa\u00e7\u00e3o incorreta ou ausente do comprimento da ferramenta (incompatibilidade entre G43 e H)<\/li>\n<li>Confus\u00e3o entre G90 e G91 ao alternar entre os modos absoluto e incremental<\/li>\n<\/ul>\n<p>Cada uma destas situa\u00e7\u00f5es pode provocar uma falha ou gerar c\u00f3digo inv\u00e1lido sem que ocorra qualquer erro de sintaxe. O controlador faz exatamente o que o c\u00f3digo indica \u2014 s\u00f3 que n\u00e3o \u00e9 isso que se pretendia.<\/p>\n<h3>Abordagem de diagn\u00f3stico: valida\u00e7\u00e3o em camadas<\/h3>\n<p>A abordagem padr\u00e3o de engenharia para a valida\u00e7\u00e3o do c\u00f3digo G funciona atrav\u00e9s de camadas de confian\u00e7a crescente:<\/p>\n<ol>\n<li>Revis\u00e3o de c\u00f3digo \u2014 verificar unidades, sistemas de coordenadas, ativa\u00e7\u00f5es de deslocamento e reinicializa\u00e7\u00f5es modais<\/li>\n<li>Simula\u00e7\u00e3o CAM ou do controlador \u2014 verificar o movimento graficamente antes de iniciar a execu\u00e7\u00e3o<\/li>\n<li>Simula\u00e7\u00e3o \u2014 executar com o fuso desligado e o desvio do eixo Z aumentado em 50\u2013100 mm<\/li>\n<li>Bloco \u00fanico com substitui\u00e7\u00e3o do avan\u00e7o \u2014 executar o programa propriamente dito uma linha de cada vez a uma velocidade reduzida<\/li>\n<\/ol>\n<table>\n<thead>\n<tr>\n<th>Tipo de erro<\/th>\n<th>Risco<\/th>\n<th>Preven\u00e7\u00e3o<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>O comando modal n\u00e3o foi reiniciado<\/td>\n<td>Movimento de corte inesperado<\/td>\n<td>Reescrever explicitamente os c\u00f3digos G cr\u00edticos em cada opera\u00e7\u00e3o<\/td>\n<\/tr>\n<tr>\n<td>Sistema de coordenadas errado<\/td>\n<td>Maquina\u00e7\u00e3o no local errado<\/td>\n<td>Defina sempre o desvio de trabalho no in\u00edcio do programa<\/td>\n<\/tr>\n<tr>\n<td>Falta o desvio de comprimento da ferramenta<\/td>\n<td>Quebra da ferramenta ou corte excessivo<\/td>\n<td>Ativar o G43 com o valor H verificado antes do movimento em Z<\/td>\n<\/tr>\n<tr>\n<td>Incompatibilidade de unidades (G20\/G21)<\/td>\n<td>Posi\u00e7\u00f5es escalonadas ou falha<\/td>\n<td>Declare as unidades explicitamente \u2014 nunca confie nos valores por predefini\u00e7\u00e3o<\/td>\n<\/tr>\n<tr>\n<td>Movimento r\u00e1pido e perigoso<\/td>\n<td>Colis\u00e3o<\/td>\n<td>Utilizar planos de folga e verificar o comportamento em funcionamento a seco<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<hr \/>\n<h2>G-Code avan\u00e7ado: macros, subprogramas e ciclos pr\u00e9-definidos<\/h2>\n<h3>Vari\u00e1veis de macro e programa\u00e7\u00e3o param\u00e9trica<\/h3>\n<p>A programa\u00e7\u00e3o de macros introduz vari\u00e1veis no c\u00f3digo G, permitindo uma l\u00f3gica param\u00e9trica e condicional que os programas est\u00e1ticos n\u00e3o conseguem alcan\u00e7ar. Em vez de codificar diretamente profundidades, posi\u00e7\u00f5es ou velocidades de avan\u00e7o, os engenheiros definem os valores uma \u00fanica vez e fazem refer\u00eancia a eles ao longo de todo o programa.<\/p>\n<pre><code>#100 = 20.0   (Comprimento do bols\u00e3o)\r\n<\/code><\/pre>\n<p>Esta abordagem \u00e9 particularmente \u00fatil para fam\u00edlias de pe\u00e7as \u2014 em que o di\u00e2metro do furo, a profundidade do recanto ou o espa\u00e7amento entre furos variam consoante a configura\u00e7\u00e3o \u2014 e para ciclos de medi\u00e7\u00e3o na pr\u00f3pria m\u00e1quina que adaptam os par\u00e2metros de maquinagem com base nos resultados da sondagem. A desvantagem \u00e9 a complexidade: as macros exigem uma documenta\u00e7\u00e3o e valida\u00e7\u00e3o cuidadosas, e os erros na l\u00f3gica condicional podem provocar movimentos inesperados.<\/p>\n<h3>Subprogramas e elementos repetidos<\/h3>\n<p>Os subprogramas (chamados com M98 e devolvidos com M99) permitem que sequ\u00eancias de movimentos repetidas sejam definidas uma \u00fanica vez e executadas v\u00e1rias vezes. Um padr\u00e3o de furos que aparece seis vezes numa pe\u00e7a n\u00e3o necessita de seis c\u00f3pias da sequ\u00eancia de perfura\u00e7\u00e3o \u2014 um \u00fanico subprograma trata de todas as inst\u00e2ncias.<\/p>\n<pre><code>M98 P2000 L6    (Chamar o subprograma O2000 seis vezes)\r\n<\/code><\/pre>\n<p>Para al\u00e9m da concis\u00e3o do c\u00f3digo, os subprogramas melhoram a consist\u00eancia: os seis furos seguem exatamente a mesma sequ\u00eancia de movimentos. Qualquer atualiza\u00e7\u00e3o da estrat\u00e9gia de perfura\u00e7\u00e3o \u2014 velocidade de avan\u00e7o, profundidade, incremento de perfura\u00e7\u00e3o \u2014 requer a altera\u00e7\u00e3o de um \u00fanico subprograma, e n\u00e3o de seis blocos de c\u00f3digo separados.<\/p>\n<h3>Ciclos pr\u00e9-definidos: produtividade sem perda de controlo<\/h3>\n<p>Os ciclos pr\u00e9-definidos agrupam sequ\u00eancias comuns de maquinagem (perfura\u00e7\u00e3o, rosqueamento, mandrilagem, alargamento) em comandos \u00fanicos. Um ciclo de perfura\u00e7\u00e3o que, de outra forma, exigiria blocos separados para aproxima\u00e7\u00e3o, penetra\u00e7\u00e3o, pausa e retra\u00e7\u00e3o, passa a ser uma \u00fanica linha:<\/p>\n<pre><code>G81 X20,0 Y10,0 Z-15,0 R2,0 F200\r\n<\/code><\/pre>\n<p>Isto reduz o tempo de programa\u00e7\u00e3o, encurta o c\u00f3digo e garante um comportamento consistente em todos os orif\u00edcios do padr\u00e3o. Uma advert\u00eancia importante: os ciclos pr\u00e9-definidos devem ser cancelados com o comando G80 quando conclu\u00eddos, e os seus par\u00e2metros (modo de retra\u00e7\u00e3o, tempo de paragem, incremento de perfura\u00e7\u00e3o) devem corresponder \u00e0 implementa\u00e7\u00e3o do controlador. O comportamento dos ciclos pr\u00e9-definidos varia entre os controladores Fanuc, Haas e Siemens \u2014 verifique sempre o manual de programa\u00e7\u00e3o espec\u00edfico da m\u00e1quina.<\/p>\n<hr \/>\n<h2>Como o c\u00f3digo G varia entre os controladores CNC<\/h2>\n<h3>Fanuc, Haas e outras marcas<\/h3>\n<p>Os controladores baseados na Fanuc s\u00e3o o que mais se aproxima, na ind\u00fastria, de uma refer\u00eancia padr\u00e3o para o c\u00f3digo G. Muitos fabricantes de m\u00e1quinas-ferramenta baseiam os seus sistemas de controlo na arquitetura Fanuc, tornando o c\u00f3digo compat\u00edvel com a Fanuc razoavelmente port\u00e1til entre m\u00e1quinas. Os controladores Haas s\u00e3o, em grande parte, compat\u00edveis com a Fanuc, mas incluem extens\u00f5es propriet\u00e1rias, estados modais predefinidos diferentes e uma sintaxe de macros espec\u00edfica da Haas que pode alterar o comportamento de execu\u00e7\u00e3o em programas partilhados.<\/p>\n<p>Os controladores da Siemens e da Heidenhain utilizam a sintaxe do c\u00f3digo G, mas, na pr\u00e1tica, funcionam de forma bastante diferente. A Heidenhain, em particular, recorre \u00e0 introdu\u00e7\u00e3o conversacional para muitas opera\u00e7\u00f5es. O Mazatrol (sistema propriet\u00e1rio da Mazak) \u00e9 essencialmente conversacional, sendo o c\u00f3digo G uma op\u00e7\u00e3o secund\u00e1ria. Os programas escritos para um tipo de controlador requerem frequentemente a regenera\u00e7\u00e3o do p\u00f3s-processador \u2014 e n\u00e3o apenas a edi\u00e7\u00e3o \u2014 antes de serem executados numa plataforma diferente.<\/p>\n<h3>Por que \u00e9 que o G-Code n\u00e3o \u00e9 universal<\/h3>\n<p>Diferen\u00e7as espec\u00edficas que s\u00e3o relevantes na pr\u00e1tica:<\/p>\n<ul>\n<li>Os conjuntos de c\u00f3digos G e M suportados variam \u2014 alguns c\u00f3digos v\u00e1lidos num controlador geram alarmes noutro<\/li>\n<li>Os par\u00e2metros do ciclo predefinido (profundidade de penetra\u00e7\u00e3o, tipo de retra\u00e7\u00e3o, tempo de perman\u00eancia) variam consoante o fabricante<\/li>\n<li>A sintaxe das vari\u00e1veis de macro e os comandos de l\u00f3gica condicional s\u00e3o espec\u00edficos de cada controlador<\/li>\n<li>Os algoritmos de antecipa\u00e7\u00e3o e os perfis de acelera\u00e7\u00e3o afetam a suavidade do movimento, mesmo quando o c\u00f3digo G \u00e9 id\u00eantico<\/li>\n<\/ul>\n<p>\u00c9 por isso que os p\u00f3s-processadores CAM s\u00e3o espec\u00edficos para cada m\u00e1quina, em vez de serem gen\u00e9ricos. O p\u00f3s-processador converte os percursos de ferramenta CAM no dialecto de c\u00f3digo G adequado para o controlador de destino \u2014 e n\u00e3o num c\u00f3digo G universal que qualquer m\u00e1quina possa executar.<\/p>\n<h3>O que os designers e as equipas de compras precisam de saber<\/h3>\n<p>Do ponto de vista das aquisi\u00e7\u00f5es, o c\u00f3digo G deve ser tratado como dados de produ\u00e7\u00e3o espec\u00edficos da m\u00e1quina. A partilha de um ficheiro de c\u00f3digo G entre fornecedores pressup\u00f5e que as m\u00e1quinas e os controladores s\u00e3o id\u00eanticos \u2014 um pressuposto que, frequentemente, n\u00e3o se verifica. A melhor pr\u00e1tica consiste em partilhar dados CAD e CAM em vez do c\u00f3digo G final e em confirmar o tipo de m\u00e1quina e a vers\u00e3o do controlador antes da transfer\u00eancia dos programas. Quando for necess\u00e1rio partilhar o c\u00f3digo G, \u00e9 essencial realizar uma simula\u00e7\u00e3o no controlador de destino antes do corte.<\/p>\n<hr \/>\n<h2>Conclus\u00e3o<\/h2>\n<p>O c\u00f3digo G na maquina\u00e7\u00e3o CNC \u00e9 a etapa final entre a inten\u00e7\u00e3o do projeto e o corte f\u00edsico. Os sistemas CAM planeiam o percurso da ferramenta; o ficheiro de c\u00f3digo G \u00e9 o que a m\u00e1quina executa efetivamente. Compreender a estrutura do c\u00f3digo G, a l\u00f3gica modal e a sequ\u00eancia de execu\u00e7\u00e3o proporciona aos engenheiros uma vis\u00e3o direta do que est\u00e1 a acontecer na aresta de corte \u2014 e por que raz\u00e3o os problemas ocorrem quando ocorrem.<\/p>\n<p>Para quem trabalha em ambientes CNC \u2014 seja a escrever programas, a rever as configura\u00e7\u00f5es dos fornecedores ou a resolver problemas de maquinagem \u2014, o dom\u00ednio do c\u00f3digo G significa um diagn\u00f3stico mais r\u00e1pido, uma melhor comunica\u00e7\u00e3o com os operadores e menos surpresas na oficina. N\u00e3o \u00e9 necess\u00e1rio escrever c\u00f3digo G do zero num fluxo de trabalho baseado em CAM. \u00c9 necess\u00e1rio l\u00ea-lo, compreender o que a m\u00e1quina ir\u00e1 fazer e reconhecer quando algo no c\u00f3digo n\u00e3o corresponde ao resultado pretendido.<\/p>\n<hr \/>\n<h2>Perguntas frequentes<\/h2>\n<p><strong>Todas as m\u00e1quinas CNC utilizam o mesmo c\u00f3digo G?<\/strong><\/p>\n<p>N\u00e3o. O c\u00f3digo G n\u00e3o est\u00e1 totalmente padronizado em todo o setor. Os controladores Fanuc, Haas, Siemens e Heidenhain utilizam todos a sintaxe do c\u00f3digo G, mas com conjuntos de comandos, defini\u00e7\u00f5es de ciclos pr\u00e9-definidos, sintaxe de macros e estados modais predefinidos que variam entre si. Os programas que funcionam corretamente num controlador podem ativar alarmes ou produzir movimentos diferentes noutro. \u00c9 por isso que os p\u00f3s-processadores CAM s\u00e3o espec\u00edficos para cada controlador.<\/p>\n<p><strong>As m\u00e1quinas CNC podem funcionar sem c\u00f3digo G?<\/strong><\/p>\n<p>Ao n\u00edvel do controlo, n\u00e3o. Mesmo a programa\u00e7\u00e3o conversacional e os percursos de ferramenta gerados por CAM s\u00e3o, em \u00faltima an\u00e1lise, convertidos em c\u00f3digo G (ou instru\u00e7\u00f5es de baixo n\u00edvel equivalentes) para execu\u00e7\u00e3o. O c\u00f3digo G \u00e9 a linguagem de execu\u00e7\u00e3o nativa da m\u00e1quina \u2014 tudo o resto \u00e9 uma camada sobreposta a esta.<\/p>\n<p><strong>A programa\u00e7\u00e3o manual de c\u00f3digo G ainda \u00e9 necess\u00e1ria?<\/strong><\/p>\n<p>A programa\u00e7\u00e3o manual completa raramente \u00e9 necess\u00e1ria em ambientes de produ\u00e7\u00e3o. No entanto, saber ler e modificar o c\u00f3digo G continua a ser uma compet\u00eancia \u00fatil para a depura\u00e7\u00e3o, a otimiza\u00e7\u00e3o do tempo de ciclo, pequenas altera\u00e7\u00f5es em programas existentes e a comunica\u00e7\u00e3o com os operadores das m\u00e1quinas e os fornecedores. A maioria dos engenheiros de CNC n\u00e3o escreve programas do zero \u2014 mas trabalha regularmente com ficheiros de c\u00f3digo G.<\/p>\n<p><strong>Como posso testar com seguran\u00e7a um novo programa em G-code?<\/strong><\/p>\n<p>Siga uma abordagem de valida\u00e7\u00e3o em v\u00e1rias etapas: verifique o c\u00f3digo no que diz respeito \u00e0s unidades, aos sistemas de coordenadas e \u00e0s declara\u00e7\u00f5es de desvio; execute uma simula\u00e7\u00e3o no CAM ou no controlador; realize um teste sem carga com o fuso desligado e o eixo Z elevado 50\u2013100 mm acima da pe\u00e7a; em seguida, execute um bloco \u00fanico com uma sobreposi\u00e7\u00e3o de avan\u00e7o reduzida antes de avan\u00e7ar para um ciclo completo.<\/p>\n<p><strong>Qual \u00e9 a diferen\u00e7a entre o c\u00f3digo G e a programa\u00e7\u00e3o conversacional?<\/strong><\/p>\n<p>O c\u00f3digo G \u00e9 expl\u00edcito e baseado em texto \u2014 cada a\u00e7\u00e3o da m\u00e1quina \u00e9 codificada diretamente. A programa\u00e7\u00e3o conversacional utiliza menus e instru\u00e7\u00f5es para definir as opera\u00e7\u00f5es, que o controlador converte internamente em c\u00f3digo G. A programa\u00e7\u00e3o conversacional \u00e9 mais r\u00e1pida para pe\u00e7as simples na m\u00e1quina; o c\u00f3digo G oferece mais transpar\u00eancia, portabilidade e controlo para programas complexos com v\u00e1rias opera\u00e7\u00f5es.<\/p>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>CAM software has made G-code less visible in day-to-day CNC workflows \u2014 but it hasn&#8217;t made G-code less important. Every toolpath a CAM system generates eventually becomes a G-code file, and that file is what the CNC controller actually executes, line by line, with no awareness of the CAD model or the machining strategy behind it.<\/p>","protected":false},"author":1,"featured_media":12248,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-10351","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.5 (Yoast SEO v28.7) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>What Is G-Code? CNC Programming Syntax &amp; Examples<\/title>\n<meta name=\"description\" content=\"Learn what G-code is in CNC machining, including command syntax, program structure, and practical programming examples used to control CNC machines.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.cncmachiningshops.com\/pt\/what-is-g-code\/\" \/>\n<meta property=\"og:locale\" content=\"pt_PT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"What Is G-Code in CNC Machining? Syntax, Structure, and Practical Programming Examples\" \/>\n<meta property=\"og:description\" content=\"Learn what G-code is in CNC machining, including command syntax, program structure, and practical programming examples used to control CNC machines.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.cncmachiningshops.com\/pt\/what-is-g-code\/\" \/>\n<meta property=\"og:site_name\" content=\"CNC Machining Shops\" \/>\n<meta property=\"article:published_time\" content=\"2026-03-20T05:59:24+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-07-19T09:12:07+00:00\" \/>\n<meta name=\"author\" content=\"cncmachiningshops\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"cncmachiningshops\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tempo estimado de leitura\" \/>\n\t<meta name=\"twitter:data2\" content=\"18 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.cncmachiningshops.com\\\/what-is-g-code\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.cncmachiningshops.com\\\/what-is-g-code\\\/\"},\"author\":{\"name\":\"cncmachiningshops\",\"@id\":\"https:\\\/\\\/www.cncmachiningshops.com\\\/#\\\/schema\\\/person\\\/2593a2e2de68be71300e10f486236551\"},\"headline\":\"What Is G-Code in CNC Machining? Syntax, Structure, and Practical Programming Examples\",\"datePublished\":\"2026-03-20T05:59:24+00:00\",\"dateModified\":\"2026-07-19T09:12:07+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.cncmachiningshops.com\\\/what-is-g-code\\\/\"},\"wordCount\":4073,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.cncmachiningshops.com\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.cncmachiningshops.com\\\/what-is-g-code\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.cncmachiningshops.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/What-Is-G-Code-in-CNC-Machining-800x600-2.jpg\",\"articleSection\":[\"Uncategorized\"],\"inLanguage\":\"pt-PT\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.cncmachiningshops.com\\\/what-is-g-code\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.cncmachiningshops.com\\\/what-is-g-code\\\/\",\"url\":\"https:\\\/\\\/www.cncmachiningshops.com\\\/what-is-g-code\\\/\",\"name\":\"What Is G-Code? CNC Programming Syntax & Examples\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.cncmachiningshops.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.cncmachiningshops.com\\\/what-is-g-code\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.cncmachiningshops.com\\\/what-is-g-code\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.cncmachiningshops.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/What-Is-G-Code-in-CNC-Machining-800x600-2.jpg\",\"datePublished\":\"2026-03-20T05:59:24+00:00\",\"dateModified\":\"2026-07-19T09:12:07+00:00\",\"description\":\"Learn what G-code is in CNC machining, including command syntax, program structure, and practical programming examples used to control CNC machines.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.cncmachiningshops.com\\\/what-is-g-code\\\/#breadcrumb\"},\"inLanguage\":\"pt-PT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.cncmachiningshops.com\\\/what-is-g-code\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-PT\",\"@id\":\"https:\\\/\\\/www.cncmachiningshops.com\\\/what-is-g-code\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.cncmachiningshops.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/What-Is-G-Code-in-CNC-Machining-800x600-2.jpg\",\"contentUrl\":\"https:\\\/\\\/www.cncmachiningshops.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/What-Is-G-Code-in-CNC-Machining-800x600-2.jpg\",\"width\":800,\"height\":600,\"caption\":\"What Is G-Code in CNC Machining 800x600\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.cncmachiningshops.com\\\/what-is-g-code\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.cncmachiningshops.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"What Is G-Code in CNC Machining? Syntax, Structure, and Practical Programming Examples\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.cncmachiningshops.com\\\/#website\",\"url\":\"https:\\\/\\\/www.cncmachiningshops.com\\\/\",\"name\":\"CNC Machining Shops\",\"description\":\"10+ Years CNC Machining Service Supplier\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.cncmachiningshops.com\\\/#organization\"},\"alternateName\":\"CMS\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.cncmachiningshops.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pt-PT\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.cncmachiningshops.com\\\/#organization\",\"name\":\"CNC Machining Shops\",\"alternateName\":\"CMS\",\"url\":\"https:\\\/\\\/www.cncmachiningshops.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-PT\",\"@id\":\"https:\\\/\\\/www.cncmachiningshops.com\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.cncmachiningshops.com\\\/wp-content\\\/uploads\\\/2025\\\/11\\\/CMS_Logo_1000x1000.png\",\"contentUrl\":\"https:\\\/\\\/www.cncmachiningshops.com\\\/wp-content\\\/uploads\\\/2025\\\/11\\\/CMS_Logo_1000x1000.png\",\"width\":800,\"height\":800,\"caption\":\"CNC Machining Shops\"},\"image\":{\"@id\":\"https:\\\/\\\/www.cncmachiningshops.com\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"description\":\"Shenzhen CMS Technology Co., Ltd. is located in Shenzhen, Guangdong, China. It was established in 2012 with a factory area of \u200b\u200b3,000 square meters. It is a company specializing in CNC machining and precision parts manufacturing. We have passed ISO9001, IATF16949, ISO13485 certification and are your trusted partner.\",\"email\":\"info@cncmachiningshops.com\",\"telephone\":\"+8617196430663\",\"legalName\":\"Shenzhen CMS Technology Co., Ltd.\",\"foundingDate\":\"2012-07-22\",\"numberOfEmployees\":{\"@type\":\"QuantitativeValue\",\"minValue\":\"11\",\"maxValue\":\"50\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.cncmachiningshops.com\\\/#\\\/schema\\\/person\\\/2593a2e2de68be71300e10f486236551\",\"name\":\"cncmachiningshops\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-PT\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/36a63d96ed08f8805561107422de4e83bbf8d1669dbc9655acab534bc3e1ed17?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/36a63d96ed08f8805561107422de4e83bbf8d1669dbc9655acab534bc3e1ed17?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/36a63d96ed08f8805561107422de4e83bbf8d1669dbc9655acab534bc3e1ed17?s=96&d=mm&r=g\",\"caption\":\"cncmachiningshops\"},\"sameAs\":[\"https:\\\/\\\/cncmachiningshops.com\"]}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"O que \u00e9 G-Code? Sintaxe e Exemplos de Programa\u00e7\u00e3o CNC","description":"Aprenda o que \u00e9 G-code na usinagem CNC, incluindo sintaxe de comandos, estrutura de programa e exemplos pr\u00e1ticos de programa\u00e7\u00e3o usados para controlar m\u00e1quinas CNC.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.cncmachiningshops.com\/pt\/what-is-g-code\/","og_locale":"pt_PT","og_type":"article","og_title":"What Is G-Code in CNC Machining? Syntax, Structure, and Practical Programming Examples","og_description":"Learn what G-code is in CNC machining, including command syntax, program structure, and practical programming examples used to control CNC machines.","og_url":"https:\/\/www.cncmachiningshops.com\/pt\/what-is-g-code\/","og_site_name":"CNC Machining Shops","article_published_time":"2026-03-20T05:59:24+00:00","article_modified_time":"2026-07-19T09:12:07+00:00","author":"cncmachiningshops","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"cncmachiningshops","Tempo estimado de leitura":"18 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.cncmachiningshops.com\/what-is-g-code\/#article","isPartOf":{"@id":"https:\/\/www.cncmachiningshops.com\/what-is-g-code\/"},"author":{"name":"cncmachiningshops","@id":"https:\/\/www.cncmachiningshops.com\/#\/schema\/person\/2593a2e2de68be71300e10f486236551"},"headline":"What Is G-Code in CNC Machining? Syntax, Structure, and Practical Programming Examples","datePublished":"2026-03-20T05:59:24+00:00","dateModified":"2026-07-19T09:12:07+00:00","mainEntityOfPage":{"@id":"https:\/\/www.cncmachiningshops.com\/what-is-g-code\/"},"wordCount":4073,"commentCount":0,"publisher":{"@id":"https:\/\/www.cncmachiningshops.com\/#organization"},"image":{"@id":"https:\/\/www.cncmachiningshops.com\/what-is-g-code\/#primaryimage"},"thumbnailUrl":"https:\/\/www.cncmachiningshops.com\/wp-content\/uploads\/2026\/03\/What-Is-G-Code-in-CNC-Machining-800x600-2.jpg","articleSection":["Uncategorized"],"inLanguage":"pt-PT","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.cncmachiningshops.com\/what-is-g-code\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.cncmachiningshops.com\/what-is-g-code\/","url":"https:\/\/www.cncmachiningshops.com\/what-is-g-code\/","name":"O que \u00e9 G-Code? Sintaxe e Exemplos de Programa\u00e7\u00e3o CNC","isPartOf":{"@id":"https:\/\/www.cncmachiningshops.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.cncmachiningshops.com\/what-is-g-code\/#primaryimage"},"image":{"@id":"https:\/\/www.cncmachiningshops.com\/what-is-g-code\/#primaryimage"},"thumbnailUrl":"https:\/\/www.cncmachiningshops.com\/wp-content\/uploads\/2026\/03\/What-Is-G-Code-in-CNC-Machining-800x600-2.jpg","datePublished":"2026-03-20T05:59:24+00:00","dateModified":"2026-07-19T09:12:07+00:00","description":"Aprenda o que \u00e9 G-code na usinagem CNC, incluindo sintaxe de comandos, estrutura de programa e exemplos pr\u00e1ticos de programa\u00e7\u00e3o usados para controlar m\u00e1quinas CNC.","breadcrumb":{"@id":"https:\/\/www.cncmachiningshops.com\/what-is-g-code\/#breadcrumb"},"inLanguage":"pt-PT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.cncmachiningshops.com\/what-is-g-code\/"]}]},{"@type":"ImageObject","inLanguage":"pt-PT","@id":"https:\/\/www.cncmachiningshops.com\/what-is-g-code\/#primaryimage","url":"https:\/\/www.cncmachiningshops.com\/wp-content\/uploads\/2026\/03\/What-Is-G-Code-in-CNC-Machining-800x600-2.jpg","contentUrl":"https:\/\/www.cncmachiningshops.com\/wp-content\/uploads\/2026\/03\/What-Is-G-Code-in-CNC-Machining-800x600-2.jpg","width":800,"height":600,"caption":"What Is G-Code in CNC Machining 800x600"},{"@type":"BreadcrumbList","@id":"https:\/\/www.cncmachiningshops.com\/what-is-g-code\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.cncmachiningshops.com\/"},{"@type":"ListItem","position":2,"name":"What Is G-Code in CNC Machining? Syntax, Structure, and Practical Programming Examples"}]},{"@type":"WebSite","@id":"https:\/\/www.cncmachiningshops.com\/#website","url":"https:\/\/www.cncmachiningshops.com\/","name":"Oficinas de usinagem CNC","description":"Fornecedor de Servi\u00e7os de Usinagem CNC com mais de 10 Anos","publisher":{"@id":"https:\/\/www.cncmachiningshops.com\/#organization"},"alternateName":"CMS","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.cncmachiningshops.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pt-PT"},{"@type":"Organization","@id":"https:\/\/www.cncmachiningshops.com\/#organization","name":"Oficinas de usinagem CNC","alternateName":"CMS","url":"https:\/\/www.cncmachiningshops.com\/","logo":{"@type":"ImageObject","inLanguage":"pt-PT","@id":"https:\/\/www.cncmachiningshops.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.cncmachiningshops.com\/wp-content\/uploads\/2025\/11\/CMS_Logo_1000x1000.png","contentUrl":"https:\/\/www.cncmachiningshops.com\/wp-content\/uploads\/2025\/11\/CMS_Logo_1000x1000.png","width":800,"height":800,"caption":"CNC Machining Shops"},"image":{"@id":"https:\/\/www.cncmachiningshops.com\/#\/schema\/logo\/image\/"},"description":"Shenzhen CMS Technology Co., Ltd. est\u00e1 localizada em Shenzhen, Guangdong, China. Foi fundada em 2012 com uma \u00e1rea fabril de 3.000 metros quadrados. \u00c9 uma empresa especializada em usinagem CNC e fabrica\u00e7\u00e3o de pe\u00e7as de precis\u00e3o. Obtivemos as certifica\u00e7\u00f5es ISO9001, IATF16949, ISO13485 e somos seu parceiro de confian\u00e7a.","email":"info@cncmachiningshops.com","telephone":"+8617196430663","legalName":"Shenzhen CMS Technology Co., Ltd.","foundingDate":"2012-07-22","numberOfEmployees":{"@type":"QuantitativeValue","minValue":"11","maxValue":"50"}},{"@type":"Person","@id":"https:\/\/www.cncmachiningshops.com\/#\/schema\/person\/2593a2e2de68be71300e10f486236551","name":"oficinas de usinagem cnc","image":{"@type":"ImageObject","inLanguage":"pt-PT","@id":"https:\/\/secure.gravatar.com\/avatar\/36a63d96ed08f8805561107422de4e83bbf8d1669dbc9655acab534bc3e1ed17?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/36a63d96ed08f8805561107422de4e83bbf8d1669dbc9655acab534bc3e1ed17?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/36a63d96ed08f8805561107422de4e83bbf8d1669dbc9655acab534bc3e1ed17?s=96&d=mm&r=g","caption":"cncmachiningshops"},"sameAs":["https:\/\/cncmachiningshops.com"]}]}},"_links":{"self":[{"href":"https:\/\/www.cncmachiningshops.com\/pt\/wp-json\/wp\/v2\/posts\/10351","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.cncmachiningshops.com\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.cncmachiningshops.com\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.cncmachiningshops.com\/pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.cncmachiningshops.com\/pt\/wp-json\/wp\/v2\/comments?post=10351"}],"version-history":[{"count":0,"href":"https:\/\/www.cncmachiningshops.com\/pt\/wp-json\/wp\/v2\/posts\/10351\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.cncmachiningshops.com\/pt\/wp-json\/wp\/v2\/media\/12248"}],"wp:attachment":[{"href":"https:\/\/www.cncmachiningshops.com\/pt\/wp-json\/wp\/v2\/media?parent=10351"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.cncmachiningshops.com\/pt\/wp-json\/wp\/v2\/categories?post=10351"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.cncmachiningshops.com\/pt\/wp-json\/wp\/v2\/tags?post=10351"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}