Manual
Manual
Manual
PROGRAMAÇÃO
Programming Instructions • Manuel de programmation
LY0079.0040
Novembro/2001 INDEX
Declaração de validade
È possível que alguns quadros descritos neste manual apresentem ligeira diferença com o produto fornecido,
contudo, não comprometendo a compreensão.
A INDEX reserva-se o direito de alterações por motivos técnicos.
Direitos Autorais
Os direitos autorais deste manual estão protegidos. Os direitos nisto fundamentados, principalmente aqueles da
tradução, da impressão, duplicação de figuras, reprodução através de técnicas fotomecânicas ou qualquer outro
meio semelhante e o armazenamento em equipamentos de processamento de dados estão reservados, mesmo
quando aproveitados apenas parcialmente.
Fotocópia para uso pessoal ou próprio ficam restritas a cópias únicas de determinadas seções ou partes.
Índice INDEX
Área de trabalho 04
Definição do sistema de coordenadas 05
Dados de ferramentas (Tool offset) 05
Tipo de ferramenta 05
Memória Principal 06
Funções G 12
Eixos lineares, medidas absolutas G90 / incrementais G91 12
Sistema de medidas, polegadas G70 / Milímetros G71 13
Deslocamento do ponto zero 13
Avanço em mm/min G94 e mm/rot G95 15
Velocidade de corte constante G96 / G97 16
Programação em raio / diâmetro 17
Interpolação linear com avanço rápido G00 17
Interpolação linear com avanço programado G01 19
Interpolação circular G02 / G03 22
Temporização com G04 27
Parada precisa G09 / G60 27
Mudança de bloco sem redução de velocidade G64 28
Correção de raio de corte G41, G42, G40 31
Corte rosca com macho G63 42
Corte de rosca G33 42
Sub-programas 48
Utilizando sub-programas 48
Chamada de sub-programa 49
Ciclos 53
Abertura de canais CYCLE93 53
Usinagem de rosca CYCLE97 56
Ciclo de desbaste CYCLE95 59
Furação profunda CYCLE83 62
Exercício Final 64
Listagem de funções 66
Listagem geral das funções G 66
Listagem geral das funções M 67
Tipo 2
Tipo de ferramenta
Usinagem com a torre após o centro de giro (torre antes do centro)
Caracteres principais
Os seguintes caracteres estão disponíveis para edição de programas CNC:
Maiúsculo
A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z
Minúsculo
A, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z
Dígitos
0, 1, 2, 3, 4, 5, 6, 7, 8, 9.
Caracteres especiais
% caracter para inicio de programa (usado apenas para edição de programas em um PC externo)
( para parâmetros ou expressões entre parênteses
) para parâmetros ou expressões entre parênteses
[ para endereços ou índices entre colchetes
] para endereços ou índices entre colchetes
< menor que
> maior que
: bloco principal
= atribuição de valor, parte de uma expressão
/ divisão, supressão de bloco
* multiplicação
+ adição
- subtração, sinal negativo
“ aspas
‘ aspas simples (usadas para identificar valores numéricos especiais: hexadecimais)
_ barra baixa
. ponto decimal
, virgula, separação de parâmetros
; inicio de comentário
LF final de bloco
? reservado
! reservado
TAB separador
(espaço) separador
Um programa NC consiste de blocos individuais, um bloco geralmente consiste de (várias) palavras. Um bloco
deve conter todos os dados necessários para executar uma etapa do programa e deve ser finalizado com o
caracter “LF” (fim de bloco).
O caracter ”LF” não precisa ser inserido manualmente, ele é gerado automaticamente, na mudança de linhas.
Um bloco pode conter no máximo 242 caracteres (incluindo comentário e o caracter de fim de bloco “LF”).
Três blocos de até 66 caracteres cada, são normalmente mostrados no display de bloco corrente na tela.
Comentários também são mostrados, mensagens são mostradas em uma janela de mensagem separada.
Para manter a estrutura do bloco o mais clara possível, as palavras em um bloco podem ser arranjadas como
segue:
Endereço Significado
N endereço para o número de blocos
10 número de blocos
G função preparatória
X, Z dados de posicionamento (coordenadas)
F Velocidade de avanço
S rotação do fuso
T número da ferramenta
D número do corretor de ferramenta
M função miscelânea
Palavras
Endereços
Endereços são caracteres que identificam eixos (X, Z), rotação do fuso (S), velocidade de avanço (F), raio
(CR), etc.
Endereços modais permanecem válidos, (em todos os blocos subsequentes) até um novo valor ser
programado no mesmo endereço.
Endereços não modais permanecem válidos apenas no bloco onde foram programados.
Endereço Significado
D número do corretor de ferramenta
F velocidade de avanço
G função preparatória
L chamada de sub-programa
M função miscelânea
N número do bloco
P número de repetições do programa
R parâmetro aritmético
S rotação do fuso
T número de ferramenta
: número do bloco
Comentários
Para facilitar o entendimento do programa NC por outros usuários e programadores, é aconselhável inserir
comentários no programa.
Os comentários são acrescentados no final de um loco e são separados do bloco do programa NC por um
ponto e virgula “ ; ”.
Exemplo:
Ou
N20; programa escrito por Bob Miller, Dept XYZ em Nov. 24, 1994
%_N_001_MPF
;$PATH=/_N_MPF_DIR
; estrutura do programa
N10 G0 G53 X... Z... D0; ponto de partida
N20 TRANS Z...
N30 G0 X100 Z50
N40 G01 Z-10 F500
N50 X110
N60 M30
Eixos lineares
A trajetória do eixo até um ponto determinado do sistema de coordenadas poderá ser definida de forma
incremental ou absoluta.
50
P2 P3
40
30
20
P1 P4
10
W 10 20 30 40 50 60 70 80
Uma troca de unidade durante a programação deverá ser feita através das funções preparatórias G70 ou G71:
G70 Dimensionamento da peça em polegadas
G71 Dimensionamento da peça em milímetros
Antes de chamar um ciclo sub-programa atente para as unidade usadas nos mesmos e a unidade usada no
programa principal.
A seleção de uma unidade diferente do padrão pode ser válida apenas para um ou mais blocos, ou para todo o
programa.
No último caso, o programa deve iniciar-se com a função G referente a unidade desejada e ser encerrado com
a função G referente à unidade padrão (M02 ou M30 restauram automaticamente a unidade padrão a unidade
padrão).
Dependem da unidade padrão (não se alteração com a variação G70 / G71 no programa) os seguintes valores:
valor de posição real mostrado na tela
Os deslocamentos de ponto zero
Velocidades de avanço e corte G94 / G95
Corretores de ferramentas.
Dependem da unidade programada (se alteram com a variação G70 / G71 no programa) os seguintes valores:
Informações de trajetórias dos eixos X, Z
Parâmetros de interpolação I, K
Chanfros e raios CHF, RND, CR
Parâmetros que se relacionam aos itens descritos acima.
Os valores para os DPZ’s memorizáveis podem ser introduzidos através do teclado, ou via RS 232-C (interface
Serial).
O DPZ será considerado no cálculo do ponto final da trajetória de um eixo, seja em medidas incrementais ou
absolutas, quando o eixo for deslocado.
Através de G54 a G57 poderá ser ativado um dos 4 deslocamentos de ponto zero memorizáveis.
Através da função G53 podem ser desativadas os deslocamentos de ponto zero memorizáveis (G54 a G57) e
os deslocamentos de ponto zero programáveis (TRANS, ATRANS).
Programação
TRANS X... Z... (programado em um bloco NC separado)
ATRANS X... Z... (programado em um bloco NC separado)
TRANS deslocamento de um ponto zero absoluto, em relação ao atual ponto zero peça memorizado
com G54 a G57.
ATRANS deslocamento de ponto zero aditivo, em relação ao ponto zero peça memorizado ou ponto
zero programado.
TRANS
TRANS
O avanço determina a velocidade com a qual a ponta de corte da ferramenta irá descrever a trajetória
programada, e qualquer que seja o tipo de interpolação leva sempre em consideração o corretor de ferramenta.
O valor “F” programado é modal, ou seja, permanece memorizado até que seja programado outro valor de F.
ao termino do programa (M02 / M03 ou RESET) o valor F será apagado. Por esse motivo, todo inicio de
programa deverá especificar um valor para F.
O valor de avanço (F) programado pode ser alterado através da chave seletora corretora da avanço do painel
de operação na faixa de 1% a 120%. A posição 100% corresponde ao valor programado de F.
Os valores máximo de avanço são determinados pelos dados de máquina.
Nas usinagens onde a variação dos diâmetros é muito grande, é aconselhável especificar um limite para a
rotação do fuso. Isto evitará rotações excessivamente altas nos diâmetros pequenos.
LIMS atua em conjunto com G96
Exemplo:
N10 G96 S10 LIMS = 2500 (rotação do fuso limitada em 2500 rpm)
Exemplo:
Através da velocidade de corte programada, o CNC determina a rotação adequada do fuso, em função do
diâmetro que está sendo usinado.
Não devem ser usado DPZ’s no eixo X que desloquem a peça para fora de seu centro de giro. O DPZ poderá
ser usado no eixo X para deslocar o porta ferramentas. O cálculo da rotação levará sempre em consideração o
ponto zero do porta ferramentas.
Durante uma usinagem em velocidade de corte constante, não é permitida a troca de marchas do fuso principal
(caixa de câmbio).
A marcha correta deverá ser previamente selecionada.
Explanação
DIAMON dimensões em diâmetro (condição inicial)
DIAMOF dimensões em raio
Função
A trajetória programada com G00, será efetuada com a maior velocidade disponível (avanço rápido) e de forma
linear (interpolação linear).
Em tal trajetória não deveria ocorrer nenhum tipo de usinagem.
O CNC supervisiona a velocidade máxima dos eixos, as quais são definidas em dados de máquina para cada
eixo.
Caso sejam interpolados mais de um eixo em G00, a velocidade resultante será definida em função do eixo
que tiver a menor das velocidades definidas em dados de máquina.
Parâmetros de interpolação I, K
Parâmetros de interpolação são vetores paralelos aos eixos, que expressam a distância do ponto de inicio ao
ponto central da circunferência ou arco em cada eixo. De acordo com a norma DIN 66025, aos eixos X e Z são
associados os parâmetros I e K. Normalmente os parâmetros de interpolação são programados de forma
incremental, sendo que o sinal é resultado da relação posição de inicio do circulo ao centro do mesmo, em
relação ao plano escolhido. Parâmetros de valor 0 não precisão ser programados.
As coordenadas do ponto final, que não sofrem alterações em relação à posição inicial, também não precisão
ser programadas.
No caso de uma circunferência completa (360 graus) ao menos um dos eixos deve ser programado (X0 ou Z0).
Se for incremental, X0 ou Z0 devem ser programados.
Programação
Parâmetros
Uma vez que a definição de uma interpolação, somente através do raio e de G02 ou G03, possibilita uma
definição clara da trajetória apenas no âmbito de uma semicircunferência, torna-se necessário informar ao NC
se a trajetória a ser descrita é maior ou menor que 180 graus.
As funções preparatórias G02 e G03 definem o sentido (horário ou anti-horário) no qual a trajetória será
descrita.
I = I =
K = K =
G R G
R
R I = I =
K = R K =
G G
G04 atua somente no bloco em que foi programado. Em um bloco com G04, não são permitidas outras
funções.
Exemplo:
N10 G04 F11.5 ;temporização de 11,5 segundos programada sempre sem sinal (+ ou -)
Ou
Parada precisa
Parada precisa fina e aproximada G09, G60, G00
G09 parada precisa fina
G60 parada precisa modal
G00 parada precisa aproximada
Através de G09, G60 ou G00, é possível atingir um ponto definitivo, dentro de uma determinada janela de
posicionamento. Ao penetrar na área da janela, o avanço do eixo é reduzido gradativamente até 0 mm/min.
O erro de acompanhamento também é zerado. Simultaneamente é iniciada a execução do bloco seguinte.
As funções G09 / G60 são usadas p. ex. para usinar ”cantos vivos”, canais, inversões de sentido de
movimento, etc.
F1
Z
P1 P2
P3
Caso tenham sido definidas janelas iguais para F1 e F2, G00 comporta-se com G09 / G60. Na prática, G00 tem
uma janela maior que G09 / G60. Com isso consegue-se uma economia de tempo nas trajetórias em avanço
rápido, uma vez que a passagem para o bloco seguinte ocorrerá mais rapidamente.
Chanfro, arredondamento
Programação
CHF = ...
RND = ...
RNDM = ...
Função
Você pode inserir os seguintes elementos em canto de contorno:
Chanfro ou
Raio
Se vários cantos consecutivos do contorno devem ser arredondados, isso poderá ser feito com a função
“arredondamento modal” RNDM.
Arredondamento (RND)
Com este comando você consegue inserir um arredondamento entre contornos lineares e circulares ao final do
percurso de cada bloco. Esse comando é usado, por exemplo, para quebrar cantos da peça.
S
5
4 3
Para evitar estas falhas de contorno, é necessário que a ferramenta seja programada para que o ponto central
do raio de corte "S" descreva uma trajetória que tenha sempre a mesma distância do contorno da peça, a
chamada trajetória eqüidistante. A determinação da trajetória eqüidistante freqüentemente é muito custosa,
exigindo não raramente conhecimentos profundos de geometria analítica.
Efeitos no...
Torneamento longitudinal faceamento
1...5 = pontos programados de coordenadas, que devem ser calculados em dependência do raio de corte.
O comando sistema SINUMERIK 810D é equipado com o grupo construtivo: raio de corte / correção de
trajetória. Ele calcula ao tornear os contornos, os pontos de intercessão da trajetória eqüidistante, corrigindo
correspondentemente a ferramenta.
Os pontos de transição do contorno podem ser programados diretamente conforme medidas dos desenhos.
A correção de trajetória do raio de corte é ativada com as funções G41 e G42 e cancelada com G40. A
correção de trajetória é usada principalmente no torneamento de acabamento. Nas peças com formatos
complexos, o pré-torneamento já pode ser realizado com correção de ferramenta.
já pode ser realizado com correção de trajetória.
Compensação em sentido Z
Com “SRK”
Sem “SRK”
Contorno
desejado Compensação em
sentido X
falha
eqüidistante
X
Rs
= linha na mesma distância
(RS) calculada pelo comando
Valor Z programado
eqüidistante
Sem “SRK”
Contorno
desejado Com “SRK”
falha
M
X
Valor X programado
Suporte de ferramentas 1
Usinagem externa
Posição de corte
Usinagem interna
Endereço Significado
G41 Correção de trajetória do raio de corte a esquerda
G42 Correção de trajetória do raio de corte a direita
G40 Cancela compensação do raio de corte
Observações:
– As funções G40, G41 e G42 podem ser indicadas junto a comandos de trajetórias ou num bloco separado.
– A seleção só pode ocorrer com ativação de GOO (avanço rápido) ou GO1 (movimentação de avanço
linear).
– Dentro de um programa pode-se mudar de G41 para G42 ou vice-versa, isto sem cancelar a compensação
do raio de corte mediante G40.
G41 A aresta da ferramenta encontra-se em posição de corte, vista da esquerda, a partir do contorno de
peça a ser produzido.
G40
A função preparatória G63 é utilizada para cortar roscas com uma ferramenta de corte de rosca (macho) em
um suporte apropriado (compensador).
O endereço “S” define a rotação, e sob “F” deverá ser programado um avanço adequado. O suporte
compensador deverá ser capaz de absorver as tolerâncias da rotação e do avanço, bem como o tempo de
parada do fuso.
Durante a programação de G63, a chave seletora de correção do avanço não atuará. Dependendo do software
de intertravamento, a tecla “Parada de avanço” provocará também a parada do fuso.
Exemplo:
Para a execução de roscas o C.N.C dispõem da função G33 Î Corte de rosca com passo constante.
O comprimento da rosca é definido pelas instruções de trajetória, sendo que devem ser observadas as
distâncias de entrada e saída de rosca, onde a velocidade de avanço aumenta ou diminui.
Os valores podem ser programados de forma absoluta ou incremental. O passo da rosca é definido por I ou K,
dependendo do eixo usado.
Para roscas cilíndricas o passo é definido por K, para roscas planas o passo será definido por I, e para roscas
cônicas por I ou K.
I ou K devem ser sempre programados no modo incremental e sem sinal. A resolução padrão para o passo da
rosca é de 1 mm/rot. Assim o passo poderá ser programado de 0,001 a 400,000 mm/rot.
A definição de rosca à esquerda ou rosca à direita, será feita através da determinação do sentido de giro do
fuso (M03 / M04).
A rotação0 e o sentido de giro do fuso devem ser programados no bloco anterior à rosca propriamente dita,
para que o fuso possa atingir a rotação programada antes de iniciar a usinagem.
Para viabilizar a execução de roscas em múltiplas passadas, a usinagem só começa quando o fuso passa por
sua marca de referência, o que assegura que a ferramenta entrará na peça sempre no mesmo ponto. As várias
entradas devem ser feitas com a mesma velocidade (rotação), para evitar diferenças devidas ao erro de
acompanhamento.
A chave “Correção de avanço do fuso”, bem como os botões “Parada de avanço” e “Bloco a Bloco” não
funcionam durante o corte da rosca.
Exemplo:
P4 P1
h
P3 P2
P5
P6
t
Ø37,4
Ø38,7
Ø40
W W Z
22
25 50
78
passo da rosca
h' =
nr. de entradas
Todas as entradas deverão ser usinadas com a mesma rotação, para evitar distorções em função do erro de
acompanhamento.
Exemplo:
No exemplo cada entrada é usinada em duas passagens, ao término da primeira entrada inicia-se a Segunda
entrada, cujo ponto de inicio está deslocado h’ mm
P4 P1 P7
h
P3 P2 P8
P5 P9
P6
t h’=3
Ø60
W Z
30
40
5
110
Com o dispositivo de pentear roscas, podem ser produzidas roscas longitudinais, planas e cônicas.
Os comandos numéricos modernos já estão equipados para o penteamento de roscas. Outras máquinas NC
podem ser equipadas com o dispositivo.
Para este fim, a máquina deve possuir um gerador de impulsos giratório, acionado através de correia dentada a
partir da árvore. Este gerador de impulsos serve para a sincronização dos giros da árvore (rotações) e avanço
da ferramenta, quando os avanços são programados em mm/rotação, o que se adapta precisamente para o
penteamento de roscas (passo da rosca).
Os valores máximos dos dados abaixo, podem diferenciar-se para os vários tipos de comandos (especialmente
nas gerações mais antigas). Conforme as necessidades estes valores devem ser consultados nos manuais de
operação dos fabricantes do NC.
P×n bE bA
entradas de rosca E(mm) ≈
bE INDEX 170M 300 1100
P×n
saída da rosca A(mm) ≈ GU600
bA
GU800
Utilizando sub-programa
Seqüência de usinagens repetitivas são programadas
apenas uma vez em um sub-programa. Como por
exemplo perfis ou contornos que ocorrem
repetidamente em uma peça.
Estrutura do sub-programa
A estrutura do sub-programa é idêntica a estrutura do programa principal.
Exemplo:
N10 L47
ou
N10 PILOT_2
Repetição do sub-programa
Se um sub-programa deve ser executado várias vezes
sucessivamente, o número de repetições desejado
pode ser programado no endereço P no bloco
contendo a chamada do sub-programa.
Exemplo:
N10 L47 P3
ou
N10 PILOT_2 P3
Programação
Cycle 93 (SPD, SPL, WIG, DIAG, STA1, ANG1, ANG2, RCO1, RCO2, RCI1, RCI2, FAL1, FAL2, IDEP, DTB,
VARI)
Parâmetros
Você determina o modo o qual é usinado no parâmetro VARI, este parâmetro pode ser preenchido com
qualquer valor mostrado na tabela.
5 Longitudinal, externo,
direta
3 Longitudinal, interno,
esquerdo
7 Longitudinal, interno,
direito
CYCLE97 (PIT, MPIT, SPL, FPL, DM1, DM2, APP, ROP, TDEP, FAL, IANG, NSP, NRC, NID, VARI, NUMTH)
Parâmetros:
Penetração com
profundidade constante
CYCLE95 (NPP, MID, FALZ, FALX, FAL, FF1, FF2, FF3, VARI, DT, DAM)
Parâmetros
Função
CYCLE83 (RTP, RFP, SDIS, DP, DPR, FDEP, FDPR, DAM, DTB, DTS, FRF, VARI)
Parâmetros
T1 T2 T3
∅14,4
∅23
90
76
VC=200
a =0,4 VC=40
R =1,2 160 a =0,2 120 VC=40
55 a =0,2
T4 T5 T6
80
80
VC=220 VC=220
VC=150 a =0,18 a =0,1
120 a =0,1 58 R =0,8 R =0,8
58
T7 T8
M16x1,5
68
VC= 80
VC= 30
45 170
%_N_1000_MPF
;$PATH=/_N_MPF_DIR
;PROGRAMA 1
%_N_2000_MPF
;$PATH=/_N_MPF_DIR
;PROGRAMA 2
%_N_3000_MPF
;$PATH=/_N_MPF_DIR
;PROGRAMA 3
I18
8,718 K-7,718
K = 20 2 − 18 2
= 8,718mm
%_40_4000_MPF
;$PATH=/_N_MPF_DIR
;PROGRAMA4
%_N_5000_MPF
;$PATH=/_N_MPF_DIR
;PROGRAMA 5
%_N_6000_MPF
;$PATH=/_N_MPF_DIR
;PROGRAMA6
%_N_7000_MPF
;$PATH=/_N_MPF_DIR
;PROGRAMA7
%_N_8000_MPF
;$PATH=/_N_MPF_DIR
;PROGRAMA8
%_N_9000_MPF
;$PATH=/_N_MPF_DIR
;PROGRAMA9
%_N_110_MPF
;PATH=/_N_MPF_DIR
;PROGRAMA10
%_N_1400_MPF
;$PATH=/_N_MPF_DIR
;CICLO CANAL
.
.
.
N100 G0 X70 Z10 M8
N110 G1 F.1
N120 CYCLE93 (60, -55, 20, 10, 0, 10, 15, 2, 3, 2, -3, .5, .2, 5, 1, 5)
N130 G0 X100 Z50 M9
.
.
.
%_N_1500_MPF
;$PATH=/_N_MPF_DIR
;CICLO ROSCA
.
.
.
N100 G0 X22 Z5 M8
N110 CYCLE97 (2, , 0, -40, 20, 20, 5, 2, 1.23, .05, 0, 0, 7, 2, 3, 1)
N120 G0 X100 Z50 M9
.
.
.
%_N_1600_MPF
;$PATH=/_MPF_DIR
; CICLO DESBASTE
DEF STRING [8[] UPNAME
%_N_CONTORNO_SPF
;$PATH=/_N_SPF_DIR
PROC CONTORNO
N10 X45 Z1
N20 Z-15 RND=3
N30 X60
N40 X80 Z-40
N60 Z-55 RND=4
N70 X100 CHF=2
N80 Z-65
N90 X102
N100 M17
%_N_1700_MPF
;$PATH=/_N_MPF_DIR
;CICLO DE FURAÇÃO PROFUNDA
.
.
.
.
N100 T3 D1 G95 S1500 F.1 M3
N110 G0 G17 X0 Z5 M8
N120 CYCLE82 (5, 0, -80, , -15, , 10, 1, 0, 1, 1)
N130 G0 G18 Z10 M9
.
.
.
.
T1 T2 T3
∅14,4
∅23
90
76
VC=200
a =0,4 VC=40
R =1,2 160 a =0,2 120 VC=40
55 a =0,2
T4 T5 T6
80
80
VC=220 VC=220
VC=150 a =0,18 a =0,1
120 a =0,1 58 R =0,8 R =0,8
58
T7 T8
M16x1,5
68
VC= 80
VC= 30
45 170