Você está na página 1de 162

APRESENTAÇÃO

Máquina a Comando Numérico é aquela que possui um equipamento eletro-eletrônico aqui


tratado como comando o qual possibilita à mesma a execução de uma sequência automática de
atividades.

O comando MACH 9, é constituído basicamente por:

- Painel frontal: é o componente através do qual o operador interage com a máquina. Contém um
tubo de raios catódicos de 9 polegadas, um teclado alfa-numérico e controles de operação da máquina.

- Controle: é o principal componente operacional do sistema. Contém um módulo CPU que


processa as informações e dirige os movimentos dos eixos, e um módulo CRT que controla o painel
frontal e monitora a máquina.

- Interface: é o circuito que interliga o Controle com a máquina-ferramenta.

A sequência de atividades a ser executada deverá ser devidamente planejada de acordo com o
processo de fabricação da peça que será usinada, sendo transmitida ao Comando através do Programa.

Dessa forma, um Programa de Comando Numérico é simplesmente uma sequência de informações


escritas em uma linguagem própria.

O Comando MACH 9, devido ao nível de seus componentes aliado a um poderoso “software”


possue recursos que permitem uma programação mais rápida e simples tanto para as operações
elementares como para as de maior complexidade.

Este manual contém as características elementares de codificação, estruturação e técnica de


programação da Linguagem do Comando Numérico MACH 9. Juntamente com o “Manual de
Programação Avançada”, forma um guia completo de treinamento e consulta relativos à mesma.
acompanha também uma apostila de “Exemplos de Programação” que traz exemplos completos
abrangendo todas as funções preparatórias (funções G), os quais permitem um contato direto com as
técnicas usuais de programação.

R73224 1
CAPÍTULO 1 - INTRODUÇÃO A PROGRAMAÇÃO

1.0 - DESCRIÇÃO DO CAPÍTULO

Neste capítulo é apresentado uma descrição geral da linguagem de programação usada


pelo comando, bem como são fornecidas a estrutura e as características da mesma.

1.1 - BLOCO DE DADOS

A construção básica de um programa é o bloco de dados que é constituido de:

- CARACTERES - Um caracter é um número, uma letra ou um símbolo que significa


alguma coisa para o comando.

Por exemplo: G, X, /, # são caracteres significativos.

- ENDEREÇOS - Um endereço é uma letra que define a instrução para o controle.


Exemplos de endereços são: G, X, Z, F.

- PALAVRAS - Uma palavra consiste de um endereço seguido por um valor numérico.


Exemplos de palavras são: G01, X25, F100. Cada palavra requer um formato específico
para sua parte numérica. Estes formatos são apresentados mais adiante, neste capítulo.

- UM BLOCO DE DADOS - É constituido de uma série de palavras. A palavra identifica


as operações que o controle deve executar. Um programa é constituido de uma série de
blocos. Por exemplo:

G90 # Define coordenada absoluta.

G1 X54. Y30. F120 # Move os eixos até a posição determinada (X54. Y30) com
120mm/min de Va. A este tipo de movimento de interpolação
(G1).

G Z O M02 Move o eixo Z até coordenada 0 em avanço rápido (G00)


cancelando o corretor (O0) e finalizando o programa com
M02.

O exemplo acima é uma série de 3 blocos válidos. As palavras no bloco de dados tem
significado específico para o controle. Dizendo ao controle as palavras corretas na ordem
correta teremos uma execução perfeita.

2 R73224
1.1.1.SISTEMA DE COORDENADAS

O percurso da ferramenta dentro do campo de trabalho da máquina que gerará a geometria


e dimensões desejadas da peça, será transmitido ao controle com base no sistema de
coordenadas.

EIXOS:

O sistema de coordenadas utilizado pelo Mach 5 MP assume a existência de três eixos


cartesianos : X, Y e Z cada um em uma das direções de movimentos possíveis da máquina.

Normalmente o eixo Z é paralelo a linha de centro do eixo árvore e tem seu sentido positivo
" entrando " na ferramenta.

Caso a máquina possua mais do que três possibilidades de movimento existem os eixos
secundários :

U - linear na direção de X ou rotacional em torno de X

V - linear na direção de Y ou rotacional em torno de Y

W - linear na direção de Z ou rotacional em torno de Z

Zero:

A localização da origem do sistema de coordenadas a ser utilizado pode ser definida de


diferentes maneiras . Chamamos de Zero programa ao ponto pertencente ao campo de
trabalho da máquina no qual o controle assumirá a posição dessa origem .

Através da página " REFERENCIA " o operador define na posição atual dos eixos, o
chamado Zero programa, que é um ponto do campo de trabalho que o controle tomará
como referência inicial para definição das coordenadas . O zero programa permanece fixo
na posição definida mesmo que a máquina seja desligada, podendo ser alterado somente
por outra operação de referência.

A determinacâo das coordenadas dos pontos a serem programados poderá ser feita de duas
maneiras :

Sistema de coordenadas Absolutas:

As coordenadas de cada ponto a ser atingido pela ferramenta sâo dadas tomando-se como
referência sempre o zero programa . O sinal da coordenada depende do lado do eixo "
positivo ou negativo" em que se encontra o ponto com relação a origem .

R73224 3
Sistema de coordenadas Incrementais:

As coordenadas de cada ponto a ser atingido pela ferramenta são dadas tomando-se como
referência o ponto anterior de localização da mesma. Esse ponto passa a ser uma origem
instantânea com os eixos conservando a mesma direção.

supõe-se que a ferramenta esteja inicialmente no ponto a

meta coord. absolutas coord. incrementais


de para X Y X Y
A B 10 30 -10 20
B C -20 0 -30 -30
C D -20 -20 0 -20
D A 20 10 40 30

1.1.2 - VALORES NUMÉRICOS

Esta seção descreve considerações importantes para a programação dos valores numéricos
que fazem parte das funções.

Ponto Decimal (Formato)

Neste manual, representa-se o formato das funções fornecendo o número de dígitos


permitidos à esquerda do ponto decimal, o ponto, e o número de dígitos permitidos à
direita do ponto. Por exemplo, o formato da função X sendo X3.4.

4 R73224
Significa que a função X permite 3 dígitos à esquerda do ponto decimal e 4 dígitos à direita.

Importante: O formato das funções variam de controle para controle. O instalador do seu
sistema define valores no PAM (Parâmetros Ajustáveis da Máquina) que
afetam o formato das funções, a resolução da programação e a resolução do
posicionamento para certas palavras. informe-se com o instalador sobre o
formato das funções do seu controle.

Métrico/Polegada (Formato)

O controle pode operar tanto em unidades do sistema inglês quanto do sistema métrico.
Porém, o formato de algumas funções pode mudar quando o sistema de unidade é trocado.

Polegada Métrico
X125.0148 (pol) X3175.376 (mm) 7 digítos numéricos para
3.4 4.3 ambas as unidades.

FORMATO:

O formato de algumas funções pode alterar-se quando programado juntamente com


funções específicas.

Por exemplo, considerando a função I:

em interpolação circular (G02)

Função: I513.901mm Formato I3.4

Em programação de conjunto de furos (G25)

Função: I134 pontos Formato I3

Importante: O controle permite a entrada de qualquer número de dígitos para todas as


funções, porém, exibirá mensagem de erro para algumas e para outras, terá
uma interpretação específica e executará de acordo. Mas, para evitar erros
durante a execução do programa, não se deve usar mais do que o número de
dígitos diferentes de zero permitidos pelo formato.

Exemplo considerando sistema métrico e formato G2, X3.3

Ex.: X121.0548

O controle exibirá mensagem de erro.


X COD. FORA DE FAIXA

G0001

O controle interpretará como G01 pois dispensa zeros à esquerda.

R73224 5
Programação sem ponto decimal

As funções cujo formato possui o ponto decimal podem ser programadas sem o mesmo,
cabendo ao Controle a interpretação do seu valor. O controle determina a posição
automática do ponto decimal de acordo com as regras a seguir:

. Omite zero à esquerda.

Os zeros à esquerda não são necessários para nenhum valor numérico. O controle
considera G01 e G1 como o mesmo valor. Da mesma forma, G00 e G são iguais.

. Zero à direita é necessário.

Os zeros à direita são exigidos em quantidade necessária e suficiente para completar o


número de dígitos à direita do ponto decimal de acordo com o formato da função.

Por exemplo: possuindo a função X o formato 3.4, o valor X 15.209 deverá ser programado
com X 152090, de forma que o dígito mais à direita (no caso, o 0) corresponde à quarta
casa depois do ponto, fazendo com que o ponto seja assumido entre o 5 e o 2. Se
equivocadamente for programado X15209, o Controle entenderá que o 9 está na quarta
casa e colocará o ponto entre o 1 e o 5, gerando, assim, o valor X1.5209.

1.1.3 - CARACTERES ESPECIAIS

Fim de Bloco ( # )

Todo bloco deve possuir um caracter que indique o seu fim de bloco como “#” é
universalmente conhecido como “EOB” (END 0F BROCK).

Para gerar o caracter de fim de bloco tecla-se (EOB).

COMENTÁRIO (;)

O caracter ponto e vírgula permite a inserção de comentários no programa.

O código de comentário pode aparecer em qualquer posição dentro do bloco. Os caracteres


que vierem a seguir até o fim do bloco são considerados comentário e ignorados pelo
Controle.

Se o primeiro bloco de um programa começa por um código de comentário, o comentário


subsequente é considerado como sendo o nome do programa. O nome do programa aparece
em muitas das páginas do controle quando um programa está ativo.
O tamanho desse nome é limitado a 12 caracteres. Por exemplo:
BLOCO DESCRIÇÃO
(; CÍRCULO-CW #) - Bloco de comentário que aparece como o nome do programa.
G91 # - Define modo incremental.
G2 XYIJ-15.; CÍRCULO # - Executa um círculo de raio 15. O comentário CÍRCULO é
ignorado pelo Controle, mas é parte desse bloco.

6 R73224
DELEÇÃO DE BLOCO (/)

O caracter de deleção de bloco (/) é usado para permitir ao controle ignorar todos os
caracteres que aparecem depois dele num bloco de dados. Esse bloco será ignorado ou não,
de acordo com a determinação do operador da máquina. Para ignorar o bloco, o operador
seleciona (IGNORA BLOCO) na página REFERÊNCIA. Se isso não ocorrer, o bloco será
executado normalmente. Por exemplo:

BLOCO - DESCRIÇÃO
G91 - Define modo incremental.
G1 X30. Y30. F300. # - Move 30.mm em X positivo e 30.mm em Y positivo com Va de
300 mm/min.
/G X-30. Y30. # - Move em rápido 30.mm em X negativo e 30.mm em Y positivo.
Se (IGNORA BLOCO) estiver ativo, o controle ignora este
bloco.
M2 # - Fim de programa

1.1.4 - CHECAGEM DE ERROS

É recomendável que todos os programas sejam testados através de um dos modos da


página TESTAR PROGRAMA antes de serem executados em OPER AUTOMÁTICA ou
durante a edição do mesmo.

Porém, se o controle detectar um erro durante a execução de um programa, ele será


suspenso mantendo bloco ativo. Diversas páginas do controle principalmente as páginas
STATUS e GRÁFICO, mostrarão o bloco ativo. Deve-se então examinar esse bloco e
corrigí-lo usando EDIÇÃO PROGRAMA.

CARACTERES, ENDEREÇOS E FUNÇÕES ILEGAIS

Caracteres, Endereços e Funções que não são reconhecidas pelo controle causam a parada
da execução do programa. O controle mostra a mensagem”....COD NÃO CONHECIDO”
na tela. O código mostrado no espaço “....” é aquele que está ilegal.

BLOCOS ILEGAIS

Blocos de dados não podem conter mais que uma função utilizando o mesmo endereço. Se
programados dois endereços G no mesmo bloco - mesmo que sejam funções diferentes
(G90 e G01, por exemplo) a checagem ou execução será suspensa nesse ponto e o controle
exibirá a mensagem “mais que 1 G COD”.

R73224 7
1.2 - FORMATOS E UNIDADES DAS FUNÇÕES

A tabela seguinte mostra, em ordem alfabética, os endereços de funções que são reconhecidas
pelo controle, seus formatos, unidades, e seu significado.

Importante: Seções e capítulos posteriores deste manual discutirão as funções básicas com
maiores detalhes nos seus significados particulares quando associadas com
certas funções G. Aquelas que não forem discutidas neste manual (assinaladas
com um asterisco) pertencem ao Manual de Programação Avançada.

Tabela 1.A

Formatos, unidades e descrição das funções

FORMATO UNIDADE
FUNÇÃO DESCRIÇÃO
Métrico Inglês Métrico Inglês
Ângulo do próximo movimento com vértice
na posição atual, medido a partir da origem
A 3.3 4.3 graus graus
do sistema de coordenada em absoluto (G90),
ou da posição atual em incremental.

Abertura angular entre pontos na auto-rotina


B 3.3 3.3 graus graus
de círculo de furos (G24).

Ângulo do próximo movimento com vértice


num ponto definido como centro, medido a 3.3 3.3 graus graus
C
partir da origem (G90) ou da posição atual
(G91)

Tempo de permanência em ciclos fixos. 3.2 3.2 s s

Divide um movimento "N" segmentos. 3


Máximo = 255 segmentos
D
Número de passes de desbaste em X e Y para
auto-rotinas de alojamento (G26) e Ressalto
(G27).

Executa um perfil no 1o ponto do caminho no


auto ciclo de cavidade (G75).

Identifica o último bloco da sequência quando


E 4 4 - -
programado desvio.

8 R73224
FORMATO UNIDADE
FUNÇÃO DESCRIÇÃO
Métrico Inglês Métrico Inglês
Tempo de permanência em blocos G04. 3.2 3.2 s s

Definição da velocidade de avanço em blocos 4 3.1 mm/mim mm/min


de movimento.

Definição de velocidade de avanço do plano


F R até a profundidade final nos ciclos fixos
(G81 a G86).

Definição de avanço em auto-rotinas


Incrementa-Repete (G25). Alojamento (G26)
e Bolacha (G27).
Funções preparatórias que definem modos 2
G de operação para o controle.
Identifica o primeiro bloco da sequência a ser 4 4 - -
repetida quando programado desvio.
H
Velocidade de avanço final para auto-rotinas 5 3.1 mm/min pol/min
de alojamento (G26) e Bolacha (G27).
Distância em X do centro do círculo medida 3.3 3.4 mm pol
a partir da origem (G90) ou da posição atual
(G91).

Incremento para mergulho inicial em Ciclo


Fixo de Quebra Cavaco (G83).

I Passo de interpolação Helicoidais (G22 e


G23) realizadas ao longo do eixo X.

Sobremetal para acabamento ao longo de


"X" nas Auto-rotinas de alojamento (G26) e
Bolacha (G27).

Número de pontos ao longo do eixo X em 3 3 - -


Auto-rotina Incrementa-Repete (G25).
Distância em Y do centro do círculo medida a 3.3 3.4 mm pol
partir da origem(G90) ou da posição atual (G91).

Decremento aplicado ao mergulho inicial e


sucessivos em Ciclo Fixo de Quebra Cavaco
(G83).
J Passo de interpolação Helicoidais (G22 e G23)
realizadas ao longo do eixo Y.

Sobremetal para acabamento ao longo de "Y"


nas Auto-rotinas de (G26) Ressalto (G27)

Número de pontos ao longo do eixo Y na Auto- 3 3 - -


rotina Incrementa-Repete (G25).

R73224 9
FORMATO UNIDADE
FUNÇÃO DESCRIÇÃO
Métrico Inglês Métrico Inglês
Distância em Z do centro do círculo medida 3.3 3.4 mm pol
a partir da origem (G90) ou da posição atual
(G91).

Valor mínimo dos mergulhos em Ciclo Fixo


de Quebra Cavaco (G83).
K
Passo de interpolação Helicoidais (G22 e
G23) realizadas ao longo do eixo Z.

Sobremetal ao longo do eixo Z nas Auto-


rotinas de alojamento (G26) e Ressalto (G27).
Contador para repetição Máx. de repetições 3 3 - -
255.
L
Número de passes de desbaste em Z para
alojamento (G26) e Bolachas (G27).
M Funções Miscelâneas 2 2 - -
N Número sequencial dos blocos 4 4 - -
O Seletor de corretores 2 2 - -
Chamada de sub-programa em instrução de 3 3 - -
desvio.
P
Código de retração para auto ciclos (G81,
G86).
Raio de corcordância entre 2 movimentos. 3.3 3.4 mm pol

Raio para programação com centro do arco


Q (G05).

Raio para saída do alojamento ou bolacha nas


auto-rotinas G26/G27.
Definição do plano rápido em Ciclos Fixos. 3.3 3.4 mm pol

Raio em blocos de posicionamento com


R coordenadas polares. Medida a partir do
centro (G90), ou da posição atual (G91).

Controle do RÁPIDO em exibição de Gráfico - - - -


(G66).
Definição de velocidade de rotação do eixo- 4 4 rpm rpm
S árvore. (O número de digitos permitido é
definido no PAL).

10 R73224
FORMATO UNIDADE
FUNÇÃO DESCRIÇÃO
Métrico Inglês Métrico Inglês
T Seleção de ferramenta 2 2 - -
Eixo secundário paralelo a X. 3.3 3.4 mm pol
U
Eixo secundário rotacional em torno de X. 3.3 3.3 graus graus

Eixo secundário paralelo a Y. 3.3 4.3 mm pol

Eixo secundário rotacional em torno de Y. 3.3 2.4 graus graus

V Velocidade de avanço de retração em Ciclos 4 4.1 mm/min pol/min


Fixos do Mandrilhamento (G85, G86).

Velocidade de avanço de mergulho para Auto- 4


rotinas de Cavidade (G26) e Ressalto (G27).

Eixo secundário paralelo a Z. 3.3 3.4 mm pol

Eixo secundário rotacional em torno de Z. 3.3 2.4 graus graus

Incremento de retração para Ciclo Fixo Quebra 3.3 3.4 mm pol


Cavaco (G83).

Incremento radial (X Y) de desbaste para


W fresagem de alojamento (G26) e Ressalto(G27).

Número de pontos para Auto-rotina de Círculo


de Furos (G24).

Inibição da tecla APAGAR em Controle Gráfico - - - -


(G66).

Movimento ao longo do eixo X. Medido a 3.3 3.4 mm pol


partir da origem (G90) ou da posição Atual
(G91).

Coordenada X de início para Auto-rotina de


Círculo de Furos (G24).

X Incremento X entre pontos para Auto-rotinas


Incrementa-Repete (G25).

Coordenada X do canto oposto para fresamento


de alojamento (G26) e Ressalto (G27).

Fator de escala para o eixo X. O valor 3.3 2.4 - -


programado afeta a função de programação de
centro I na mesma proporção.

Imagem Espelho (G30, G31). - - - -

R73224 11
FORMATO UNIDADE
FUNÇÃO DESCRIÇÃO
Métrico Inglês Métrico Inglês
Movimento ao longo do eixo Y. Medido a 3.3 3.4 mm pol
partir da origem (G90) ou da posição atual
(G91).

Coordenada Y do início para Auto-rotina de


Círculo de Furos (G24).

Y Incremento Y entre pontos para Auto-rotinas


Incrementa-Repete (G25).

Coordenada Y do canto oposto para fresamento


de Alojamento (G26) e Ressalto (G27).

Fator de escala para o eixo Y. O valor 3.3 2.4 - -


programado afeta a função de programação de
centro J na mesma proporção.

Imagem Espelho (G30, G31) - - - -


Movimento ao longo do eixo Z. Medido a partir 3.3 3.4 mm pol
da origem (G90) ou a partir da posição atual
(G91).
Z Fator de Escala para o eixo Z. O valor 3.3 2.4 - -
programado afeta a função de programação de
centro K na mesma proporção.

Imagem Espelho (G30, G31). - - - -

1.3 - DESCRIÇÃO DAS FUNÇÕES

Esta seção descreve características gerais das funções usadas na programação. Capítulos
Capítulos posteriores desse manual descreverão, em detalhes, como usar essas funções.

1.3.1- FUNÇÕES G

As funções G são funções preparatórias. Elas definem para o controle os modos de


operação do programa. As funções G permitem valores numéricos de dois dígitos.

As funções G são modais ou não modais:

. Uma função G modal estabelece um modo de operação que permanece em efeito para os
blocos subsequentes. Esse efeito permanece até que uma outra função G que a cancele seja
executada.

. Uma função G não modal estabelece um modo de operação que permanece ativo apenas
no bloco no qual foi programada.

12 R73224
Se mais que uma função G estiver presente em um bloco, a mensagem de erro “MAIS QUE
1 G - COD.” será mostrada na tela quando o bloco for encontrado. A execução será
interrompida, e o problema deverá ser corrigido através de EDIÇÃO PROGRAMA.

Grupos de Funções G

Para facilidade de programação, as funções G são divididas em grupos de acordo com sua
aplicação. Esses grupos são dados nas páginas [CÓDIGO G] do comando:

Funções G da 1a. Página de Códigos G.

AUTO CICLOS AUTO ROTINAS MOVIMENTO/PERMAN

G75 CAVIDADE G22 HÉLICE HOR G00 MOV. RÁPIDO


G79 PROGRAMA A.C. G23 HÉLICE AHOR G01 LINEAR
G80 DESATIVA G24 CIRC. FUROS G02 ARCO HOR
G81 FURAR G25 POS. REPETE G03 ARCO AHOR
G82 REBAIXAR G26 ALOJAMENTO G04 PERMANÊNCIA
G83 FURAR / DESC. G27 RESSALTO G05 ARCO TANGENTE
G84 ROSCAMENTO G29 EXECUTAR A.C. G73 PTO. LINHA
G85 MANDRILAR G39 SUBPROG. PARAM
G86 MAND. PRD. EIXO VARIÁVEIS
G89 REATIVA A.C.
G39 LOCAL
G59 PAL
G79 GLOBAL

PÁGINA I DE 2
> G O PRÓXIMA PÁG.

Funções G da 2a. página de Códigos G.

CONTROLE COORDENADAS MODOS DOS EIXOS CONTROLE DO CNC

G70 POLEGADA G17 PLANO XY G60 ZONASEGURANÇA


G71 MÉTRICO G18 PLANO XZ G62 CONTR. INIB.
G72 ESCALA G19 PLANO YZ G66 CONTR. GRÁFICO
G74 ROTAÇÃO G30 DESL ESPELHO
G90 ABSOLUTO G31 LIGA ESPELHO
G91 INCREMENTAL G40 CANCELA COMPENS
G92 REFEREN TEMP G41 FERRAM. ESQ.
G94 AVANÇO P/ TEMPO G42 FERRAM. DIR.
G97 INIBE AC/DES. G45 CORRETOR FIXAÇÃO
G99 CANCELA G92
PÁGINA 2 DE 2
> G O PRÓXIMA PÁG.

R73224 13
. Controle de Coordenadas

O grupo de Controle de Coordenadas referencia condições que afetam o sistema de


coordenadas da máquina, e assim, o tipo de programação a ser usada para o posicionamento.
Funções G desse grupo geralmente estarão entre as primeiras funções programadas.

. Modos dos Eixos

Esse grupo referencia as condições sob as quais o Controle interpreta o sistema de eixos
da máquina. Estarão também entre as primeiras funções do programa.

. Controle do CNC

Essas funções afetam operações específicas do controle, tais como apagar o gráfico do
programa ou privar o operador de certos controles do painel frontal e podem ser usadas em
qualquer posição dentro do programa.

. Ciclos Fixos

Nesse grupo, as funções G programam operações que ocorrem automaticamente após


movimentos de posicionamento. Uma vez programadas permanecem em efeito até que
sejam canceladas.

. Auto-Rotinas

As funções desse grupo programam sequências especiais de posicionamento ou operações


tais como fresamento de alojamentos ou círculo de furos.

. Posicionamento/Permanência

São as mais básicas e largamente usadas na programação. Definem como o controle


executa os posicionamento, e quando ocorrerão pausas (tempo de permanência) no
programa.

Endereços Permitidos em blocos com funções G

Certos endereços não podem ser programados em blocos que contenham certas funções G.
A tabela a seguir fornece os endereços permitidos para cada função G.

14 R73224
Endereços Legais em Blocos com Funções G

G00 A B C D E F H I J K L MN OP Q R S T U VWX Y Z

G01 A B C D E F H I J K L MN OP Q R S T U VWX Y Z

G02 A B C D E F H I J K L MN OP Q R S T U VWX Y Z

G03 A B C D E F H I J K L MN OP Q R S T U VWX Y Z

G04 A B C D E F H I J K L MN OP Q R S T U VWX Y Z

G05 A B C D E F H I J K L MN OP Q R S T U VWX Y Z

G17 N

G18 N

G19 N

G22 I J K N X Y Z

G23 I J K N X Y Z

G24 A B C E H I J L P R WX Y

G25 E F H I J N P X Y

G26 D F H I J K L N OP Q R U VWX Y Z

G27 D F H I J K L N OP Q R U VWX Y Z

G29 L N

G30 N U VWX Y Z

G31 N U VWX Y Z

G39 A B C D E F H I J K L MN OP Q R S T U VWX Y Z

G40 N X Y Z

G41 N X Y Z

G42 N X Y Z

G45 E H N OP

G59 A B C D E F H I J K L MN OP Q R S T U VWX Y Z

G60 A B C I J K N R U VWX Y Z

G62 F N Q S

G66 N Q R W

R73224 15
G70 N

G71 N

G72 E H L N P U VWX Y Z

G73 A B C D E F H I J K L MN OP Q R S T U VWX Y Z

G74 A C E H I J N P R X Y Z

G75 D E H N P X Z

G79 A B C D E F H I J K L MN OP Q R S T U VWX Y Z

G80 N

G81 D F N P R V X Y Z

G82 D F N P R V X Y Z

G83 D F I J K N P R U WX Y Z

G84 D F N P R X Y Z

G85 D F N P R X Y Z

G86 D F N P R X Y Z

G89 N

G90 A B C I J K N R U VWX Y Z

G91 A B C I J K N R U VWX Y Z

G92 N

G94 C F N

G97 N U VWX Y Z

G99 A B C D E F H I J K L MN OP Q R S T U VWX Y Z

1.3.2 - FUNÇÕES NOS BLOCOS DE POSICIONAMENTO

As funções a seguir podem aparecer num bloco de posicionamento e programam o


movimento dos eixos, em cada direção ou em combinação com os demais.

.XYZUVWIJK

Cada uma destas funções podem estar em modo absoluto ou incremental. Basicamente,
dimensões absolutas são distâncias do zero do programa ou ângulos a partir do eixo
positivo de X. Dimensões incrementais são distâncias da localização atual ou ângulos a
partir da linha do ponto de centro co-direcional a X na localização atual.

16 R73224
O modo de cada função pode ser absoluto com o uso de G90 ou incremental com G91 (ver
seções 2.3 e 2.4).

Alternativamente, o modo de alguma função que esteja referenciada como absoluto pode
ser forçado à incremental para o corrente bloco pelo uso de letras minúsculas.

Veja capítulo 3 sobre especificações de como usar essas funções em cada bloco de
posicionamento.

Funções dos Eixos Lineares X, Y, Z, U, V, W

Em geral, as funções X, Y, Z submetem os eixos da máquina a movimentos ao longo de


um caminho linear. Estes serão os eixos comumente encontrados na maioria das aplicações
e serão chamados eixos lineares. O movimento dos eixos lineares são programados em
unidades de milímetros ou polegadas.

No modo absoluto (especificado por G90 e referenciado com letras MAÍUSCULAS) os


movimentos dos eixos lineares são programados a partir do “zero programa”.
Movimentos lineares em absoluto são movimentos para coordenadas específicas em um
sistema de coordenada estabelecido.

No modo incremental (especificado por G91 ou referenciado por letras minúsculas) os


movimentos dos eixos lineares são programados a partir de posição atual dos eixos. Eles
determinam a direção e a distância do movimento ao longo de cada eixo.

Funções de Posicionamento dos Eixos Rotacionais U, V e W

Um eixo rotacional é aquele que descreve uma trajetória circular em torno de um eixo.
Eixos rotacionais são frequentemente especificados por movimentos sobre os eixos
lineares X, Y ou Z.

Este manual assume que quando os eixos U, V e W são rotacionais:

. o eixo U é rotacional sobre X

. o eixo V é rotacional sobre Y

. o eixo W é rotacional sobre Z

Se for programado uma direção positiva para um eixo rotacional, este será no sentido anti-
horário.

Uma direção negativa será no sentido horário. Isto é assumido olhando-se na direção
negativa do eixo linear associado com o eixo rotacional.

Movimentos rotacionais são programados em unidades de grau (formato 3.3). Eixos


rotacionais giram 360 graus, isto é, posição 0 e a posição 360 são as mesmas. Então a faixa
normal de programação dos eixos rotacionais é de 0 a 359.999 graus.

R73224 17
Quando o movimento rotacional é feito no modo absoluto (G90), define-se a posição
angular a partir de grau 0. Movimentos rotacionais em absoluto irão na direção do sinal
do ângulo programado até 360 graus. Um movimento para - 90.0 graus é um movimento
para 90 graus na direção negativa e um movimento para + 645.0 graus é um movimento
para 285 graus na direção positiva, se nenhum sinal (+ ou -) preceder o número do ângulo,
este é assumido como positivo.

Importante: Para mover-se a 0 grau na direção negativadeve-se programar -360.000 uma


vez que -0.000 será interpretado da mesma forma que + 0.000. Quando são
feitos movimentos rotacionais no modo incremental (G91) define-se a direção
e soma de movimentos em grau a partir da posição atual. No modo incremental,
os eixos rotacionais podem mover-se mais que 360 graus em qualquer
direção.

O movimento dos eixos em avanço por rotação é definido através do bloco de dados G94.
A função C neste bloco de dados informa ao controle a velocidade de avanço para os eixos
rotacionais em acordo com a página Parâmetros de Controle (AMP).

Se múltiplos eixos rotacionais são programados num mesmo bloco a velocidade de avanço
aplica-se ao eixo que circulará a maior distância, aos outros eixos será aplicada uma
velocidade de avanço tal que todos se posicionem ao mesmo tempo.

Eixos Rotacionais e Lineares num mesmo Bloco de Dados

Se for programado o movimento do eixo linear e do eixo rotacional num mesmo bloco, os
movimentos iniciam e terminam ao mesmo tempo.

A velocidade de avanço para blocos que possuem tanto movimentos rotacionais como
Lineares será determinada pela mais lenta entre a velocidade de avanço Linear (F) aplicada
aos movimentos Lineares contidos no bloco e a velocidade de avanço rotacional atual
(especificada por G94); aplicada aos movimentos rotacionais contidos no bloco.

Funções de Posição do Centro - I, J e K

As funções I, J e K num bloco de posicionamento definem a localização de um centro. Esta


posição central pode ser o centro de um arco, ou o centro de um posicionamento polar. Veja
Capítulo 3 para maiores detalhes de como estas funções são utilizadas.

1.3.3 - FUNÇÃO F - VELOCIDADE DE AVANÇO

Uma função F num bloco de dados especifica a velocidade de avanço para um eixo linear.
A função F pode ter unidades de:

. milímetros por minuto (mmpm, formato F4)

. polegadas por minuto (ipm, formato F4.1)

dependendo do modo de programação em efeito (métrico ou polegada).

18 R73224
A função F é modal e como tal permanecerá em efeito até um outro F ser programado.

A velocidade de avanço de movimentos lineares é a velocidade ao longo da distância


ortogonal entre todos os eixos programados, isto é, o tempo para execução do bloco é a
distância correspondente a raiz quadrada da somatória dos quadrados das distâncias dos
eixos programados dividida pela velocidade de avanço programada.

Programe a função F assumindo que a chave de Porcentagem de Avanço está em 100%.


É possível variar a velocidade de avanço programada de modo a ajustá-la às condições de
corte girando a chave de Porcentagem de avanço, quando o programa estiver sendo
executado.

O instalador do sistema atribuirá uma velocidade de avanço que o controle usará caso esta
não seja programada. Pode-se ver esta velocidade de avanço na página STATUS do
controle antes da execução do programa.

BLOCO DIVIDIDO - FUNÇÃO D

A função D (formato D3) é aquela que divide a distância programada em “n” segmentos.
A função D admite um valor máximo de 255.

IMPORTANTE: O ciclo fixo ativo não será executado na posição D0. (posição inicial).
A função D pode ser usada para dividir movimentos lineares e circulares
porém não movimentos rotacionais. Se o movimento é circular, o comando
move em linha retas para os pontos divididos assim, não segue o contorno
do círculo.

Os pontos que separam os segmentos do movimento dividido pela função D podem ser
posições onde deseja-se executar operações específicas do grupo dos auto ciclos.

Acompanhe o exemplo:

G81 Z-24. R-13. F120 - Ativa um ciclo de furar cuja profundidade é de 42mm com Va de
120mm/min.

G00 X120. D6 - Movimento rápido em 120mm divididos em 6 segmentos


equivalentes distantes. O ciclo de furar será executado a cada
posicionamento.

G80 - Cancela ciclo G81

G00 Z0 O0 - Move para Z0 em rápido cancelando o corretor “O”.

M2 - Fim de programa.

R73224 19
O exemplo dado abaixo usa algumas funções que não foram tratados ainda, porém, veja
nos próximos capítulos explicações sobre elas.

Analise o resultado do programa:

Se fosse desejado a execução do auto ciclo na posição inicial neste exemplo, seria possível
usando uma das 3 técnicas:

. programar X0 no bloco do auto ciclo G81.

. programar G0 X0 # imediatamente após o bloco G81.

. programar uma G29 # imediatamente após o bloco G81.

1.3.4 - FUNÇÕES MISCELÂNEAS - M

As funções M (formato M2) definem as funções Miscelâneas. Elas são utilizadas para
definir as ações tomadas pelo PAL (Aplicações Lógicas Programáveis). PAL é um
programa que o controle executa, o qual controla algumas funções como troca de
ferramenta, refrigerante ligado ou desligado, eixo árvore, etc.

O instalador do controle programa o PAL para executar ações específicas quando


encontrar um bloco de dados com um código M. Devido a muitas dessas funções M serem
exclusivas de uma máquina particular, é impossível definir as atribuições específicas das
funções M neste manual.

Algumas funções M pré definidas para o controle, executam algumas ações específicas
internamente e estas são descritas abaixo. Entretanto, a ação específica que estas funções
M produzem, são determinadas de acordo com a máquina.

M00 - Parada de Programa

A função M00 causa a parada de execução do programa. Quando um bloco do programa


contendo a função M00 é encontrado, a execução do programa é interrompida e a
mensagem “PARADO” e “AGUARDANDO INICIO” será mostrada na tela.

Pressione a tecla verde [CYCLE START], ou a tecla amarela [BLK/BLK], para continuar
a execução do programa. Dependendo da programação do PAL, pode ser necessário
executar certas funções antes que o controle permita a continuação da operação.

A função M00 é ignorada pelo controle durante a execução em CHEGA RÁPIDO.

20 R73224
M01 - Parada de Programa Opcional

A função M01 e a função M00 produzem o mesmo efeito, subentendendo-se que já foi
referenciado a função [PARADA OPC.] na página REFER. TRABALHO.

Se [PARADA OPC.] não foi referenciada, M01 é ignorada pelo controle. Em qualquer
caso, M01 é ignorada pelo controle durante “TESTA RÁPIDO”.

M02 - Fim de Programa

A função M02 é usada para finalizar programa ou sub-programa. A função M02 deverá ser
programada sozinha e no último bloco de dados do programa.

Se o controle detecta a ausência da função M02 no programa, a execução interrompida e


a mensagem “PROGRAMA — SEM M02” será mostrada no CRT.

Qualquer outra função relatada no PAL associada com M02 são de responsabilidade do
instalador.

Ambas as funções M02 e M30 encerram o carregamento de programa, se forem


imediatamente seguidas pelo caracter # (E.O.B.).

M06 - Parada do Programa, Troca Manual de Ferramenta

A função M06 produz o mesmo efeito que a função M00, porém ela é usada para gerar uma
troca de ferramenta.

Quando a função M06 é programada num bloco com movimento de eixos, a função M06
desliga o eixo árvore antes que o movimento seja executado (isto requer uma programação
própria para o PAL - sob responsabilidade do instalador). A seguir é executado um
movimento dos eixos para uma posição que seja conveniente para se efetuar a troca de
ferramenta, após a troca de ferramenta, o próximo bloco no programa deverá retornar os
eixos na posição de início de usinagem da peça e ligar o eixo árvore.

No PAL padrão, se o eixo estava ligado, então o botão [CYCLE START] acionará o eixo.

M30 - Fim de Programa

A função M30 opera da mesma forma que a função M02.

R73224 21
Outras Funções M - PAL Padrão

A página com as funções M (página CÓDIGOS M) do controle, traz o nome e o número


das funções M programadas no PAL. Se o controle utilizado em sua máquina tem um dos
programas padrões do PAL oferecidos pela ROMI, a página CÓDIGOS M será como a
figura 1.4.

CONTROLE EIXO ÁRVORE CONTROLE DO PROGRAMA TROCA GRUPO/MAGAZ

M03 ROTAÇÃO DIREITA M00 PARADA DO PROG. M71 MAGAZINE 1


M04 ROTAÇÃO ESQUERDA M01 PARADA OPC. M72 MAGAZINE 2
M05 PARADA ÁRVORE M02 FIM DO PROG. M73 MAGAZINE 3
M30 FIM PROG./REBOB. M74 MAGAZINE 4
M06 TROCA DE FERR.

PÁGINA 1 DE 1

> G 0 PRÓXIMA PÁG.

1.3.5 - RAMIFICAÇÕES EM PROGRAMA - FUNÇÕES N, H, E, L e P

Esta seção descreve as 5 funções que podem ser usadas para especificar desvios dentro de um
programa. Esses desvios podem ser usados para alterar e controlar a sequência de execução de
seus programas.

Um desvio transfere a execução de determinada etapa do programa para uma outra (por
exemplo - uma sub-rotina) ou transfere a execução para outro programa (por exemplo, um sob-
programa). Quando o controle termina a execução da etapa especifica pelo desvio, ele retorna
para o bloco de dados que instruiu o desvio (exceto para uma função H que especifica um desvio
incondicional)

Função N Número de Sequência

A função N (formato N4) programa um número de sequência. Ela identifica o bloco de dados
no qual aparece. Não é necessário programar o número de sequência em todos os blocos de
dados.

Os números de sequência são usados para facilitar a análise do programa eles se tornam
imprescindíveis, quando usados nas instruções de desvio especificadas pelas funções H e E.

Os números de sequência podem ser colocados em qualquer ordem, porém recomenda-se usá-los
em ordem ascendente em seu programa. É conveniente que a numeração seja em intervalos de 5 ou
10, permitindo assim inserir um bloco posteriormente, sem ter que renumerar os blocos novamente.

22 R73224
Função P - Desvio Para Sub-Programa

Todo programa ou sub-programa armazenado no controle deve ser identificado com um número
“P” dentro de uma faixa de P1 à P250. A especificação do número do programa é feito usando
a página EDIÇÃO PROGRAMA.

Não existe diferença estrutural entre um programa e um sub-programa. A única, é que uma
instrução de desvio chama um sub-programa para ser executado através de um programa.

Uma função P (formato P3) num bloco de dados, especifica um desvio para um sub-
programa armazenado no controle, exceto funções de auto ciclos (G81 - G86). Assim
sendo, um sub-programa deve existir e ter um número correspondente ao especificado
junto ao código P. O desvio ocorre após qualquer movimento programado num bloco de
dados.

Se for programado uma função P que não está armazenado na memória será exibida a
mensagem “P*** NÃO CARREG (***)” na tela e a execução será interrompida. O número
mostrado com P é o número do sub-programa programado e o número entre parênteses é
o número do programa que chamou o sub-programa.

A execução do sub-programa começa no seu primeiro bloco, a menos que seja programada
uma função H com P (veja a função H a seguir e os exemplos).

A execução do sub-programa termina com o bloco M02 do sub-programa, a menos que


seja programada uma função E com P (veja função E a seguir e os exemplos).

Os desvios para sub-programas podem ser feitos até 5 níveis. Por exemplo:

Nível 0 P1 chama
Nível 1 P2 chama
Nível 2 P3 chama
Nível 3 P4 chama
Nível 4 P5 chama
Nível 5 P6 chama

No final da execução do sub-programa P6, a execução eventualmente retorna para o


programa principal, P1. Se tentar-se programar mais de 5 níveis, a mensagem de erro
“EXCES PROG ANINHADOS” aparecerá na tela.

O controle checa prováveis erros em desvios para sub-programas.

Quando o controle detecta um erro, a mensagem “EXCES PROG ANINHADOS” também é


exibida na tela e a execução do programa é interrompida. Assim deve-se checar todos os
programas usando TESTA RÁPIDO para então colocá-los para rodar em OPER
AUTOMÁTICA.

Isso permitirá a detecção de erros.

R73224 23
Os seguintes parâmetros se alterados pelo sub-programa, são restaurados e seu “status” original
após terminar execução do sub-programa:

. Coordenada absoluta (G90)/Incremental (G91)

. Plano para interpolação circular (G17, G18, G19)

. Imagem espelho (G30, G31)

. Ciclos fixos (G75 - G85)

. Auto rotinas (G22 - G29)

. Velocidade de avanço (F)

. O que resta do atual bloco para ser executado

. Tempo de permanência (G04 com F)

. Tipo de interpolação (rápida ou de trabalho)

Importante: É impossível renumerar programas armazenados no controle, usando EDIÇÃO


PROGRAMA. Ao renumerar um sub-programa, o controle não atualiza
automaticamente o valor do número que o programa principal chama.
Nesse caso, deve-se usar EDIÇÃO PROGRAMA para corrigir a instrução
que desvia para o sub-programa.

Função H Desvio/Chama Sub-Rotina


A função H (formato H4) instrui o controle à desviar para o bloco que tem o número de
sequência (função N) igual ao do função H. Na maioria dos casos o desvio é para o primeiro
bloco de uma sub-rotina. O controle executa os blocos começando pelo número do bloco
especificado juntamente com a função H e continua até encontrar um M02 ou o último
bloco da sub-rotina especificado pela função E.

Exemplo de desvio usando apenas a função H:

Desvio para o bloco N50 e continua

N10 H50 #

N20 .......
N30 .......
N40 .......
N50 .......

24 R73224
Função E - Fim de Uma Sequência

A função E (formato E4) especifica o bloco final da sub-rotina. O último bloco da sub-
rotina a ser executado será o anterior ao especificado pela função E.

Exemplos de Desvios e Ramificações

Os exemplos seguintes ilustram como usar os desvios e ramificações em seus programas.

Exemplo usando H e E para chamar uma sub-rotina:

Desvia para o bloco N30 e executa até o bloco anterior ao N60, retornando entÃo para o
bloco posterior ao que chamou a sub-rotina.

N10 H30 E60 #

N20

N30

N40

N50 #

N60

Exemplo de desvio usando H e E para chamar sub-rotina

Desvia para o bloco com N40 e executa até o bloco anterior ao fim do programa, retornando
então até o bloco posterior ao que chamou a sub-rotina.

N10 H40 E #

N20

N30

N40

N50

N60

N70 M02#

R73224 25
Exemplo de desvio usando P para chamar um sub-programa

Desvia para o programa armazenado sob o número 5 e executa até seu final, retornando
então ao bloco seguinte ao bloco que chamou o sub-programa.

P5 N10 P5 #

N1 N20
N2
N3 N30
N4
N5 N40
N6 M02#
N50

Exemplo usando o sub-programa 5 e executa do N2 até o fim do sub-programa, retornando


ao bloco seguinte ao que chamou a sub-rotina.

P5 N10 P5 H2 #

N1 N20
N2
N3 N30
N4 N40
N5 M02# N50

Exemplo usando P e E para chamar uma sub-rotina

Desvia para o sub-programa 5 e executa do início até o bloco anterior ao N4, retornando
então ao bloco seguinte ao que chamou a sub-rotina.

P5 N10 P5 E4 #

N1
N2 N20
N3# N30
N4 N40
N5 N50
.
.
.

26 R73224
Exemplo para o sub-programa 5 e executa do N2 até o bloco anterior ao N5, retornando
ao bloco seguinte ao que chamou a sub-rotina.

P5 N10 P5 H2 E5 #

N1 N20
N2
N3 N30
N4 N40
N5 N50
.
.
.

Função L - Repetição de Bloco

Uma função L (formato L3) num bloco de dados faz com que o bloco de dados seja
executado L vezes. A função L pode ter um valor de 0 a 255, e pode ser usada para 5 níveis.

. Para repetir um movimento de eixo:

G01 X-25. L4 # : assume modo incremental (G91) e executa um movimento de 25mm


na direção negativa do eixo X um total de quatro vezes.

. Para repetir um sub-programa:

P5 L4 # : executa o programa 5 um total de quatro vezes.

. Para repetir uma sub-rotina:

H100 E200 L4 #: executa a sub-rotina do bloco N100 até o bloco N200 um total de quatro
vezes.

Se movimento dos eixos são incluídos no bloco que programa uma repetição de sub-rotina
ou sub-programa, eles são executados primeiro e a seguir é executada a sub-rotina ou o
sub-programa.

R73224 27
1.3.6 - VELOCIDADE DE ROTAÇÃO DO EIXO ÁRVORE - FUNÇÃO S

A função S (formato S2 ou S4 dependendo do PAL) define a velocidade de rotação do eixo-


árvore, geralmente em RPM, ou como uma porcentagem da máxima velocidade do eixo-
árvore.

Uma função do PAL é que está controlando o eixo-árvore da máquina. Para maiores
detalhes de operação e programação verificar com o instalador do sistema. Esta seção
assume que está sendo usado um dos PALs padrões disponíveis da ROMI. O valor da
função S é modal. Uma vez que um valor é programado ele permanece até que seja
mudado.

Quando o sentido de rotação do eixo-árvore é trocado em um programa (usando M03 -


sentido horário, ou M04 - sentido anti-horário) o valor atual da função S é assumido para
a velocidade de rotação da árvore.

Se o eixo-árvore está parado (eixo sem rotação) e programa-se a função M03 (ou M04),
o eixo permanecerá parado. Para que o eixo girasse seria necessário que se tivesse
programado uma função S antes da função M03 (ou M04).

Pode-se modificar o valor da rotação programada usando-se a chave variadora de rotação


do painel de comando. Esta chave normalmente varia de 50% até 125% a velocidade
programada. Pode-se ver a velocidade de rotação atual do eixo na página STATUS do
controle.

1.3.7 - SELEÇÃO DO CORRETOR DE FERRAMENTA E DE DISTÂNCIA


FUNÇÃO O

A função O (formato 02), quando programada em um bloco que não contenha a função
G45, seleciona o corretor da ferramenta.

Para selecionar o corretor da ferramenta, deve-se programar o número (1 a 96) do corretor


no qual foi armazenada o valor do corretor da ferramenta na página REFER. FERRAMENTA
do controle. Por exemplo:

O3#

Este corretor seleciona os valores do comprimento e diâmetro armazenados no corretor 3


da página REFER. FERRAMENTA. O valor do comprimento é usado para compensar o
movimento do eixo Z com relação ao zero do programa. O valor do diâmetro é
automaticamente dividido para fornecer o valor do raio que é usado na compensação do
raio da ferramenta. Nenhum movimento é feito quando a função O é executada, porém, o
valor da compensação é combinado com o próximo movimento dos eixos e torna-se ativo
naquele ponto. Por exemplo, para ativar o corretor do comprimento programa-se um
movimento no eixo Z após o bloco que contém a função O. Para que o valor do diâmetro
(raio) seja totalmente empregado, um movimento deve ser programado para o eixo que irá
usar a compensação.

28 R73224
O número do corretor de ferramenta que está ativa no programa é mostrado na página
STATUS do controle no espaço próximo a “O”.

Para cancelar o corretor de ferramenta programa-se O 0#.


A compensação é removida com o próximo movimento do eixo.

Quando a função O é usada junto com uma função G45, ela seleciona um corretor de
posicionamento (1 a 96) da página CORRETOR FIX. Por exemplo, um bloco G45 01 #
chama o endereço de corretor número 1.

Corretores de posicionamento são usados para deslocar a origem para um determinado


ponto desejado. Eles movem o ponto de referência do zero programa pela quantia
especificada na página CORRETOR FIX., no entanto, nenhum movimento ocorre quando
o bloco com a função O de corretor de posicionamento é executada. A compensação é
combinada com o próximo movimento dos eixos afetados pela compensação e torna-se
ativa neste ponto programado pelo programa.

Para cancelar o corretor de distância programe um bloco contendo

G45 O0#.

O número do corretor ativo é mostrado na página STATUS do controle em frente a “FIX”.

1.3.8 - SELEÇÃO DE FERRAMENTA - FUNÇÃO T

A função T (formato T2) permite a seleção de ferramenta. Os dois dígitos numéricos junto
a letra T, identificam a posição da ferramenta no magazine. O limite superior da função
T é determinado pela capacidade do magazine ou do sistema de seleção.

O controle necessita de um PAL próprio para o controle do magazine. Deve-se checar


junto ao instalador os detalhes de programação e operação.

É importante frisar que a função T não executa a operação de troca de ferramenta mas,
apenas seleciona a ferramenta desejada. Para executar a troca de ferramenta deve-se
programar a função M06 após a função T.

Outras funções podem ser necessárias para usar o magazine. Por exemplo, uma função que
leve a ferramenta em uso para uma posição longe da região de trabalho. Por isso deve
conhecer bem os requisitos operacionais da máquina para uma programação correta.

Quando a função T é programada seu valor é mostrado na página “STATUS” junto ao


endereço “T”.

R73224 29
CAPÍTULO 2 - CONTROLE DE COORDENADAS

2.0- DESCRIÇÃO DO CAPÍTULO

Este capítulo cobre o grupo das funções G, chamando controle de coordenadas. Essas
funções estarão normalmente no início do programa porque definem como o controle
interpreta o sistema de coordenadas da máquina.

Após ler este capítulo o usuário saberá como:

. Definir sistema de unidade (polegada ou milímetro).

. Definir sistema de coordenada (absoluta ou incremental).

. Referenciar origem temporário.

. Escalar um sistema de coordenadas.

. Rotacionar um sistema de coordenadas.

. Cancelamento de referência temporário.

2.1 - FUNÇÃO G70 - SISTEMA DE UNIDADE POLEGADA

Um bloco G70 no início do programa instruir controle para usar valores em polegadas para
movimentos dos eixos, avanços, planos de rápido e correções.

2.2 - FUNÇÃO G71 - SISTEMA DE UNIDADE MILÍMETRO

Um bloco G71 no início do programa referencia unidades métricas para todos os


movimentos dos eixos, avanços, plano de rápidos e correções.

Importante: O controle não converte dimensões métricas para polegadas ou vice-versa.


Não se pode misturar operação em métrico com polegadas num mesmo
programa assim, o programador deve certificar-se de que todas as dimensões
programadas correspondem ao modo dimensional que foi referenciado.

O controle assume modo em polegadas (G70) ou em métrico (G71) ao ser ligado, de acordo
como foi determinado em AMP pelo instalador do sistema.

30 R73224
As funções G70 e G71 devem ser programadas em um bloco exclusivo e antes de qualquer
movimento do programa, são modais e cancelam-se mutuamente.

Uma função G70 irá testar o modo “POLEG/MÉTRICO” que foi selecionado pelo
operador. Se o mesmo não foi apropriadamente selecionado, o programa será suspenso
com a mensagem de erro: TROCA POLEG/MÉTRICO.

2.3 - MODO DE PROGRAMACÃO EM ABSOLUTO G90

No modo de programacão em absoluto as posicões dos eixos são medidas da posição Zero
programa estabelecido.
Outra alternativa para o modo absoluto é o modo incremental (G91)
O comando assume o modo absoluto para todos os eixos e funções de posicionamento
quando for ligado e no início de qualquer programa principal.
As funções que usam o modo absoluto são:

XYZUVWIJKABCR

Pode-se selecionar quais funções estarão em absoluto e quais estarão e incremental.


Programando-se G90 sozinho num bloco define-se modo absoluto para todas as funções
de posicionamento

I J K A B C R não são eixos mas são afetados por G90

Programando G90 em apenas algumas funções selecionadas define-se modo absoluto


apenas para aquelas funções.

Exemplo :

G90 define modo absoluto para todas as funções de posicionamento


"
"
"
G91 define modo incremental para todas funções de posicionamento
"
"

G90 X Y define modo absoluto apenas para as funções X e Y mantendo as


demais em incremental devido ao bloco anterior.

R73224 31
Pode-se visualizar quais as funções que estão em absoluto ou incremental observando a
página ( Status ) do comando. Funções que aparecem em letras maiúsculas , num dado
instante, estão em absoluto, e funções emletras minúsculas estão em incremental .

Ainda funções em absolutos podem ser transformados para incrementalno bloco corrente
digitando-se em letras minúsculas.

Por exemplo:

G90 Define modo absoluto para todas as funções de


posicionamento

G0 X1. y.5 Move X para coordenada 1.0, move Y ( incremental ) de .5 da


sua posição atual.

2.4- MODO DE PROGRAMAÇÃO INCREMENTAL

Ver seção 2.3

2.5 REFERÊNCIA ORIGEM TEMPORÁRIA G92

A funçào G92 permite definir ( ou redefinir ) no meio do programa a posiçào da origem


das coordenadas absolutas ( zero programa ). Pode-se através dela , estabelecer o zero
programa numa posiçào diferente do zero programa préviamente referenciado pelo
operador. Para definir um zero programa, coloca-se um bloco G92 juntamente com as
posiç•es atuais dos eixos dados em relaçào ao zero programa desejados.

Por exemplo:

G71 sistema métrico


"
"
"
"
G92 X 10. Y 20. Z-5. define a posição atual dos eixos nas coordenadas
indicadas com relação ao zero programa. Dessa forma
o zero programa fica definido num ponto localizado a
10 mm no sentido negativo de x , 20 mm no sentido
negativo de Y e 5 mm no sentido positivo de Z em
relação à posição atual.

32 R73224
De outra maneira, pode-se mover para a posição onde se deseja a origem e então definir
essa posição como sendo o Zero Programa.

Por exemplo:

G99 Cancela função G92

G00 X -50. Y-30. Desloca em rápido para essas coordenadas a partir


do zero programa

G92 X Y Define o Zero programa na posição atual para os


movimento absolutos subsequentes

Pode-se também definir o zero programa para os eixos U V W,apenas incluindo-os no


bloco G92.

O Zero programa definido com G92 é modal e é cancelado por G99


ou por outro G92. A função G99 retorna a origem de coordenadas para a posição do Zero
Programa préviamente definido.

2.6 - REFERÊNCIA VA P/ EIXO ROTACIONAL G94

A função G94 permite que se definam avanços em unidades de deslocamento por unidade
de tempo para movimentos rotacionais .

2.6.1 - TELA PARA ENTRADA DE DADOS

A tabela a seguir descreve as funções que podem ser programadas em conjunto com a
função G94.

prompt descrição

avanço p/ temp G94

avanço rot (f) especifica o avanço para os movimentos rotacionais que virão
depois dela no programa. Esse valor permanece em efeito até que
um novo valor de F seja programado em outro bloco com G94 .
Deve-se notar que o instalador do sistema define o avanço rotacional
programado em AMP ( Parâmetros Ajustáveis de Máquina) como
revoluções por minuto (RPM), Graus por minuto (GPM) ou Graus
por segundo (GPS).

2.7 - CANCELAMENTO DA REFERÊNCIA TEMPORÁRIA G99

A função G99 remove o efeito de todos os G92 anteriores.G99 define a origem do sistema
de coordenadas absolutas na posiçào Zero Programa referenciada pelo operador antes do
início da execução do programa .

R73224 33
2.8 - ROTAÇÃO G74

Um bloco G74 permite-lhe rotacionar um sistema de coordenadas no plano XY de


subsequentes movimentos programados. A rotação se dá num centro e ângulo especificado
junto com a função.

Esta função é usada para rotacionar um sistema de coordenada e pode ser usada para
reproduzir partes ou peças que tem simetria radial.

2.8.1 - ENDEREÇAMENTO PARA G74

A tabela abaixo descreve o endereçamento que o comando sugere para o G74.

Endereçamento Função

Rotação G74

Centro de rotação
em X (I) “I” especifica a posição de rotação em X.

No modo absoluto (G90) o valor de “I” é a distância X do centro


medido da origem.

No modo incremental (G91) “I” será a distância X medida da


posição atual até o centro de rotação.

Se “I” não é programado o último é assumido e, se não havia


nenhum “I” programado o comando assume I = 0.

Centro de rotação
em Y (J) “J” especifica a posição de rotação em Y.

No modo absoluto (G90) o valor de “J” é a distância Y do centro


medido da origem.

No modo incremental (G91) “J” será a distância Y medida da


posição atual até o centro de rotação.

Se “J” não é programado o último é assumido e, se não havia


nenhum “J” programado o comando assume J = 0.

Ângulo Rotação (C) “C” específica o ângulo de rotação em graus. A direção anti-horária
é positivo, horária é negativo. O ângulo “C” tem seu vértice no
centro de rotação especificado por I e J. Quando “C” é absoluto, o
mesmo é medido da linha que passa pelo centro de rotação na
direção positiva de X.

34 R73224
Quando “C” é incremental, o mesmo é medido de uma linha
imaginária que extende-se do centro I e J passando pela posição
corrente.

Se “C” não é programado neste bloco, o último “C” programado é


assumido pelo comando. Se não há nenhum, o valor de 0 (zero) é
assumido para “C”.

Importante: O comando não exibe na tabela os endereços abaixo, mas eles podem ser
programados no bloco G74.

. X — programa um movimento X que é executado após sistema de coordenada ter sido


rotacionado de acordo com I, J e C.

. Y — idem ao anterior (eixo Y).

. P — programa o número do subprograma que será executado após a rotação e


movimento de um dos eixos (X ou Y) ter ocorrido.

. H — programa o número da sequência inicial de uma sub-rotina que será executada após
rotação e movimento de eixos ter ocorrido.

. E — programa o número da sequência final da sub-rotina.

. L — programa um número de repetições para o bloco G74.

2.8.2 - CANCELAMENTO ROTAÇÃO

Para cancelar o efeito da rotação, programa-se um bloco somente com G74.

2.8.3 - ROTAÇÃO SOBRE COORDENADA ZERO E NÃO ZERO

A figura abaixo mostra o efeito da rotação sobre o zero programa (I0, J0) e sobre um ponto
diferente de zero (I70, J50).

2.8.4 - MOVIMENTO XY NO BLOCO G74

ROTAÇÃO SOBRE UM PONTO ROTAÇÃO SOBRE O


DIFERENTE DE ZERO ZERO PROGRAMA

R73224 35
Quando movimentos X e Y são incluídos no bloco G74, especifica movimentos que
deverão ser rotacionados, considerando I, J e C.

Usar este recurso para pre-posicionar no ponto inicial de alguma operação.

2.8.5 - REPETINDO UM BLOCO G74- EFEITO DE I,J E C EM ABSOLUTO/


INCREMENTAL

Quando o ângulo “C” é absoluto no bloco G74, o sistema de coordenada rotacionará


somente para a posição angular indicada. Se programar a função “L” para repetir o bloco
G74, a rotação ocorrerá somente uma vez.

Entretanto, se “C” é incremental no bloco G74 e a função “L” estiver presente, a rotação
ocorrerá cada vez que o bloco é executado.

Quando I e J são absolutos no bloco G74, especifica rotação somente sobre um ponto. Se
o bloco é repetido, o centro de rotação não é mudado. Quando um bloco G74 tem um I e
J incremental e é repetido, o centro de rotação é mudado cada vez que o bloco é executado.

2.8.6 - BLOCO G74 COM SUB-PROGRAMAS E SUB-ROTINAS

Quando sub-programa ou sub-rotina é programado através de P, H ou E no bloco G74, e


a rotação é sobre uma posição diferente de zero, os movimentos no sub-programa ou sub-
rotina devem ser:

. Todos movimentos absolutos ou

. Um perfil fechado de movimentos incrementais.

Nota: Perfil fechado é aquele que inicia e termina no mesmo ponto.

Se escolhido programação de movimentos incrementais e não se tem um perfil fechado,


deve-se-á programar movimentos X e Y absoluto no bloco G74 para localizar
apropriadamente o ponto inicial do sub-programa ou sub-rotina. Este é o caso específico
de desejar-se repetir um bloco G74 que chama sub-programa ou sub-rotina.

36 R73224
2.8.7 - FUNÇÃO G74 EXEMPLOS

O exemplo a seguir mostra a programação da função G74 usada num sub-programa.

INÍCIO PROGRAMA PRINCIPAL

Bloco de dados Comentário

; Rot. Furos Nome do programa principal.

G99 # Sequência de blocos da etapa de inicialização.

; G17 #

; Troca de ferramenta Sequência de blocos da etapa de troca de ferramenta.

G81 Z-15.R-5.F100# Referencia o ciclo de furar.

G00 X25.Y0.P2 Rápido para X25.Y0. do programa zero,


; SUB PROG # executa o ciclo ativo e desvia para o sub-programa P2.

SUB-PROGRAMA P2

Bloco de dados Comentário

; SUB-PROG Nome do programa 2 armazenado na memória.

G91 X # Referencia coordenada incremental para o eixo X.

X15. L3 # Executa 3 movimentos de X15. em rápido.

M2 # Fim do sub-programa.

R73224 37
CONTINUAÇÃO DO PROGRAMA PRINCIPAL

Bloco de dados Comentário

G91 C # Referencia “C” para incremental lembre-se que “X” está ainda
absoluto no programa principal.

G74 I0 J0 C45.
X25.Y P2 L7 # Centro de rotação é absoluto I0, J0, ângulo de rotação é incremental
C45., posição de referência é absoluta X25. Y0 no sistema
rotacionado, a execução será desviada para o sub-programa P2 e o
bloco repetido 7 vezes.

G74 Cancela a rotação.

G80 Cancela o auto-ciclo G81.

G0 Z0 O0 M02 Posiciona rápido para Z0, cancela o corretor e finda o programa.


O exemplo a seguir mostra a programação da função G74 num sub-programa rotacionando
um perfil fechado.

38 R73224
PROGRAMA PRINCIPAL

Bloco de dados Comentário

; Rot. Perfil # Nome do programa principal.

G99 # Sequência de blocos da etapa de inicialização.

G17#

; Troca de ferram. Sequência de blocos da etapa de troca de ferramenta.

G91 C# Referência “C” para incremental.

G74 I0 J0 C60. Rotação sobre I0 J0, abertura angular de C60, incremental,posição


X6.163 Y13.675 de referência é absoluta em X6.163 Y13.675 no sistema rotacionado,
P2 L6 # a execução é desviada para o sub-programa P2 e o bloco repetido
6 vezes.

SUB PROGRAMA P2

Bloco de dados Comentário

; SUB-PROG # Nome do programa 2.

G91 # Referencia sistema incremental para todos os eixos.

G3 I-6.163 J-13.675
X-12.326 Y0 # Move em arco de A para B.

X-12.524 Y21.691 # Move de B para C.

G2 X37.374 Y0
I18.687 J-35.366# Move em arco de C para D.

X-12.524 Y-21.691# Move de D para A.

G0 Z0 # Move rápido para Z0. PONTO A = X6.163 Y13.675

M2 # Fim de sub-programa.

R73224 39
CONTINUAÇÃO DO PROGRAMA PRINCIPAL

Bloco de dados Comentário

G74 # Cancela a rotação.

G0 Z0 O0 M2 # Posiciona rápido para Z0, cancela o corretor e finda o programa.

CAPÍTULO 3 - POSICIONAMENTO E TEMPO DE ESPERA

3.0 - DESCRIÇÃO DO CAPÍTULO

Neste capítulo será visto o grupo das funções G que definem o posicionamento e o tempo
de espera (“dwell time”).

Após a leitura deste capítulo, o usuário saberá:

. o que são interpolações linear e circular;

. quais funções podem ser usadas nos blocos de posicionamento;

. como programar o tempo de espera.

3.1 - FUNÇÕES G DE POSICIONAMENTO

Há cinco funções G que podem ser usadas para definir o bloco de dados que posicionam
os eixos das máquinas. Outras funções G podem definir bloco de dados que produzem os
tipos básicos de posicionamento que são mais frequentemente utilizados.

3.1.1 - FUNÇÕES G DE INTERPOLAÇÃO LINEAR

As funções G seguintes definem blocos que movem os eixos da máquina ao longo de


trajetórias lineares. Isto é chamado interpolação linear visto que o Controle coordena o
movimento dos eixos em separado para produzirem movimentos ponto a ponto.

As funções G para movimentação ao longo da trajetória linear são (ver seção 3.4):

40 R73224
. G00

Modo de posicionamento em rápido, faz os eixos se moverem com um avanço rápido


definido e fixado pelo instalador.

. G01

Modo de posicionamento linear com avanço de trabalho, faz os eixos moverem-se a um


avanço programado ao longo de uma trajetória contínua.

. G73

Posicionamento ponto a ponto faz com que os eixos movam-se a uma velocidade de
avanço programada, ao longo de uma linha reta, ponto a ponto. O controle esperará por um
sinal “em posição”, antes de continuar com o próximo movimento programado.

Importante: A função G73 normalmente é listada no grupo de Controle de Coordenadas,


mas o conceito de programação desta função está contido neste capítulo.

3.1.2 - FUNÇÕES G DE INTERPOLAÇÃO CIRCULAR

O controle usa duas funções G para produzir trajetórias circulares, arcos, com movimento
de dois eixos simultaneamente. Isto é chamado interpolação circular porque o Controle
coordena movimentos separados dos eixos para produzir uma arco. O arco é produzido
fazendo-se uma série de segmentos retos muito pequenos entre pontos ao longo do arco.

As funções G que definem a interpolação circular são (ver seção 3.5):

. G02

Interpolação circular no sentido horário, faz dois eixos moverem-se ao longo de um arco
na direção horária.

. G03

Interpolação circular no sentido anti-horário, faz dois eixos moverem-se ao longo de um


arco na direção anti-horária.

R73224 41
3.1.3 - FUNÇÕES DE EIXOS EM BLOCOS DE POSICIONAMENTO

As seguintes funções podem aparecer em blocos de posicionamento para definirem


movimento.

Outras funções podem também ser usadas para determinar outras condições e funções.

Elas programam o movimento dos eixos, podendo ser individual ou em conjunto uma com
as outras.

Estas funções de eixos são:

XYZUVWIJKACR

Nota: As funções A, C e R referem-se a coordenadas polares e serão tratadas no Manual


de Programação Avançada.

. Funções de Eixos Lineares

As funções X, Y e Z representam os eixos lineares padrões, as quais programam posições


ao longo de trajetórias lineares. O Controle pode coordenar o movimento de dois destes
eixos para produzir trajetória em forma de arco de círculo. As unidades de programação
destas funções podem ser em polegadas (G70) ou milímetros (G71).

. Funções de Eixos Secundários - Linear ou Rotacional

O instalador do sistema deve ter dado condições de serem usados até 3 eixos adicionais:
U, V e W.

Estes eixos podem ser lineares, caso em que são usualmente paralelos em alguma
combinação com os eixos X, Y e Z, respectivamente. Estes eixos não podem ser usados
para produzir trajetórias programadas ao longo de um arco, e portanto, não podem ser
programados em blocos com G02 e G03.

. Funções I, J e K

As funções I, J e K em blocos de posicionamento programam o centro do movimento. São


usados para localizar o centro do arco para os eixos X, Y e Z, respectivamente. Estas
funções são também utilizadas para posicionamento polar.

3.2 - VELOCIDADE DE AVANÇO

Há dois modos de se estabelecer os avanços em blocos de posicionamento: um por avanço


aplicados em eixos lineares e um para avanços aplicados em eixos rotacionais.

42 R73224
3.2.1 - AVANÇOS LINEARES - FUNÇÃO F

Uma função F num bloco de posicionamento programa um avanço para os movimentos


dos eixos lineares. As unidades em que a função F é programada são:

. Polegadas por minuto (pol/min, formato F4.1) no modo


G70.

. Milímetro por minuto (mm/nin, formato F5) no modo


G71.

Avanços para interpolação linear e circular são vetores avanço, isto é, todos eixos movem-
se simultaneamente à velocidades individuais de modo que a velocidade ao longo da
trajetória efetiva é igual à velocidade F programada.

Um avanço, uma vez programado, é modal. Ele aplica-se a todos os blocos de


posicionamento que venham depois dele no programa, a menos que seja programado um
novo valor de F.

3.3 - INTERPOLAÇÃO LINEAR - G00, G01 E G73


As funções G que definem blocos de dados para interpolação linear movimentam um ou
mais eixos ponto a ponto ao longo de trajetórias lineares. O movimento programado se
inicia na posição atual dos eixos e termina na posição programada no bloco. Os eixos
iniciam e terminam o movimento ao mesmo tempo.

. G00

Informa aos eixos para se movimentarem ao longo de uma linha reta até o ponto
programado com a velocidade rápido implantada no sistema. Quando os eixos alcançam
seus destinos o erro de posicionamento do servo, deverá estar dentro dos limites pré-
determinados (“em posição”) antes de ser iniciado o próximo movimento. A função G00
é modal e cancela G01 e G73.

. G01

Informa aos eixos para se movimentarem ao longo de uma linha reta a uma velocidade
específica programada com uma função F. Pode-se modificar a velocidade de avanço atual
usando-se a chave variadora de avanço. Quando um movimento de um eixo rotacional é
programado em um bloco de dados, este iniciará e terminará simultaneamente com
quaisquer movimento linear programado no mesmo bloco de dados. A função G01 é modal
e cancela G00 e G73. Ao acionar-se a máquina, o Controle assume o modo G01.

. G73

Informa aos eixos para se movimentarem ao longo de uma linha reta com uma velocidade
específica programada com uma função F. Ela é similar ao modo G01, exceto que o
Controle espera um sinal “em posição” antes de continuar com o próximo movimento. Isto
elimina o arrendondamento de contorno quando se deseja ter cantos vivos em movimentos
consecutivos em torno de uma peça. A função G73 é modal e cancela G00 e G01.

R73224 43
3.3.1 - TELA PARA ENTRADA DE DADOS

A tabela a seguir descreve as funções que o Controle possui (os “prompts”) para G00, G01
e G73. Somente G00 é mostrado, mas os “prompts” são idênticos para as funções G01 e
G73. Note que somente os eixos permitidos pelo Controle é que são mostrados na tela

PROMPT DESCRIÇÃO

MOV RAPIDO G00

X PTO FINAL X “X” informa o ponto final do movimento para o eixo linear X.
A função X pode ser absoluta (G90) ou incremental (G91).
Quando X é absoluto, ele informa a coordenada do ponto
final no eixo X medida da origem referenciada. Quando X é
incremental, ele informa a distância e a direção ao longo do
eixo X, da posição atual até o ponto final.

Y PTO FINAL Y “Y” informa o ponto final do movimento para o eixo linear Y.
A função Y pode ser absoluta (G90) ou incremental (G91).
Quando Y é absoluto, ele informa a coordenada do ponto
final no eixo Y medida da origem referenciada. Quando Y é
incremental, ele informa a distância e a direção ao longo do
eixo Y, da posição atual até o ponto final.

Z PTO FINAL Z “Z” informa o ponto final do movimento para o eixo Z. A


função Z pode ser absoluta (G90) ou incremental (G91).
Quando Z é absoluto, ele informa a coordenada do ponto final
no eixo Z medida da origem referenciada. Quando Z é
incremental, ele informa a distância e a direção ao longo do
eixo Z, da posição atual até o ponto final.

U PTO FINAL U “U” informa o ponto final do movimento para o eixo U, que
pode ser linear ou rotativo. a função U pode ser (G90) ou
incremental (G91). Quando U é absoluto, ele informa a
coordenada do ponto final no eixo U, medida da origem
referenciada. Quando U é incremental, ele informa a distância
e a direção ao longo do eixo U, da posição atual até ao ponto
final.

“COMP” POLAR R Comprimento medido do centro do movimento polar ao


ponto final desejado. Usado somente para blocos com
posicionamento polar.

ÂNGULO INICIAL A Ângulo do próximo movimento polar medido da direção


positiva de X até a linha compreendida entre o ponto final e
o vértice (posição XY atual) o vértice do ângulo está situado
na posição atual dos eixos.

44 R73224
ÂNGULO POLAR C Ângulo cujo vértice está num ponto de centro em
posicionamento polar.

Medido da direção positiva de “X” até a linha compreendida


entre o ponto final e o vértice (ponto de centro com posição
diferente do “XY” atual).

X POLAR CENTR I Coordenada “X” do zero programa ao centro do


posicionamento polar.

Y POLAR CENTR J Coordenada “Y” do zero programa ao centro do


posicionamento polar.

3.3.2 - INTERPOLAÇÃO LINEAR PADRÃO

A interpolação linear padrão combina o movimento de até 6 eixos. Todos os eixos


especificados no bloco de dados movimentam e param ao mesmo tempo, e se movimentam
a uma velocidade de avanço especificado com a função F (a menos que G00 seja
programada, onde o avanço é em rápido). Avanços para eixos rotativos são especificados
com G94 e uma função C.

A seguir é dado um exemplo para ajudar no entendimento de interpolação linear.

Bloco de dados Comentário

; Posição # . Bloco de comentário que tem o nome do programa.

G99 # . Cancela qualquer definição anterior do Zero Programa e o


estabelece no Zero Máquina.

G90 # . Estabelece o sistema absoluto de coordenada.

G00 X0 Y0 Z0 W0 # . Estabelece posicionamento rápido com função G00, e move-


se até a posição zero da máquina (será assumido, para o
nosso exemplo, que o zero máquina é algum lugar no meio
do curso da máquina).

X-1. Y-2. # . Movimento em rápido (pois G00 é modal) para a posição X-


1.Y-2. do zero da máquina.

R73224 45
G92 X0 Y0 Z0 W0 # . Determina a posição atual como zero do programa, W (rotacional
neste exemplo) é definido como zero neste bloco.

C94 C10. # . Define velocidade de avanço para eixos rotacionais (neste exemplo,
10 dps, graus por segundo.

G01 X2.F760. # . Define modo de interpolação linear (G01) e move até a coordenada
X2. do zero do programa, com velocidade de avanço de 760 mm/
min. Velocidade de avanço linear é modal.

W20. # . Move o eixo W em 20 no sentido positivo de giro (sentido anti-


horário) do zero do programa a 10 dps. O modo de interpretação
é G01 como definido anteriormente.

Y-2.Z-1. # . Move até as coordenadas Y-2. Z-1. do zero do programa, no modo


G01 e a 760 mm/min.

G73 X-2.Y2.F1270 # . Altera o modo para G73, o avanço é agora 1270 mm/min e
movimenta para X-2.Y2.Z-1. do zero do programa e espera por
“inposition”.

G91 # . Define o sistema de coordenadas incremental para todos os eixos.

Y-2.W20. # . Movimento incremental simultâneo para Y e W, ou seja, ambos


os eixos iniciam e param o movimento ao mesmo tempo. O
avanço para o eixo Y é 1270 mm/min e o avanço para o eixo
rotacional W será calculado pelo controle em função do avanço
linear (F1270). Se o valor calculado for maior que o avanço em
rápido para o eixo W, o avanço linear será reduzido de tal maneira
que o eixo W possa ser movimentado com o seu máximo avanço
e o modo ativo ainda é o G73.

G00 # . Define o modo de posicionamento em rápido.

G90 # . Define o modo de programação absoluto.

G99 X0 Y0 Z0 W0 # . Retorna o Zero Programa para o Zero Máquina e desloca em


rápido para esta posição.

M02 # . Fim de programa.

46 R73224
3.3.3 - POSICIONAMENTO POLAR LINEAR

Você pode programar movimentos lineares (G00, G01 e G73) usando posicionamento
polar.

Em movimento linear polar use as funções R, A ou C com várias combinações.

R- Especifica um comprimento polar.

Quando R for absoluto, ele informa um comprimento medido do centro inicial polar
do movimento ao ponto final desejado.

Quando R for incremental, ele informa um comprimento polar medido da posição


atual dos eixos até o ponto final desejado.

A- Especifica o ângulo do próximo movimento polar.

O vértice do ângulo A está situado na posição atual da ferramenta e um ângulo


positivo indica o sentido anti-horário.

Quando A for absoluto, este ângulo é medido da linha positiva de X partindo da


posição atual da ferramenta.

Quando A for incremental, este ângulo é medido de uma linha imaginária que se
prolonga do movimento prévio.

C- Indica o ângulo cujo vértice está num ponto de centro em posicionamento polar. Um
ângulo positivo indica o sentido anti-horário.

Quando for absoluto o ângulo C é medido a partir da linha positiva do eixo X até o
ponto final e o vértice é o ponto de centro polar diferente da posição atual da
ferramenta.

Quando o ângulo C for incremental ele é medido a partir de uma linha imaginária que
sai do centro polar e vai até a posição atual da ferramenta.

Existem 7 combinações possíveis que podemos usar para programação linear polar:

.R .C
. RA . RC
. RIJ . CIJ
. RCIJ

A seguir, veremos cada situação detalhadamente.

R73224 47
3.3.4- POSICIONAMENTO POLAR SOMENTE COM R

Quando for programado somente a função “R” para definir um movimento polar linear, ela
informa o comprimento do movimento a partir do zero programa passando pela posição
atual da ferramenta até a posição final desejada.

R - pode ser absoluto, neste caso ele informa a distância do zero programa até a posição
final desejada.

R - pode ser incremental, neste caso ele informa a distância da posição atual até a posição
final desejada.

POSICIONAMENTO POLAR LINEAR SOMENTE COM R

N0010 G99 #
N0020 G90 #
"
"
N0110 G00 X34.641 Y20.
N0120 G01 R70
ou
G01 r30

48 R73224
3.3.5- POSICIONAMENTO POLAR SOMENTE COM C

Quando somente C for usado para definir movimentos num bloco de interpolação linear
polar, haverá deslocamento da posição atual dos eixos até o ponto final do ângulo C
partindo do zero programa.

A distância entre o ponto final e o zero programa é a mesma entre o ponto atual da
ferramenta e o zero programa.

O ângulo C tem seu vértice no último centro polar definido. Se não for definido o vértice
estará no zero programa.

O ângulo C pode ser absoluto ou incremental.

Quando o ângulo C for absoluto, é medido a partir da linha positiva do eixo X que passa
pelo Zero Programa.

Quando o ângulo C for incremental ele é medido a partir de uma linha imaginária unindo
o Zero Programa a posição atual da ferramenta.

N0010 G99
N0020 G90
"
"
N0080 G00 X32.766 Y-22.943
N0090 G1 C70.
ou
G1 c105.

R73224 49
3.3.6- POSICIONAMENTO POLAR COM “R/A”

Quando R e A forem usados para definir movimentos num bloco de interpolação linear
polar, eles provocam um deslocamento da posição atual da ferramenta até o ponto final
desejado (definido pela distância R e ângulo A).

R deve ser somente incremental nesta combinação.

Um movimento deve preceder o bloco contendo R/A.

O ângulo A tem seu vértice na posição atual da ferramenta. Ele pode ser absoluto como
incremental.

Quando A for absoluto, ele é medido da linha positiva do eixo X passando pela posição
atual da ferramenta.

Quando A for incremental, ele é medido a partir de uma linha imaginária que se prolonga
do movimento anterior.

N0010 G99
N0020 G90
"
"
N0090 G0 X0 Y0
N0100 G01 X24. Y21.5
N0110 G01 r33. A85
ou
G01 r33. a43.145

50 R73224
3.3.7- POSICIONAMENTO POLAR COM RC

Quando R e C forem usados para definir movimentos num bloco de interpolação polar
linear, eles provocam um deslocamento da posição atual da ferramenta para o ponto final
que está posicionado na linha do ângulo C.

R pode ser absoluto ou incremental.

Quando R for absoluto o comprimento da linha do ângulo C é o comprimento de R.

Quando R for incremental o comprimento da linha do ângulo C é:

r+ X2 + Y2

Onde X e Y são coordenadas da posição atual da ferramenta medido do centro polar.

O ângulo C pode ser absoluto ou incremental. Quando C for absoluto ele é medido a partir
da linha positiva de X que passa pelo centro polar até o ponto final.

Quando C for incremental ele é medido de uma linha que une o centro de posicionamento
polar e a posição atual da ferramenta.

Centro polar coincide c/ zero programa

Posição Atual da ferramenta


Ponto final desejado
N0010 G90
N0020 G99
"
"
N0080 G00 X27.189 Y-12.678
N0090 G01 R60.C40
ou
N0090 G01 R60. c65 (increm.)
ou
N0090 G01 r30. C40.

R73224 51
3.3.8- POSICIONAMENTO POLAR “COM R I J”

Quando R, I e J forem usados para definir movimentos num bloco de interpolação polar
linear, eles provocam um movimento da posição atual dos eixos para o ponto final da linha.

Esta linha sai do centro polar que é definido por I J e passa pela posição atual dos eixos.

I e J podem ser absoluto ou incremental.

Quando eles são absoluto definem coordenadas X e Y do centro polar medido a partir do
zero programa.

Quando I e J for incremental definem a distância e direção nos eixos X Y da posição atual
da ferramenta para o centro polar .

R pode ser absoluto ou incremental.

Quando R for absoluto, ele indica o comprimento do centro polar até o ponto final.

Quando R for incremental, indica o comprimento entre a posição atual da ferramenta e o


ponto final.

Zero programa
Centro polar
Posição atual da ferramenta
Ponto final
N0010 G90
N0020 G99


N0070 G00 X42.658 Y39.434
N0080 G01 I20 J50 R50
ou
N0080 G01 I20 J50 r25
ou
N0080 G01 i-22.658 j10.566 R50.
ou
N0080 G01 i-22.658 j10.566 r25.

52 R73224
3.3.9- POSICIONAMENTO POLAR C I J

Quando C, I e J forem usados para definir movimentos num bloco de interpolação polar
linear, eles provocam um movimento da posição atual dos eixos para o ponto final na linha
do ângulo C.

A distância entre o ponto final e o centro definido por I e J é a mesma entre a posição atual
da ferramenta e o centro polar.

I e J pode ser absoluto ou incremental quando for absoluto definem coordenadas X e Y do


centro polar a partir do zero programa.

Quando for incremental, definem a distância e a direção nos eixos X e Y da atual posição
da ferramenta para o centro polar.

O ângulo C pode ser absoluto ou incremental.

Quando C for absoluto ele é medido da linha positiva de X que passa pelo centro polar.

Quando C for incremental ele é medido a partir de uma linha que une o centro polar a atual
posição dos eixos.

Zero programa
Centro polar

N0010 G99 Posição atual da ferramenta


N0020 G90
"
"
N0070 G00 X50.981 Y15
N0080 G01 C40.I25.J30.
ou
N0080 G01 I25.J30.c70.
ou
N0080 G01 C40.i-25.981 j15.
ou
N0080 G01 c70.i-25.981 j15.

R73224 53
3.3.10- INTERPOLAÇÃO LINEAR POLAR COM R C I J

Quando R, C, I e J forem usados para definir movimentos num bloco de interpolação linear
polar, eles provocam um movimento da posição atual dos eixos para o ponto final.

Este ponto final é conhecido em função do centro polar definido por I e J, do ângulo C e
distância R.

I e J podem ser absoluto ou incremental. Quando for absoluto definem coordenadas X e Y do


centro polar a partir do Zero Programa.

Quando I e J forem incremental definem a distância e direção nos eixos X Y da posição atual
da ferramenta para o centro polar.

R pode ser absoluto ou incremental. Quando R for absoluto, o comprimento da linha do ângulo
C é o valor de R.

Quando R for incremental (r), o comprimento da linha do ângulo C será r mais a distância do
centro polar até a posição atual dos eixos.

r + X2 + Y2

Onde X e Y são coordenadas da posição atual da ferramenta medido a partir do centro polar.

O ângulo C pode ser absoluto ou incremental.

Quando C for absoluto ele é medido a partir da linha positiva de X que passa pelo centro polar.

Quando C for incremental ele é medido a partir de uma linha que une o centro polar até a posição
atual dos eixos.

N0010 G99
N0020 G90
" Zero programa
"
Posição atual
N0080 G00 X56.252 Y13095
N0090 G01 I20.J30 R60 C25. Posição final
ou
N0090 G01 i-36.252 j16.904 R60.C25.
ou
N0090 G01 I20 J30 r20. C25.
N0090 G01 I20 J30 r20. c50.
ou
"
"

54 R73224
3.4 - INTERPOLAÇÃO CIRCULAR G02 E G03

Um bloco G02 gera um arco circular no sentido horário. Um bloco G03 produz um arco
no sentido anti-horário. O arco é executado através de movimentos simultâneos dos 2
eixos do plano de trabalho.

O movimento é considerado horário ou anti-horário olhando na direção positiva para a


negativa do eixo que não faz parte do plano onde está sendo gerado o arco (regra da mão
direita).

Um bloco G02 ou G03 pode definir um arco de qualquer comprimento. O arco pode cruzar
a fronteira dos quadrantes contínuamente.

Antes da execução de um bloco contendo uma interpolação circular, o controle


automaticamente checa as coordenadas do ponto final e do centro do arco. Se foi
programado um arco de geometria impossível, o controle suspende a execução e exibe a
mensagem “CHECAR BLOCO G02/G03”. Convém lembrar que um programa pode ser
checado rapidamente, para verificar esse tipo de erro, usando [CHECA RÁPIDO] ou
através de “EDIÇÃO DE PROGRAMA”, G02 e G03 não são modais. Entretanto, elas
cancelam o modo G00 e habilitam o modo G01 para os blocos subsequentes.

3.4.1 - TELA PARA ENTRADA DE DADOS

A tabela a seguir descreve os “prompts” que o Controle fornece para uma interpolação
circular horária (G02) e anti-horária (G03). A tabela refere-se ao G02 porém para G03 é
identica.

PROMPT DESCRIÇÃO

ARCO H G2

X PTO FINAL X “X” corresponde à coordenada X do ponto final do arco. Ela é usada
apenas para arcos nos planos XY (G17) e XZ (G18). X pode ser
especificada em coordenada absoluta ou incremental. Como
absoluta, X corresponde à coordenada X do ponto final do arco em
relação ao zero programa. Como incremental, X corresponde à
coordenada X do ponto final em relação ao ponto inicial do arco.

Y PTO FINAL Y “Y” corresponde à coordenada Y do ponto final do arco. Ela é usada
apenas para arcos nos planos XY (G17) e YZ (G19). Y pode ser
especificada como coordenada absoluta ou incremental. Como
absoluta, Y corresponde à coordenada Y do ponto final em relação
ao zero programa. Como incremental, Y corresponde à coordenada
Y do ponto final em relação ao ponto inicial do arco.

R73224 55
Z PTO FINAL Z “Z” corresponde à coordenada Z do ponto final do arco. Ela é usada
apenas para arcos nos planos XZ (G18) e YZ (G19). Z pode ser
especificada em coordenada absoluta ou incremental. Como
absoluta, Z corresponde à coordenada Z do ponto final em relação
ao zero programa. Como incremental, Z corresponde à coordenada
Z do ponto final em relação ao ponto inicial do arco.

X CENTRO ARCO I “I” corresponde à coordenada X do centro do arco. Ela é usada para
arcos nos planos XZ (G18) e XY (G17) e pode ser absoluta ou
incremental. Como absoluta, especifica a coordenada X do centro
do arco em relação ao zero programa. Como incremental, especifica
a distância do ponto de inicio do arco até o centro medido ao longo
do eixo X.

Y CENTRO ARCO J “J” corresponde à coordenada Y do centro do arco. Ela é usada para
arcos nos planos XY (G17) e YZ (G19) e pode ser absoluta ou
incremental. Como absoluta, especifica a coordenada Y do centro
do arco em relação ao zero programa. Como incremental, especifica
a distância do ponto de início do arco até o centro medido ao longo
do eixo Y.

Z CENTRO ARCO K “K” corresponde à coordenada Z do centro do arco. Ela é usada para
arcos nos planos Z (G18) e YZ (G19) e pode ser absoluta ou
incremental. Como absoluta, especifica a coordenada Z do centro
do arco em relação ao zero programa. Como incremental, especifica
a distância do ponto de inicio do arco até o centro medido ao longo
do eixo Z.

ANG. POLAR (C) Ângulo cujo vértice está num ponto de centro em posicionamento
polar (somente plano XY), medido da direção positiva de “X” até
a linha compreendida entre o ponto final e o vértice (ponto de
centro com posição diferente do “XY” atual.

COMPR. POLAR (R) Raio do arco polar (somente plano XY).

Um movimento deve preceder o bloco contendo o arco polar “R”


é medido do ponto final desse movimento.

ÂNGULO INICIAL (A) Ângulo de uma linha imaginária que um arco polar está tangente
(somente plano XY) um movimento deve preceder o bloco do arco
polar no qual “A” está contido. “A” tem seu vértice no ponto final
desse movimento.

“A” é medido da direção positiva de “X” ao movimento prévio.

56 R73224
3.4.2 - SELEÇÃO DO PLANO

Antes de programar o bloco que executará o arco deve-se programar um bloco especificando
o plano no qual estão contidos os 2 eixos nos quais será desenvolvido o arco. Use:

. G17

Para arco no plano XY. Esse plano é selecionado pelo Controle ao ser ligado.

. G18

Para arco no plano XZ.

. G19

Para arco no plano YZ.

3.4.3 - PROGRAMAÇÃO DO ARCO

Para produzir um arco, o controle precisa conhecer ou estar em condições de calcular:

. O centro do arco.

. O ponto final do arco.

O ponto de início do arco é sempre a posição atual dos eixos.

Existem várias maneiras para se programar um bloco de dados que produza um arco.
Ilustraremos essas maneiras nas seções seguintes.

3.4.4 - INTERPOLAÇÃO CIRCULAR PADRÃO

Como já vimos podemos programar um bloco de dados para produzir um arco em qualquer
um dos planos de trabalho.

Existem duas maneiras de se programar uma interpolação circular padrão:

. Programando o centro e, o ponto final do arco.

Neste caso será produzido um arco cujo comprimento depende do ponto final programado.
Através do ponto final programado, o controle sabe a posição do fim do arco. Para
programar um círculo completo, o ponto de início do arco (posição atual dos eixos) e o
ponto final do arco devem ser o mesmo.

. Programando apenas o centro do arco.

Neste caso sempre será produzido um círculo completo. Como não é programado o ponto
final do arco, o controle assume que ele coincide com o ponto de início, resultando num
círculo completo.

R73224 57
PONTO FINAL E CENTRO DO ARCO

Em coordenadas absolutas, os posicionamentos são especificados com referência ao zero


programa. Assim, pode-se programar o centro e o ponto final do arco diretamente com o
valor de suas coordenadas.

Em coordenadas incrementais, os posicionamentos são especificados com referência à


posição atual dos eixos. Assim, as coordenadas do centro do arco correspondem à
distância até o ponto de início do arco medidas sobre o correspondente eixo. O ponto final
também terá coordenadas que correspondem à distância deste até o ponto de início,
medidas sobre o eixo correspondente.

O programador pode optar entre o sistema de coordenadas absoluto e o sistema de


coordenadas incremental, usando G90 e G91 apropriadamente.

Lembre-se, o ponto de início de um arco é sempre a posição atual dos eixos.

A tabela abaixo mostra as funções usadas para programar arcos em cada um dos planos.

Formato do bloco para arcos padrões para todos os planos:

Se o plano é Programe Por exemplo


o ponto final com o centro com
XY (G17) X e Y I e J G02 XYIJ #
XZ (G18) X e Z I e K G02 XYIK #
YZ (G19) Y e Z J e K G02 YZJK #

A figura 3.8 mostra arcos gerados pela programação do centro e do ponto final, em
coordenadas absolutas e incrementais. A figura refere-se ao plano XY, mas a concepção
para outros planos é a mesma.

Figura 3.8 - Centro e Ponto Final do Arco

Letras maiúsculas = modo absoluto


Letras minúsculas = modo incremental

= Zero programa
= Centro do arco
= Posição atual
= Ponto final

Fig. 3.8

58 R73224
Na figur 3.9 temos exemplos para programar o centro e o ponto final de um arco.

Figura 3.9 - Exemplos de Centro e Ponto Final de um Arco.

ABSOLUTO (G90)

Exemplo:

G99 - cancela função G92

G90 - coordenadas absolutas

G71 - programação em mm

G17 - seleção do plano XY

G0 X56.699 Y50 T01 M06 - posicionam p/ início do arco e troca de ferramenta

001 S650 M03 - corretor 01 - rotação liga eixo

Z5. - posiciona rápido

G1 Z-3. F200. - aproxima para dentro da peça

G02 X135.355 Y110.355 I100 J75 - interpolação

GZ0 M05 - afastamento

M02 - fim de programa

R73224 59
INCREMENTAL (G91)

Exemplo

G99
G90
G71
G17
G00 X56.699 Y50 T01 M06
O01 S650 M03
Z5.
G91
G1 Z-8 F200
G2 X78.656 Y60.355 I43.301 J25.
GZO M05
M02

Quando é programado somente o centro de um arco, o controle gera um círculo completo.


O controle assume que o ponto final é o mesmo que o ponto de início.

A tabela a seguir mostra as funções que devem ser usadas para programar o centro do arco
em cada um dos três planos.

Funções para Centro dos Círculos somente para os três planos.

Se o plano é Programe o centro com Por exemplo


XY (G17) I e J G02 IJ
XZ (G18) I e K G02 IK
YZ (G19) J e K G02 JK

60 R73224
A figura 3.10 mostra o conceito visto de programar o centro do círculo somente. Esta vista
é para o plano XY somente, mas o conceito aplica-se aos outros planos também.

ABSOLUTO

G99
G90
G71
G17
G00 X56.699 Y50. T01 M06
O01 S550 M08
M03
Z5.
G1 Z-3. F200
G2 I100. J75. (ARCO COMPLETO)
GZO M05
M02

INCREMENTAL
G99
G90
G71
G17
G00 X56.699 Y50. T01 M06
O01 S550 M08
M03
Z5.
G91
G1 Z-8. F200
G2 I43.301 J25. (ARCO COMPLETO)
GZO M05
M2

R73224 61
3.4.5 - ARCOS POLAR

Você pode programar arcos usando posicionamento polar, porém, somente no plano XY
(G17). Se você tentar executar um arco polar em outro plano, o comando interromperá a
execução e exibirá a mensagem “CHECAR EIXOS E PLANO”.

Arcos polares podem usar as palavras - R, A ou C em várias combinações.

R- Informa o Raio partindo de um ponto que é tangente ao final do movimento


executado previamente.

R deve ser programado como um valor absoluto.

A- Informa um ângulo que se origina na posição atual dos eixos.

Quando A for absoluto é medido a partir da linha positiva de X.

Quando for incremental ele é medido a partir de um prolongamento da linha do


movimento prévio.

C- Informa um ângulo que se origina no centro polar.

Quando C for absoluto ele é medido a partir da linha positiva de X. Quando C for
incremental ele é medido a partir de uma linha imaginária que une o centro do raio
a posição atual da ferramenta.

Há 6 combinações possíveis para interpolação circular polar a saber.

.R . RA
. RAC . RC
.C . CIJ

3.4.6- INTERPOLAÇÃO CIRCULAR POLAR SOMENTE COM R

Quando somente a palavra R é usada para definir um movimento circular polar, ela define
um círculo completo.

O círculo tem um valor do Raio igual a R e inicia-se no ponto que é tangente ao fim do
último movimento.

R deve ser absoluto. Se for programado incremental terá o mesmo efeito do absoluto.

62 R73224
Um movimento prévio deve ser feito antes do bloco contendo a interpolação circular polar.
Caso o movimento anterior seja de valor = 0 o comando exibirá a mensagem
“COMPRIMENTO REFERÊNCIA = 0”

Zero programa

Ponto de tangência e posição


atual da ferramenta

Exemplo:

N0010 G99
N0020 G90


N0060 G00 X40 Y10
N0070 G01 X85. Y25.
N0080 G02 R20.
ou
N0090 G03 R20.

R73224 63
3.4.7- INTERPOLAÇÃO CIRCULAR POLAR R/A

Quando somente R e A forem usados num bloco de interpolação polar o resultado será um
círculo completo.

O círculo terá o raio no valor de R e o seu início será no ponto final do último movimento
programado.

O círculo será tangente ao ângulo especificado por A.

R deve ser absoluto. Se R for programado no sistema incremental o efeito será o mesmo
do sistema absoluto.

Um movimento diferente de zero deverá preceder o bloco que contenha o arco polar.

A palavra A pode ser absoluto ou incremental.

Quando A for absoluto, o ângulo do qual o círculo será tangente é medido da linha positiva
de X.

Quando A for incremental ele será medido a partir de um prolongamento do movimento


anterior.

Zero programa
Posição atual
N0010 G99
N0020 G90


N0080 G00 X20. Y15.
N0090 G01 X85. Y55. F800.
N0100 G03 R20. A60

64 R73224
3.4.8- INTERPOLAÇÃO CIRCULAR POLAR USANDO R A C

Estas palavras R, A e C são usados num bloco para definir um movimento circular polar.

O arco tem raio R e seu início é no ponto final do último movimento programado. O arco
é tangente ao ângulo especificado por A.

O final do arco é especificado por C.

R deve ser absoluto. E um movimento diferente de zero deve preceder o bloco que
contenha as informações do arco.

O ângulo do qual o arco será tangente será definido por A.

O vértice deste ângulo será no ponto final do movimento que precede o bloco do arco.

O ângulo A pode ser absoluto ou incremental. Quando A for absoluto ele é medido de uma
linha positiva do eixo X. Quando A for incremental ele é medido a partir de um
prolongamento da linha do movimento prévio.

O comprimento do arco, ângulo C, tem seu vértice no centro do arco.

O ângulo C pode ser absoluto ou incremental. Quando C for absoluto ele é medido a partir
de uma linha positiva de X até o final do arco em relação ao centro do próprio arco.

Quando C for incremental ele é medido a partir de uma linha que une o ponto inicial do
arco ao ponto de centro do arco.

A 50o
a 28.198o

R 15.
X 60.
Y 40.
c-155.
X 71.490 C-15.
N0010 G99 X 10. Y 30.358 X 85.979
N0020 G90 Y 20. (Pto. Centro Y 26.476
" do raio)
"
N0080 G00 X10. Y20.
N0090 G01 X60. Y40.
N0100 G02 R15. A50. C-15.
ou
N0100 G02 R15. A50. c-155.
ou
N0100 G02 R15. a28.198 C-15.

R73224 65
3.4.9- POSICIONAMENTO POLAR USANDO R C

As palavras R e C podem ser usadas para executar uma interpolação circular polar.

O arco tem o raio definido por R e o comprimento do arco é definido pela palavra C.

R deve ser absoluto e um movimento diferente de zero deve preceder o bloco que contenha
interpolação.

O arco será tangente ao último ponto programado.

O comprimento do arco, ângulo C, têm seu vértice no centro do raio.

O ângulo C pode ser absoluto ou incremental.

Quando C for absoluto ele é medido de uma linha positiva de X que se extende do centro
do arco.

Quando C for incremental é medido a partir da linha que une o centro do raio e o ponto
inicial do arco.

N0010 G99
N0020 G90
"
"
N0080 G00 X10. Y10.
N0090 G01 X40. Y30.
N0100 G03 R20. C30.
ou
N0100 G03 R20 c86.309

66 R73224
3.4.10- INTERPOLAÇÃO CIRCULAR POLAR USANDO C

Quando somente a palavra C for usada para definir um movimento circular polar, ela
produz um arco que tem o comprimento determinado pela palavra C.

O centro do arco é sempre o último centro polar definido.

Se não for definido, o vértice será no zero programa. Consequentemente o raio do arco é
o comprimento da atual posição da ferramenta até o zero programa.

O ângulo C pode ser absoluto ou incremental. Quando C for absoluto, ele é medido a partir
da linha positiva de X que está passando no zero programa.

Quando C for incremental ele é medido a partir da linha que une o zero programa até a
posição atual da ferramenta.

Z e r o
programa
Posição atual da
ferramenta

N0010 G99
N0020 G90


N0100 G01 X40. Y-16.
N0110 G03 C30.
ou
N0120 G03 c51.801

R73224 67
3.4.11- INTERPOLAÇÃO CIRCULAR POLAR USANDO C I J

Quando C, I e J forem usados para definir um movimento circular polar, produzem um arco
que tem o comprimento determinado por C.

O raio do arco é a distância da posição atual dos eixos até o centro do raio definido por I
e J.

I e J determina o centro do arco. Eles podem ser absoluto ou incremental.

Quando absoluto o centro é medido a partir do zero programa.

Quando I e J for incremental, eles indicam a distância e direção do ponto de início do arco
para o centro do arco.

O comprimento do arco, ângulo C, tem seu vértice no centro do arco ele também pode ser
absoluto ou incremental.

Quando C for absoluto, ele é medido a partir de uma linha positiva de X que passa pelo
centro do arco.

Quando C for incremental, ele é medido a partir de uma linha que une o ponto de início
do arco até o centro.

N0010 G99 Zero programa


N0020 G90
"
Posição atual da ferramenta
"
N0080 G00 X42. Y7
N0090 G03 I20 J20. C55.
ou
N0090 G03 i-22. j13. c85.579
ou
N0090 G03 i20. j20. c85.579

68 R73224
3.5 - TEMPO DE PERMANÊNCIA (“DWELL”) - G04

Um bloco G04 programa um tempo de permanência. O tempo da permanência, em


segundos, é definido pela função F (formato 3.2) que aparece no bloco G04. Este tempo
de permanência é modal. Ele é usado por algum bloco G04 subsequente no programa desde
que não haja outra função F programada com algum valor diferente para F.

Caso se queira mudar o tempo de permanência, pode-se especificar uma nova função F
com outro valor num outro bloco G04.

Por exemplo:

BLOCO DE DADOS COMENTÁRIO

.
.
G4 F10.# Executa uma permanência de 10 segundos
.
.
.
.
.
G4# Executa uma permanência de 10 segundos
.
.
.
G4 F5.# Executa uma permanência de 5 segundos
.
.
.
.
.
G4# Executa uma permanência de 5 segundos
.
.

Enquanto o bloco G04 está sendo executado, o tempo de permanência fica em contagem
regressiva do seu valor inicial até zero. Pode-se acompanhar esta contagem regressiva na
página STATUS do Controle.

A permanência pode ser necessária em algumas operações ou pode ser usada para dar ao
operador tempo para ler um comentário no programa da peça na página [STATUS]. Neste
caso o bloco do comentário deve vir imediatamente após o bloco G04.

A função G04 não troca o status ou a função do Controle servindo apenas para inserir uma
pausa por um tempo determinado. Depois que o tempo de permanência foi completado, o
Controle continua a execução com o próximo bloco.

R73224 69
3.5.1 - A tabela abaixo explica os comandos (“prompts”) que o Controle fornece para
G04.

Tabela 15.D

PROMPT PERMANÊNCIA

PERMANÊNCIA G04

SEGUNDOS (F) A função F especifica a quantia de tempo de permanência em


segundos. O formato para F é 3.2. Esta quantia permanece
ativa para blocos G04 que venham a seguir, a menos que uma
nova permanência seja programada.

3.6 ARCO TANGENTE

A função G05 permite programar 2 retas que são tangentes a um arco cujo raio e
coordenadas de centro são conhecidos.

Os pontos de tangência são automaticamente determinados pelo comando, aliviando a


necessidade do programador calcular estes pontos.

G05 é modal e permanece em efeito até que seja programado uma função G00, G01, G02,
G03 ou G73.

G05 executa interpolação circular previamente definido pelos planos G17, G18 ou G19.

Este capítulo será descrito para o plano XY (G17), porém, as mesmas informações são
aplicadas para outros planos.

Se a ferramenta estiver em um ponto qualquer e for ativado um bloco contendo G05 e


informações do centro do arco e o raio, o comando posicionará a ferramenta em avanço de
trabalho, para o ponto de tangência do arco.

A escolha entre os 2 pontos de tangência possíveis é determinado pelo sinal do raio


especificado por Q.

As coordenadas do primeiro ponto de tangência podem ser armazenados pelo comando


para facilitar o término do percurso. Neste mesmo ponto se o programador desejar.

Se uma função G05 está ativa e programa-se um G05 ou um G01 instruirá ao comando para
continuar ao longo do arco até atingir um ponto de tangência do qual ele possa continuar
num percurso linear para a nova meta.

70 R73224
Se o comando ativo é um G05 a meta pode ser um outro ponto tangente de um novo arco
especificado com G05.

Uma função G05 sem dados, informa ao comando para terminar o percurso no primeiro
ponto tangente previamente armazenado.

As funções usadas no G05 consiste primeiramente nas coordenadas do centro do arco


(X,Y,Z) e a função Q especifica o raio do arco.

se a função Q não for definida, ou se Q for igual a zero determinará um ponto (canto vivo).

Se o valor de Q for positivo o arco será executado no sentido anti-horário.

Se o valor de Q for negativo o arco será executado no sentido horário.

O centro do arco pode ser determinado usando coordenadas cartesianas ou coordenadas


polares seguindo os mesmos conceitos para movimentos polares.

Lembrando que, programação polar somente é possível no plano XY.

A função G05 admite as seguintes funções:

A, B, C, I, J, R, X, Y (K e Z para outros planos).

Q - Especifica o raio do arco. “+” para anti-horário; “-” para horário.

N - Número do bloco (opcional).

H,E,P - Admite sub-rotina ou sub-programa.

F - Admite um avanço.

M,S,T,O - Admite funções miscelâneas, velocidade do eixo, número da ferramenta,


número do corretor.

L - Admite repetição de blocos.

D - Não especifica divisão de segmento quando usado juntamente com a


função G05.

A função D, neste caso, informa ao comando para armazenar a coordenada


do ponto de tangência para ser usada no término do percurso.

R73224 71
Uma função G05 em que não é especificado as coordenadas de centro do arco é um comando
especial que é utilizado para fechar o percurso.

O comando reverte o movimento P/ G01.

Se um parâmetro D estava especificado em um bloco contendo G05 previamente determinado


e você programa um bloco somente com G05 haverá um movimento para o ponto de tangência
daquele primeiro arco, que foi memorizado pelo comando através da função D.

Veja exemplo abaixo:

81.28
7.62 10.16

62.23
57.15

7.112
41.91 7.62

30.48 5.588

16.848
4.064
5.08

29.21
35.56

57.15
63.5

86.36

100.33

114.3

X0 Y81.88

G05 X35.56 Y62.23 Q-7.62 D


X29.21 Y30.48 Q 5.08
X63.5 Y57.15 Q-10.16

G01 X100.33 Y57.15 Q 7.112


X86.36 Y16.848 Q 5.588

G02 I95.25 J0 X114.3 Y0 Q 4.064

G01 X57.15

G05 X5.08 Y41.91 Q-7.62

G05

G00 X0 Y81.28

72 R73224
3.6.1 - FUNÇÃO Q : CHANFRO OU ARREDONDAMENTO

Esta funçÃo quando programada juntamente com as funções G1,G2 e G3 provocará a


inserção de um chanfro ou raio,entre o movimento gerado pelo bloco que contém a função
Q e o bloco seguinte.
Se o valor de Q for positivo especificará o raio do arco a ser inserido entre os dois
movimentos,e se o valor de Q for negativo especificará a dimensão do chanfro a ser
inserido entre os dois movimentos.

EXEMPLO:

.
.
.
G1 XY
X60. Q10.
Y60. Q-5.
X Q15.
Y
.
.
.

.
.
.
N60 GXY
N70 G1 X70.Q10.
N80 X30.Y50.
N90 X
N100 Y
.
.
.

.
.
.
N50 GXY
N60 G1 Y30.
N70 X10.
N80 X20.Y20.
N90 G2 X40.Y0 120.J0Q5.
N100 G1X.
.
.
.

R73224 73
CAPÍTULO 4 - MODO DOS EIXOS

4.0 - DESCRIÇÃO DO CAPÍTULO

Este capítulo descreve como funciona um bloco de dados que contém uma função G do
grupo que define o modo dos eixos.

Após a leitura deste capítulo, o usuário saberá como:

. Selecionar o plano no qual se deseja realizar uma interpolação circular e/ou compensação
de ferramentas.

. Programar compensação do raio da ferramenta.

. Selecionar um corretor de posicionamento.

4.1 - SELEÇÃO DE PLANO - G17, G18 E G19

As funções G17, G18 e G19 permitem selecionar o plano no qual se pretende executar
interpolação circular (incluindo um arco de interpolação helicoidal e/ou uma compensação
de diâmetro da ferramenta.

. G17 - Seleciona o plano XY

. G18 - Seleciona o plano XZ

. G19 - Seleciona o plano YZ

O controle assume G17 (por default) assim que for ligado e no final do programa (após um
M02 ou M30, no programa principal).

Essas funções são modais. Uma vez selecionada ela permanece ativa até que o Controle
execute outra função desse grupo ou execute M02 ou M30 no programa principal.

No bloco em que for programada uma dessas funções não deve ser programada nenhuma
outra função, com exceção da função N. Se isto não acontecer, quando da execução, o
Controle produzirá a mensagem de erro - “COD NÃO CONHECIDO” - e a execução será
interrompida.

Se antes de um bloco que especifica uma interpolação circular não houver um bloco
especificando o plano no qual se dará a operação, o Controle interromperá a execução e
exibirá a mensagem “CHECAR EIXO E PLANO”. Isto somente não acontecerá se a
interpolação for no plano XY (G17), já que o Controle assume essa função “por default”.

Com relação a compensação de raio da ferramenta, ao ativar essa função, através dos
códigos G41 ou G42, simultaneamente o movimento de interpolação linear compensado
fica limitado ao plano selecionado. Por exemplo, se a função G17 está ativa e se for
programado algum movimento em XZ ou YZ, o Controle, quando da execução interromperá
a mesma e exibirá uma mensagem de erro.

74 R73224
4.2 - COMPENSAÇÃO DE RAIO DA FERRAMENTA G41, G42, G40

A compensação de raio da ferramenta permite corrigir dimensões da peça através de


valores do raio da ferramenta.

O valor do raio da ferramenta a ser compensado é obtido através do diâmetro da


ferramenta, programando-se as dimensões da peça e deixando que o Controle compense
automaticamente o valor do raio da ferramenta. O valor do raio pode ser incrementado para
mais ou para menos especificando um diâmetro maior ou menor.

O usuário introduz os valores de diâmetro e comprimento da ferramenta num endereço


(existe 1 grupo de 96 disponíveis) da página [CORREÇÃO FER]. Para chamar a
compensação no programa, usa-se a função O e um valor numérico que corresponde ao
endereço alocado na página [CORREÇÃO FER]. Quando a compensação é chamada
durante a execução do programa, o Controle acessa o valor do diâmetro e o divide por dois
para obter o valor compensado.

Se o valor do diâmetro inserido na página [CORREÇÃO FER] for negativo (-), o Controle
compensará “para dentro” da trajetória programada para a ferramenta. Se for positivo, o
controle compensará “para fora” da trajetória programada. Assim, ao se programar uma
determinada trajetória esta pode ser ajustada prá mais (através de uma entrada positiva)
ou prá menos (através de uma entrada negativa).

A compensação será ativada somente em movimentos especificados pelas funções G01,


G02, G03 e G73. A compensação é automaticamente cancelada em movimentos rápidos
(G00), desde que as próximas informações de movimento não sejam movimentos de
trabalho (G01, G02, G03, G73). A compensação será automaticamente restabelecida
quando um G01, G02, G03, G73 for programado depois do mov. rápido.

Exemplo:

Corretor D.5.

G99
G90
G17
G71
GX10.Y20 T01 M06
O01 S600 M03
Z-5 F800
G41
G01 X15.Y15
X50.
G00 X55.5
G1 X76
G40
X80 Y20
GZ0 M05
M02

R73224 75
4.2.1 - CANCELAMENTO DA COMPENSAÇÃO DE RAIO - G40

A função G40 cancela as funções G41 e G42 (compensação de raio da ferramenta à


esquerda e à direita respectivamente). G40 é modal e assumido pelo Controle, quando este
é ligado e no fim de um programa.

Um bloco G40 cancela a compensação, entretanto ela somente será removida no próximo
movimento dos eixos (ou num movimento simulado) programado depois do bloco G40.
Esse movimento (que remove a compensação) deve ocorrer antes de qualquer bloco de
dado que contenha uma função G que não especifica uma movimentação nos eixos, ou
antes de um bloco de dados com a função O.

4.2.2 - FERRAMENTA À ESQUERDA - G41

A função G41 seleciona compensação de raio quando a ferramenta se posicionar à


esquerda da peça usinada tendo como referência a direção do percurso.

Figura 4.1 - G41 - Ferramenta à esquerda

Programando um bloco somente com G41, a compensação somente será interpolada no


próximo movimento programado para os eixos.

G41 é modal e cancela G40.

76 R73224
4.2.3 - FERRAMENTA À DIREITA - G42

A função G42 seleciona compensação de raio quando a ferramenta se posicionar à direita


da peça usinada, tendo como referência a direção do percurso.

Figura 4.2 - G42 - Ferramenta à direita

Programando um bloco somente com G41, a compensação somente será interpolada no


próximo movimento programado dos eixos.

G42 é modal e cancela G40.

4.2.4 - SELEÇÃO DO PLANO PARA COMPENSAÇÃO

O controle permite a programação da compensação do raio da ferramenta para movimento


em qualquer um dos três planos de trabalho.

Para isso basta programar o plano no qual a compensação ocorrerá (usando G17, G18 ou
G19), antes de a compensação ser ativada.

. G17 - compensação no plano XY

O controle assume esta função assim que é ligado, portanto, só necessita ser programada
se estiver ativo um outro plano. G17 cancela G18 e G19.

. G18 - compensação no plano XZ

. G19 - compensação no plano YZ

R73224 77
Quando G41 ou G42 está ativo, pode-se programar movimento em todos os eixos,
entretanto os movimentos serão compensados somente nos eixos do plano selecionado.

Assim, não é possível programar movimentos combinados de eixos que não pertençam ao
mesmo plano selecionado.

Por exemplo:

Se G17 (plano XY) está ativo e for programado um bloco tal como:

G01 X1. Z1. #

Não será possível a sua execução enquanto a compensação da ferramenta estiver ativa. O
controle, assim que ler este bloco, gerará a mensagem “EIXO/PLANO CRF ILEGAL”.

4.2.5 - RESTRIÇÕES NA COMPENSAÇÃO

Uma vez que estejam ativas as funções G41 ou G42, certas funções G não são permitidas.

. G17, G18 ou G19 - seleção de plano

. G22 ou G23 - interpolação helicoidal (ver manual avançado)

. G30 ou G31 - imagem espelho (ver manual avançado)

. G92 - define zero programa

. G99 - cancela G92

Se o Controle encontrar alguma dessas funções G a execução será interrompida e a


mensagem de erro “...EM COMPENS RAIO” será exibida.

Deve-se programar G40 para cancelar a compensação, antes de programar essas funções.

Deve-se também programar G40 (cancelando a compensação) antes de passar de G41 para
G42 (ou vice-versa) ou antes de chamar uma nova compensação (através da função O).

Portanto se você precisar programar alguma das funções acima, primeiro cancele a
compensação com G40, então restabeleça a compensação de ferramenta desejada com
G41 ou G42.

Uma consideração final sobre compensação de raio da ferramenta é o “Look Ahead”


requerido pelo Controle. Através dele, o Controle examina o próximo bloco de dados a ser
executado e checa se a ferramenta tangenciará a trajetória programada, levando em conta
o diâmetro da ferramenta e as coordenadas programadas. O controle não compensará um
movimento “externo” menor que o raio da ferramenta se o movimento seguinte for um
movimento “interno” maior que o raio da ferramenta. (Será exibida a mensagem - “DIÂM
FERR EXCESSIVO” - , após o movimento “externo” ter sido executado).

78 R73224
Figura 4.3

; Diâm. Ferr. 5 nome


G99 cancela G92
G90 Coorden. absolutas
G17 plano XY
G71 prog. em mm
G00 X30. Y20. T01 M06 posição -1 p/ troca de ferramenta
001 S600 M03 Corretor 001, rpm liga eixo horário
Z-5. posicionar em Z
G41 ativa corretor
G01 X35. Y15. movimento 2
X70. movimento 3
Y12.5 (igual
ao raio da
ferram.) movimento 4
X100. movimento 5
G40 cancela
X105. Y18. movimento 6
GZ0 M05 afasta em z e cancela
corretor
M02 fim de programa

Importante: Um movimento “interno” é aquele no qual a ferramenta ao mudar a direção


de sua trajetória gira em torno de seu centro instantâneo de rotação (CI), o
qual nesse caso está sobre o próprio eixo de rotação da ferramenta, sem alterar
sua posição em relação à peça. Por exemplo, se a ferramenta esta se deslocando
à esquerda da peça (G41) e “vira” para esquerda, ela executa um movimento
“interno”.

Figura 4.4. - movimento “interno”

MOVIMENTO “INTERNO”

OBSERVE QUE COMO O C.I. ESTÁ SOBRE O EIXO DE ROTAÇÃO DA


FERRAMENTA, O RAIO DE GIRO É NULO.

R73224 79
Um movimento “externo” é aquele no qual a ferramenta ao mudar a direção de sua
trajetória gira em torno de seu centro instantâneo de rotação (CI), o qual nesse caso esta
sobre o ponto de interseção das duas trajetórias, mudando sua posição relativa se
posicionando para iniciar o movimento na outra direção. Por exemplo, se a ferramenta está
se deslocando à esquerda da peça (G41) e “vira” para direita, ela faz um movimento
“externo”.

Figura 4.5 - movimento externo

MOVIMENTO “EXTERNO”

OBSERVE QUE COMO O C.I. NÃO ESTÁ SOBRE O EIXO DE ROTAÇÃO DA


FERRAMENTA O RAIO DE GIRO NÃO É NULO, É IGUAL AO RAIO DA
FERRAMENTA.

O controle compensará um movimento “interno” que é seguido por um movimento


“externo”.

Figura 4.6. - Restrições ao “Look Ahead”

ERRADO CORRETO

MOVIMENTOEXTERNO MOVIMENTOINTERNO

MOVIMENTOEXTERNO MOVIMENTOINTERNO

80 R73224
4.2.6.- EXEMPLOS DE COMPENSAÇÃO

Para inserir ou remover uma compensação de ferramentas pode-se fazer uso de 2 técnicas:

. Através de um movimento de entrada - programando-se um movimento de um ou ambos


os eixos do plano de trabalho que seja igual ou maior que o raio da ferramenta (metade
do valor do diâmetro introduzido na página “CORREÇÃO FER”) e que posicione a
ferramenta no ponto desejado.

. Através de um movimento simulado - programando-se um posicionamento de um ou


ambos os eixos do plano de trabalho, com o objetivo apenas de acionar a compensação.
O movimento simulado somente produz movimento porque ele aciona ou remove
compensação. Quando a compensação é acionada o movimento simulado instrui o
Controle onde a ferramenta está descompensada. Pela capacidade que o Controle tem de
ler o próximo movimento, ele calcula como aplicar a compensação corretamente.
Quando a compensação é removida, o movimento simulado fornece ao Controle um
movimento “Look Ahead” (para evitar que haja choque com a peça).

Os exemplos seguintes ilustram como usar cada uma dessas técnicas.

O exemplo que se segue ilustra como usar um movimento de entrada para chamar a
compensação.

Figura 4.7 - Exemplo de compensação com movimento de entrada.

R73224 81
BLOCO DE DADOS COMENTÁRIOS

; MOV ENTRADA Nome do programa.

G99 Cancela G92.

G90 Sistema coordenadas absolutas.

G71 Programa em mm.

G17 Seleciona-se plano XY.

G00 X50. Y50. T01 M06 Posiciona e troca de ferramenta.

O01 S500 M08 Corretor O01 - rpm 500 liga refrigerante.

M03 Liga eixo sentido horário.

X5. Y5. Posição entrada.

Z5. Aproxim. rápida.

G01 Z-10 F100 Entrada na profundidade Z-10 avanço 100 mm/min.

G41 Estabelece que a compensação se dará com a ferramenta


se posicionando à esquerda da trajetória a percorrer.

X0 Y0 F200 Através deste movimento de entrada que é maior que o


raio da ferramenta a compensação é ativada com avanço
de 200mm/min.

X-40. Movimento 1.

Y15. Movimento 2.

G02 X-25.Y30.I-25.J15. Movimento 3.

X0 Movimento 4.

Y0 Movimento 5.

G40 Cancela compensação com o valor sendo removido no


próximo movimento em XY.

X5. Y-5. Retorno da ferramenta até o ponto de partida com a


remoção da compensação.

G0 Z0 O0 Movimento rápido para posição.

M02 Inicial cancela corretor.

82 R73224
MOVIMENTO SIMULADO

Nota: Uma situação especial existe para movimentos rápidos dentro da compensação.

A posição da ferramenta no fim do posicionamento rápido é a posição programada


descompensada a menos que o próximo movimento seja um avanço de trabalho. Se
o próximo movimento é um avanço de trabalho, a ferramenta vai em rápido, para a
posição compensada para início do movimento em avanço de trabalho

BLOCO DE DADOS COMENTÁRIOS

; MOV. SIMULADO Nome do programa.

G99 Cancela G92.

G90 Sistema coordenadas absolutas.

G71 Programa em mm.

G17 Seleciona-se plano XY.

G00 X50. Y50. T01 M06 Posiciona e troca de ferramenta.

O01 S500 M08 Chama a compensação que está no endereço 1 da


página correção ferramenta (5mm dia) rpm 500 - liga
refrigerante de corte.

M03 Liga eixo árvore sentido horário

R73224 83
X5. Y5. Posição entrada

Z5. Aproxim. rápida

G01 Z-10 F100 Entrada na profundidade Z-10 avanço 100 mm/min.

G41 Estabelece que a compensação se dará com a ferramenta


se posicionando à esquerda da trajetória.

Y0 Através deste movimento simulado a compensação é


ativada com a ferram. se posicionando no lado de fora
do contorno da peça na coordenada Y-2.5 e em condições
de executar o próximo movimento em X.

X-40 Movimento 1

Y15 Movimento 2

G02 X-25.Y30.I-25.J15. Movimento 3

X0 Movimento 4

Y0 Movimento 5

G00 Z10. Afastamento rápido Z10.

G40 Cancela compensação com o valor sendo removido no


próximo movimento em XY.

X-7.5 Y-7.5 Movimento em rápido até o ponto de partida do contorno


interno (já com 2,5 do corretor).

G42 Estabelece que a compensação se dará com a ferramenta


se posicionando à direita da trajetória programada.

G1 Z-1 F200 Desce a ferramenta com avanço de 200 mm/min.

Y5. Movimento simulado Y5 não há movimento.

X-15. Movimento 6

84 R73224
Y10. Movimento 7

X-35. Movimento 8

Y15. Movimento 9

G02 X-25.Y25.I.25 J15. Movimento 10

X-5. Movimento 11

Y5. Movimento 12

X-7.5 Movimento simulado que impede que a ferramenta


chanfre a peça o movimento de valor igual ao raio da
ferramenta, é um “Look Ahead”, ou seja, impede que a
ferramenta execute toda trajetória do movimento 12.

G00 Z10. Afastamento da ferramenta até o nível 10m.

G40 Cancela a compensação que será removida com o


próximo movimento em X ou Y.

X0 Y0 Movimento em rápido até o ponto de partida.

GZ0 Movimento rápido para posição inicial cancela corretor.

M02 Fim de programa

R73224 85
4.3 - CORRETOR DE FIXAÇÃO G45

A função G45 permite selecionar um corretor de fixação que se encontra na página


[CORRETORES FIX] do Controle. Corretores de fixação são compensações do Zero
Máquina ao Zero Programa ou do Zero Programa até uma nova posição desejada, nos eixos
X, Y, Z ou W. Portanto eles podem ser usados para alterar o Zero Programa por uma
quantia pré-determinada.

Existem até 96 corretores de fixação que podem ser usados (numerados de 1 a 12 em cada
página [CORRETORES FIX].

O programa pode especificar um número para o corretor, ou pode sequenciá-los através


de uma seleção de corretores, colocados em sequência, permitindo ao operador determinar
quantos corretores de fixação serão usados.

Com uma programação conveniente, é fácil colocar todos os corretores em sequência, para
que sejam executados pela máquina com uma determinada ferramenta, antes de prosseguir
para a próxima ferramenta. Isso elimina a realização das trocas de ferramenta a cada
correção de fixação. Um programa escrito dessa maneira pode além disso, ser executado
com nenhuma, uma, ou várias correções de fixação sem modificação no programa.

Para invocar explicitamente um corretor de fixação, programa-se a função G45 seguida


pela função O e o número do endereço do corretor na página [CORRETORES FIX]. Por
exemplo, se for programado:

G45 001#

Será selecionado o corretor de posição que está no endereço 1 da página [CORRETORES


FIX].

Após terem sido invocadas, as correções de fixação são interpoladas durante o próximo
movimento programado dos eixos. Elas estarão completamente ativadas quando todos os
eixos especificados pelo corretor de fixação tiverem sido movidos.

Se o campo último O , da página [CORRETORES FIX], é zerado pelo operador, os


corretores de fixação ficam desabilitados e o comando G45 é ignorado pelo Controle.

Para cancelar correções de posição, programa-se:

G45 O00#

As correções serão removidas durante o próximo movimento programado dos eixos


afetados pelas correções de fixação.

G45# incrementa para o próximo número de corretor. Se o número de corretor estava igual
ou maior que o campo último O (fixado pelo operador), o número de corretor voltará para
o número 1. Se o número de corretor era zero, ele permanecerá zero.
Um comando G45 junto com uma chamada de subrotina especificada por H, E, e/ou P,
exceto E sozinho, (E sozinho não é uma chamada de subrotina) fará com que seja
executado primeiro a subrotina. Então será executado o comando G45# (incrementando
o número do corretor se ele não for zero) . Se o Controle incrementou fazendo o número
do corretor igual a 1 ou se o número do corretor é 0, ele processará o próximo bloco, caso
contrário, a subrotina é chamada novamente e a sequência se repete.

86 R73224
A programação de um bloco de dados com a função G45 e a função E, sem a função H ou
P, é um comando sem validade para o Controle.

Se a função O é incluída num bloco G45 com chamada de subrotina, ela especificará o
primeiro número de corretor. Isso não tem efeito se o campo PROX.FIXAÇÃO está
zerado.

Um comando com G45 e H, sem E ou P, fará com que seja executado primeiro a correção
de fixação e a seguir o desvio especificado por H, a não ser que o Controle tenha
incrementado o número do corretor de volta para 1 ou o número do corretor está zerado,
neste caso o desvio não ocorre, sendo executado o próximo bloco. Neste formato não é
permitido usar a função O.

Por exemplo:

O01 X100.
G99 O02 X150.
G90 O03. X200.
G17 O04. X250.
G71
GX50. Y-50. T01 M6
O01 S500 M08
M03
G45 O01
N100 GXY
Z5.
G1 Z-5. F200
X30.
Y20.
X0
Y0
GZ5.
G45 H100
G45 O0
X50. Y150
GZO M05
M02

R73224 87
Se o operador deseja rodar o programa sem nenhuma correção de fixação, basta selecionar
último O igual a 0 na página [CORRETORES FIX]. Se ele deseja rodar o programa apenas
uma vez usando o corretor número um, basta selecionar último O igual a 1 na página
[CORRETORES FIX]. Para rodar o programa cinco vezes usando os corretores de 1 a 5,
basta selecionar último O igual a 5. Nesse caso será executado o “loop” do G45 ao N100
até terem sido feitas todas as cinco correções e então será ignorado o desvio, indo para o
próximo bloco G45 O 0.

No exemplo acima, o programa não requer troca de ferramentas. Isso possibilita minimizar
a troca de ferramentas no caso de peças que requerem vários corretores de fixação.

G99
G90
G17
G71
G0 X50. Y-50 T01 M06; PRIMEIRA FERRAM.
O01 S600 M08
M03
G45 O01
N100 GXY
Z5.
G1 Z-5. F600
X30.
Y20.
X0.
Y0
G Z5.
G45 H100.
G45 O0
GZO M05
G X50. Y50. T02 M06; 2a. FERRAM.
O2 S600. M8
M3
G45 O01
N200 GX15. Y10.
GZ5.
G1 Z-1. F600.
G1 X30.
G2 I15. J10.
G1 X15.
GZ5.
G45. H200.
G45 O0.
GZO MO5
X50. Y150
M02

88 R73224
P6
; PROGRAMA PRINCIPAL
G99
G90
G17
G71
GX50. Y-50.
G45 O01 P8 H80 E100
G45 O01 P8 H150 E350
G45 O0
GZO M05
M02

P8
; SUB PROGRAMA
N80 T01 M06
N90 O1 S500 M08
M03
GXY
Z5.
G1 Z-5. F800.
X30.
Y20.
X0.
Y0.
GZ5.
G45 H-90.
G45 O0
GZO
N100 M05
N150 GX50. Y50. T02
S600 M03
G45 O01
N300 GX15. Y10
O2
G Z-5
G1 Z-1 F800.
G1. X30
G2 I15. J10.
G1 X15.
GZ5.
G45. H300
G45 O0
GZO M05
X50. Y150.
N350. M02

Nos dois exemplos acima o Controle selecionará o ferramental 1, executará a parte do


programa que se refere à ferramenta 1 com todas as correções até o último O selecionada
pelo operador, então ocorrerá a troca pela ferramenta 2 e executará a parte do programa
que se refere à ferramenta 2 com todas as correções, etc. Note que também o programa não
requer troca de ferramenta para que o operador rode o programa sem nenhuma, com uma,
ou várias correções.

R73224 89
CAPÍTULO 5 - CICLOS FIXOS
5.0 - Descrição do Capítulo

Este capítulo abrange as funções G do grupo de ciclos fixos, as quais estabelecem


operações de usinagem repetitivas. Acrescentam-se informações numéricas e parâmetros
para especificar a ação do ciclo.

O controle é provido dos seguintes ciclos fixos e da função de cancelamento:

. G80 - Cancelamento de ciclo fixo. Remove o último ciclo fixo definido do estado ativo.

. G81 - Ciclo fixo de furação. Define operações de furação simples, com tempo de
permanência opcional no fundo do furo.

. G82 - Ciclo fixo de furação com permanência. Define uma operação de furação com um
tempo de permanência opcional no fundo do furo.

. G83 - Ciclo fixo de furação com descarga. Define no ciclo de furação a profundidade
do furo na qual ocorrerá a descarga do cavaco através de uma permanência ou da
retração da ferramenta.

. G84 - Ciclo fixo de roscar. Define um ciclo de rosca direita. Neste ciclo deve-se utilizar
um passador de macho flutuante.

. G85 - Ciclo fixo de mandrilamento. Define um ciclo de furação com retração da


ferramenta na velocidade de avanço especificada.

. G86 - Ciclo fixo de mandrilamento com retração do eixo parado. Define um ciclo de
furação com retração da ferramenta com eixo parado, isto é, sem girar.

5.1 - INTRODUÇÃO

Os ciclos fixos da série G81 a G86 definem movimentos específicos para o eixo Z, segundo
programação que satisfaça as exigências e opções desta série.

Uma vez definido um ciclo fixo num programa, este atuará automaticamente após um
movimento em rápido (G00) no plano XY. Os ciclos fixos são modais e permanecem
ativos até que sejam cancelados com um G80. Se for programado um novo ciclo fixo sem
cancelar o anterior, o comando sempre assume a execução do último ciclo programado, até
que haja o cancelamento.

90 R73224
5.2 - CANCELAMENTO DE CICLO FIXO G80

Um bloco G80 cancela um ciclo fixo ativo. Programa-se esta função quando não mais
deseja-se que um ciclo fixo atue no final de um movimento rápido.

5.3 - CICLO FIXO DE FURAÇÃO - G81

Esta função pode ser usada para operações simples de furação o ciclo será executado tantas
vezes quanto movimentos em rápido no plano XY houverem até o seu cancelamento.
Estando a ferramenta na posição “Z” inicial e feito o posicionamento em rápido nos eixos
X e Y, a ferramenta movimenta-se em rápido até o plano R, fura em velocidade de avanço
até a profundidade final, executando um tempo de permanência opcional, e retorna em
rápido ou em avanço de retração até o plano-R ou a posição “Z” inicial da ferramenta.

G81 e G82 possuem as mesmas funções disponíveis para programação de seus blocos.
Estes são providos como códigos separados a fim de obedecer mais reservadamente às
especificações da EIA RS-274, mas sua ações específicas podem ser idênticas.

Como todo ciclo fixo, G81 é modal. Ele permanece em efeito até ser cancelado pela
função.

5.3.1 - TELA PARA ENTRADA DE DADOS

A tabela a sequir descreve as funções que o Controle possui (os “prompts”) para a função
G81, indicadas no mesmo bloco de informações.

PROMPT DESCRIÇÃO

FURAR G81

PROFUND. Z “Z” é obrigatório para o ciclo fixo G81. Ele programa a


coordenada Z de máxima profundidade (movimento negativo
de Z), quando Z é absoluto (G90). Ele programa a distância
abaixo do plano-R quando Z é incremental (G91). O
movimento é executado com avanço F programado.

PERM-SEGUNDOS D “D” é opcional. Ele especifica o tempo de permanência em


segundos (0,01 a 99,99) no fundo do furo.

R73224 91
PLANO RAPIDO R “R” é opcional. Ele especifica a posição Z do Plano-R. R é
sempre uma posição absoluta do eixo Z. A operação de
usinagem em avanço de trabalho do ciclo fixo ocorre da
posição do plano-R para a profundidade especificada em Z.
Todos ciclos fixos movimentam-se em rápido, para baixo, da
posição “Z” inicial da ferramenta até a posição do plano-R,
quando o ciclo fixo é atuado. Se não for especificado R no
ciclo fixo, o Controle assumirá a posição atual de Z para
iniciar movimento com avanço de trabalho.

AV. TRABALHO F “F” programa a velocidade de avanço para usinagem desde o


plano-R até a profundidade Z. Se F não for programado, o
comando executará um valor “default” (geralmente 2500
mm/min), conforme página Controle de parâmetros.

AVANÇO SAIDA V “V” programa o avanço usado para retrair da profundidade


total. Se V não for programado, o Controle assumirá que a
retração deva ocorrer em avanço rápido.

COD RETRAÇAO P “P” programa a posição de retração da ferramenta entre as


execuções dos ciclos fixos. Se P não for programado, ou é
programado como zero, a ferramenta retrairá até o plano-R
durante o movimento em XY que aciona o ciclo. Se P é
programado com um valor diferente de zero (1 a 250), a
ferramenta retrairá a posição que se encontrava antes do ciclo
fixo ser definido.

X PRE MOV X “X” programa o movimento em X que será executado antes


da execução do ciclo fixo. Este movimento pode ser absoluto/
incremental ou rápido/velocidade de avanço. Se o modo é
rápido o ciclo fixo atuará imediatamente após o movimento,
caso contrário o ciclo não atuará.

Y PRE MOV Y “Y” programa o movimento em Y que será executado antes


da execução do ciclo fixo. Este movimento pode ser absoluto/
incremental ou rápido/velocidade de avanço. Se o modo é
rápido o ciclo fixo atuará imediatamente após o movimento,
caso contrário o ciclo não atuará.

92 R73224
Exemplo de G81

.
.
.
GZ30. #
G81 R2.Z-25.F150 #
X20.Y30. #
X50.Y15. #
G80 #
.
.
.

Avanço Avanço
Rápido de
Trabalho

R73224 93
5.4 - CICLO FIXO DE FURAÇÃO COM PERMANÊNCIA - G82

O ciclo fixo G82 é indicado para alargamento ou operações de furação onde a peça
necessita de uma permanência. Sua operação e programação são idênticas a do ciclo fixo
G81 descrito anteriormente a ferramenta move-se em rápido até o plano-R, fura em
velocidade de avanço até a profundidade final, fornecendo um tempo de permanência
opcional, e retorna ao plano-R ou à posição inicial da ferramenta em rápido ou em avanço
de retração.

G82 e G81 possuem as mesmas funções disponíveis para programação de seus blocos.
Estes são providos como códigos separados a fim de obedecer mais reservadamente as
especificações do EIA RS-274, mas suas ações específicas podem ser idênticas.

Como todo ciclo fixo, G82 é modal. Ele permanece em efeito até ser cancelado como um
bloco de dados G80, ou sobreposto por outro ciclo fixo, que atuará automaticamente após
um subsequente movimento rápido (G00).

5.4.1 - TELA PARA ENTRADA DE DADOS

Os mesmos “prompts” descritos para G81 se aplicam com as mesmas considerações para
G82.

Exemplo de G82

.
.
.
GZ30. #
G82 R2.Z-25.D5.F150 #
X20.Y30. #
X50. #
G80 #
.
.

Avanço Avanço
Rápido de
Trabalho

94 R73224
.
5.5 - CICLO FIXO DE FURAÇÃO COM DESCARGA - G83

Um bloco G83 executa uma operação que inclui um movimento de retração ou uma
permanência para a quebra ou remoção do cavaco. Pode-se especificar uma permanência
e/ou um movimento incremental positivo de Z como ação de quebra cavaco depois de cada
incremento.

Quando a retração total é programada para quebra do cavaco, a ferramenta retrairá


dependendo da programação:

. após cada incremento de profundidade

. para sucessivas profundidades programadas

. ou apenas ao final do ciclo

Quando uma permanência é programada para quebra do cavaco, o ciclo fixo pode ser
programado para efetuar uma retração opcional até o plano-R após cada permanência.

O movimento em rápido, do ciclo fixo, para o plano-R ocorre após cada incremento ou
após cada ação de quebra cavaco, até que a profundidade total seja atingida. A ferramenta
também retrairá em rápido ao plano-R ou à posição inicial da ferramenta após a execução
completa do ciclo.

Como todo ciclo fixo, G83 é modal. Ele permanece em efeito até ser cancelado pela função
G80, ou sobreposto por outro ciclo fixo, que atuará automaticamente após um subsequente
movimento rápido (G00).

5.5.1 - TELA PARA ENTRADA DE DADOS

A tabela a seguir descreve as funções que o Controle possui (os “prompts”) para a função
G83.

PROMPT DESCRIÇÃO

FURAR/DESC. G83

PROFUND. Z Idem a G81

PLANO RAPIDO R Idem a G81

AV. TRABALHO F Idem a G81

R73224 95
INCR. INICIAL I “I” é obrigatório no ciclo fixo G83. Ele programa a magnitude
do primeiro incremento de profundidade que ocorre abaixo do
plano R. Este valor é sempre tratado como um movimento
incremental negativo de Z indiferente do modo (G90 ou G91)
em efeito ou do sinal de entrada. Se J e K não são programados,
I é o valor do incremento constante usado no ciclo.

DELTA INCR Z J “J” especifica a distância incremental a subtrair-se do último


incremento de profundidade para se obter o próximo incremento
de profundidade. Por exemplo, começando-se com o valor
inicial I do incremento de profundidade, os incrementos seguintes
serão:

I - J = 2o. incremento de profundidade

2o. incremento - J = 3o. incremento de profundidade e assim por


diante até que o valor mínimo de incremento K seja obtido. Se
J e K não forem programados, o incremento de profundidade
terá um valor constante igual a I.

MIN INCR Z K “K” especifica o mínimo incremento de profundidade. O valor


de K é usado quando:

último incremento - J < K

O valor de K permanece em efeito depois deste ponto até a


profundidade total do furo ser atingida. Se K e J não forem
programados, o incremento de profundidade terá um valor
constante igual a I.

PERM-SEGUNDOS D “D” programa um tempo de permanência em segundos, (0,01 a


99,99) que ocorre após cada incremento de avanço. Se D não for
programado, não haverá permanência. Se D é programado e W
é omitido do ciclo, o controle assumirá o valor de W = 1.0mm
(ou 0.1 pol.).

QUEBRA CAVACO W “W” especifica o incremento de retração para quebra de cavaco.


Esse é um movimento incremental no sentido positivo de Z que
ocorre em movimento rápido após a ferramenta ter executado
um incremento, se não houver retração da ferramenta ao plano
R a cada incremento de profundidade. Se “W” for programado,
assume valor default de 1mm (ou 0,1 pol). Quando houver
retração ao plano R em rápido após um incremento de
profundidade, a ferramenta retorna até a um valor W em rápido
do último incremento de profundidade com velocidade de
avanço programada, para depois assumir um novo incremento
de profundidade com velocidade de avanço programada.

96 R73224
SEM RETR Z U “U” programa a magnitude de profundidade na qual ocorrerá
uma retração em rápido para o plano-R. Este valor é sempre
considerado uma distância incremental negativa de Z,
indiferente do modo (G90 ou G91) em efeito. Cada vez que
a “Profundidade de corte sem retração” for igual ou maior
que o valor de U, ocorrerá uma retração em rápido no plano-
R. Se U não é programado ou é menor que I, a ferramenta
retrairá ao plano R após cada incremento de profundidade. Se
U é maior que Z mais R, não haverá retração ao plano-R até
que a profundidade final seja obtida.

COD RETRAÇÃO P Idem a G81.

X PRE MOV X Idem a G81.

Y PRE MOV Y Idem a G81

5.5.2 - Exemplos

As figuras seguintes mostram exemplos de programação para várias características do


ciclo fixo G83.

G83 - Exemplo com Permanência e Retração Simples

NOTA: Quando não programado U ocorrerá a retração até o plano-R após cada incremento
de profundidade. Quando P diferente de zero retrairá ao Z inicial no final do ciclo.

.
.
.
GZ25. #
G83 Z-58.I15.R2.F100 D1. #
X30. Y15. #
Y30. #
G80 #
.
.
.

Importante: Depois da retração, a


ferramenta voltará em
rápido, à profundidade
anteriormente atingida
menos o valor de W;
assumido por default. Esta
situação não é descrita na
figura ao lado.

R73224 97
G83 - Exemplo com Permanência, Quebra Cavaco e retração

NOTA: Uso de J, K e U; nenhuma retração de W, com U = 0. e D = 0.

.
.
.
GZ25. #
G83 Z-58.R2.F100 I15.J5.K5.U30.D1. #
X30.Y15. #
Y30. #
G80 #
.
.
.

5.6 - CICLO FIXO DE ROSCAR - G84


A função G84 possibilita a execução de um roscamento à direita em um furo com a utilização
de macho para roscar.

Precaução: Para se evitar danos ao macho, à peça e à máquina, recomenda-se a utilização de


mandril, com passador de macho flutuante para qualquer operação de roscamento.

O ciclo fixo G84 gira o eixo árvore no sentido horário no início do ciclo (interfaceado via PAL)
move-se em rápido ao plano-R e em velocidade de avanço até a profundidade especificada.
Quando a profundidade final é atingida, a rotação do eixo árvore é revertida (sentido anti-
horário) automaticamente. Finalmente a ferramenta retorna em velocidade de avanço à posição
especificada (ao plano-R ou ao Z inicial).

98 R73224
Importante: Por razões de segurança, o Controle não permite o ajuste da velocidade de avanço
e da rotação do eixo árvore nas respectivas chaves de porcentagem de avanço
e rotação, durante a execução do ciclo fixo G84 assumindo, assim, o valor de
100% para ambos. Por este motivo se faz necessária a programação correta
dos valores de rotação do eixo árvore e velocidade de avanço. Também por
razões de segurança, se acionado o botão amarelo [BLK/BLK] para execução
de um ciclo simples com G84, o controle executará o ciclo como se este fosse
um único bloco, sem interrupção dos movimentos implícitos nos blocos. E o
botão [CYCLE STOP] também é desabilitado durante a execução do ciclo
G84.

Como todo ciclo fixo, G84 é modal. Ele permanece em efeito até ser cancelado pela função
G80, ou sobreposto por outro ciclo fixo, que atuará automaticamente após um subsequente
movimento rápido (G00).

5.6.1 - TELA PARA ENTRADA DE DADOS

A tabela a seguir descreve as funções que o Controle possui (os “prompts”) para a função G84.

PROMPT DESCRIÇÃO

ROSCAMENTO G84

PROFUND. Z Idem a G81.

PERM-SEGUNDOS D “D” é opcional. Ele especifica o tempo de permanência em


segundos (0,01 a 99,99) no fundo do furo depois da reversão
de sentido do eixo-árvore e antes que ocorra a retração.

PLANO RAPIDO R Idem a G81.

AV. TRABALHO F “F” programa a velocidade de avanço para usinagem desde o


plano-R até a profundidade Z e o retorno do fundo até a
posição de retração. A função F deverá ser programada
conforme:

F = RPM x passo da rosca.

Se não programado, será assumido o valor default conforme


página controle de parâmetros (geralmente F default = 2500
mm/min).

R73224 99
COD RETRAÇÃO P Idem a G81.

X PRE MOV X Idem a G81.

Y PRE MOV Y Idem a G81.

Exemplo de G84.

NOTA:

RPM = 318
Passo = 1,5 mm
F = 318 x 1.5 = 477

.
.
.
GZ30. #
G84 Z-15.R5.F477 #
X25. Y20. #
X40.Y30. #
G80 #
.
.
.

Avanço Avanço
de Rápido
Trabalho

100 R73224
5.7 - CICLO FIXO DE MANDRILAMENTO - G85

O ciclo fixo G85 possibilita a execução da operação de mandrilamento. Move-se em


rápido até o plano-R, age em velocidade de avanço até a profundidade especificada, atua
uma permanência opcional e então retorna ao plano-R ou ao “Z” inicial em velocidade de
avanço ou em avanço de retração.

Como todo ciclo fixo, G85 é modal. Ele permanece em efeito até ser cancelado pela função
G80, ou sobreposto por outro ciclo fixo, que atuará automaticamente após um subsequente
movimento rápido (G00).

5.7.1 - TELA PARA ENTRADA DE DADOS

A tabela a seguir descreve as funções que o Controle possui (os “prompts”) para a função
G85.

PROMPT DESCRIÇÃO

MANDRILAR G85

PROFUND. Z Idem a G81.

PERM-SEGUNDOS D Idem a G81.

PLANO RAPIDO R Idem a G81.

AV. TRABALHO F Idem a G81.

AVANÇO SAIDA V “V” programa o avanço usado para retrair da profundidade


total. Se V não for programado, o Controle assumirá que a
retração deva ocorrer no valor ativo de F.

COD RETRAÇAO P Idem a G81.

X PRE MOV X Idem a G81.

Y PRE MOV Y Idem a G81.

R73224 101
Exemplo de G85:
.
.
.
GZ25. #
G85 R2.Z-20.F40 V150 D1. #
X30.Y40. #
Y20. #
G80 #
.
.
.

Avanço Avanço de Avanço de


Rápido Trabalho F retorno V

5.8 - CICLO FIXO DE MANDRILAMENTO COM SAÍDA DE EIXO PARADO - G86

O ciclo fixo G86 possibilita a execução da operação de mandrilamento com a saída do eixo
parado. Move-se em rápido ao plano-R, em velocidade de avanço até a profundidade
especificada, atua um tempo de permanência opcional, o eixo pára de girar e então retorna
a ferramenta ao plano R ou ao “Z” inicial em avanço de retração ou rápido.

Como todo ciclo fixo, G86 é modal. Ele permanece em efeito até ser cancelado pela função
G80, ou sobreposto por outro ciclo fixo, que atuará automaticamente após um subsequente
movimento rápido (G00).

5.8.1 - TELA PARA ENTRADA DE DADOS

A tabela a seguir descreve as funções que o controle possui “Prompts” para a função G86.

PROMPT DESCRIÇÃO

MAND PRD EIXO G86

PROFUND. Z Idem a G81.

PERM-SEGUNDOS D Idem a G81.

102 R73224
PLANO RAPIDO R Idem a G81.

AV. TRABALHO F Idem a G81.

AVANÇO SAIDA V “V” programa o avanço usado para retrair da profundidade


total. Se V não for programado, o Controle assumirá que a
retração deva ocorrer em movimento rápido

COD RETRAÇAO P Idem a G81.

X PRE MOV X Idem a G81.

Y PRE MOV Y Idem a G81.

Exemplo de G86.
.
.
.
GZ25. #
G86 R2.Z-20.F40 V150 #
X30.Y15. #
Y35. #
G80 #
.
.
.

Avanço Avanço de Avanço de


Rápido Trabalho F retorno V
com eixo
parado
parada
do eixo
árvore

R73224 103
CAPÍTULO 6 - AUTO ROTINAS

6.0 - DESCRIÇÃO DO CAPÍTULO

Este capítulo cobre o grupo de funções denominadas auto-rotinas. Auto rotinas são
funções G que programam movimentos complexos da máquina através de um único bloco.
Depois de ler este capítulo, o usuário saberá como programar:

. G22 e G23 - Movimentos helicoidais nos sentidos horário e anti-horário, em planos


selecionáveis.

6.1 - INTERPOLAÇÃO HELICOIDAL G22 E G23

Para formar uma hélice, o Controle movimenta dois eixos em um arco, e o terceiro eixo
em linha reta. Pode-se programar um movimento helicoidal com:

. G22Para um movimento helicoidal no sentido horário.

. G23Para um movimento helicoidal no sentido anti-horário.

Compensação de raio não é permitida durante um movimento helicoidal. O programador


deverá se certificar que a compensação de raio foi cancelada com G40 antes de executar
as funções G22 e G23. Dessa forma, as posições programadas deverão se referir ao centro
da ferramenta.

6.1.1 - TELA PARA ENTRADA DE DADOS

A tabela a seguir mostra as funções que o Controle fornece automaticamente na página


EDIÇÃO PROGRAMA (o “prompt” da função) as quais poderão ser programadas no
bloco da função G22 ou G23.

PROMPT DESCRIÇÃO

HELICE HOR G22

X CTR OU/REV I “I” informa a coordenada X do centro do arco para os planos


XY e XZ ou “I” informa o deslocamento longitudinal por
revolução (passo) quando o plano é YZ (G19).

X CTR OU/REV J “J” informa a coordenada Y do centro do arco para os planos


XY e YZ ou “J” informa o deslocamento longitudinal por
revolução (passo) quando o plano é XZ (G18).

X CTR OU/REV K “K” informa a coordenada Z do centro do arco para os planos


XZ e YZ ou “K” informa o deslocamento longitudinal por
revolução (passo) quando o plano é XY (G17).

104 R73224
X PTO FINAL X “X” informa a coordenada X final do movimento linear no
plano YZ (G19).

X PTO FINAL Y “Y” informa a coordenada Y final do movimento linear no


plano XZ (G18).

Z PTO FINAL Z “Z” informa a coordenada Z final do movimento linear no


plano XY (G17).

6.1.2 - PROGRAMAÇÃO DA HÉLICE

Para produzir uma hélice, o Controle precisa saber:

. O plano do arco

Antes de programar o bloco da hélice, deve-se programar um bloco que chame o plano em
que ocorrerá o movimento circular.

Usam-se:

- G17 para o movimento circular no plano XY.

- G18 para o movimento circular no plano XZ.

- G19 para o movimento circular no plano YZ.

De acordo com o plano em que ocorre o movimento circular da hélice, serão diferentes os
significados das funções “prompts”. O bloco de hélice programado tem que ter um formato
que seja correto para o plano escolhido, caso contrário, ocorrerá um erro - “CHECAR
EIXOS E PLANO” - quando for rodado o programa.

. A direção do arco

No bloco da hélice, programa-se:

- G22 para movimento circular no sentido horário, no plano selecionado.

- G23 para movimento circular no sentido anti-horário, no plano selecionado.

Nota: Sentido horário ou anti-horário tem por defição a vista da direção negativa do eixo
que não faz parte do plano que geram o arco.

R73224 105
. Centro do movimento circular

No bloco da hélice, programa-se o centro do arco com:

- I e J para plano XY (G17)


- I e K para plano XZ (G18)
- J e K para plano YZ (G19)

É bom lembrar que as coordenadas do centro do arco são referenciadas no Zero Programa
no modo absoluto (G90), ou na posição atual dos eixos no modo incremental (G91).

. O deslocamento linear longitudinal por revolução do arco (passo)

No bloco da hélice programa-se o passo através das funções:

- K para o plano XY (G17)


- J para o plano XZ (G18)
- I para o plano YZ (G19)

O valor programado do passo é sempre um incremento, ou seja, ele não possui sinal,
percorrido pelo eixo perpendicular ao plano selecionado que corresponde ao espaço
percorrido durante uma revolução completa do arco (360 graus).

Mesmo que uma revolução completa não é desejada, o passo deve ser equivalente ao
círculo de 360 graus).

. A coordenada da profundidade final desejada para o movimento linear

No bloco da hélice, programa-se o movimento do eixo linear através de:

- Z para o plano XY (G17)


- Y para o plano XZ (G18)
- X para o plano YZ (G19)

Pode-se programar o coordenada da profundidade final no modo absoluto (G90) ou


incremental (G91). O movimento do arco pára quando a profundidade final for encontrada
isto significa que os eixos do arco podem parar em qualquer ponto de sua revolução. As
revoluções do arco são determinadas pela fórmula:

Comp. total linear


No. de Revoluções =
passo

106 R73224
A tabela a seguir resume as informações necessárias para programar uma hélice:

Programa-se o

Se o plano Centro com Passo com movimento linear


circular é total com

XY (G17) IeJ K Z

XZ (G18) IeK J Y

YZ (G19) JeK I X

6.1.3 - Exemplos

Exemplo 01: plano XY

Este programa executa, utilizando uma fresa de perfil especial, uma rosca direita em uma
peça vazada.

R73224 107
; - Hélice - X Y - # nome do programa

N0010 G90 # coordenadas absolutas

N0020 G17 # selecionar o plano X Y

N0030 G40 # cancela qualquer anterior compensação de raio

N0035 O01 corretor 1

N0040 G0 X Y100. Z10. # desloca em rápido para as coordenadas indicadas

N0050 F 1200. # define a velocidade de avanço igual a 1200 mm/min

N0060 G22I50.J100.Z-75.K20.# executa uma hélice a partir da posição atual da


ferramenta com centro em X = 50. e Y = 100., passo =
20. e profundidade final Z = -75

N0070 G01 X50. Y100. # desloca com avanço de trabalho para as coordenadas
indicadas.

N0080 G0 Z0.O # desloca em rápido para a posição Z = 0.

N0090 M02 # fim de programa

108 R73224
Exemplo 02: Plano XZ

Este programa executa, utilizando uma fresa de perfil especial, uma rosca esquerda em um
canal circular côncavo.

; - Hélice - X Z - # nome do programa

N0010 G90 # coordenadas absolutas

N0020 G18 # selecão do plano XZ

N0030 G40 # cancela possível compensação de raio anterior

N0040 G0 X-20. Y-10. Z0. # desloca em rápido para as coordenadas indicadas

N0050 F1200. # estabelece velocidade de avanço igual a 1200 mm/min

N0060 G23 I0.K0.Y150.J20. # executa uma hélice interpolando em XZ ao longo de Y,


com centro em X = 0 e Z = 0, “profundidade” final = 150
e passo = 20.

N0070 G0 X0. Z5. # desloca em rápido para X = 0 e Z = 5

N0080 M02 # fim de programa

; Hélice plano YZ

N0010 G90 coordenada absoluta

N0020 G19 plano YZ

N0030 O01 corretor 1

N0040 G0 X-10 Y20. Z aproximação

N0050 G23 J0 K0 I20. X150. Executa hélice interpolando no plano YZ ao longo do


eixo X. Passo = 20

N0060 GZO

N0070 M02 Fim de programa

R73224 109
CAPÍTULO 7 - FUNÇÕES:

7.0 - IMAGEM DE ESPELHO

As funções G30 e G31 são usadas para cancelar e estabelecer espelhamento de movimentos
dos eixos. Por espelhamento entende-se como sendo a inversão do sinal da coordenada
programada.

Espelhamento de eixos não podem ser aplicados para eixos rotacionais.

Se você programa a função G31 para o eixo X e executa um movimento X positivo, no


espelhamento, o resultado obtido será um movimento em X negativo.

G30 CANCELA ESPELHAMENTO

- O comando assume G30 ao ser ligado.

- Restaura a direção normal de operação e cancela G31.

- Uma função G30 sem endereçamento de eixos no mesmo bloco cancela o


espelhamento para todos os eixos.

- Uma função G30 com endereço cancela o espelhamento somente para o eixo
especificado.

Ex.: G30 X - cancela espelhamento somente para o eixo X.

G30 - cancela espelhamento para todos os eixos.

G31 - ESPELHAMENTO DE EIXO

Um bloco com G31 inverte o sentido de direção dos eixos nele especificado.

Por exemplo: G31 XY - referencia o espelhamento somente para os eixos X e Y.

Enquanto o espelhamento estiver ativo o comando exibirá na página “STATUS” a letra


“M” em “REVERSE VÍDEO” À direita do eixo.

G31 é modal e permanece em efeito até ser cancelado com um G30, M02 ou M30.

110 R73224
Programa Principal Sub Programa P2

.
. N10 G91
. N20 GX10.Y10.
N10 GX50.Y50.Z5. N30 G1Z-10.F100.
N20 P2 N40 Y30.
N30 G31X N50 X30.
N40 P2 N60 Y-10.
N50 G31XY N70 X-10.
N60 P2 N80 Y-20.
N70 G30 N90 X-20.
N80 G31Y N100 GZ10.
N90 P2 N110 X-10.Y-10.
N100 G30 N120 M2
.
.
.

R73224 111
7.1 FUNÇÃO G89

Restaura e executa o último ciclo fixo cancelado com um código G80.

Em alguns casos é necessário cancelar um ciclo fixo para movimentar rapidamente os


eixos em XY evitando um obstáculo como grampos.

Depois de executado o desvio pode-se restaurar o ciclo fixo programando se um G89


somente no bloco.

Se um G89 somente no bloco.

Exemplo:

G99
G90


X-100. Y-100. T01 M06
O35 S1000 M03
Z30.
G81 Z-3. R5. F150
G00 X-10. Y-15.
X-60.
G80
G00 Z25.
G89
Y-55.
X-10.
G80
GZO M05
Y150.M02

Altura do grampo sobre a peça : 20mm

112 R73224
7.2 FUNÇÃO G29

Executa o último ciclo fixo, que estava ativo no programa.

Quando G29 for programado, o ciclo fixo é executado mesmo que tenha sido cancelado
com um código G80.

Devemos posicionar primeiro para a coordenada e depois executar o ciclo com G29.

A função G29 pode conter a função L que especifica o número de execuções a ser feita no
ponto.

Exemplo:

G99
G90


X-100. Y-100. T01 M06
O35 S1000 M03
Z30.
G81 Z-3. R5. F150
G00 X-10. Y-15.
X-60.
G80
G Z25.
Y-55.
G29
X-10.
G29 (L)
GZO M05
M02

Altura do aperto : 20mm

R73224 113
7.3 FUNÇÃO G24

Auto-rotina de círculo de furos.

Esta função é aplicada para ser executado automaticamente um auto-ciclo (G79 G86),
sub-programa ou sub-rotina, num máximo de 128 vezes em um padrão circular de pontos
igualmente espaçados.

O comando executa o auto-ciclo, auto-rotina ou sub-programa no primeiro ponto do


padrão circular, executando-os novamente após cada deslocamento que é feito em
movimento rápido entre os pontos, o qual a própria função G24 se encarrega de fazer.

A seguir estão descritas as funções utilizadas com o código G24:

I- Coordenada do centro do círculo no eixo X, em absoluto ou incremental. Se não


programado, a atual posição em X é assumida para ser a coordenada do centro do
círculo.

J- Idem para o eixo Y.

X- Coordenada do ponto inicial do círculo no eixo X, em absoluto ou incremental. Se


não programada a posição atual em X é assumida para ser a coordenada inicial.

Y- Idem para o eixo Y.

R- Define o raio do círculo. R tem formato +/- 3.3.

C- Define o ângulo da posição inicial no círculo.

Ele é medido a partir do positivo do eixo X no modo absoluto ou da posição inicial


da ferramenta no modo incremental. C tem formato 3.3.

W - Especifica o número total de pontos em um círculo completo. A direção dos pontos


pode ser no sentido horário (W-) ou anti-horário (W). O número máximo de pontos
é:

Sentido horário - 128


Sentido anti-horário - 127

Deve-se programar W ou B para L maior do que 1. O espaçamento entre os pontos


pode ser o valor B programado diretamente ou pode ser informado indiretamente
programando-se W e o espaçamento ficará sendo 360 graus/W. W tem formato 3.

114 R73224
L- Especifica o número total de pontos em que os auto-ciclos, sub-programas ou sub-
rotinas serão executados. O valor máximo de L é 128 e pode ser menor do que o
número total de pontos definido por W ou B. L tem formato 3.

B- Define o espaçamento angular igual para os pontos no círculo. A direção dos pontos
poderá ser no sentido horário (B-) ou no sentido anti-horário (B). Se B não for
programado, W definirá indiretamente o espaçamento entre os pontos. B tem
formato +/- 3.3.

P- Especifica o número de um sub-programa a ser executado nos pontos em torno de um


círculo. Se P não for programado, o auto-ciclo atual ou a sub-rotina (H,E) é
assumida.

Se um auto-ciclo está ativo e a função G24 especifica um sub-programa ou sub-


rotina, o auto ciclo será executado após cada movimento em avanço rápido ou
movimento com a função D houver dentro do sub-programa ou sub-rotina.

H- Especifica o número do bloco inicial da sub-rotina.

E- Especifica o número do bloco final da sub-rotina.

Para especificar o centro do círculo e a posição inicial pode-se utilizar as combinações no


bloco de dados com a função G24:

IJ - A posição atual (antes do bloco G24) será a posição inicial no círculo e o centro é
definido pelas funções I e J (no bloco G24).

XY - A posição atual será o centro do círculo e a posição inicial do círculo será um


movimento feito a um ponto definido pelas funções X e Y.

IJ, XY - O centro é definido por IJ e a posição inicial por XY.

IJ, RC - O centro é definido por IJ e a posição inicial por RC.

R73224 115
IJ IJ X Y
. .
. .
. .
G X50.Y100.Z30. G Z30.
G81 Z-12.R2.F100 G81 Z-12.R2. F100
G24 I50.J60.L5 W5 G24 X50. Y100. I50. J60. L5 W5
G80 G80
. .
. .
. .

XY IJ C R

. .
. .
. .
GX50.Y60.Z20. G Z30.
G81 Z-12.R2.F100. G81 Z-12. R2. F100
G24 X50.Y100.W5 L5 G24 R40. C90. I50. J60.L5 W5
G80 G80

116 R73224
7.4 FUNÇÃO G25

Auto-rotina quadrado ou retângulo de furos.

Permite executar um retângulo ou um quadrado de pontos igualmente espaçados, executando


todos os furos programando-se apenas o furo inicial.

Podemos definir o número de pontos ao longo dos eixos X Y e o espaçamento entre eles.

X- Especifica a distância incremental em X e a direção entre os pontos, a serem executados.

Y- Especifica a distância incremental em Y e a direção entre os pontos, a serem executados.

I- Define o número de pontos ao longo do eixo X.


O sinal (-) colocado neste valor é ignorado pelo comando.

J- Define o número de pontos ao longo do eixo Y.


O sinal (-) colocado neste valor é ignorado pelo comando.

F- Especifica o avanço dos movimentos entre os pontos.


Se F não for programado, o avanço entre os pontos será o rápido.
Se for programado F0 o avanço considerado será o último avanço programado com G1.

P- Especifica o número de um sub-programa previamente armazenado no comando, a ser


executado em cada ponto.

H- Especifica o número do bloco inicial da sub-rotina.

.
.
.
GX100.Y100.Z10.
G81 Z-10.R2.F200.
G25 X30.Y-20.I5 J3
G80
.
.
.

R73224 117
7.5 FUNÇÃO G26

Auto-rotina para fresamento de alojamentos retangulares, quadrados ou circulares.

Esta função permite automaticamente desbastar e dar acabamento em alojamentos.

Para alojamento retangular. É possível especificar um raio nos cantos usando a função R.
Que deve ser maior que o raio da ferramenta utilizada para usinagem do alojamento.

O último movimento da auto-rotina é um movimento de saída tangencial.

Uma função Q limita a dimensão deste movimento. À 90 graus ao final da usinagem a


ferramenta retorna em rápido para coordenada em Z da posição inicial e em seguida para
a posição inicial em XY.

X- Coordenada do canto oposto do alojamento no eixo X se X e Y não for programado


um alojamento circular será executado com raio R.

A coordenada X absoluta do canto oposto é em relação ao zero programa.

Y- Coordenada do canto oposto do alojamento no eixo Y.

A coordenada absoluta do canto oposto é em relação ao zero programa.

Z- Nível Z do fundo do alojamento (profundidade final).

I- Sobremetal para acabamento ao longo do eixo X.

J- Sobremetal para acabamento ao longo do eixo Y.

K- Sobremetal para acabamento no fundo do alojamento.

Q- Especifica o raio de saída à 90 graus.

U- Profundidade de corte (desbaste) para o eixo Z.

Se U não for programado o comando usa a função L para determinar a profundidade


de corte.

L- Determina o número de passes para o eixo Z.

L é sempre um número inteiro, se L não for programado U será usado para determinar
a profundidade de corte.

W - Determina a largura de corte ao longo dos eixos X Y se W não for programado a


largura de corte é determinada pela função D.

118 R73224
Se somente W for programado ou somente D, a auto-rotina inicia no centro do
alojamento. Se W e D for programado junto a auto-rotina abrirá um alojamento já
existente.

Se nenhum W ou D for programado então a largura de corte será o próprio raio da


ferramenta.

Se W for maior que o diâmetro da ferramenta o comando bloqueará a execução.

D- Especifica o número de passes para os eixos X Y.

D será sempre um valor inteiro.

F- Define o avanço de desbaste.

F - positivo para corte discordante.

F - negativo para corte concordante.

H- Avanço de acabamento.

H - positivo para corte discordante.

H - negativo para corte concordante.

V- Define avanço de penetração para o eixo Z.

Se V não for programado o avanço F será usado.

R- Raio do canto do alojamento se X e Y não for programado R será o raio do alojamento


circular.

O- Número do corretor da ferramenta para compensação de raio.

RESTRIÇÕES

- Corretor com valor do diâmetro da ferramenta negativo não pode ser usado.

- Se o valor de escala G72 for usado com a função G26 e o raio do canto tiver sido
programado na auto-rotina, os fatores de escala X e Y deverão ter os mesmos valores.

- O diâmetro da ferramenta não pode exceder o menor lado do alojamento.

- G18 e G19 não pode ser ativado se R for programado.

- A largura de corte em X Y definido por W ou calculado através de D não pode exceder


o diâmetro da ferramenta.

A função G26 não requer que se programe todas funções descritas acima.

A seguir está descrito o que ocorre quando alguma dessas funções são omitidas.

R73224 119
X- Se omitido esta função um rasgo é fresado com um comprimento especificado
por Y.

E com largura especificada por X2 x R. Se R também não for programado, a


largura do rasgo será igual ao diâmetro da ferramenta.

Y- Se omitirmos esta função um rasgo é fresado com o comprimento definido por


X e com uma largura especificada por 2 x R .

Se R não for definido A largura será igual ao diâmetro da ferramenta.

XY - Um alojamento circular será fresado com o raio especificado por R.

O centro do alojamento deverá ser a posição da ferramenta quando G26 for


definido.

Importante: Se você definir um alojamento circular programando R e não X


Y, o sobremetal I e J deverão ter os mesmos valores pois caso
contrário será feito um percurso ovalizado.

I- O sobremetal especificado por J será usado ao longo do eixo X.

J- O sobremetal especificado por I será usado ao longo do eixo Y.

IeJ- Todos os passes em X Y/ serão de desbaste .

O último passe será executado com avanço de acabamento.

K- Todos passes em Z serão de desbaste.

W - A largura de corte em X Y será determinado pela função D.

D- A largura de corte em X Y será determinado pela função W.

W e D - A largura de corte em X Y será o raio da ferramenta.

U- Se omitido, os passes na profundidade (Z) serão calculados pelo comando


baseado na função L.

L- O número de cortes para o eixo Z será calculado pelo comando baseado na


função U.

U - L - Apenas um passe em Z será executado na profundidade final.

120 R73224
.
.
.
GX20. YZ5.
G26X100.Y45.Z-3.I.5J.5K.5U1.25L2.W5.
F150.H100.V50.
.
.
.

.
.
.
GX20.Y30.Z5.
G26 X100.Y90.Z-5.I.5 J.5 K.5 U2.25
L2. W8. R15.F150.H100.V50.
.
.
.

.
.
.
GX60.Y70.Z5
G26 R40.Z-3.I.5 J.5 K.5 U1.25 L2
W5.F150.H100.V50
.
.
.

R73224 121
7.5.1 - FUNÇÃO G27

Auto-rotina para fresamento de alojamento ao redor de uma área especificada.

Todas as considerações feitas para a função G26 são aplicadas para a função G27.

A área especificada será definida pelos parâmetros X e Y, se não for programada a função
R, o alojamento será retangular e os cantos da área especificadas serão retos.

Caso R seja programado, os cantos terão um raio igual a R. O comando deverá conhecer
a distância até a área de usinagem, portanto, a função D deverá ser programada.

Para se determinar os valores de W e D usados no programa, devemos usar as seguintes


fórmulas :

EIXO X :

D = [(AX - I - 2.RF)/W] + 1
I = AX - 2.RF - [(D-1).W]
W = AX - I - 2.RF / (D-1)

EIXO Y

D = [(AY - J - 2.RF) / W] + 1
J = AY - 2.RF - [(D-1).W]
W = AY - J - 2.RF / (D-1)

N10 GX70.Y60.Z5
N20 G27 X130.Y100.Z-4.5 I2.J2.K5.L2 D5
W6.5 F150.H100.V50

122 R73224
N10GX28.Y28.Z5
N20 G27 X116.Y70.Z-4.I1.5 K.5 L2 D3.W3
F150.H100 V50.R8

FERRAMENTA φ 12mm

N10 G XY Z5
N20 G27 R13.Z-4.I.5.J.5 K.5 L2 W8.75 D3
F150.H100 V150

R73224 123
7.6 FUNÇÃO G72 - ESCALA

Esta função através do fator de multiplicação que poderá ser de .05 a 20, reduz ou aumenta
os movimentos programados.

Os valores dos corretores de ferramenta, movimentos manuais e corretores de fixação não


são afetados pelo fator de escala.

Abaixo estão descritas as funções utilizadas com o código G72.

X- Fator de escala para o eixo X, o valor programado afeta a função I pelo mesmo valor.

Y- Fator de escala para o eixo Y, o valor programado afeta a função J pelo mesmo valor.

Z- Fator de escala para o eixo Z, o valor programado afeta a função K pelo mesmo valor.

EXEMPLO:

; ESCALA - nome programa

G99 - cancela G92

GXY - mov. rápido para zero peça

G91 - Coordenada incremental

G72 X.5 Y.5 - determina fator de escala de 0,5 para o eixo X e 0,5 para o eixo Y

G1 X20. F20. - Estes movimentos e os próximos três produzirão um quadrado que


terá 10mm em cada lado.

Y-20.

X-20.

Y20.

G72 - cancela fator de escala

M2 - Fim de programa

Para remover o efeito da escala programa-se um bloco de dados somente com a função G72.

Quando aplicado o fator de escala em movimento de interpolação circular (G2, G3) ou


interpolação helicoidal (G22, G23) ambos os eixos do plano de interpolação deverão ter seus
fatores de escala com o mesmo valor.

124 R73224
Se você tentar aplicar fator de escala numa interpolação circular no plano XY com valores
diferentes em X e Y uma mensagem de erro - “CHECAR BLOCO G02/G03”, será exibido
pelo comando.

Pode-se também aplicar um fator de escala sobre um fator já definido, resultando um novo
fator múltiplo do outro.

EXEMPLO:

G99 - cancela G92

G00 X40. Y50 - movimento rápido

G01 X80. F80. - movimento trabalho com avanço de 80.

G72 X.5 - define fator de escala de 0,5 para os movimentos do eixo X.

G1 X100. F100 - movimentos de trabalho com escala de 0,5.

G72 X.5 - define o fator de escala de 0,5 para movimentos do eixo X, porém
o fator resultante será 0,5 x 0,5 = 0,25.

G1 X200. - Movimento trabalho no eixo X sendo afetado pela escala de 0,25.

O fator de escala usado em um programa principal pode ser alterado em sub-programas ou


sub-rotinas.

Se você usar escala em um sub-programa ou sub-rotina, é bom programar um fator para


restaurar o fator de escala original (1) antes de retornar para o programa principal.

Você faz isto, programando um valor no bloco G72 que multiplica a escala no sub-
programa ou sub-rotina para o valor original = 1 antes de retornar para o programa
principal. Você não deve cancelar a escala no sub-programa ou sub-rotina com um G72,
somente. Se no programa principal estiver usando escala.

; PROGRAMA PRINCIPAL - nome do programa

.
.
.

G72 Y2. - define fator de escala para 2 no eixo Y.

.
.
.

P2; SUB-PROGRAMA - Chama sub-programa no. 2.

Executa movimentos do programa 2 que está


préviamente na memória do comando.

R73224 125
; SUB-PROGRAMA - nome do sub-programa
.
.
.

G72 Y.25 - Fator de escala neste sub-programa é 0,25 para o


eixo Y. O resultado da escala agora é 2 x 0,25 = 0,5
.
.
.
G72 Y4. - Define um multiplo de escala no sub-programa para
1 - 0,25 x 4 = 1.

Note que a escala que está ativa antes de retornar


para o programa principal é 0,5 x 4 = 2 para o eixo
Y.

M2 - Fim do programa.

G Y10. - o programa principal reassume neste ponto com o


fator de escala 2 para o eixo Y.
.
.
.

G72 - cancela toda escala retornando para fator de escala


1 para todos eixos.

Programa Principal P2
.
. N1 G1Z-5.F200.
. N5 G91
N20 GX70.Y50.Z5. N10 G1 X30.
N30 P2 N20 Y30.
N40 GX20.Y20. N30 X-30.
N50 G72 X.5 Y.5 N40 Y-30
N60 P2 N45 GZ0 M05
N70 G72 N50 M2
.
.
.

126 R73224
7.7 FUNÇÃO G79 - AUTO CICLO PROGRAMÁVEL

A função G79 especifica um sub-programa ou uma sub-rotina para funcionar como um auto
ciclo.

O ciclo será executado em resposta a um movimento rápido G00 ou um bloco com parâmetro
D.

Abaixo estão descritas os parâmetros utilizados com a função G79.

P- Define o número do programa que contém os movimentos do ciclo.

H - Define o número do bloco inicial da sub-rotina que contém os movimentos do ciclo.

E- Define o número do bloco final da sub-rotina que contém os movimentos do ciclo.

7.8 FUNÇÃO G75 - AUTO CICLO DE FRESAMENTO DE CAVIDADE

A Função G75 permite você fresar uma cavidade convexa ou côncava produzida pela execução
de um perfil programado no plano XZ ao longo de um percurso em XY.

O perfil definido em XZ poderá ser escalado. Para mais ou menos, linearmente, ao longo da peça
para variar a profundidade e espessura da cavidade.

A cavidade é produzida na execução do perfil programado, movendo ao longo do percurso


(X,Y) repetindo o perfil.

O comando executa esta sequência até o final do percurso (X,Y) ser encontrado.

Através do perfil programado a execução é feita ortogonalmente no percurso XY.

A seguir o PROMPT do comando sobre a Função G75.

X- Informa o fator de escala aplicado para o eixo X no perfil.

Este fator de escala é aplicado linearmente ao longo do percurso de acordo com o


incremento D programado. Quando o percurso final for encontrado, esta escala terá
sido completada.

Z- Informa o fator de escala aplicado para o eixo Z no perfil.

Este fator de escala é aplicado linearmente ao longo do percurso de acordo com o


incremento D programado. Quando o percurso final for encontrado, esta escala em
Z terá sido completada.

D- Informa ao comando para executar o perfil no primeiro ponto do percurso.

Se D não for programado o primeiro ponto do percurso é omitido. Em ambos os casos


o perfil é executado no fim de cada segmento D programado.

R73224 127
P- Número do sub-programa que contém o perfil.

Se um sub-programa não for usado. Então uma sub-rotina deve ser especificada com H e ou
E.

H- Número do bloco inicial da sub-rotina que contém o perfil.

E- Número do bloco final da sub-rotina que contém o perfil.

PLANO DO PERFIL:

Você deve programar os blocos que executarão o perfil em um sub-programa ou sub-rotina.

A Função G75 chamará o sub-programa ou sub-rotina e executará o perfil.

Movimentos de corte do perfil devem ser programados no plano XZ.

O perfil pode incluir algum avanço e informações sobre escala.

O perfil deve incluir:

- Avanço para movimentos no perfil

- Movimentos do Perfil

Estes movimentos devem estar definidos no plano XZ.

- Compensação do raio da ferramenta

Você deve programar a compensação do raio da ferramenta (corretor) a ser usada no perfil
se for diferente do corretor usado no programa principal.

- Escala

O perfil pode incluir algum valor de Escala, programado com um bloco G72, no início do perfil.

Esta escala é para o eixo X e Z.

Lembre-se que, se o perfil incluir movimetos de arco o valor da escala para ambos os eixos
deve ser o mesmo.

Note que a escala programada no G75 será multiplicado pelo valor de escala no perfil.
- Fim do Perfil

128 R73224
A Função G75 executa a seguinte sequência cada vez que o perfil é executado:

. O eixo Z retorna para a posição inicial indicada no perfil.

. O eixo X retorna para a posição inicial do perfil no avanço indicado no programa


principal.

- O percurso ao longo do qual o perfil é executado é definido por algum movimento


programado.

Se você programa uma função D neste movimento programado (percurso) D resulta


do número de segmentos.

O perfil é executado ortogonalmente no percurso destes pontos definido por estes


segmentos.

Se D não for programado no bloco de movimento que define o percurso, o perfil é


executado na coordenada final definida por este bloco.

A função G75 é cancelada por um bloco G80.

A função G75 pode usar as funçoes P, H e E contendo o perfil.

Exemplo :

- G75 P3 -

Estabelece programa 3 que contém os movimentos do perfil.

- G75 H100 E200

Estabelece uma sub-rotina que começa com o bloco N100 e termina com o
bloco imediatamente anterior ao bloco N200. Esta sub-rotina contém os
movimentos do perfil.

. Escala aplicada ao perfil ao longo do percurso :

As funções X e Z programadas no bloco que contém G75 É aplicada linearmente


ao longo do percurso. A escala ativa faz com que o perfil inicie num valor e
termine com um valor final programado com X e Z na função G75.
; G75 - conv - alumínio

R73224 129
130 R73224
G99
G90
G17
G71
G00 X10.Y-50.T01 M06 ; Fresa D.6,5 corretor 6,5
O56 S1500 M08
M03
G72 X.38 Y.38 Z.38
X0 Y-55. Z5.
G75 H90 E100 D
Y20. D10
G02 X90. Y110. I90. J20. D10
G01 X140. D10
G02 X230. Y20. I140. J20. D10
G01 Y-55. D10
G80
H100
N90 G91
G18
G X-100.
G1 Z-28. F120
G42
X10. Z-5.
X10. Q5.
X10. Z-10. Q5.
X10.
G2 X15. Z15. I0. K15.
G3 X15. Z15. I15. K0. Q5.
G3 X60. Z0. I30. K-51.961 Q5.
G3 X15. Z-15. I0. K-15.
G2 X15. Z-15. I15. K0.
G1 X10. Q5.
X10. Z10. Q5.
X10.
G40
X10. Z5.
G Z28.
X-100.
G17
G90
N100 GZO M05
G72
G99
M2

R73224 131
7.9. 4º EIXO

132 R73224
EXEMPLO 1:

.
.
.
N10 G0 X20. W90.
N20 Z3.
N30 G1 Z-3. F200
N40 X60.
N50 X120. W180.
N60 G0 Z3.
.
.
.

R73224 133
EXEMPLO 2:

.
.
.
N10 G0 X20. W-180.
N20 Z3.
N30 G1 Z-3. F200
N40 G91 W
N50 X60. W450.
N60 G0 Z3.
N70 X120. W0.
N80 G1 Z-3. F200
N90 X80. W-450.
N100 G0 Z3.
.
.
.

134 R73224
7.10 PARAMACROS

7.10.1 DESCRIÇÃO DO CAPÍTULO

Paramacros é um recurso de linguagem de programação do CNC MACH-9 que oferece ao programador


maiores facilidades na geração de seus programas. Através dela é possível:
- Trabalhar com variáveis computáveis;
- Usar funções computáveis em qualquer tipo de bloco;
- Ter acesso a certos parâmetros modais do sistema para computação;
- Utilizar operadores e expressões aritméticas para computação.
- Efetuar desvios adicionais, chamadas de sub-rotinas e sub-programas dependendo do resultado de uma
função lógica;
- Programar sub-rotinas e subprogramas parametrizados.
- Programação de Ciclos Fixos parametrizados;
- Definir Prompts para auxiliar na geração e execução do programa , através dos quais será feita a entrada
dos parâmetros para o programa principal;
- Cálculos utilizando funções lógicas e aritméticas.

7.10.2 EXPRESSÕES E OPERADORES

A programação com linguagem PARAMACROS permite valores numéricos para quase todas as funções,
com excessão de N e G, em qualquer tipo de bloco, e de P, num bloco com G39 ou G79.
Qualquer outra função pode ser computada através do argumento de uma expressão aritmética, através do
uso do parênteses.
Por exemplo:
X (2.53*6.2) Note que não existe espaço em branco entre os caracteres.

A expressão aritmética pode ter qualquer tamanho, desde que caiba na página Prompt Editor. Da mesma
forma pode-se ter um bloco com quantas funções desejar. É permitido ainda escrever uma expressão com
alinhamento de parênteses.
Por exemplo:
L ((2.7+14.123)*17)

Os seguintes operadores aritméticos estão a disposição do programador.


A ordem da precedência das operações são: “ ! “ depois “ * “ e “ / “ e por fim “ + “ e “ -”. Os parênteses tem
procedência sobre qualquer um dos operadores. Expressões com operadores sem ordem de procedência sobre
os outros. São resolvidos da esquerda para direita.
Operadores Unitários: Os operadores unitários + e - só podem ser usados numa expressão fechada
por parênteses. Se for uma expressão alinhada, todos os parênteses abertos
devem ser fechados.
Operadores Binários: + Adição
- Subtração
* Multiplicação
/ Divisão
! Exponenciação (inclusive potências fracionárias)
Os operadores não podem aparecer consecutivamente, eles devem ser separados utilizando parênteses.
Por exemplo:
3! (-4) é legal, enquanto que 3!-4 não é legal.

R73224 135
O Prompt Editor fornece um significativo auxílio na programação e checagem de sintaxe. A sintaxe é checada
a priori, assim que for pressionada a tecla EOB. A sintaxe é checada toda vez que o bloco é alterado, basta
pressionar ENTER. A assistência à programação inclui o balanceamento de parênteses, o qual só é suspenso
quando estiver sendo exibida a mensagem ERRO DE SINTAXE.
A checagem da sintaxe é feita varrendo o bloco do começo ao fim. Assim que for encontrado um erro, este
é exibido na linha de comentário, ao pé da tela, permanecendo o cursor sobre o caracter errado. Uma mensagem
de erro “ERRO DE SINTAXE” aparecerá então na parte de baixo da tela.
Após a correção do bloco basta pressionar ENTER para que o controle cheque novamente.
Durante a execução, todos os campos do bloco são computados antes de serem executados. Se um bloco
contém a função L (função de repetição), as demais funções não são recomputadas a cada repetição do bloco.
Da mesma forma, G39e G79 não têm seus valores computados enquanto todo o bloco tenha sido avaliado.
A precisão de uma expressão aritmética é de 7 dígitos, de 0.0000001 à 9999999.,todavia o resultado pode
ser truncado pelo formato da função, que usará esse resultado.

7.10.3 FUNÇÕES LÓGICAS E ARITMÉTICAS

Com PARAMACROS é possível acessar as funções lógicas e aritméticas, as quais podem ser usadas numa
expressão. Estas funções sempre serão seguidas pela expressão entre parênteses.
Veja as funções na tabela A.

TABELA A - FUNÇÕES ARITMÉTICAS

ABS ( ) Valor ABSOLUTO

INT ( ) Valor INTERNO (Valor à esquerda do ponto decimal)

FRA ( ) Valor FRACIONÁRIO (Valor à direita do ponto decimal)

LOG ( ) LOGARÍTIMO na base 10

LN ( ) LOGARÍTIMO na base E

EXP ( ) EXPONENCIAÇÃO na base E

SQR ( ) RAIZ QUADRADA

SIN ( ) SENO do ângulo em graus

COS ( ) COSSENO do ângulo em graus

TAN ( ) TANGENTE do ângulo em graus

ASN ( ) ARC-SENO com resultado em graus

ACS ( ) ARC-COSSENO com resultado em graus

ATN ( ) ARC-TANGENTE com resultado em graus

Importante: Calcular SIN, COS ou TAN de um ângulo maior ou igual a


58761 graus causrá um erro “math overflow”.

136 R73224
EXEMPLOS:

A (ATN(3.5/4.2))
a variável local “ A “ assumirá o valor 39.80557

W (SQR(3.532!2+2.785!2))-0.2714
a variável local “ W “ assumirá o valor 4.226516

FUNÇÕES LÓGICAS

EQ ( ) Igual a zero

NE ( ) Diferente de zero

GT ( ) Maior que zero

LT ( ) Menor que zero

GE ( ) Maior ou igual a zero

LE ( ) Menor ou igual a zero

As funções lógicas assumem 0 (zero) se o resultado for falso e assumem 1 (um) se o resultado for verdadeiro.
Esse valor pode então ser usado em cálculos aritméticos. O resultado da função lógica pode também resultar em
desvios condicionais, chamada de sub-rotina ou de sub-programa.

Note: A comparação lógica de duas variáveis tem acuracidade 10 por exemplo:


EQ (0.0000001) será considerado verdadeiro.

Exemplos:

A (EQ(27.01-22.2))
a variável “ A “ assumirá o valor 0, pois a função é falsa, já que 27.01-22.2 é diferente de zero.

A (EQ(22.3.19))
a variável “ A “ assumirá o valor 1, pois a função lógica é verdadeira, já que 22.3.19é exatamente zero.

7.10.4 VARIÁVEIS

As variáveis são letras com as quais o programador pode atribuir valores, utilizando-as para realizar cálculos
ou desvios no programa.
Na prgramação com PARAMACROS são disponíveis 4 tipos de variáveis para se trabalhar. As variáveis
são referenciadas por duas letras, das quais a primeira corresponde ao tipo e a segunda corresponde a variável
propriamente dita. As variáveis especificadas com uma única letra, são assumidas como tendo prefixo “ L “,
indicando tratar-se de variáveis locais. Portanto, “ F “ é o mesmo que “ LF “.

R73224 137
Os três tipos de variáveis a disposição são:

LOCAL: LA - LZ ou A - Z (exceto G, E, H, N e P)

GLOBAL: GA - GZ (exceto G, E, H, N e P)

SISTEMA: SA - SZ e SA - SZ (apenas para leitura)

Variáveis Locais: são variáveis que estão disponíveis somente no programa corrente ou sub-rotina. Pode-
se definir Variáveis Locais em até 6 níveis: o programa principal e os 5 níveis de sub-rotinas permitidos. Quando
um programa sai de determinado nível, as Variáveis Locais para esse nível são perdidas.

Variáveis Globais: são variáveis que estão disponíveis durante todo o programa e suas sub-rotinas e sub-
programas.

Variáveis do Sistema: são os parâmetros atuais do sistema, podendo ser usadas em computação. Elas não
podem ser usadas via programa.

Exceto para a segunda letra das variáveis do sistema, o fato de se usar maiúsulas ou minúsculas não tem
importância.
A precisão de todas as variáveis Local e Global são 7 dígitos, de 0.0000001 à 9999999. A precisão das
variáveis do Sistema depende do parâmetro específico a que ela se refere (por exemplo, o número de um programa
pode ir de 0 a 250, já a coordenada absoluta do eixo X pode ir de 0.000 à 9999.999).

7.10.5 G39 - DEFINIÇÃO DE VARIÁVEL LOCAL E SUB-ROTINA PARAMÉTRICA

A função G39 tem duas aplicações, definição de variável Local e programação de Sub-Rotinas e Sub-
Programas parametrizados.
Um bloco com função G39 que tenha chamada de sub-rotina ou sub-programa através das funções E, H estará
chamando uma sub-rotina ou sub-programa parametrizado. Todas as letras, exceto N, G, E, H, P podem
armazenar valores para as correspondentes variáveis local da sub-rotina ou sub-programa chamado.
Exemplo:
G39 P7 X2.75 Y(LOG(2.65/2))

Esse bloco chama o sub-programa número 7 e especifíca para o mesmo que as variáveis Local “ LX “ valerá
2.75 e “LY “ valerá 0.2116229 ( que corresponde ao logarítimo de (2.65/2) na base 10).
Assim dentro do sub-programa esses valores paramétricos poderão ser usados:
Por exemplo, um comando do tipo G01 X(LX), dentro do sub-programa, provocará um deslocamento no
eixo X até a coordenada 2.75, ou ainda, um comando do tipo G81Z(2.3+LY) provocará um ciclo fixo de furação
até a coordenada 2.511 na direção do eixo Z.
Da mesma forma, G39 H100 E200 L7 fará com que a execução salte para uma sub-rotina que começa no
bloco N100 e termina no bloco N200, na qual o valor 7, armazenado na variável “ L “, pode ser referenciado
usando a variável local “ LL “.
Um bloco G39 que não contenha uma chamada de sub-rotina ou sub-programa servirá para especificar
variáveis locais. Assim, todas as funções, exceto N, G, E, H, P podem armazenar valores para correspondente
variável local.

Exemplo:
G39 J27.5 U(4.5/2) B(ASN(0.5)+25)

138 R73224
Este bloco especifica que a variavel “ LJ “ vale 27.5, “ LU “ vale 2.25 e “ LB “ vale 55 (que é o arc-seno de
0.5 mais 25). Esses valores podem ser referenciados dentro do programa, sub-rotina ou sub-programa corrente,
usando variáveis locais.

Exemplo:
G01 X(LJ) Y(LB+5) será executado como G01 X27.5 Y11.

7.10.6 DEFINIÇÃO DE VARIÁVEIS GLOBAL E CICLOS FIXOS PRAMETRIZADOS

A função G79 tem duas finalidades, definir variáveis Global e Ciclos Fixos parametrizados.
Um G79 que contenha uma chamada de sub-rotina ou sub-progrma, usando E, H e/ou P, define um ciclo fixo
parametrizado. Todas as letras, exceto N, G, E, H e P, podem armazenar valores para as correspondentes
variáveis Global da sub-rotina ou sub-programa chamado.

Exemplo:
G39 P7 X2.27 Y(LOG(2.65)/2)

Este bloco especifica uma chamada ao sub-programa número 7, o qual funcionará como um ciclo fixo. A
variável local “ LX “, para esse sub-programa, valerá 2.27 e “ LY “ valerá 0.2116 (que é o logarítimo de (2.65/
2)). Dessa forma esses valores poderão ser usados dentro de sub-programa, por exemplo, um comando G01
X(LX) posicionará o eixo “ X “ na coordenada 2.27, ou ainda, um comando G81 Z(2.3+LY) executará um ciclo
de furação com “ Z “ igual a 2.511
Note que o G79 não é recomputado toda vez que o Ciclo Fixo é executado, apenas quando o G79 é executado
sozinho. O mesmo ocorre com outros Ciclos Fixos, tal como G81 Z(PZ).
Da mesma forma, G79 H100 E200 L7 ativará um ciclo fixo através de um salto para uma sub rotina que
começa em N100 e termina em N200, podendo-se fazer uso de uma variável Local, por exemplo “ LL “ para
referenciar o valor 7 programado junto a função, “ L “ (função de repetição).
O fato do G79 ativar um Ciclo Fixo traz o seguinte incoveniente, a cada movimento rápido no programa
principal, após um comando G79 com chamada de sub-rotina ou sub-programa, fará com que esta sub-rotina ou
sub-programa seja executada como se fosse um Ciclo Fixo (veja Manual Básico de Programação).
Um bloco G79 que não contenha uma chamada de sub-programa ou sub-rotina serve para definir variáveis
Global. Assim, todas as funções, exceto N, G, H, e P podem armazenar valores para correspondentes variáveis
global.

Exemplo:
G79 J27.5 U(4.5/2) B(ASN(0.5)+25.)

Este bloco atribui as variáveis Global, “ GJ “ o valor 27.5, “ GU “ o valor 22.5 e “GB” o valor 55. Estes valores
podem ser usados em qualquer lugar do programa ou de seus sub-programas, através das variáveis Global, por
exemplo: G01 R(GJ) A(GB/5) será executado como se fosse um bloco G01 R27.5 A11.

7.10.7 DESVIO CONDICIONAL A UMA SUB-ROTINA

Com PARAMACROS é possivel programar desvios condicionais para uma sub-rotina ou sub-programa
com base no resultado de uma função lógica.
Se um código “ M “ precede uma expressão com uma função lógica, então o desvio é baseado no resultado
dessa função lógica. Se a função for verdadeira o desvio ou chamada ocorre, se ela é falsa, o controle processará
o próximo bloco da sequência.

R73224 139
Exemplo:
M (GE(GX)) H123

Este bloco especifica um desvio para o bloco N123 se a variável Global “GX” for maior ou igual a zero. Se
fosse um bloco tipo: M(+GE(GX)) H123, então a função lógica não seria executada, ou seja, independente do
valor de “ M “ ser 0 ou 1 o desvio para o bloco N123 seria executado
Da mesma forma: M(NE(LS-456.3)) P25, chamará o sub-programa número 25, se “LS” for diferente de
456.3.

7.10.8 EDITOR DE PROGRAMAS

Dentro da página Prompt Edit (tela para entrada de dados) todas as funções “ G “ apresentam os prompts
para a entrada de dados. Esses Prompts correspondem basicamente, a uma coluna de parâmetros correspondentes
com a função G específica e uma breve descrição do proprósito do parâmetro à esquerda da letra. O espaço
à direita é reservado para a entrada de dados.
Para Ciclos Fixos e sub-programas parametrizados os prompts são usados para entrar com os valores das
variáveis que forma definidos na primeira linha do sub-programa, após o nome.
Quando se programa um G39 OU G79, na página Parameters os seguintes Prompts:

SUBPROGRAMA____________P

SUB_INIC_NO______________H

SUB_FIM_NO______________E

Quando se entra com o número do programa, aparece o nome do mesmo à direita do Prompt
SUBPROGRAMA________P. Além disso as variáveis definidas na primeira linha do programa também
aparecerão nesta página com prompts para serem preenchidos.
O formato para definição de variáveis na primeira linha do programa é o seguinte:

;NOME, VARIÁVEL “ESPAÇO”, PRÓXIMA

VARIÁVEL “ESPAÇO”,_____________;COMENTÁRIO OPC.

IMPORTANTE:

Exemplo:
;AMOSTRA,X1.25DIST_HORIZ,Y=DIST_VERT,I_INC_HORIZ,V_INC_VERT;PASSO_R

O bloco acima está definindo que o nome do programa é AMOSTRA e tem os seguintes Prompts:

HORIZ_DIST___________X1.25

VERT_DIST____________Y

HORIZ_INC____________I

VERT_INC_____________V

140 R73224
O “espaço” pode corresponder a um caracter SPACE, se o parâmetro é opcional, ou pode corresponder a um
sinal de igual “=” no caso de o operador ter que entrar com o valor da variável.
Note que X e Y são parametros necessários, tendo X valor 1.25 já definido no programa. I e V são parâmetros
opcionais. AMOSTRA é o nome do programa. PASSO_R é um comentário.
Estes Prompts aparecerão quando o usuário entra com o número do programa no Prompt “P” da página
Prompt Editor através, de G39 e G79 chamando um programa. Se o usuário entra com um número de programa
que tenha menos que três dígitos, basta presssionar a tecla ENTER para forçar o aparecimento dos Prompts. Ao
entrar com o número de programa que ocupe três dígitos, por exemplo P003, os Prompts são automaticamente
exibidos após ter sido pressionado o terceiro dígito.
Note que o primeiro bloco do sub-programa sempre começa com um ponto e vírgula (;) seguido pelo nome
do sub-programa. Este pode ser seguido por uma vírgula (,) e uma ou mais variáveis, cada uma separada por
vírgula.
Cada variável deve começar com a letra que se deseja utilizar. Se a variável for opcional, o próximo caracter
deve ser um “space” ( _ ). Se a variável for necessária, e se deseja definir um valor para ela neste bloco, basta
digitar o valor a direita da letra (variável). Se a variável é necessária, porém não se deseja definir um valor para
ela neste bloco, basta digitar um sinal de igual ( = ) após a letra e a seguir, se for necessário, algum comentário
referente a variável. Apenas os 13 primeiros caracteres aparecerão na tela junto ao Prompt.
As variáveis servem como um auxílio à programação, devendo ser carregadas (preenchidas) antes de iniciar
a execução do programa, já que todas as variáveis definidas com G39 e G79 serão processadas, estejam seus
valores definidos ou não.
Da mesma forma um G39 pode ser usado para chamar um sub-programa parametrizado. Esse sub-programa
poderia ter um ou mais comandos que transforme as variáveis Local atribuidas a ele, em equivalentes variáveis
Global. Fazendo isso é possivel termos o Prompt para variáveis Global. Note que de início os Prompts para o
sub-programa se referem a variáveis Local, mas sua execução fará com que essas variáveis Local passem para
variáveis Global.

Exemplo:

Programa Principal: G39 P250 X1.23 K-4.76 L25#


Sub-programa: ;GLOBAIS,X_HORIZ,K_INCREMENT,L_CONT#
G79 X(LX) K(LK) L(LL)
M02

7.10.9 ENTRADA DAS VARIÁVEIS ATRAVÉS DA PÁGINA PARÂMETROS

Se um programa é selecionado para execução, através da página Operação Automática ou das páginas de
Teste Programa, e o mesmo tiver variáveis para serem carregadas, o controle necessitará que o operador entre
com os valores das variáveis. Isto é feito através da página PARAMETERS, que possui uma tela similar a do
Prompt Editor, na qual estará as variáveis definidas no primeiro bloco do programa selecionado.
Para carregar o valor das variáveis, o operador deve digitar seu valor e a seguir pressionar a tecla (CYCLE
START). Se o operador sai da página PARAMETERS sem pressionar (CYCLE START) os valores não são
carregados e a seguinte mensagem de erro é exibida: “PARÂMETROS NÃO CARREGADOS”. Isto só é
permitido para um programa principal parametrizado.

R73224 141
7.10.10 FUNÇÃO CALCULADORA

A função calculadora elimina a necessidade da calculadora de mão para o programador entrar com uma
expressão Prompt Editor. Ele pode instruir o controle para executar o cálculo da expressão durante a edição, e
trabalhar com o resultado da mesma ao invés de trabalhar com a expressão.
O programador precisa apenas introduzir a expressão da forma como ela foi planejada, posicionar o cursor
à direita do parênteses que fecha aquele nível da expressão, e a seguir pressionar a tecla “igual” ( = ).
O controle responderá com o resultado daquele nível entre parênteses.

Por exemplo:

X(2.5+ (27 * (SIN (24.) = ) ) ) aparecerá X(2.5+ (27 * (0.4067366 ) ) )

X(2.5+ (27 * (SIN (24.) ) = ) ) aparecerá X(2.5+ (10.98189) )

X(2.5+ (27 * (SIN (24.) ) ) = ) aparecerá X( 13.48189 )

142 R73224
Exemplo 1.:
-Elaborar um programa parametrizado interpolando um círculo de raio 50mm.

R73224 143
;CÍRCULO
G99
G90
G17
G71
G66
T01M6; ................................................................................ Fresa de Topo
O01S2000
M3
G39 R50; ............................................................................. Raio da Peça
G39 D10; ............................................................................. Diâmetro da Fresa
G39 D(LD/2); ...................................................................... Raio da Fresa
G39 R(LR+LD); .................................................................. Raio da Peça Compensado
G39 A0; ............................................................................... Ângulo Inicial
G39 B360; ........................................................................... Ângulo Final
G39 I1; ................................................................................. Incremento Angular
G X(LR) Y Z10.
G1 Z-3. F500
N10 G1 X(LR*(COS(LA))) Y(LR*(SIN(LA)))
G39 A(LA+LI)
M(LT(LB-LA))H20
H10
N20 G1 X(LR*(COS(LB))) Y(LR*(SIN(LB)))
GZOM5
M2

144 R73224
Exemplo 2.:
-Elaborar um programa parametrizado interpolando um raio inicial de 17mm até atingir um raio
de 30mm.

R73224 145
;CAME
G99
G90
G17
G71
G66
T01M6; ................................................................................ Fresa de Topo
O01S2000
M3
G39 R17; ............................................................................. Raio Inicial
G39 S30; .............................................................................. Raio Final
G39 D10; ............................................................................. Diâmetro da Fresa
G39 D(LD/2); ...................................................................... Raio da Fresa
G39 R(LR+LD); .................................................................. Raio Inicial Compensado
G39 S(LS+LD); ................................................................... Raio Final Compensado
G39 A(270-30); ................................................................... Ângulo Inicial
G39 B15; ............................................................................. Ângulo Final
G39 I1; ............................................................................... Incremento Ângular
G39 T(((LS-LR)/(LA-LB))*LI); ......................................... Incremento Radial
G X(LR*(COS(LA))) Y(LR*(SIN(LA)))Z10.
G1 Z-3.F500
N10 G1 X(LR*(COS(LA))) Y(LR*(SIN(LA)))
G39 A(LA-LI)
G39 R(LR+LT)
M(LT(LA-LB))H20
H10
N20 G1 X(LS*(COS(LB))) Y(LS*(SIN(LB)))
GZOM5
M2

146 R73224
Exemplo 3.:
-Elaborar um programa parametrizado interpolando um raio inicial de 50mm e a cada giro
completo de 360º decrementar 10% sobre o valor desse raio até um limite de 20mm simultâneamente iniciar
numa profundidade de 30mm e a cada giro completo decrementar o mesmo valor decrementado no raio.

R73224 147
;ESPIRAL DE_ARQUIMEDES
G99
G90
G17
G71
G66
T01M6 ............................................................. Fresa de Topo
O01S2000
M3
G39 R50; .......................................................... Raio da Peça
G39 D10; .......................................................... Diâmetro da Fresa
G39 D(LD/2); ................................................... Raio da Fresa
G39 R(LR+LD); ............................................... Raio Compensado
G39 A0; ............................................................ Ângulo Inicial
G39 B360; ........................................................ Ângulo Final
G39 I10; ............................................................ Incremento Angular
G39 J5; ............................................................. Decremento para 360 Graus
G39 S20; ........................................................... Raio Final
G39 S(LS+LD); ................................................ Raio Final Compensado
G39 F(LI*(LJ/LB)); .......................................... Decremento para1Grau
G39 T-30; ......................................................... Posição Inicial
G X(LR) YZ10.
G1 Z(LT) F500
N10 G1 X(LR*(COS(LA))) Y(LR*(SIN(LA)))Z(LT)
G39 R(LR-LF)
G39 A(LA+LI)
G39 T(LT+LF)
M(LT(LR-LS))H20
H10
N20 G1 X(LS*(COS(LB))) Y(LS*(SIN(LB)))Z(LT)
GZOM5
M2

148 R73224
Exemplo 4.:
-Elaborar um programa parametrizado interpolando uma calota de raio esférico de 25mm.

R73224 149
;CALOTA
G99
G90
G17
G71
G66
T01M6; ...................................................................... Fresa de Topo
O01S2000
M3
G39 R25; .................................................................... Raio da Calota (XY)
G39 D10; .................................................................... Diâmetro da Fresa
G39 S(LR); ................................................................. Raio da Calota (XZ)
G39 D(LD/2); ............................................................. Raio da Fresa
G39 R(LR+LD); ......................................................... Raio (XY) Compensado
G39 A0; ...................................................................... Ângulo Inicial
G39 B90; .................................................................... Ângulo Final
G39 I1; ........................................................................ Incremento Ângular
G X(LR) Y Z(LR+5)
G1 Z(LR) F500
N10 G1X(LR*(COS(LA))) Z(LS*(SIN(LA)))
G2 CIJ
G39 A(LA+LI)
G39 Z
M(LT(LB-LA))H20
H10
N20 G1 X(LR*(COS(LB))) Z(LS*(SIN(LB)))
G2 CIJ
GZOM5
M2

150 R73224
Exemplo 5.:
-Elaborar um programa parametrizado interpolando uma elipse cujos eixos medem: 60mm e
30mm.

R73224 151
;ELIPSE
G99
G90
G17
G71
G66
T01M6; ...................................................................... Fresa de Topo
O01S2000
M3
G39 R30; ................................................................... Raio Maior
G39 C15; ................................................................... Raio Menor
G39 D10; ................................................................... Diâmetro da Fresa
G39 D(LD/2); ............................................................ Raio da Fresa
G39 R(LR+LD); ........................................................ Raio Maior Compensado
G39 C(LC+LD); ........................................................ Raio Menor Compensado
G39 A0; ..................................................................... Ângulo Inicial
G39 B360; ................................................................. Ângulo Final
G39 I1; ....................................................................... Incremento Ângular
G X(LR) Y Z10.
G1 Z-3. F500
N10 G1 X(LR*(COS(LA))) Y(LC*(SIN(LA)))
G39 A(LA+LI)
M(LT(LB-LA))H20
H10
N20 G1 X(LR*(COS(LB))) Y(LC*(SIN(LB)))
GZOM5
M2

152 R73224
Exemplo 6.:
-Elaborar um programa parametrizado para fresar ranhuras num perfil circular.

R73224 153
;QUADRICULADO_1
G99
G90
G17
G71
G66
T01M6; ........................................................................... Fresa Ø 4mm
O01S2000
M3
G39 R50; ........................................................................ Raio do Círculo
G39 I8; ............................................................................ Incremento Lateral (XY)
G39 A(LR); ..................................................................... Posição Inicial
G39 Z2; ........................................................................... Profundidade do Rasgo
G39 B0; .......................................................................... Ângulo de Rotação
G74IJC(LB)
N10 G0 X(LA) Y(SQR((LR!2)-(LA!2))) Z5.
G1 Z(-(LZ))F500
G1 Y(-(SQR((LR!2)-(LA!2))))
GZ5.
G39 A(LA-LI)
M(LT(LA+LR))H20
H10
N20 G1 Z(-(LZ))
GZ5.
G39A(LR);
N30 G0 X(SQR((LR!2)-(LA!2))) Y(LA)Z5.
G1 Z(-(LZ))F500
X(-(SQR((LR!2)-(LA!2))))
G Z5.
G39 A(LA-LI)
M(LT(LA+LR))H40
H30
N40G1 Z(-(LZ))F500
G2 IJ
G74
GZOM5
M2

154 R73224
Exemplo 8.:
-Elaborar um programa parametrizado para usinar um plano inclinado.

R73224 155
;RAMPA
G99
G90
G17
G71
G66
T01M6; ...................................................................... Fresa de Topo
O01S2000
M3
G39 A30; ................................................................... Ângulo
G39 B100; ................................................................. Comprimento
G39 C(LB*(TAN(LA))); ........................................... Altura
G39 D50; ................................................................... Largura
G39 I1; ....................................................................... Incremento Lateral
GXYZ
N10 G1 Y(LD) F500
x(-(LI)) z(-(LI*(TAN(LA))))
Y
x(-(LI)) z(-(LI*(TAN(LA))))
N20 H10 E20 L(((LB/2)/LI)-1)
X(-(LB))
Y(LD)
GZOM5
M2

156 R73224
Exemplo 9.:
-Elaborar um programa parametrizado para usinar uma cavidade, sendo o raio inicial de 40mm
e raio final de 20mm.

R73224 157
;CAVIDADE_RAMPA
G99
G90
G18
G71
G66
T01M6; .................................................................................... Fresa de Raio Esférico (Ballnose)
O01S2000
M3
G39 R40; ................................................................................. Raio Maior
G39 S20; .................................................................................. Raio Menor
G39 D10; ................................................................................. Diâmetro da Fresa
G39 D(LD/2); .......................................................................... Raio da Fresa
G39 R(LR-LD); ....................................................................... Raio Maior Compensado
G39 S(LS-LD); ........................................................................ Raio Menor Compensado
G39 C100; ............................................................................... Comprimento da Inclinação
G39 I1; ..................................................................................... Incremento Lateral (Y)
G39 A(ATN((LR-LS)/LC)); .................................................... Ângulo da Cavidade
G39 B(LI*(TAN(LA))); .......................................................... Incremento Lateral (X)
G39 Y0; ................................................................................... Posição Inicial
N10 G X(LR) Y(LY) Z(LD+2)
G1 Z0 F500
G3 X(-(LR)) Z I K
G Z(LD+2)
G39 Y(LY-LI)
G39 R(LR-LB)
M(LT(LR-LS))H20
H10
N20 G X(LS) Y(LY)
G1 Z0 F500
G3 X(-(LS)) Z I K
G Z10.
GZOM5
M2

158 R73224
7.11 OPERAÇÕES INICIAIS PARA PROGRAMAÇÃO

7.11.1 ESTUDO DO DESENHO DA PEÇA: BRUTA E ACABADA

Há necessidade de uma análise sobre a viabilidade de execuçÆo da peça em conta as


dimensäes exigidas quantidade de material a ser removido, ferramental necessário, fixaçÆo do
material etc.

7.11.2 ESTUDOS DOS MÉTODOS E PROCESSOS

Definir as fases de usinagem de cada peça a ser executada, estabelecendo assim o que
fazer e quando fazer.

7.11.3 ESCOLHA DAS FERRAMENTAS

A escolha de um bom ferramental é fundamental para um bom aproveitamento do


equipamento, bem como, a sua posiçao no magazine para minimizar o tempo de troca.

7.11.4 CONHECER OS PARÂMETROS FÍSICOS DA MÁQUINA E SUA


PROGRAMAÇÃO

É preciso conhecer todos os recursos de programação disponíveis e a capacidade de


remoçao de cavacos, bem como rotação máxima e número de ferramentas, visando minimizar
tempos de programação e operação.

7.11.5 DEFINIÇÇO DOS PARÂMETROS DE CORTE

Em função do material a ser usinado, buscar juntos ao fabricante de ferramentas, os dados


de cortes: avanços, rotação e profundidade de corte.

R73224 159
7.12 ESTRUTURA DO PROGRAMA

7.12.1 INÍCIO DE PROGRAMA

;ESTRUTURA (nome do programa)


N10 G99 (cancela sero temporário)
N20 G90 (coordenadas absolutas)
N30 G17 (plano xy)
N40 G71 (coordendas em mm)
N50 G66 (apaga o gráfico da tela)
N60 T___M6 (troca a ferramenta)
N70 O___S____M8 (ativar o corretor, a rotação e o refrigerante de corte)
N80 M3 (liga o eixo árvore no sentido horário)
N90

7.12.2 TROCA DE FERRAMENTA

N230
N240 M09 (desliga o refrigerante de corte)
N250 GZ___O M5 (ponto de troca, cancela e desliga o eixo árvore)
N260 T___M6 (troca a ferramenta)
N270 O___S____M8 (ativa novo corretor, nova rotação e o refrigerante de corte)
N280 M3 (liga o eixo árvore no sentido horário)
N290

7.12.3 FINAL DE PROGRAMA

N920
N930 M9 (desliga o refrigerante de corte)
N940 GZ___O M5 (ponto de troca, cancela e desliga o eixo árvore)
N950 M30 (finaliza o programa)

160 R73224
7.13. CÓDIGOS DE PROGRAMAÇÃO

G99 Cancela zero temporário


G90 Coordenadas absolutas
G91 Coordenadas incrementais
G17 Plano XY
G18 Plano XZ
G19 Plano YZ
G71 Coordenadas em mm
G70 Coordenadas em polegadas
G66 Apaga o último gráfico da tela

T Chama a ferramenta
S Determina a rotação da árvore
O Determina o corretor de ferramentas

G00 X ponto final Y ponto final Z ponto final


G01 X ponto final Y ponto final Z ponto final F avanço

G02 X ponto final Y ponto final Z ponto final


I centro”X” J centro”Y” K centro”Z”
G03 Idem ao G02

FUNÇÃO Q “chanfro ou arredondamento”


+ arredondamento
- chanfro
G05 X Y centro do arco Q raio + anti-horário
- horário

G40 Cancela compensação de raio


G41 Compensação de ferramenra à esquerda
G42 Compensação de ferramenta à direita

POSICIONAMENRO POLAR
R raio C ângulo I centro”X” J centro”Y”

ARCO POLAR
C ângulo final I centro”X” J centro”Y”

G81 Z prof. furo R plano rápido F avanço


P1 cod. retração D permanência

G82 Idem ao G81

G83 Z prof. furo R plano rápido F avanço


P1 cod. retração I primeiro incremento J subtração
K último incremento W quebra cavaco U retração

G84 Z prof. furo R plano rápido F avanço (passo*RPM)

R73224 161
G85 Z prof. furo R plano rápido F avanço
V avanço de saída - se não programado assume F

G86 Idem ao G85


V avanço de saída - se não programado assume G0

G24 R raio C ângulo inicial IJ centro”XY”


W número de pontos L número de furos

G25 X distância furos Y distância furos


IJ número de furos em “XY” respectivamente

G26 Z profundidade XY coordenada do canto oposto


I sobremetal”X” J sobremetal”Y” K sobremetal”Z”
W largura de corte L número de passes F avanco de desbasate
H avanço de acabamento V avanço de penetração R raio do canto

G45 O corretor de fixação N desvio


G45 O0 cancela

G92 XY nova posição do zero peça


G99 cancela

G74 IJ centro da rotação c ângulo da rotação incremental


L número de vezes

G72 XYZ fator de redução


G72 cancela

G30 cancela imagem espelho


G31 X, XY, Y coordenadas que serão invertidas

G22 IJ centro da interpolação K passo


F avanço da interpolação Z profundidade do furo

G23 Idem ao G22

7.14 FUNÇÕES MISCELÂNEAS

M00 Parada do programa


M01 Parada Opcional
M03 Liga o eixo árvore no sentido horário
M04 Liga o eixo árvore no sentido anti-horário
M05 Desliga o eixo árvore
M06 Libera o giro do magazine de ferramentas
M08 Liga refrigerante de corte
M09 Desliga refrigerante de corte
M02/M30Final de programa

162 R73224

Você também pode gostar