As funções programáveis das máquinas-ferramenta CNC são divididas em duas categorias:
Uma categoria é usada para controlar o caminho da ferramenta, ou seja, o movimento de cada eixo de avanço, como interpolação linear/circular, controle de avanço, deslocamento e transformação da origem do sistema de coordenadas, configuração da unidade de dimensão, deslocamento e compensação da ferramenta, etc. Esta categoria de funções é chamada de funções preparatórias, consistindo na letra G seguida de dois dígitos, também conhecidas como códigos G-.
A outra categoria de funções é chamada de funções auxiliares, usadas para completar o controle de execução do programa, controle do fuso, controle da ferramenta, controle do equipamento auxiliar, etc. Entre essas funções auxiliares, Tx x é usado para seleção de ferramenta e Sx xxx é usado para controlar a velocidade do fuso. Outras funções são implementadas usando códigos M-que consistem na letra M seguida por dois dígitos.
1. Funções de código G- comumente usadas
Posicionamento G00 (Avanço Rápido)
G01 Interpolação Linear (Taxa de Avanço)
G02 Interpolação Circular no Sentido Horário
G03 Interpolação circular no sentido anti-horário
G04 Pausa, Parada Precisa
G09 Parada Precisa
G17 Selecionar plano X/Y
G18 Selecionar Plano Z/X
G19 Selecionar plano Y/Z
G27 Retorno e verificação do ponto de referência
G28 Retorno ao Ponto de Referência
G29 Retorno do Ponto de Referência
G30 Retorno ao Segundo Ponto de Referência
G40 Cancelar compensação do raio da ferramenta
G41 Compensação do raio esquerdo da ferramenta
G42 Compensação do Raio da Ferramenta Direita
G43 Compensação do comprimento da ferramenta +
Compensação do comprimento da ferramenta G44 -
G49 Cancelar compensação do comprimento da ferramenta
G52 Definir sistema de coordenadas locais
G53 Selecionar Sistema de Coordenadas da Máquina
G54 Selecionar Sistema de Coordenadas da Peça 1
G55 Selecionar sistema de coordenadas da peça 2
G56 Selecionar sistema de coordenadas da peça 3
G57 Selecionar sistema de coordenadas da peça 4
G58 Selecionar sistema de coordenadas da peça 5
G59 Selecionar sistema de coordenadas da peça 6
G60 Posicionamento-de direção única
G61 Modo de parada precisa
Modo de corte G64
Chamada do programa Macro G65
Chamada de programa de macro modal G66
G67 Cancelar chamada de programa de macro modal
Ciclo fixo de furação profunda G73
G74 Ciclo fixo de rosqueamento reverso
G76 Ciclo fixo de mandrilamento fino
G80 Cancelar ciclo fixo
G81 Ciclo fixo de perfuração
G82 Ciclo fixo de perfuração
Ciclo fixo de perfuração profunda G83
G84 Ciclo fixo de rosqueamento
Ciclo fixo de mandrilamento G85
G86 Ciclo fixo chato
G87 Ciclo fixo de mandrilamento reverso
Ciclo Fixo de Mandrilamento G88
Ciclo Fixo de Mandrilamento G89
Modo de Comando de Valor Absoluto G90
Modo de Comando de Valor Incremental G91
Configuração do ponto zero da peça G92
G98 Ciclo Fixo Retorno ao Ponto Inicial
G99 Ciclo Fixo Retorno ao Ponto R
2. Funções de código M comumente usadas
Pausa do programa M00
M01 Parada Condicional do Programa
Fim do programa M02
Rotação para frente do fuso M03
Rotação reversa do fuso M04
Parada do fuso M05
Troca de ferramentas M06
M08 Resfriamento ligado
M09 Resfriando
Cancelamento da orientação do fuso M18
Orientação do fuso M19
Rosqueamento Rígido M29
Fim do programa M30 e retorno ao cabeçalho do programa
Chamada de sub-rotina M98
M99 Subrotina Final Retorno/Repetição de Execução
3. Aritmética Comum
Adição: #i=#j + #k
Subtração: #i=#j - #k
Multiplicação: #i=#j * #k
Divisão: #i=#j / #k
Seno: #i=SIN[#j]
Arco seno: #i=ASIN[#j]
Cosseno: #i=COS[#j]
Cosseno inverso: #i=ACOS[#j]
Tangente: #i=TAN[#j]
Arco tangente: #i=ATAN[#j]
Raiz quadrada: #i=QUADRADA[#j]
Valor absoluto: #i=ABS[#j]
Arredondamento: #i=REDONDO[#j]
Arredondamento inteiro: #i=FIX[#j]
Arredondamento inteiro para baixo: #i=FUP[#j]
Logaritmo natural: #i=LN[#j]
Função exponencial: #i=EXP[#j]
OU: #i=#j OU #k
XOR: #i=#j X OU #k
E: #i=# E #k
Converter de BCD para BIN: #i=BIN[#j]
Converter de BIN para BCD: #i=BCD[#j]
4. Operadores Lógicos
EQ: Igual a
NE: Diferente de
GT: Maior que
GE: Maior ou igual a
LT: Menos que
LE: Menor ou igual a
5. Transferência de programas e loops
Transferência Incondicional: GOTO
Transferência Condicional: SE [expressão condicional]
IF [expressão condicional] GOTO n, se a condição for atendida, salte para o segmento n do programa
IF [expressão condicional] THEN, por exemplo: IF [#I=#J] THEN #K=0
6. Declarações de Loop
WHILE [expressão condicional] Dom (m=1,2,,3)
…
Se a condição for atendida, execute o programa de Dom até ENDm (até que a condição não seja mais atendida); caso contrário, execute o programa após





