Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Comando OSP
Ago. 2009
Manual:
Programação – 2 eixos
Okuma Latino Americana
Índice de Conteúdo
Programação página
1. Introdução.
2. Formato de programa.
3. Sistema de coordenadas.
4. Ponto zero peça.
5. Máxima rotação do fuso (G50)
6. Avanço rápido (G00).
7. Interpolação linear (G01).
8. Posicionamento Absoluto (G90).
9. Posicionamento Incremental (G91).
10. Velocidade de corte constante (G96)
11. Rotação fixa (G97)
12. Tempo de espera (G04)
13. Comando seleção de ferramenta (T)
14. Indicação de fim de programa (M02)
15. Funções “M” Ex: Rotação do fuso, faixa de engrenamento etc.
(M3, M4, M5, M41, M42, M08, M09, M90, M91, M83, M84, M19).
16. Interpolação circular (G02 e G03).
17. Compensação de raio de corte (G40, G41 e G42).
18. Comando para execução de ângulos.
19. Chanfros e arredondamento automático.
20. Auto chanfro em qualquer ângulo.
21. Ciclos fixos (furação, rosqueamento, canal etc.).
22. Ciclos de desbaste (LAP)
23. Definição de “Blank”.
24. Sub-programa.
25. Programação com variáveis.
26. Tabela de códigos “G”, “M”.
INTRODUÇÃO
O objetivo deste manual é dar suporte de programação aos usuários dos tornos de dois eixos
OKUMA, auxiliando o bom desempenho do programa a ser executado. As informações contidas
aqui foram elaboradas em referência ao próprio manual de programação OKUMA. Vale lembrar
que algumas funções podem não estar disponíveis em sua máquina, por se tratar de um opcional.
Neste caso desconsidere-as.
Programa principal
Os programas principais são armazenados em forma de arquivo, onde cada arquivo poderá terá um
programa principal.
Pode-se nomear esse arquivo com no máximo 16 caracteres, sendo que o primeiro caractere deve
ser uma letra (A até Z) e os demais alfanuméricos, ou seja, letras ou números. Porém quando for
necessário copiar o programa para um disquete em formato MS-DOS, o nome do arquivo deverá ter
no máximo 8 caracteres.
O nome do programa não poderá conter os caracteres (.), (/) e (,).
Os arquivos para programa principal serão identificados com a extensão MIN.
Cada linha de um programa pode ter no máximo 64 caracteres e não é necessário colocar os códigos
de linha de chamada “N” em cada linha.
Também não é necessário colocar o sinal de % no início de cada programa a não ser que a
transmissão do programa esteja sendo feita através de DNC via RS232. E não é necessário colocar o
código “Lf” no final de cada linha.
Tipos de extensões
SISTEMA DE COORDENADAS
Os movimentos das máquinas CNC devem ser identificados de forma específica, ou seja, cada
movimento deve ser explicado numericamente para o controle. As condições de usinagem devem
sempre estar relacionadas com o material a se trabalhar e estabelecidas em conjunto com a
ferramenta a se utilizar.
As posições requeridas dentro da área de trabalho em um torno são determinadas por coordenadas
numéricas ao longo de seus eixos. Estas posições são identificadas por comandos de X e ou Z,
determinadas pela distância em relação ao Ponto Zero de cada eixo, e podem ser negativas ou
positivas dependendo de onde este está localizado.
Plano cartesiano
Eixo-árvore
PONTO ZERO
Zero máquina
Na montagem dos encoders na máquina, o comando assume um ponto como zero sendo este ponto
diferente para cada máquina.
Este é o ponto de origem para o sistema de coordenadas da máquina chamado de zero máquina.
Este ponto não tem nenhuma relação com a placa, peça, contra ponta, etc., portanto não é utilizado
na programação.
Zero peça
Define o ponto zero das coordenadas para a peça. No eixo “X” o ponto zero sempre se localizará na
linha de centro da peça e no eixo “Z” em uma face definida pelo programador como referência para
os comprimentos.
O 1° passo para elaboração de um programa é definir o zero peça.
O ponto zero peça é ajustado pelo preparador durante a preparação da máquina.
A escolha do ponto zero no eixo-Z pode ser feita por dois métodos.
No primeiro, e tipicamente localizado na superfície esquerda da peça onde sua principal vantagem é
manter todas as dimensões com sinal positivo. Neste método, há o benefício do zero peça ser
representado pela superfície física da própria fixação de trabalho.
O segundo método localiza o ponto zero na superfície direita da peça, gerando um sinal negativo
em todas as cotas do eixo Z, em contato com esta. Este estilo diminui o risco de colisão, pois a
cautela na programação é maior.
O contorno da peça é especificado no programa pelos valores das coordenadas “X” e “Z” de cada
ponto em relação ao ponto zero peça.
Exemplo de especificação de contorno:
X0 Z0
X15 Z0
X15 Z-10
X25 Z-15
X25 Z-25
X35 Z-25
X35 Z-35
Exercício – Coordenadas
F
E X Z
D
B A
C
A B
C
D
E
F
Este comando é necessário em todo programa de usinagem. O código G50 deve obrigatoriamente
ser programado antes de uma instrução de rotação. Programas sem G50 causaram um alarme
quando uma rotação for programada.
Embora toda máquina tenha um limite mecânico de rotação do fuso, a intenção do código G50 é
permitir especificar no programa o limite de rotação executável durante toda a usinagem
considerando as condições de corte programadas ou outras limitações que possam existir como, por
exemplo, o sistema de fixação utilizado.
Durante a operação da máquina (Automático ou MDI), se um comando de rotação programado for
maior que o valor em G50, a máxima rotação assumida pelo fuso será o limite especificado em G50
e adicionalmente o indicador “LIMIT” no painel ficará piscando.
Obs.:
Para definir o valor de G50, devem-se levar em consideração fatores como diâmetro da placa, força
centrífuga da placa, sistema de fixação, balanço da ferramenta etc.
É possível atribuir um novo ponto zero dentro do programa através de G50. Essa função é utilizada
quando se torna necessário deslocar o zero peça automaticamente via programa.
Um exemplo muito comum é quando se precisa executar uma simulação da usinagem sem que a
ferramenta toque na peça, determinando assim um novo ponto zero de referência.
Acima, temos na linha N01 o posicionamento feito na coordenada do ponto zero original. Em
seguida, quando a linha N05 é executada, é atribuído um novo valor no programa para o ponto zero,
que passa a se encontrar a 10 mm em Z do ponto original na direção positiva. Finalmente quando a
linha N10 é executada, a torre move-se para a nova referência assumida por G50.
Informações importantes:
- Toda vez que o comando é restabelecido, a máquina assume o valor original do ponto zero peça.
- O valor especificado em G50 é relativo à ponta da ferramenta, ou seja, a posição da torre.
- G50 não é modal e ativa somente no bloco comandado.
É na maioria dos casos, o método de programação mais utilizado. O método absoluto define todas
as dimensões da peça em relação ao ponto zero peça (X0, Z0), sendo preferido por sua simplicidade
tendo no programa as dimensões reais da peça.
Método raramente utilizado, exceto em casos de necessidade como, por exemplo, programas
parametrizados. Funcionalmente, este descreve um caminho de programa baseado na coordenada
atual de X e Z da ferramenta e incrementalmente define a próxima posição alvo relativa à atual.
Exemplo:
ABSOLUTO INCREMENTAL
Esse comando refere-se à posição em que a torre deve se mover antes de indexar outra ferramenta
solicitada no momento da usinagem. Essa função é também chamada de “Posição de indexação da
torre”.
Para que ocorra a indexação, a torre deve ser posicionada em qualquer um dos limites positivos de
X ou Z. Sempre que esta se desloca para um dos limites, o indicador “LIMIT” no painel acende
indicando uma posição permissível para indexação.
Por razões óbvias, a posição de indexação da torre deve sempre permitir que a mais longa
ferramenta no movimento de troca esteja livre de colisões com a placa de fixação ou a peça.
Basicamente, a indexação da torre pode estar em qualquer posição dentro dos limites de trabalho da
máquina, portanto deve mover-se para o fim de curso positivo em X ou Z.
- O posicionamento da torre no limite, não pode ser executado usando o comando G01.
- Para a posição de troca, o usuário deve selecionar um valor de X e Z que sempre exceda a faixa
de trabalho da máquina, pois a máquina entende que o fim de curso foi atingido sem gerar
alarme.
Dentro dos limites de fim de curso da máquina, existe a possibilidade de estabelecer uma janela
usada para definir em efeito, uma menor área de trabalho. Os limites desta pequena janela são
chamados de “USER SOFT LIMIT”. O primeiro motivo para estabelecer uma janela de trabalho é,
reduzir a distância e conseqüentemente o tempo de troca da ferramenta, trazendo os limites de
confirmação de indexação da torre próximos da peça.
A figura abaixo mostra a janela de trabalho que a torre pode mover-se, baseado nestes “SOFT
LIMIT” estabelecidos pelo OSP.
Para fácil identificação de uma linha especificada dentro do programa, pode-se inserir a letra “N”
seguida de 4 caracteres alfanuméricos. Isto auxilia principalmente a necessidade de se reiniciar um
programa de qualquer ponto.
O exemplo abaixo ilustra a aplicação da numeração de linhas.
Utilizado para executar movimentos fora da peça com o intuito de diminuir os tempos de
posicionamento.
Cada eixo X e ou Z se desloca para posição programada independente um do outro e cada um com
sua máxima velocidade (definido pelo fabricante).
Nem sempre o movimento é feito em uma linha direta entre a posição atual e a posição de destino.
Quando programamos uma coordenada maior que o curso possível utilizando “G00”, no momento
que é atingido o fim de curso o comando assume como deslocamento concluído, sem gerar alarme.
Ex: Se o curso máximo da máquina no eixo é “X=300 mm” e programarmos “G00 X1000”, quando
a máquina se deslocar até “X300” o comando interpreta que “G00 X1000” está concluído,
passando a executar a próxima linha do programa.
A linha N1 posiciona a torre em qualquer um dos limites positivos, para indexação da torre. Durante
o movimento não é exigido à rotação do “fuso” e após este comando ser discriminado, ele se torna
modal.
A linha N2 discrimina a posição desejada.
A função “G01” é utilizada para executar movimentos em linha reta com velocidade controlada.
Para definir a velocidade de avanço devemos programar juntamente com o “G01” a função “F”
seguida do valor em mm/rot. (valor em mm que a ferramenta se desloca por cada volta da peça).
Na leitura do primeiro “G01” do programa é necessário programar o avanço na função “F”, caso
contrário, teremos um alarme.
Se atingirmos o fim de curso com um movimento em “G01” teremos um alarme.
Nota: As funções “G00”, “G01” e “F” são modais, ou seja, uma vez programadas não é necessário
repeti-las nas próximas linhas.
Exemplo:
AVANÇO (F)
É usado para definir um valor de avanço desejado por revolução da peça durante o processo de
corte. Na essência, isto pode ser o quanto a ferramenta se moveria no sentido axial por cada
revolução da peça de trabalho.
Geralmente, em operações de desbaste o valor de avanço fica entre 0.25 e 0.6 mm/rev, em
acabamentos sua faixa é de 0.1 e 0.25 mm/rev.
Na criação inicial do programa, o usuário seleciona o avanço baseado em experiências passadas ou
em dados de tabela de corte fornecida pelo fabricante de ferramentas. Um ótimo valor é definido
por alguns fatores tais como, condições de corte, tipo de material e escolha do inserto.
Exemplo:
G01 X... Z... F.01 / G01 X... Z... F0.04
Na maioria das vezes essa função é utilizada para casos onde o eixo da máquina necessita ser
movido por uma razão controlada sem a necessidade de rotação do fuso.
Como exemplo, isto seria utilizado em máquinas que trabalham com alimentador de barras.
Outro exemplo seria a utilização de apalpadores de medição que são programados para tocarem na
peça sem a intervenção do operador.
O modo G94 é modal, portanto o usuário deve sempre assegurar o retorno para o modo G95 no
programa.
Durante a usinagem, a letra “F” determina a razão a qual os eixos são movidos. Para torneamento, o
“F” é baseado na unidade de mm/rev. Quando a máquina é ligada ou a cada resete do controle o
modo G95 vem como default, Portanto não há necessidade de se colocar o comando no programa.
Permite o usuário programar a velocidade de corte (m/min) de acordo com o material da peça ao
invés de se programar a rotação.
Com isso, o controle calcula a variação da rotação do fuso em relação à coordenada “X” da
ferramenta.
A vantagem de se usar o modo G96 é reduzir o tempo de usinagem melhorando as condições de
corte da ferramenta, do inserto e o acabamento superficial, flexibilizando a programação nos casos
onde a base da velocidade de corte é objeto de freqüentes mudanças. Quando seguido do comando
G96, o valor especificado em “S” expressa à velocidade de corte em m/min.
Esse comando é recomendado para processos onde é necessário programar uma rotação fixa do
fuso. Uma condição muito comum é utilizá-lo em processos que constitui simples movimento
longitudinal, tais como, usinagem de furos e rosqueamento.
O modo G97 cancela o modo G96 e deve ter um “S” na mesma linha.
Notas:
- Ao ligar a máquina, o comando assume G97.
- É aconselhável ativar G97 antes de G00, caso contrário o mesmo torna-se perigoso em função
da aceleração e desaceleração do fuso para grandes deslocamentos em X.
Permite que no programa seja identificada uma ferramenta para ser indexada na posição de corte.
Por razões de simplicidade, o número do corretor da ferramenta deve ser relacionado ao número da
estação da torre. Na identificação da ferramenta utiliza-se um “T” seguido de dígitos:
T 05
Número do corretor da ferramenta (existem 32 corretores)
T 05 05
Número do corretor da ferramenta
Número da ferramenta na torre
T 05 05 05
Número do corretor da ferramenta
Número da ferramenta na torre
Número do corretor para o raio de corte da ferramenta (existem 32 corretores)
Notas:
- O comando pode conter até 6 dígitos de dados para uma completa descrição, porém, baseado no
tipo de ferramenta que for utilizada, é possível ativar uma ferramenta com 4 dígitos.
- Para tornos com duas torres, existem 32 corretores para cada torre.
- O giro da torre é executado pelo caminho mais curto, podendo também ser controlado por
função “M”.
O sentido de rotação do fuso deve ser definido através dos códigos “M” definidos na tabela abaixo.
Para se definir o sentido de rotação do fuso deve-se observar o fuso por trás.
Horário M03
Anti-horário M04
Parar M05
A transmissão do motor para o fuso da máquina seja com motor integral ou através de correia,
oferecem duas opções de transmissão, uma com “baixa rotação e alto torque” selecionada pela
função “M41” e a outra com “alta rotação e baixo torque” selecionada pela função “M42”.
É importante salientar que o comando “M41” é modal e, portanto limita a rotação da máquina
independente do que for programado em todo o programa. Esse limite de rotação varia de acordo
com cada modelo de máquina. Esse valor normalmente é descrito no manual “Operation &
Maintenance” da máquina em questão.
Portanto, após a utilização do “M41”, se for necessário uma rotação maior para uma operação de
acabamento, por exemplo, será necessário programar “M42”.
Deve ser selecionado para auxiliar a usinagem aumentando a vida útil da ferramenta de corte e
melhorar o acabamento superficial em função da diminuição de temperatura no momento do corte.
Geralmente seleciona-se a ativação um momento antes da ferramenta tocar a peça, desativando logo
após o corte ser sucedido.
Para que estes códigos se tornem ativos na execução em AUTO ou MDI, é necessário discriminá-
los no programa e ativar a tecla AUTO no comando.
Após a execução de M00 o programa interrompe sua leitura e execução esperando um sinal de
START do painel para ser reinicializado.
Quando M01 é executado, o programa interrompe sua execução somente se a tecla OPCIONAL
STOP no painel de operação estiver ativada, sendo reinicializado mediante um sinal de START do
painel.
Essa função é utilizada na maioria das vezes quando for necessário interromper a execução do
programa para fazer algum tipo de controle de medição ou até para inverter a posição da peça na
placa.
No caso de máquinas que possuem porta automática, existe o opcional para se executar dentro do
programa o fechamento e a abertura da porta, os códigos disponíveis são:
Quando se utilizar o recuo do mangote via programa através do código M55, será necessário
programar em conjunto o código M157 que tem a função de ignorar a o sinal de mangote
atuado/recuado.
Da mesma forma que ao se programar o avanço de mangote utilizando o código M56, será
necessário programar em conjunto o código M156 que tem a função de habilitar o sinal de mangote
atuado/recuado.
Quando houver a necessidade de abrir ou fechar a placa de fixação de peça via programa, como por
exemplo, uma célula de produção com automação, onde a intervenção humana para carga e
descarga não é permitida, é necessário executar a abertura e fechamento de placa através do
programa reduzindo o chamado “tempo morto”.
A abertura e o fechamento da placa podem ser ativados via pedal que se encontra no exterior da
máquina ou via programa utilizando os seguintes códigos “M”.
Quando for necessário parar a rotação da peça numa posição angular pré-determinada é necessário
no fim do programa executar a função M19.
Caso a posição desejada não seja a posição angular de 0°, é necessário colocar na mesma linha do
comando a função “C” seguida do ângulo desejado conforme exemplo abaixo:
FORMATO DE PROGRAMA
Fn VC
Tipo de ferramenta
[mm/rev.] [m/min]
Cilindrar externo e interno. em desb.* 0,3 200
Cilindrar externo e interno em acab.* 0,15 300
Roscar Passo 130
Sangrar 0,2 150
Furar 0,16 140
Notas: Os dados de corte acima são fornecidos pelos fabricantes de ferramentas, basicamente eles
dependem do tipo de material e do tipo de ferramenta.
Fórmula de rotação
RPM = VC x 1000
PI x Ø
EXERCÍCIO:
Essa função possibilita a usinagem de círculos ou arcos, externos ou internos. Para as superfícies
em arcos, deve-se definir a direção, baseada no avanço da ferramenta de corte. Este comando é
utilizado para gerar qualquer tipo de arco.
Para se executar um arco é necessário utilizar a função “G02” (interpolação circular horária) ou
“G03” (interpolação circular anti-horária).
Para executarmos as funções “G02” e “G03” a ferramenta deve estar posicionada no início do arco,
e na interpolação circular devemos informar o ponto final do arco e seu centro.
Para programarmos o arco devemos escolher entre “L” ou “I” e “K”. Se programarmos as duas
opções, teremos um alarme. A programação de “L” somente é possível para raios onde o ângulo
interno é menor que 180º.
Onde “L” é o valor do raio a ser executado.
Para definirmos o sinal de “I” e “K” devemos analisar como se fossemos executar um movimento
incremental.
G02 X... Z... I... K... F... G03 X... Z... I... K... F...
OU OU
G02 X... Z... L... F... G03 X... Z... L... F...
Nota:
1. As funções G02 e G03 são modais.
2. É necessária a programação de F (avanço) na mesma linha ou numa linha anterior.
No SET-UP da ferramenta toma-se como referência dois contatos, um com base no plano horizontal
e outro com base no plano vertical.
Em um torneamento de uma face ou um cilindro não ocorrerá nenhum problema, mas ao se usinar
um cone ou um raio ocorrerá um desvio do perfil executado para o desejado.
Para definir qual código utilizar, o usuário deve considerar a seguinte regra;
Quando a ferramenta se localizar à esquerda da superfície de trabalho a ser usinada, em relação a
sua direção de avanço é definido G41, quando a ferramenta estiver à direita é definido G42.
Nota:
1. Na sentença do programa onde se deseja ativar ou desativar a CRC é necessário um
deslocamento em G00 ou G01 maior que quatro vezes o raio da ferramenta.
O valor do raio a ser compensado deve estar armazenado em “TOOL DATA” e com seu
respectivo quadrante conforme mostrado abaixo:
2- Para cancelar a compensação de raio de corte (G40), na mesma linha ou na linha anterior, é
necessário um movimento com G00 ou G01.
G50 S4500
G00 X1000 Z1000
T010101 G96 S250 M4 M42
G00 G42 X73 Z1.5 M08
G01 X80 Z-2 F0.15
G01 Z-15 F0.3
G01 X90 Z-25
G01 Z-44
G02 X102 Z-50 L6
G01 X114
G03 X120 Z-53 L3
G01 Z-65
G01 X145
G97 S600
G00 G40 X1000 Z1000 M09
T020202 G97 S550 M4 M42
G00 G41 X67 Z2 M08
G96 S250
G01 X60 Z-1.5 F0.15
G01 Z-26 F0.25
G03 X52 Z-30 L4
G01 X44
G02 X40 Z-32 L2
G01 Z-88
G00 G40 X35
G00 Z2
G00 X1000 Z1000 M09 M05
M02
T1 – Torneamento externo
T2 – Torneamento interno
Na programação de interpolação linear (G01) podemos programar a função “A” para deslocamento
em ângulo, sendo que, para programar um cone podemos utilizar “G01 X... Z...”, “G01 X... A...” ou
“G01 Z... A...”.
A seguir, a ilustração abaixo identifica o sistema utilizado para definir o ângulo:
Quando programamos um eixo e um ângulo, a ferramenta se movimenta do ponto onde está parada
percorrendo o ângulo definido em “A” até atingir a coordenada definida em “X” ou “Z”.
Para definirmos o ângulo a ser programado, devemos seguir a seguinte regra sempre partindo do
ponto inicial do ângulo (PI).
Exemplo:
Considerando-se como referência o ponto PI o programa ficará: G01 X50 A150 ou G01 X50
A-30.
Nota: O ângulo deverá ser expresso no programa na forma decimal.
Ex: 15° 20’ = 15.333
Outra possibilidade é a programação de somente “A” em uma sentença do programa. Sempre que
programarmos somente “A” em uma sentença, na próxima sentença devemos programar “X, Z e
A”, com isso, o comando irá calcular o ponto de intersecção entre as retas.
Exemplo:
O comando acima move a ferramenta do ponto A para o B e então para o C, com o tamanho de 5
mm em 45° para G75, ou raio do contorno de 5 mm para G76.
Notas:
A figura abaixo exemplifica a utilização de G75 em uma superfície qualquer. Se fosse necessário no
lugar de chanfros, arredondamentos, G76 seria utilizado no mesmo formato.
G50 S2800
G00 X1000 Z1000
T080808 G96 S180 M4 M42
G00 G42 X23 Z2 M8
G01 X30 A135 F0.25
G01 Z-25 G76 L1.5
G01 X50 G75 L5
G01 Z-45 G76 L5
G01 X70 G75 L1.5
G01 Z-50
G01 X74 F0.5 G40
G00 X1000 Z1000 M9 M5
M30
A opção permite que o usuário faça a combinação de perfis inclinados com chanfros ou raios.
Especificamente este método é diferente do comando G75 ou G76, pois o programador não fica
limitado a chanfros de 45° ou arredondamentos de 90°.
:
:
G01 Z-60 G76 L15 F0.3
G01 X25 A135 G76 L10
G01 Z-120 A164 G76 L12
G01 X80 A121 G75 L6
G01 Z-180 A167
:
:
Exercício:
Torneamento externo
CICLOS FIXOS
Ciclos de rosca
Formato: G71 X__ Z__ (A__ ou I__) B__ D__ U__ H__ L__ F__ J__ M__ Q__
Formato: G72 X.. Z.. (A.. ou K..) B.. D.. W... H,. L.. F.. J.. M...Q..
Exemplos:
Rosca Externa
G50 S3800
G00 X1000 Z1000
(T1 - ACABAMENTO EXTERNO)
T010101 G96 S300 M3 M42
G00 G42 X20 Z3 M8
G01 X30 Z-2 F0.15
G01 G76 Z-55 L2
G01 G75 X65 L3
G01 Z-60
G01 G40 X70
G97 S1370
G00 X1000 Z1000
(T3 - ROSCA)
NT3 T0303 G97 S1380 M3 M42
G00 X32 Z5
G71 X27.4 Z-30 B60 D0.35 U0.02 H2.6 F2 M32 M73
G00 X1000 Z1000 M5 M9
M30
Rosca Interna
G50 S3800
G00 X1000 Z1000
(T5 - ACABAMENTO INTERNO)
T050505 G96 S300 M3 M42
G00 G41 X64.75 Z2 M8
G01 X56.75 A45 F0.15
G01 Z-60
G01 X38
G00 G40 Z5
G97 S1380
G00 X1000 Z1000
(T7 - ROSCA)
NT7 T0707 G97 S1380 M3 M42
G00 X55 Z5
G71 X60 Z-30 B60 D0.3 U0.05 H3.25 F2.5 M32 M73
G00 X1000 Z1000 M5 M9
M30
Formato: G73 X.. Z.. I.. K.. D.. L.. F.. E.. T..
Exemplo de programação
Ø85 Ø110
T relativo a troca T relativo a
de ferramenta linha do ciclo
90
110
150
G50 S3200
G00 X1000 Z1000
G97 S900 T0101 M4
X112 Z90
G96 S300
G73 X85 Z110 K5 D5 L20 F.2 E.5 T11
G97 S500
G00 X1000 Z1000
M2
Formato: G74 X.. Z.. 1.. K.. D.. L.. F.. E.. T..
Exemplo de programação
Exercício:
Ferramentas
T1 – Acabamento
T2 – Canal (Considerar bedame largura 5,0mm)
T3 – Rosca
Furação (G74)
X - coordenada no diâmetro. Deve ser sempre zero mesmo que na linha anterior houver.
Z - coordenada final do furo em relação ao zero peça.
K - valor em avanço rápido de um ponto em Z a outro no mesmo eixo, antes da peça.
D - profundidade para cada penetração
L - limite de profundidade para retração da ferramenta até o ponto inicial de corte.
F - avanço.
E - tempo de espera expresso em segundos no final do furo.
G50 S3200
G0 X1000 Z1000
X0 Z255 G97 S800 T0101 M3 M41 M8
G74 X0 Z-10 D10 L40 F.15 E0.5
G0 X1000 Z1000 M5
M02
Esse ciclo deve ser utilizado para rosqueamento com macho para execução de rosca à direita e deve
ser utilizado somente com mandril que possua compensação, pois os movimentos não são
sincronizados.
Exemplo:
Rosca M10 x 1,5 com 20 mm de profundidade iniciando em Z50.
------
------
T0101 G97 S200 M41
G0 Z70
G0 X0 Z60 M8
G77 X0 Z30 K5 F1.5
Este ciclo executa a entrada do macho de maneira reversa ao ciclo anterior e também utiliza
ferramentas com compensação.
1) Furação – T1
2) Macho – T2
A função LAP é usada para gerar automaticamente um caminho de ferramenta necessário para
produzir um contorno da peça com capacidade de processamento em alta velocidade.
Nessa função, o programa contém dados dimensionais do contorno final e das condições de
desbaste preparadas na definição do programa. Quando este é executado com as condições de corte
especificadas, o controle gera um respectivo ciclo de desbaste e posteriormente o acabamento das
dimensões programadas.
Essa característica permite que o programador apenas inclua no programa as dimensões do desenho
da peça, simplificando e reduzindo o tempo de programação.
DESBASTE
BARRAS
G85
FORJADOS/
FUNDIDOS
G86
ACABAMENTO
G87
Com o comando abaixo, o controle procura a definição do contorno começando o programa com o
nome da seqüência em NLAP1. Após definir os dados de D, F, U, W e G84 para NLAPI ,o controle
começa o ciclo.
Obs.:
Com este comando, o controle procura a definição do contorno começando o programa com o nome
da seqüência em NLAP1. Após definir os dados de U, W para NLAP1, o controle começa o ciclo de
acabamento.
Obs.:
- Nenhum código S, T, M pode ser fornecido no mesmo bloco de G87.
- Não se usa um comando de avanço no bloco, pois este é definido na definição de
contorno.
- O avanço antes do bloco se torna efetivo se não for fornecido na definição de contorno.
G50 S4500
G00 X1000 Z1000
T010101 G96 S250 M4 M41
X70 Z1.5 M8
G85 NLAPD D5 F0.35 U1 W.2
NLAPD G81
G00 G42 X24 Z1.5
G01 X30 Z-1.5 F0.2
Z-25
G75 X50 L5
Z-45
G75 X70 L1.5
Z-48
X72 G40
G80
G00 X1000 Z1000
T020202 G96 S350 M4 M42
G87 NLAPD
G00 X1000 Z1000 M9
M30
Com este comando, o controle procura a definição do contorno definindo pela letra N. Após definir
os dados de U e W para NLAP1, o controle começa o ciclo.
1 - Indica que os comandos são contínuos (devem ser especificados no começo do bloco).
2 - Define o ponto onde as condições de corte são trocadas.
3 - Profundidade de corte após o ponto de troca.
4 - Avanço após o ponto de troca.
Com este comando, as condições de usinagem de um ponto desejado podem ser trocadas durante o
ciclo de desbaste. Se isto não for necessário, o comando deve ser omitido.
G50 S3500
G00 X500 Z500
T0101 G96 S250 M4 M41
G00 X150 Z3
G85 NODG1 D8 F0.8 U1 W0.5
$ G84 XA=90 DA=6 FA=0.6
$ XB=50 DB=4 FB=0.3
NODG1 G81
G00 X30 Z5
G01 Z-40 F0.15
G01 X155
G80
G87 NODG1
G00 X500 Z500 M9 M5
M30
SIMULAÇÃO GRÁFICA
A importância desta função está em testar o programa graficamente, antes de efetivamente usinar a
primeira peça, sendo possível desenhar sua geometria e executar sua simulação.
Formato:
CLEAR
DEF WORK
PS (REF.POINT),[Z(valor),X(valor)],[Z(valor),X(valor)]
END
DRAW
G50 S3000
Definições
CLEAR - colocado na primeira linha do programa, o CRT limpa o gráfico do ciclo da última peça.
A cada CYCLE START, a tela restaura o blank do material do programa corrente.
PS (paints) - pinta e exibe o tamanho do blank especificado. Deve ser seguido de espaço.
[Z(valor),X(valor)] - distância incremental dos eixos Z e X para o zero peça em relação a qualquer
ponto selecionado.
[Z(valor),X(valor)] - distância absoluta dos eixos Z e X para o tamanho da peça, permitindo que o
controle estabeleça a dimensão completa do blank.
CLEAR
DEF WORK
PS LC, [0,0],[100,130]
PS LC, [0,0],[100,80],0
END
DRAW
Para definir uma peça cuja geometria seja irregular em sua vista lateral ou tenha um perfil que
necessite de uma forma geométrica diferente de simples retângulos é necessário utilizar o comando
PAINT (PF) na seguinte definição:
[Za,Xa] - centro
[Zb,Xb] - ponto inicial
[Zc,Xc] - ponto final
[Za,Xa] – centro
100 - diâmetro
D - código que indica diâmetro
Para discriminar um ponto de referência utiliza-se o comando POint. Este comando simplesmente
ativa um ponto que servirá de referência para execução de linhas ou arcos:
P0 [Z,X]
Muitas vezes é necessário desenhar um segmento de reta para exemplificar uma linha de centro ou
mesmo linhas de transição de condições de corte. Isto é feito através do comando Line:
LI, [Za,Xa],CÓDIGO DA LINHA
[Za,Xa] -ponto final
CÓDIGO DA LINHA = 0 - linha sólida, 1 - linha pontilhada, 2 - linha de traços curtos, 3 -
linha de traços longos, 4 - linha de traços curtos e longos alternados, 5 - linha de um traço
longo e dois curtos alternados
CLEAR
DEF WORK
PS LC,[0,0],[50,50]
PF 4,[50,-25],[100,-15],[100,15],[50,25]
PF 3,[100,-15],[120,00],[100,15]
END
DRAW
Exercício
SUB-PROGRAMA
Um sub-programa é um programa auxiliar dentro do programa principal sendo que qualquer função
pode ser programada.
Podem ser chamados até 63 sub-programas dentro do programa principal e até 8 desvios na
chamada de um sub-programa.
Os sub-programas são identificados pela letra “O” e mais 4 caracteres alfanuméricos e a última
linha do sub-programa deve ter RTS (fim de sub-programa).
A chamada de um sub-programa é através da função “CALL”, sendo que o sub-programa deve estar
descrito logo após M2 ou M30 ou dentro de um arquivo com extensão “.SSB”, sendo que a primeira
linha do arquivo deve ser o nome do sub-programa e a ultima RTS.
G50 S3000
G00 X1000 Z1000
T0202 G96 S150 M4 M41
G00 X42 Z50 M08
CALL O100
G00 Z70
CALL O100
G00 Z90
CALL O100
G00 X1000 Z1000 M09
M02
O100
G01 X20 F0.3
G04 F0.5
G00 X41
G91 Z-1
G01 G90 X39 A-45 F0.15
G00 X41
T12 G91 Z1
G01 G90 X39 A225
G00 X42
RTS
VARIÁVEL
- Variável Comum
O termo “comum” pode literalmente ser entendido como geral, ou seja, se utilizada em um ou mais
programas, assume um valor idêntico para ambos. Conseqüentemente, para variáveis dessa
natureza, o resultado do cálculo feito em um programa pode ser assumido em outros. A designação
de uma variável comum é formada peja letra V seguida de um ou dois dígitos. O comando oferece
até 200 variáveis que podem ser armazenadas na tela de PARAMETER em COMUM VARIABLE.
Ex: V2=30
V3=2
G00 X=V2 Z=V3
- Variável Local
São variáveis que o usuário pode ativar quando necessário com um nome fácil de se distinguir. O
comando fornece até 127 variáveis para utilização.
No programa o formato é:
<letra><letra><dois alfanuméricos> = dados numéricos
“O” “N”, “V” não podem ser usados. Ex. “DIA1” “IHT5”
Alguns padrões do próprio sistema tais como: nome de funções, operações de comparação, e
endereços estendidos utilizados para realizar o ciclo LAP (AA, AB, DA, DB, FA, FB, IA, IB, KA,
KB, LA, LB, RA, RB, SA, SB, TA, TB, UA, UB, WA, WB, XA, XB, ZA, ZB, BC, BR) NÃO
PODEM SER USADOS.
- Variável de Sistema
São variáveis que possuem nomes fixos e não são influenciadas por um resete do comando. O
sistema oferece uma série de variáveis que podem ser programadas e conseqüentemente assumidas.
A seguir são mostradas as mais importantes e de uso permanente. Para um melhor complemento
deste assunto refira-se ao manual de programação de tornos OKUMA.
VZOFX - eixo X
VZOFZ - eixo Z
VZOFC - eixo C
Ex: VZOFZ=12370.377
VZSHX - eixo X
VZSHZ - eixo Z
VZSHC - eixo C
Ex: VZSHZ=50
Ex: VTOFX[8]=35.267
VTOFZ[8]=54.856
Ex: VNSRX[4]=0.8
VNSRZ[4]=0.8
Ex: VPVLZ=VZOFZ+300
As operações aritméticas que utilizam variáveis podem ser executadas da mesma maneira que uma
expressão geral qualquer. Abaixo é detalhado todo conteúdo que o comando fornece para auxiliar a
programação na necessidade de se utilizar constantes, variáveis e operações aritméticas.
Operações trigonométricas
Combinação de Operações
X=V1+V2-V3+V4*COS[30]
Ex: V1=[V2+V3]*\/4+SIN[[[V5-V6]/V7]+V8]
FACEAR 2,5 mm
2,5
Ø82 Ø142
Programa parametrizado:
G50 S300
G0 X1000 Z1000
T0101 G96 S300 M4 M42
V1=0.5
V2=0.5
V3=2.5
NCOM
G0 X150 Z=-V1
G1 X80 F0.2 M8
G1 X150 Z=V1+0.5
V1=V1+V2
IF[V1 LE V3]NCOM
G0 X1000 Z1000
M30
Programa parametrizado:
V1=10
V2=1
V3=15
V4=20
V5=25
V6=40
V7=40
G50 S3000
G0 X1000 Z1000
T0101 G96 S300 M4
G0 X=V1 Z=V2
G1 Z=-V3 F0.2 M8
G1 X=V4 Z=-V5
G1 Z=-V6
G1 X=V7+2
G0 X1000 Z1000
M30
Obs: As variáveis V1 à V7 foram setadas de acordo com as medidas do desenho acima, podendo
ser alteradas conforme a dimensão da peça.
No programa acima é possível usinar várias peças com o mesmo perfil desde que só altere suas
dimensões.
Ao invés de você ter um programa para cada peça, é possível ter apenas o programa acima para
usinar todas as peças.
TABELA DE CÓDIGOS G
@: Opcional
Outros: Padrão
Código G Conteúdos
G00 Deslocamento do eixo em avanço rápido
G01 Interpolação linear com avanço controlado
G02 Interpolação circular sentido horário
G03 Interpolação circular sentido anti-horário
G04 Tempo de espera em segundos programado junto com a função “F”
G13 Seleção da torre “A” – Torre superior @
G14 Seleção da torre “B” – Torre inferior @
G17 Compensação de raio de corte: plano X-Y @
G18 Compensação de raio de corte: plano Z-X @
G19 Compensação de raio de corte: plano Y-Z @
G20 Posição de origem @
G21 Comando de posicionamento do ATC @
G22 Comando monitoramento de torque do eixo-W @
G28 Cancela limite de torque @
G29 Ativa o limite de torque @
G30 Ciclo utilizado para medição de peça @
G31 Ciclo fixo para rosca longitudinal (mesmo que G33)
G32 Ciclo fixo para rosca transversal
G33 Ciclo fixo para rosca
G34 Ciclo de rosca com passo variável (crescente)
G35 Ciclo de rosca com passo variável (decrescente)
G36 Fuso da ferramenta-M – avanço sincronizado (sentido horário) @
G37 Fuso da ferramenta-M – avanço sincronizado (sentido anti-horário) @
G40 Compensação do raio da ferramenta (Cancela “G41” e “G42”)
G41 Compensação do raio da ferramenta (À esquerda do perfil)
G42 Compensação do raio da ferramenta (À direita do perfil)
G50 Determina a máxima rotação do fuso e / ou desloca ponto zero peça
G62 Ativa função “Mirror image” @
G64 Desliga controle Droop
G65 Liga controle Droop
G71 Ciclo fixo composto para rosca longitudinal
G72 Ciclo fixo composto para rosca transversal
G73 Ciclo para canal no sentido longitudinal
G74 Ciclo para canal no sentido transversal (também usado como ciclo de furação )
G75 Chanframento automático (chanfro a qualquer ângulo)
G76 Interpolação automática (raio a qualquer ângulo)
G77 Ciclo de rosqueamento com macho (à direita)
G78 Ciclo de rosqueamento com macho (à esquerda)
G80 Determina final de ciclo “LAP”
G81 Início de ciclo no sentido longitudinal “LAP” @
G82 Início de ciclo no sentido transversal “LAP” @
G83 Início de ciclo para contorno pré-definido “LAP” @
G84 Troca de dados de corte no ciclo de desbaste “G85” @
G85 Ciclo de desbaste “LAP” @
TABELA DE CÓDIGOS M
@: Opcional
Outros: Padrão
Código M Conteúdos
M00 Parada de programa
M01 Parada opcional de programa
M02 Fim de programa
M03 Sentido de giro do fuso (horário)
M04 Sentido de giro do fuso (anti-horário )
M05 Parada do fuso
M06 Troca de ferramenta para máquina com ATC @
M08 Liga líquido refrigerante
M09 Desliga líquido refrigerante
M12 Parada do fuso da ferramenta-M @
M13 Sentido horário do fuso da ferramenta-M @
M14 Sentido anti-horário do fuso da ferramenta-M @
M15 Posicionamento do eixo-C (direção positiva) @
M16 Posicionamento do eixo-C (direção negativa) @
CEJ MATIC : Pedido para transferência de dados @
M17
Medição pós-processo : Pedido RS232C para transferência de dados
M19 Parada orientada do fuso @
M20 Desativa área de proteção do contraponto
M21 Ativa área de proteção do contraponto
M22 Cancela chanfro (saída da rosca)
M23 Ativa chanfro (saída da rosca)
M24 Desativa área de proteção da placa e de interferência da ferramenta
M25 Ativa área de proteção da placa e de interferência da ferramenta
M26 Ativa passo da rosca ao longo do eixo-Z
M27 Ativa passo da rosca ao longo do eixo-X
M28 Desliga função checagem de interferência de ferramenta
M29 Liga função checagem de interferência de ferramenta
M30 Fim de programa
M32 Penetração reta da ferramenta junto a face esquerda do filete da rosca
M33 Penetração da ferramenta em zig-zag
M34 Penetração reta da ferramenta junto a face direita do filete da rosca
M35 Loader gripper Z slide retract @
M36 Loader gripper Z slide advance @
M37 Retrai braço do pegador @
M38 Atua o braço do pegador para posição de descarga @
M39 Atua o braço do pegador para posição da placa @
M40 Gama de engrenamento do fuso na posição neutra
M41 Gama de engrenamento do fuso 1 (engrenamento baixo)
M42 Gama de engrenamento do fuso 2 (engrenamento alto)
M43 Gama de engrenamento do fuso 3
M44 Gama de engrenamento do fuso 4
M48 Cancela M49
M49 Ignora chave seletora de RPM