Download - Fagor 55 Prog

Transcript
Page 1: Fagor 55 Prog

Programação para Controlo Numérico FAGOR Mod. 8050 e 8055 Fresadora

RESUMO DA PROGRAMAÇÃO

CONSTRUÇÃO DE UM PROGRAMA • Um programa de controlo numérico é constituído por um conjunto de blocos ou instruções. • Estes blocos ou instruções são formados por palavras compostas de letras maiúsculas e formato

numérico. • O formato numérico que dispõe o CNC consta de:

Os sinais . + - As cifras 0 1 2 3 4 5 6 7 8 9

• A programação admite espaços entre letras, números e sinais, assim como prescinde do formato numérico se este tiver o valor de zero, ou se o sinal for positivo.

• O formato numérico de uma palavra pode ser substituído por um parâmetro aritmético na programação, mais tarde e durante a execução básica, o CNC substituirá o parâmetro aritmético pelo seu valor, por exemplo:

Se o valor programado for XP3, o CNC substituirá durante a execução, P3 pelo seu valor numérico, obtendo resultados como X20, X20.36, X-1.258, etc.,.

• Um programa deve conter todos os dados geométricos e tecnológicos necessários, para que a máquina ferramenta execute as funções e movimentos desejados.

...NUMERAÇÃO DOS PROGRAMAS • Todos os programas editados no CNC ou via DNC deverão ser numerados, de P000000 a P999999. • Nalguns casos não é possível editar os programas P000888 e P999998, estes poderão estar ocupados

por programas de gestão interna da máquina. • Como opção todos os programas podem ter nome, este é mais fácil para a sua identificação na listagem

de programas peça. • Exemplo: P 000123 <PEÇA TIPO BETA REF.12> • A numeração de um programa deve-se introduzir no início do mesmo para se ter acesso aos vários

modos de edição. • Se o programa for programado a partir de um periférico (PC), utiliza-se o símbolo (%) em lugar da letra

(P), seguido do nome do programa e das extensões de protecção. • Exemplo: • %000045 PEÇA REDONDA REF. 12, MX, • A extensão MX, quer dizer que o programa pode ser modificado (M) e executado (X). ...NÚMERO DO BLOCO • Os números de blocos servem para identificar cada um dos blocos que constitui um programa ou

unicamente quando se realizam referências de saltos a blocos. • Representam-se com a letra N seguida de 4 cifras (0-9999), não sendo necessário seguir nenhuma

ordem, permitindo-se números salteados ou iguais. • Se no mesmo programa existirem 2 ou mais blocos com o mesmo número, o CNC tomará sempre o

primeiro deles, como válido para execução. • O CNC pode numerar automaticamente os blocos do programa, com início e intervalos pré-definidos nos

parâmetros do editor. Exemplo: Início no bloco N10, com intervalos de 10 em 10 blocos. ...BLOCOS DO PROGRAMA • Um bloco de programa será escrito com comandos em linguagem ISO ou com comandos em linguagem

de alto nível.

Page 2: Fagor 55 Prog

• Para a construção de um programa, utiliza-se uma, ou outra linguagem, devendo estar cada bloco com o comando numa só linguagem.

• A linguagem ISO está especialmente desenhada para controlar os movimentos dos eixos, já que proporciona informação e condições de movimento e indicações sobre o avanço.

• Dispõe de: Funções preparatórias de movimento, que servem para determinar a geometria e as condições de trabalho, como interpolações lineares, circulares, roscagens, etc.,. • Funções de controlo de avanços dos eixos e da rotação da ferramenta. • Funções de controlo e gestão das ferramentas. • Funções complementares, que contém indicações tecnológicas. • A linguagem de alto nível permite aceder a variáveis de propósito geral, assim como tabelas e variáveis do

sistema. • Proporciona ao utilizador um conjunto de sentenças de controlo que se assemelham à terminologia

utilizada por outras linguagens de programação, como são: IF, GOTO, CALL, etc. • Também permite utilizar qualquer tipo de expressão, aritmética relacional ou lógica. • Dispõe de instruções para a construção de sub-rutinas com variáveis locais. Entendendo-se como

variável local aquela que só é conhecida por uma sub-rutina em que esta tenha sido definida. • Além do mais, permite criar livrarias ou bibliotecas, agrupando sub-rutinas com funções úteis e já

provadas, podendo ser acedidas desde qualquer programa. • O CNC permite associar a todos os blocos qualquer tipo de informação em modo de comentário. • O comentário programa-se no fim do bloco, devendo de começar pelo carácter “;”. • Se um bloco começa por “;” todo ele se considera um comentário e este não se executará. • Não se admitem blocos vazios, minimamente devem de ter um comentário. • Cada bloco de programação é composto por:

• N = número do bloco (opcional) • G = funções preparatórias (G00 A G99) • X,Y,Z = cotas dos eixos (mm) (Pulg.) • F = avanço programado (mm/min.) (mm/RPM) • S = velocidade programada (RPM) • T = número da ferramenta • D = número do corrector da ferramenta • M = funções auxiliares Dentro de cada bloco é obrigatório manter esta ordem, mas não é necessário que cada bloco contenha todas as informações.

...FUNÇÕES PREPARATÓRIAS

• As funções preparatórias programam-se com a letra G seguida de dois algarismos [Gxx]. • Programam-se sempre no início do bloco e servem para determinar a geometria e as condições de

trabalho do CNC.

Funções de interpolação

MODAL * G00 Posicionamento rápido até cinco eixos (F máximo)

MODAL G01 Interpolação linear até cinco eixos

MODAL G02 Interpolação circular horária

MODAL G03 Interpolação circular anti-horária

MODAL G33 Roscagem electrónica

Condições de mecanização

G04 Temporização

MODAL * G05 Aresta morta

MODAL * G07 Aresta viva

G50 Aresta morta controlada

Page 3: Fagor 55 Prog

G51 Look-ahead (acelerador para blocos DNC)

MODAL G70 Programação de cotas em pulgadas

MODAL * G71 Programação de cotas em milímetros

MODAL * G90 Programação em cotas absolutas

MODAL G91 Programação em cotas incrementais

G92 Pré-selecção de cotas

MODAL * G94 Avanço em mm/minuto

MODAL G95 Avanço em mm/rotação

MODAL G96 Velocidade de avanço superficial constante

MODAL G97 Velocidade do centro da ferramenta constante

Ciclos fixos

G60 Ciclo fixo múltiplo em forma de linha recta

G61 Ciclo fixo múltiplo em forma de paralelogramo

G62 Ciclo fixo múltiplo em forma de malha

G63 Ciclo fixo múltiplo em forma de círculo

G64 Ciclo fixo múltiplo em forma de arco

G65 Ciclo fixo múltiplo em forma de corda de arco

G66 Ciclo fixo de caixas irregulares com ou sem ilhas

G67 Ciclo fixo de desbaste de caixas irregulares

G68 Ciclo fixo de acabamento de caixas irregulares

MODAL G69 Ciclo fixo de furação profunda com passo variável

G79 Modificação dos parâmetros de um ciclo fixo

MODAL * G80 Anulação de qualquer ciclo fixo

MODAL G81 Ciclo fixo de furação simples MODAL G82 Ciclo fixo de furação com temporização

MODAL G83 Ciclo fixo de furação profunda com passo constante

MODAL G84 Ciclo fixo de roscagem rígida com macho

MODAL G85 Ciclo fixo de escariado

MODAL G86 Ciclo fixo de mandrilado com retrocesso em G00

MODAL G87 Ciclo fixo de caixa rectangular ou quadrada

MODAL G88 Ciclo fixo de caixa circular

MODAL G89 Ciclo fixo de mandrilado com retrocesso em G01

MODAL * G98 Retrocesso da ferramenta ao plano de partida

MODAL G99 Retrocesso da ferramenta ao plano de referência

Compensação das dimensões da ferramenta

MODAL G15 Selecção do eixo perpendicular ao plano de trabalho

MODAL * G40 Anulação da compensação do raio da ferramenta

MODAL G41 Compensação do raio da ferramenta à esquerda

MODAL G42 Compensação do raio da ferramenta à direita

Page 4: Fagor 55 Prog

MODAL G43 Compensação do comprimento da ferramenta

MODAL * G44 Anulação da compensação do comprimento da ferramenta

Ajudas à programação

G06 Centro da circunferência em coordenadas absolutas

G08 Trajectória circular tangente à trajectória anterior

G09 Circunferência definida por três pontos

MODAL * G10 Anulação da imagem espelho

MODAL G11 Imagem espelho no eixo X

MODAL G12 Imagem espelho no eixo Y

MODAL G13 Imagem espelho no eixo Z

MODAL G14 Imagem espelho nas direcções programadas

G36 Redondeio controlado de arestas (boleado)

G37 Entrada tangencial da ferramenta

G38 Saída tangencial da ferramenta

G39 Corte controlado de arestas (chanfre)

MODAL G72 Factor de escala

MODAL G73 Rotação do sistema de coordenadas

MODAL G77 Acoplamento electrónico dos eixos

MODAL * G78 Anulação do acoplamento electrónico dos eixos

Sistema de coordenadas

MODAL G16 Selecção do plano principal por duas direcções

MODAL * G17 Plano de trabalho X-Y

MODAL G18 Plano de trabalho X-Z

MODAL G19 Plano de trabalho Y-Z

G20 Definição dos limites inferiores da zona de trabalho

G21 Definição dos limites superiores da zona de trabalho

G22 Activa e desactiva as zonas de trabalho

G53 Programação em relação ao zero máquina

MODAL G54 Mudanças de origem absoluta 1 (zero peça)

MODAL G55 Mudanças de origem absoluta 2 (zero peça)

MODAL G56 Mudanças de origem absoluta 3 (zero peça)

MODAL G57 Mudanças de origem absoluta 4 (zero peça)

MODAL G58 Mudanças de origem aditiva 1 (zero peça)

MODAL G59 Mudanças de origem aditiva 2 (zero peça)

G74 Busca automática de referência máquina

G92 Pré-selecção de cotas

G93 Pré-selecção de origem polar

Page 5: Fagor 55 Prog

Sistema de cópia

G23 Activação da cópia

G24 Activação da digitalização

G25 Desactivação da cópia / digitalização

G26 Calibragem da sonda de cópia

G27 Definição do contorno de cópia

G75 Movimento do apalpador até tocar

G76 Movimento do apalpador até deixar de tocar

Funções M

M00 Paragem do programa

M01 Paragem condicional do programa

M02 Fim do programa

M03 Rotação da ferramenta à direita

M04 Rotação da ferramenta à esquerda

M05 Paragem da rotação da ferramenta

M06 Troca automática da ferramenta

M08 Activar refrigerante

M09 Desactivar refrigerante

M19 Paragem orientada da ferramenta

M30 Fim do programa com retorno ao início, anula todas Ms

M41 Gamas de velocidade da ferramenta

M42 Gamas de velocidade da ferramenta

M43 Gamas de velocidade da ferramenta

M44 Gamas de velocidade da ferramenta

Operadores aritméticos

SINAL + Adição, soma P1=3+4 -> P1=7

SINAL - Subtracção P2=5-2 -> P2=3

ASTERISCO * Multiplicação P3=2*3 -> P3=6

BARRA / Divisão P4=9/2 -> P4=4.5

Operadores relacionais

EQ Igual NE Distinto GT Maior que GE Maior ou igual que LT Menor que LE Menor ou igual que

Page 6: Fagor 55 Prog

Funções trigonométricas

SIN Seno P1=sen 30 ->P1=0.5

COS Co-seno P2=cos 30 ->P2=0.8660

TAN Tangente P3=tan 30 ->P3=0.5773

ASIN Arco seno P4=asin 1 ->P4=90

ACOS Arco co-seno P5=acos 1 ->P5=0

ATAN Arco tangente P6=atan 1 ->P6=45

• [Modal]. As funções assinaladas com [modal] uma vez programadas, ficam activas até que sejam

anuladas com outra função G incompatível ou com M2, M30, reset ou emergência. • (*). As funções assinaladas com (*) são as que ficam activas quando se liga o CNC ou depois de M2,

M30, reset ou emergência. • As funções até G09 podem ser programadas sem o 0 (zero). • Por exemplo: G1 = G01, G8 = G08, etc.,. ...COTAS DOS EIXOS, COORDENADAS • As cotas dos eixos podem ser programadas em milímetros (G70) ou em pulgadas (G71).

em milímetros tem o seguinte formato ...X 1234.123 em pulgadas tem o seguinte formato ...X 123.1234

• As cotas programadas podem ser absolutas (G90), sempre relativas ao zero peça, ou incrementais (G91) relativas à posição da ferramenta.

• As coordenadas também podem ser definidas por parâmetros, como por exemplo: ...XP90 YP91 ZP92 • Os valores das cotas são atribuídos nos respectivos parâmetros, (P15=123.123) caso se programe em

paramétricas. • No CNC pode-se programar trajectórias de várias formas:

1. Coordenadas cartesianas (X100 Y-25 Z-2), as cotas dos eixos Programam-se mediante as letras X, Y, Z, seguidas do valor das cotas. 2. Coordenadas polares (R105 Q-92).

É o valor do raio, e (Q) o valor do ângulo, com origem no centro polar. Dois ângulos (Q30 Q-45) (Q1) é o ângulo de saída do início da trajectória e (Q2) é o ângulo do ponto intermédio da trajectória.

3. Ângulo, coordenada cartesiana (Q90 Y-155) a ponto a alcançar é definido por um ângulo (Q) e uma coordenada cartesiana (X Y Z).

...AVANÇOS • O significado do F (velocidade de avanço programável) difere segundo se trabalha em G94 ou G95. • Quando G94 está activo, se programar-mos F1000, isso quer dizer que a ferramenta, vai-se movimentar

com um avanço de corte de 1000mm por minuto. • Quando G95 está activo, se programar-mos F0.5, isso quer dizer que a ferramenta, vai-se movimentar,

com um avanço de corte de 0.5mm por rotação. • O avanço máximo de trabalho da máquina pode ser programado directamente (por ex. G1 X200 F5000),

ou programando só (G1 X2000 F0), neste caso se o valor de F é zero, o CNC entende como avanço máximo de trabalho.

• Quando se trabalha em posicionamento G00, a máquina desloca-se em avanço rápido, independente de qualquer (F) programada.

• Qualquer avanço programado pode ser alterado mediante o comutador instalado no painel de comando do CNC, de 0% a 120%.

• O avanço só não pode ser alterado se estiverem activas as funções G33, G47 ou G84, nesta situação o avanço é sempre 100%.

Page 7: Fagor 55 Prog

...ROTAÇÕES/MINUTO RPM FERRAMENTA • Mediante o código S pode-se programar a rotação da ferramenta em rotações por minuto (RPM). • Qualquer velocidade programada pode ser modificada através das teclas [+] [-] instaladas no painel de

comando do CNC, este pode variar de 0% a 120%. ...PROGRAMAÇÃO DA FERRAMENTA • O CNC dispõe de uma tabela de 255 ferramentas (T) distribuídas por 2 famílias (ferramenta normal e

ferramenta especial). • De T000 a T200, ferramenta normal, código da tabela, (N). • De T201 a T255, ferramenta especial, código da tabela, (S). ...PROGRAMAÇÃO DO CORRECTOR • O CNC permite associar mediante a função D, o corrector desejado à ferramenta seleccionada, para

isso será necessário programar Txx e Dxx, seleccionando a ferramenta e o corrector pretendido. • Se programamos só o corrector D este fica automaticamente associado à ferramenta T00. • O CNC dispõe de uma tabela de correctores, especificando-se por cada corrector: R.. Raio da ferramenta L.. Comprimento da ferramenta I… Desgaste do raio da ferramenta K.. Desgaste do comprimento da ferramenta • Quando se deseja compensar o raio da ferramenta com G41 ou G42, o CNC aplica como valor de

compensação a soma de R + I do corrector correspondente. • Quando se deseja compensar a altura da ferramenta com G43, o CNC aplica como valor de

compensação a soma de I + K do corrector correspondente. • Se não se definir nenhum corrector, o CNC aplica o corrector D0, com R=0, L=0, I=0 e K=0. ...FUNÇÕES AUXILIARES • As funções auxiliares programam-se com o código M seguido de dois algarismos.

• M00 --> paragem do programa. • M01 --> paragem condicional do programa. • M02 --> fim do programa. • M03 --> rotação da ferramenta à direita (sentido horário). • M04 --> rotação da ferramenta à esquerda (sentido anti-horário). • M05 --> paragem da ferramenta (stop). • M06 --> troca automática de ferramenta. • M08 --> sistema de refrigeração ligado. • M09 --> sistema de refrigeração desligado. • M19 --> paragem orientada da ferramenta. • M30 --> fim do programa com retorno ao início. Anula todos os Ms programados.

ALGUNS EXEMPLOS DAS FUNÇÕES AUXILIARES M

Page 8: Fagor 55 Prog

CONTROLO DA TRAJECTÓRIA

...G00 POSICIONAMENTO RÁPIDO • O valor do avanço rápido é independente para

cada eixo, desta forma quando se movem vários eixos ao mesmo tempo, a trajectória não é controlada.

• Ao programar G00 não se anula a última F programada, o que quer dizer, que quando se programa G1, G2, G3, recupera-se o último F programado.

• A função G00 pode ser programada como G, G0, ou G00.

...G01 INTERPOLAÇÃO LINEAR • Os movimentos programados depois de G01

executam-se segundo uma linha recta com o avanço F programado.

• Quando se movem os três eixos em simultâneo, a trajectória resultante é uma linha recta entre o ponto inicial e o ponto final.

• A máquina movimenta-se segundo a trajectória programada e com o avanço F determinado. O CNC calcula os avanços de cada eixo para que o avanço da trajectória resultante seja o F programado.

• A função G01 é modal e incompatível com G00,G02,G03. • A função G01 pode ser programada como G1. ...G02 INTERPOLAÇÃO CIRCULAR Á DIREITA (SENTIDO HORÁRIO)

...G03 INTERPOLAÇÃO CIRCULAR Á ESQUERDA (SENTIDO ANTI-HORÁRIO )

...INTERPOLAÇÃO CIRCULAR G02/G03 • Os movimentos programados a seguir a G02/G03

executam-se em forma de trajectória circular com o avanço F programado.

Page 9: Fagor 55 Prog

Exemplos de programação com G2/G3 Tomemos como ponto de partida X40 Y25. Em cartesianas Em polares P0001 P0002 N10 G2 X55 Y40 I0 J15 F200 N10 G2 A0 I40 J40 F200 N20 G3 X100 Y65 I15 J0 N20 G3 A90 I100 J40 ou ou N10 G2 X55 Y40 R-15 F200 N10 G93 I40 J40 N20 G3 X100 Y65 R-15 N20 G2 A0 N30 G93 I100 J40 N40 G3 A90 • Quando se programa um raio (R) temos que ter em

conta que com este não é possível programar um círculo completo devido a que existem infinitas soluções.

• Se o arco da circunferência é menor do que 180º o raio a programar será positivo (+).

• Se o arco da circunferência é maior do que 180º o raio a programar será negativo (-).

• Poderemos programar um círculo completo com as

coordenadas do centro do círculo (I, J, K). I, J, K ...Definem o centro da circunferência.

• I -> distância do iníc io do círculo, ao centro do círculo em função do eixo X. • J -> distância do início do círculo, ao centro do círculo em função do eixo Y. • K -> distância do início do círculo, ao centro do círculo em função do eixo Z.

I, J, K, programam-se com sinal (+, -). É necessário sempre a sua programação mesmo que tenham valor igual a zero. • As funções G02 e G03 podem ser programadas como G2 ou G3. ...G08 TRAJECTÓRIA CIRCULAR TANGENTE À TRAJECTÓRIA ANTERIOR • Por meio da função G08 pode-se programar uma

trajectória circular tangente à trajectória anterior sem necessidade de programar o raio (R) ou as cotas do centro do circulo (I, J, K).

• A função G08 não é modal. Pode-se utilizar sempre que se queira executar um arco tangente a trajectória anterior.

• A trajectória anterior pode ser uma recta ou um arco. • A função G08 só substitui G02 / G03 no bloco em que

esta está escrita. • Utilizando a função G08 não é possível executar um

círculo completo, devido a que existem infinitas soluções. • Suponhamos que o ponto de partida é X0 Y35 e queremos programar uma linha recta, a seguir um arco

tangente à mesma, e finalmente um arco tangente ao anterior.

Page 10: Fagor 55 Prog

• Podemos programar da seguinte maneira: N60 G90 G01 X80 Y35 F300 N70 G08 X100 Y50 N80 G08 X120 Y35 ...... Por serem os arcos tangentes não é necessário programar as coordenadas dos centros. ...G09 TRAJECTÓRIA CIRCULAR DEFINIDA POR TRÊS PONTOS • Por meio da função G09 pode-se definir uma

trajectória circular (arco), programando o ponto final e um ponto intermédio (o ponto inicial do arco, é o ponto de partida do movimento).

• A seguir, em lugar de se programar as coordenadas do centro, programa-se qualquer ponto intermédio.

• A função G09 não é modal, não é necessário programar o sentido de movimento (G2, G3) ao programar G09.

• Ex: O ponto inicial é X10 Y15 N50 G09 X140 Y70 I50 J50 • Utilizando a função G09 não é possível executar um círculo completo. ...G36 REDONDEIO CONTROLADO DE ARESTAS • Em trabalhos de fresagem é possível com a função G36

redondear uma aresta com um determinado raio, sem necessidade de calcular o centro, nem os pontos inicial ou final do arco.

• A função G36 não é modal. Tem de ser programada cada vez que se quer redondear uma aresta.

• Esta função é programada no bloco em que se programa o movimento cujo final se deseja redondear.

• O raio do redondeio é programado com raio (R) sempre positivo.

...G39 CHANFRADO DE ARESTAS • Nos trabalhos de fresagem é possível, mediante a função

G39, chanfrar arestas entre duas rectas, sem necessidade de calcular os pontos de intersecção.

• A função G39 não é modal. Deve-se programar cada vez que se queira chanfrar uma aresta.

• Esta função é programada no bloco em que se programa o movimento cujo final se deseja chanfrar.

• Mediante o código R (raio) sempre positivo programa-se a distância desde o fim do movimento programado até ao ponto em que se quer realizar o chanfre.

Page 11: Fagor 55 Prog

...G37 ENTRADA TANGENCIAL • Com a função G37

pode-se enlaçar tangencialmente duas trajectórias sem necessidade de calcular os pontos de intersecção.

• A função G37 não é modal, deve-se programar cada vez que se queira começar a fresar com entrada tangencial.

• Como se pode ver na figura, o CNC modifica a trajectória do bloco N00 de forma que a ferramenta começa a mecanizar com entrada tangencial em relação à face da peça.

• A função G37 junto com o valor de R, há que os programar num bloco que incorpore a trajectória que se deseja modificar.

• Quando programamos G37 temos de ter em conta o seguinte: A distância do ponto de partida à peça, tem de ser igual ou maior que o raio (R) da entrada tangencial.

O raio da fresa tem de ser igual ou menor que o raio (R) da entrada tangencial. O segmento da entrada (G1) tem de ser linear. Não pode ser circular. ...G38 SAÍDA TANGENCIAL • A função G38 permite

finalizar uma operação de fresagem com uma saída tangencial da ferramenta sem necessidade de cálculos muito complicados.

• A função G38 não é modal. Deve-se programar cada vez que se queira uma saída tangencial da ferramenta.

• Para que G38 se possa programar num bloco, é necessário que a trajectória seguinte seja rectilínea (G00 ou G01).

• Nota - as condições de mecanizado são as mesmas da função G37.

Page 12: Fagor 55 Prog

P00022 N10 G0X70Y15F200D14M3 ; ponto de partida N20 G1G37R10X50Y15 ; entrada tangencial N30 X50Y0 N40 X0Y0 N50 X0Y30 N60 X50Y30 N70 G38R10X50Y15 ; saída tangencial N80 G0X70Y15 ; ponto de chegada FUNÇÕES PREPARATÓRIAS ADICIONAIS

...G05 ARESTA MORTA • Quando se trabalha com G05, o CNC começa a execução do bloco seguinte do programa, quando

começa a desaceleração dos eixos programados no bloco anterior o que quer dizer que os movimentos programados no bloco seguinte, executam-se antes que a máquina chegue a posição exacta programada no bloco anterior, como se vê no exemplo os cantos ficam arredondados.

• A diferença entre o perfil teórico e o perfil real está no valor do avanço utilizado. ...G07 ARESTA VIVA • Quando se trabalha com G07, o CNC não executa o bloco seguinte do programa, sem que a máquina

alcance a posição exacta programada no bloco anterior. • O perfil teórico e o perfil real coincidem. • A função G07 é incompatível com a função G05. • A função G07 e G05 podem ser programadas como G7 ou G5.

Page 13: Fagor 55 Prog

• Nota - quando se liga o CNC, e depois de se executar M02 ou M30, ou depois de uma emergência ou reset o CNC assume a função G07 ou G05 dependendo do valor atribuído ao parâmetro geral “ICONER”.

...G10/G11/G12/G13/G14 IMAGEM ESPELHO

• G10.. Anulação da imagem espelho • G11.. Imagem espelho no eixo X • G12.. Imagem espelho no eixo Y • G13.. Imagem espelho no eixo Z • G14.. Imagem espelho em qualquer eixo, ou em vários de uma só vez, por exemplo, G14 X Y Z

• Quando o CNC trabalha com imagem espelho, executa os movimentos programados • dos eixos em que se tenham seleccionado imagens espelho, com os sinais trocados. EXEMPLO: 5

+Y

B A

30

8

+X

D C

50

A seguinte sub-rutina define a mecanização da peça A

(SUB 10) G91 G1 X5 Y8 F500 Y30 X50 Y-30 X-50 X-5 Y-8 (RET) A programação de todas as peças será a seguinte: P000123 (CALL 10) : mecanização de A G11 ; imagem espelho no eixo X (CALL 10) ; mecanização de B G10 G12 ; imagem espelho no eixo Y (CALL 10) ; mecanização de C G11 ; imagem espelho no eixo X, Y (CALL 10) ; mecanização de D M30 ; fim do programa • As funções G11, G12, G13, G14 são modais e incompatíveis com G10. • Podem-se programar G11, G12 e G13 no mesmo bloco porque estas não são incompatíveis entre si. A

função G14, deverá ser programada isolada num bloco e este não pode ter mais nenhuma informação.

Page 14: Fagor 55 Prog

...G72 FACTOR DE ESCALA • Por meio da função G72 (S) podem-se ampliar ou reduzir peças programadas. • Desta forma podem-se realizar famílias de peças semelhantes de forma igual, mas de dimensões

diferentes com um só programa. • A função G72 deve ser programada num só bloco. Existem duas formas de a programar: a): factor de escala aplicado a todos os eixos. O formato da programação é o seguinte: N55 G72 S2.5 N55 = n.º do bloco G72 = código do factor de escala S2.5 = valor do factor de escala • O valor mínimo do factor de escala é = S 0.0001 (valor real x 0.0001) • O valor máximo do factor de escala é = S 100 (valor real x 100). • Nota - depois de se programar G72 todas as cotas programadas ficam multiplicadas pelo valor do factor

de escala (S). b): factor de escala aplicado a um só eixo. O formato da programação é o seguinte: N65 G72 X,Y,Z S1.8 N65 = número do bloco G72 = factor de escala X,Y,Z = eixo em que se aplica o factor de escala S1.8 = factor de escala • Nota - o factor de escala é anulado pelo valor 1 (S1) ou M30. Exemplo da aplicação do factor de escala:Y+

50

25

X+

50 100

P000124

G90 G00 X100 Y50 N10 G91 G01 X-50 X-50 Y-50 X100 Y25 N20 Y25 G72 S0.5 ; factor de escala (RPT N10,N20) ; repetição de blocos M30

Page 15: Fagor 55 Prog

...G73 ROTAÇÃO DO SISTEMA DE COORDENADAS • A função G73 permite rodar o sistema de coordenadas tomando como centro de rotação, o zero peça no

plano principal ou o centro de rotação programado. O formato da programação é o seguinte: N44 G73 Qxxx Ixx Jxx N44 = número do bloco. G73 = código que define a rotação do sistema de coordenadas Q = ângulo de rotação em graus (0 - 360º). IJ = definição do centro de rotação

J22 Q

Q I20

• O valor mínimo do ângulo é de 0 graus. • O valor máximo do ângulo é de 360 graus. • Há que ter em conta que a função G73 é incremental, o que quer dizer que se vão somando os diferentes

valores programados em Q. • Num programa com rotação do sistema de coordenadas, se estiver activa alguma função de imagem

espelho, o CNC aplicará primeiro a função de espelho e a seguir a função de rodar as coordenadas. • A anulação da função de rotação do sistema de coordenadas realiza-se programando G73 (só sem valor

de ângulo). • A função G73 deve-se programar sozinha num bloco.

Page 16: Fagor 55 Prog

• Exemplo da programação da função G73: • PROGRAMA P000145 N10 G0 G90 X35 Y-20 F300 D10 M3

N20 G1 Y-10 ; início do contorno

N30 X50 Y0

N40 G3 X20 Y0 R15

N50 G1 Y-20

N60 X35 ; fim do contorno

N70 G73 Q90 ; rodar coordenadas

N80 (RPT N20,N70)N3 ; repetição

N90 G0 X100 Y100 ; afastamento

N100 M30 ; fim

...G40/G41/G42 COMPENSAÇÃO DO RAIO DA FERRAMENTA • Nos trabalhos habituais de fresagem, é necessário calcular e definir a trajectória da ferramenta tendo em

conta o raio da mesma, de forma que se obtenham as dimensões desejadas na peça. • A compensação do raio da ferramenta, permite programar directamente o contorno da peça sem ter em

conta a dimensão da ferramenta. • O CNC calcula automaticamente a trajectória que a ferramenta deve seguir, a partir do contorno da peça

e do valor do raio da ferramenta armazenado na tabela de ferramentas. • Existem três funções preparatórias (G40, G41, G42) para a compensação do raio da ferramenta:

• G40 -> anulação da compensação do raio da ferramenta • G41 -> compensação do raio da ferramenta à esquerda • G42 -> compensação do raio da ferramenta à direita

X+

20

35

R15 90º

Y+

INICIO

10

Page 17: Fagor 55 Prog

• O CNC dispõe de uma tabela de 250 grupos de valores para compensação do raio da ferramenta. • R indica o raio da ferramenta e I indica o valor de mais ou menos o valor de R para corrigir pequenas

variações do raio. • Os valores máximos de compensação são:

o R +/- 1000 mm I +/- 32.766 mm • No mesmo bloco em que se programa G41 / G42 ou no bloco anterior deve-se programar a função Dxx

para seleccionar na tabela de ferramentas o valor da correcção a aplicar. • Caso não se seleccione nenhuma ferramenta o CNC assume o valor D00. • A selecção da compensação do raio da ferramenta G41/G42 só pode realizar-se quando estão activas as

funções G00 ou G01 (movimentos rectilíneos). • A compensação, deverá ser programada no bloco de movimento antes da ferramenta tocar na peça e a

descompensação, deverá ser programada depois da ferramenta abandonar, a superfície maquinada. • G41.. a ferramenta fica à esquerda da peça segundo o sentido do corte. • G42.. a ferramenta fica à direita da peça segundo o sentido do corte. ...G90 PROGRAMAÇÃO ABSOLUTA

...G91 PROGRAMAÇÃO INCREMENTAL • A programação das coordenadas de um ponto, pode-se realizar em coordenadas absolutas (G90) ou em

coordenadas incrementais (G91). • Quando se trabalha em G90 as coordenadas do ponto programado, estão relacionadas com ponto de

origem das coordenadas. • Quando se trabalha em G91 as coordenadas do ponto programado, estão relacionadas com ponto

anterior da trajectória. • Ao ligar o CNC ou depois de executar M02, M30, reset ou emergência, o CNC assume a função G90

(absoluta). • As funções G90 e G91 são incompatíveis entre si no mesmo bloco.

SENTIDO DO CORTE

G41 G42

Page 18: Fagor 55 Prog

G90.. PROGRAMAÇÃO EM COORDENADAS ABSOLUTAS TODAS AS COTAS TEM COMO ORIGEM, O ZERO PEÇA

55

25

70

20

R8

X+

Y+ EXEMPLO: • PONTO DE PARTIDA É X55 Y0 N20 .......................... N30 G1 G90 X55 Y20 F250 D2 M3 N40 G36 R8 X25 Y20 N50 X25 Y70 N60 X0 Y70 N70 X0 Y0 N80 X55 Y0 N90 ...........................

PONTO DE PARTIDA

G91.. PROGRAMAÇÃO EM COORDENADAS INCREMENTAIS, TODAS AS COTAS TEM COMO ORIGEM, A POSIÇÃO DA FERRAMENTA

25 30

20

50

R8

PONTO DE PARTIDA

EXEMPLO: • PONTO DE PARTIDA É X55 Y0 N20 .......................... N30 G1 G91 X0 Y20 F250 D2 M3 N40 G36 R8 X-30 Y0 N50 X0 Y50 N60 X-25 Y0 N70 X0 Y-70 N80 X55 Y0 N90 ...........................

Page 19: Fagor 55 Prog

...G92 PRÉ-SELECÇÃO DE COTAS • Por meio da função G92, é possível

pré-seleccionar qualquer valor nos eixos do CNC, isto quer dizer que se pode realizar mudanças de origem das coordenadas dos eixos.

• Quando se programa a função G92, não se efectua nenhum movimento dos eixos e o CNC aceita os valores dos eixos programados a seguir a G92, como novas cotas dos respectivos eixos.

Exemplo: • A ferramenta está em X0 Y0, para descrever esta trajectória, programa-se:

N10 G00 G90 X100 Y100 N20 X400 Se utilizarmos G92, será: N10 G92 X500 Y500

• A origem de coordenadas (X0,Y0) converteu-se no ponto X500 Y500. N20 G00 G90 X600 Y600 N30 X900

• No bloco em que se programa G92 não se pode programar mais nada. ...G93 PRÉ-SELECÇÃO DE ORIGEM POLAR • Por meio da função G93 pode-se pré-seleccionar qualquer ponto de um plano, como origem de

coordenadas polares. • Há duas formas de pré-seleccionar uma origem de coordenadas polares: ..G93 Ixx Jxx sempre em valores absolutos.

I -> indica o valor da abcissa da origem das coordenadas polares J -> indica o valor da ordenada da origem das coordenadas polares

..Se num bloco qualquer se programa G93, isto implicará que antes de se efectuar qualquer movimento dos eixos, a origem polar passará a ser o ponto onde se encontra nesse momento a máquina. EXEMPLO:

A ferramenta encontra-se na origem de coordenadas cartesianas N0 G93 I200 J0 N5 G01 R150 Q90 F600 N10 G02 Q0 No bloco N0 definiu-se como origem polar o ponto X200 Y0. No bloco N5 definiu-se o movimento linear até ao ponto R150 Q90. No bloco N10 definiu-se o movimento circular até ao ponto Q0

Page 20: Fagor 55 Prog

Exemplo da programação de uma peça em coordenadas polares com entrada e saída tangencial, com passagens incrementadas até 16mm de profundidade em passos de 2mm. O centro de coordenadas polares, (G93) é o zero peça.

P202 N10 G90G5G0G17G40S1500D88M3 ; condições de trabalho N20 X25Y-35 ; posicionamento em X,Y N30 Z1 ; posicionamento em Z N40 G1Z-2F330 ; primeiro incremento N50 G90G41G37R6X0Y-35 ; entrada tangencial N55 G93I0J0 ; centro polar N60 G36R2R48Q270 ; início do contorno N70 G2Q180 N80 G1R45 N90 G2Q90 N100G1R36 N110G2G36R2Q0 N120G1R24 N130G2Q270 N140G38R6R35 ; fim do contorno N150G0G40X25Y-35 ; ponto de partida N160G91Z-2 ; incremento N170G25N50.160.7 ; repetição N180G90G0Z10 ; saída N190X-100Y100 ; afastamento N200M30 ; fim

Page 21: Fagor 55 Prog

PROGRAMA P2110 N00 G0 X0 Y0 F230 S1000 D2 M3 N10 G1 G41 X5 Y5 N20 G37 R5 X10 Y20 N30 G39 R3 Q-30 Q-45 N40 G38 R4 X30 Y25 N50 X35 Y10 N60 G8 X30 Y5 N70 G36 R2.5 Q135 Y10 N80 G36 R1 Q-150 X15 N90 G9 X5 Y5 I10 J10 N100 G40 X10 Y0 M30 Ajudas geométricas utilizadas

• G08..trajectória circular tangente à trajectória anterior • G09..trajectória circular definida por 3 pontos • G36..redondeio controlado de arestas • G37..entrada tangencial • G38..saída tangencial • G39..chanfre de arestas • Q-Q, X, Y..ângulo-ângulo, ponto final • Q-X, (Y)..ângulo-cota

Page 22: Fagor 55 Prog

Programação de um contorno exterior, com a profundidade de 15 mm, em incrementos de 3 mm e com

entrada e saída tangencial

P200 N10 G90G5G17G00G40S1200T1D2M3 ; condições de trabalho N20 X-25Y28 ; posicionamento em X,Y N30 Z1 ; posicionamento em Z N40 G1Z-3F300 ; primeiro incremento N50 G90G42G37R7X0Y28 ; entrada tangencial N60 G36R7X0Y0 ; início do contorno N70 G36R3X102Y0 N80 G36R7X102Y25 N90 G36R3X58Y25 N100G36R7X58Y56 N110G36R3X0Y56 ; fim do contorno N120G38R7X0Y28 ; saída tangencial N130G40G0X-25Y28 ; ponto de partida N140G91Z-3 ; incremento N150(RPT N50,N140)N4 ; repetição N160G90Z10 ; saída N170G0X-100Y100 ; afastamento N180M30 ; fim do programa

Page 23: Fagor 55 Prog

Programação de um contorno exterior com a profundidade de 23.8mm, em incrementos de 4mm com

entrada e saída tangencial

P000201 N10 G90G5G17G00G40S1200T5D5M3 ; condições de trabalho N20 X60Y25 ; posicionamento em X,Y N30 Z1 ; posicionamento em Z N40 G1Z-3.8F320 ; primeiro incremento N50 G90G41G37R7X60Y0 ; entrada tangencial N60 G39R5X72Y0 ; início do contorno N70 X72Y-42 N80 G3X72Y-54I0J-12 N90 G1G39R9X0Y-54 N100X0Y-42 N110G3X0Y-21I0J10.5 N120G8X21Y0 N130G8X53Y0 ; fim do contorno N140G1G38R7X60Y0 ; saída tangencial N150G0G40X60Y25 ; ponto de partida N160G91G1Z-4 ; incremento N170(RPT N50,N160)N4 ; repetição N180G90G0Z10 ; saída N190X-100Y100 ; afastamento N200M30 ; fim do programa

Page 24: Fagor 55 Prog

...CICLOS FIXOS - RESUMO • O CNC dispõe dos seguintes ciclos fixos de mecanização:

• G66.. Ciclo fixo de caixas irregulares com ilhas / sem ilhas

• G67.. Ciclo fixo de desbaste de caixas irregulares

• G68.. Ciclo fixo de acabamento de caixas irregulares

• G69.. Ciclo fixo de furação profunda com passo variável

• G81.. Ciclo fixo de furação simples

• G82.. Ciclo fixo de furação com temporização

• G83.. Ciclo fixo de furação profunda com passo constante

• G84.. Ciclo fixo de roscagem rígida com macho

• G85.. Ciclo fixo de escariado

• G86.. Ciclo fixo de mandrilado com retrocesso da ferramenta em G00

• G87.. Ciclo fixo de caixas rectangulares ou quadradas

• G88.. Ciclo fixo de caixas circulares

• G89.. Ciclo fixo de mandrilado com retrocesso da ferramenta em G01

• G80.. Anulação de qualquer ciclo fixo

• Os ciclos fixos podem ser executados em qualquer plano de trabalho, a profundidade realiza-se segundo

o eixo seleccionado como perpendicular ao plano de trabalho, ou como opção com a função G15. • Definição de um ciclo fixo: Um ciclo fixo define-se mediante a função g indicativa do ciclo fixo e dos parâmetros correspondentes ao ciclo desejado. Não se pode definir um ciclo fixo num bloco em que tenha programado movimentos não lineares (G02, G03, G08, G09).

• Anulação de um ciclo fixo: Pode-se anular um ciclo fixo programando a função G80, esta pode ser programada em qualquer bloco. Definir outro ciclo fixo, este anulará o anterior que estava activo. Depois de executar m02,m30, ou emergência. ...CICLOS FIXOS - DEFINIÇÕES BÁSICAS

G69.. CICLO FIXO DE FURAÇÃO PROFUNDA COM PASSO VARIÁVEL • Este ciclo fixo realiza sucessivos passos de furação até conseguir o final da cota programada. • A ferramenta retrocede uma quantidade de vezes, depois de cada segmento de furo, podendo-se

programar quantas vezes a ferramenta retrocede ao plano de referência para limpeza da broca. • A estrutura básica do bloco é a seguinte:

Page 25: Fagor 55 Prog

• G69 G98/G99 XY Z I B C D H J K L R G81.. CICLO FIXO DE FURAÇÃO SIMPLES • Este ciclo realiza um furo no ponto indicado até alcançar a cota final programada. • Permite programar uma temporização no fundo do furo. • A estrutura básica do bloco é a seguinte: * G81 G98/G99 XY Z I K

Factor que reduz a passagem de furação

Define o tempo de espera, em centésimas de segundo, no fundo do furo, antes do retrocesso.

Define o mínimo valor que pode adquirir o passo de furação

Define a profundidade do furo no eixo Z

Define o tempo de espera em centésimas de segundo depois de

cada passo de furação até começar o retrocesso.

Define a cota do plano de referência no eixo Z

Define de quantos em quantos passos de furação a ferramenta regressa ao ponto de

referência para limpeza da ferramenta

Ciclo fixo de furação simples

Distância de retrocesso depois de cada passo de furação

Retrocesso da ferramenta ao plano de partida / referencia

Define a distância entre o plano de referência e a superfície da peça

Define o movimento dos eixos para posicionar o furo

Ciclo fixo de furação com

passo variável

Retrocesso ao plano de partida / referencia

Cotas que definem os movimentos dos eixos para posicionar o furo

Define a cota do plano de referência

Define a profundidade total do furo

Define o passo da furação no eixo Z

Define até que distancia o passo do furo anterior se movimentará em rápido (G00), e a sua aproximação à

peça, para realizar outro passo da furação.

Page 26: Fagor 55 Prog

G82.. CICLO FIXO DE FURAÇÃO COM TEMPORIZAÇÃO. • Este ciclo realiza um furo no ponto indicado até alcançar a cota final programada. • Permite programar uma temporização no fundo do furo. Esta é obrigatória, em centésimos de segundo. • A estrutura básica do bloco é a seguinte: * G82 G98/G99 XY Z I K G83.. CICLO FIXO DE FURAÇÃO PROFUNDA C/ PASSO CONSTANTE. • Este ciclo realiza sucessivos passos de furação até alcançar a cota final programada. • A ferramenta retrocede ao plano de referência após cada passo de furação. • A estrutura básica do bloco é a seguinte: * G83 G98/G99 XY Z I J G84.. CICLO FIXO DE ROSCAGEM COM MACHO (RÍGIDO). • Este ciclo realiza uma roscagem no ponto indicado até alcançar a cota final programada. • Permite programar uma temporização antes de cada inversão do macho, no fundo da rosca. • A estrutura básica do bloco é a seguinte: * G84 G98/G99 XY Z I K R

Define o tempo de espera, em centésimas de segundo, no fundo do furo, antes do retrocesso.

Esta definição é obrigatória

Define o número de passos em que se realiza o furo. pode-se programar um valor de

1 a 9999.

Define o tempo de espera, em centésimas de segundo, no fundo da rosca, antes da inversão do

macho para o retrocesso.

Define a profundidade do furo no eixo Z

Define o valor de cada passo de furação no eixo Z

Define a profundidade da rosca no eixo Z

Define a cota do plano de referência no eixo Z

Define a cota do plano de referência no eixo Z

Define a cota do plano de referência no eixo Z

Ciclo fixo de furação simples

Ciclo fixo de furação profunda com passo

constante

Ciclo fixo de roscagem

Retrocesso da ferramenta ao plano de partida / referencia

Retrocesso da ferramenta ao plano de partida / referencia

Retrocesso da ferramenta ao plano de partida / referencia

Define o movimento dos eixos para posicionar o furo

Define o movimento dos eixos para posicionar o furo

Define o movimento dos eixos para posicionar a roscagem

Define o tipo de roscagem: R0=roscagem normal R1=roscagem rígida

Page 27: Fagor 55 Prog

Para a roscagem rígida a árvore da máquina deve de estar equipada com motor-regulador e encoder. G85.. CICLO FIXO DE ESCARIADO. • Este ciclo realiza um escariado no ponto indicado até alcançar a cota final programada. • Permite programar uma temporização no fundo do escariado. • A estrutura básica do bloco é a seguinte: * G85 G98/G99 XY Z I K G86.. CICLO FIXO DE MANDRILADO COM RETROCESSO EM G00. • Este ciclo realiza um mandrilado no ponto indicado até alcançar a cota final programada. • Permite programar uma temporização no fundo do furo. • A estrutura básica do bloco é a seguinte: * G86 G98/G99 XY Z I K G87.. CICLO FIXO DE CAIXAS RECTANGULARES. • Este ciclo realiza uma caixa rectangular ou quadrada no ponto indicado até alcançar a cota final

programada. • Permite programar além das passagens e avanços de desbaste, uma última passagem e avanço de

acabamento. • O CNC aplica automaticamente entradas e saídas tangenciais para garantir o bom acabamento das

caixas.

Define o tempo de espera, em centésimas de segundo, depois do escariado, e antes do

retrocesso.

Define o tempo de espera, em centésimas de segundo, no fundo do furo, antes do retrocesso.

Define a profundidade do escariado em Z

Define a profundidade do mandrilado no eixo Z

Define a cota do plano de referência no eixo Z

Define a cota do plano de referência no eixo Z

Ciclo fixo de escariado

Ciclo fixo de mandrilado

Retrocesso da ferramenta ao plano de partida / referencia

Retrocesso da ferramenta ao plano de partida / referencia

Define o movimento dos eixos para posicionar o escariado

Define o movimento dos eixos para posicionar o mandrilado

Page 28: Fagor 55 Prog

• A estrutura básica do bloco é a seguinte: * G87 G98/G99 XY Z I J K B C D H L G88.. CICLO FIXO DE CAIXAS CIRCULARES. • Este ciclo realiza uma caixa circular no ponto indicado até alcançar a cota final programada. • Permite programar além das passagens e avanços de desbaste, uma última passagem e avanço de

acabamento. • O CNC aplica automaticamente entradas e saídas tangenciais para garantir o bom acabamento das

caixas. • A estrutura básica do bloco é a seguinte: * G88 G98/G99 XY Z I J B C D H L

Ciclo fixo de caixas

rectangulares

Ciclo fixo de caixas circulares

Retrocesso da ferramenta ao plano de partida / referencia

Retrocesso da ferramenta ao plano de partida /

referencia

Define o movimento dos eixos para posicionar o furo

Define o movimento dos eixos para posicionar o furo

Define a cota do plano de referência no eixo Z

Define a cota do plano de referência no eixo Z

Define a profundidade da caixa

Define a profundidade da caixa

Define metade do comprimento da caixa em X. o sinal (+ -) define o sentido do mecanizado

Define metade do diâmetro (raio) da caixa. O sinal (+ -) define o sentido do mecanizado

Define metade da largura da caixa em Y.

Define o valor da passagem de acabamento

Define o valor da passagem de acabamento

Avanço para a passagem de acabamento

Avanço para a passagem de acabamento

Define a distância do ponto de referência até

à superfície da peça

Define a distância do ponto de referência até à superfície da peça

Define a passagem no plano principal (75% do diâmetro)

Define a passagem no plano principal (75% do diâmetro)

Define o incremento em Z. + = Passagem sempre igual - = Passagem progressiva

Define o incremento em Z. + = Passagem sempre igual - = Passagem progressiva

Page 29: Fagor 55 Prog

G89.. CICLO FIXO DE MANDRILADO COM RETROCESSO EM G01. • Este ciclo realiza um mandrilado no ponto indicado até alcançar a cota final programada. • Permite programar uma temporização no fundo do furo. • A estrutura básica do bloco é a seguinte: * G89 G98/G99 XY Z I K G66.. CICLO FIXO DE CAIXAS IRREGULARES COM ILHAS. • Uma caixa com ilhas é composta de um perfil exterior ou caixa, e de uma série de perfis interiores ou

ilhas. • O perfil exterior que limita a área a mecanizar, é definido por elementos geométricos simples (arcos, e

segmentos rectos). • As ilhas também são definidas por elementos geométricos simples, estas limitam a área não

mecanizável. • O ciclo G66 dispõe das seguintes operações para realizar a mecanização de uma caixa irregular com

ilhas ou sem ilhas.

• Operação de furação. É opcional e permite seleccionar um dos ciclos fixos de furação (G81, G82,etc.) Para executar o furo para a entrada inicial da ferramenta.

• CNC depois de analisar a geometria da caixa com ilhas, calculará as cotas do ponto em que deve realizar

o furo para a entrada da ferramenta.

Define o tempo de espera, em centésimas de segundo, no fundo do furo, antes do retrocesso.

Define a profundidade do mandrilado no eixo Z

Define a cota do plano de referência no eixo Z

Ciclo fixo de mandrilado

Retrocesso da ferramenta ao plano de partida / referencia

Define o movimento dos eixos para posicionar o mandrilado

Page 30: Fagor 55 Prog

• Operação de desbaste. É opcional, e para a sua definição dispomos da função G67. Esta função permite definir, entre outros, a passagem e o ângulo da fresagem, assim como a profundidade de cada passagem e a profundidade total da caixa.

• Operação de acabamento. É opcional, e para a sua definição dispomos da função G68. Esta

função permite definir entre outros, a sobre-espessura ou demasia para acabamento, assim como a profundidade para cada passagem de acabamento.

• A função G66 não é modal, portanto deverá ser programada sempre que se queira executar uma caixa

irregular com ilhas. • No bloco em que se define um ciclo de caixa com ilhas não se pode programar mais nenhuma função, a

sua estrutura é a seguinte: * G66 D R F S E Exemplo da programação de um ciclo fixo de caixas com ilhas N10 G0 G90 X10 Y20 Z8 F500 T1 D2 M3 ; posicionamento inicial N20 G66 D50 R60 F70 S80 E90 ; definição do ciclo de caixas c/ ilhas N30 M30 ....................... N50 G81 ............... ; define operação de furação N60 G67 ............... ; define operação de desbaste N70 G68 ............... ; define operação de acabamento N80 X150 Y50 Z4 ....... ; define o início da geometria ....................... ....................... ....................... N90 G2 G6 X300 Y50 I150 J0 ; define o fim da geometria OPERAÇÃO DE FURAÇÃO G69, G81, G82, G83 • Esta operação é opcional e para que o CNC a execute é necessário que também se tenha programado a

operação de desbaste. • Utiliza-se, principalmente, quando a ferramenta programada na operação de desbaste não corta no eixo

vertical, mediante esta operação é possível o acesso da ferramenta à superfície a desbastar.

Define o número do bloco em que acaba a descrição geométrica

dos perfis que compõem a peça.

Define o número do bloco em que se inicia a descrição geométrica dos perfis

que compõem a peça.

Define o número do bloco em que está definida a operação de acabamento.

Ciclo de caixas irregulares com

ilhas

Define o número do bloco em que se encontra

programada a operação de furação

Define o número do bloco em que está definida a operação de desbaste.

Page 31: Fagor 55 Prog

• Programa-se num bloco, que necessariamente terá número de etiqueta, com o objectivo de indicar ao ciclo fixo o bloco onde está definida a operação de furação.

• Para esta operação pode-se seleccionar qualquer ciclo fixo de furação, como por exemplo:

• G69 ciclo fixo de furação profunda com passo variável

• G81 ciclo fixo de furação simples

• G82 ciclo fixo de furação com temporização

• G83 ciclo fixo de furação profunda com passo constante

• Num bloco deste tipo, unicamente se programa os parâmetros de definição do ciclo, sem definir o

posicionamento, este será calculado pelo ciclo G66, em função do perfil da caixa e do ângulo de fresagem a executar.

OPERAÇÃO DE DESBASTE G67 • Esta é a operação principal para fresar uma caixa com ilhas, embora a sua programação seja opcional.

• Esta operação executa-se mantendo o trabalho em aresta viva (G7) ou em aresta morta (G5), conforme

o que se encontrar seleccionado. Não obstante, o ciclo fixo atribuirá o formato G07 aos movimentos

necessários.

• Programa-se num bloco, que necessariamente terá número de etiqueta, com o objectivo de indicar ao

ciclo fixo o bloco onde está definida a operação de desbaste.

• A estrutura básica do bloco é a seguinte:

* G67 A B C I R K F S T

Ciclo fixo de desbaste

Define o ângulo que forma a trajectória do desbaste

Define o incremento do desbaste em Z.

Define a passagem no plano Standard = 75% do diâmetro da fresa

Define a ferramenta com que se realiza o desbaste

Define o tipo de intersecção 0 = Básica 1 = avançada

O normal, é a básica

Define a cota do plano de referência.

Define a profundidade da caixa. É obrigatório programar.

Page 32: Fagor 55 Prog

OPERAÇÃO DE ACABAMENTO G68

• Esta é a última operação que se pode executar na mecanização de caixas com ilhas, sendo opcional a

sua programação.

• Programa-se num bloco, que necessariamente terá número de etiqueta, com o objectivo de indicar ao

ciclo fixo o bloco onde está definida a operação de acabamento.

• A estrutura básica do bloco é a seguinte:

* G68 B L Q I R K F S T EXEMPLO DA PROGRAMAÇÃO DO CICLO DE CAIXA COM ILHAS, G66

Ciclo fixo de acabamento

Define o incremento do desbaste em Z.

Define o valor da passagem de

acabamento

Define o sentido da passagem de acabamento.

1 = Mesmo sentido do desbaste 0 = Sentido contrario do desbaste

Define a ferramenta com que se realiza o desbaste

Define o tipo de intersecção 0 = Básica 1 = Avançada

O normal, é a básica

Define a cota do plano de referência.

Define a profundidade da caixa. É obrigatório programar.

40 R10

80

R8

R12

45

8 12

15

15 90

X45 Y55

R10

X+

Y+

INICIO

Page 33: Fagor 55 Prog

Profundidade da caixa = 15 P 000147 G00 G17 G90 X0 Y0 Z50 M3 G66 D10 R20 F30 S40 E50 ; descrição do ciclo G00 G90 X0 Y0 Z50 M30 N10 G81 G98 Z5 I-15 F150 S1000 T1 D1 ; furação N20 G67 A45 B5 C7 I-15 R2 K0 F300 T1 D1 ; desbaste N30 G68 B5 L1.2 Q0 F140 S2000 T1 D1 ; acabamento N40 X-40 Y70 Z2 ; início do contorno G1 Y12 G3 X-28Y0 R12 G1 Y-8 G36R8 X90 Y-8 G1 Y80 X10 G3 X0 Y70 R10 G1 X-40 G0 X35 Y55 G2 X35 Y55 I10 J0 G0 X15 Y12 G1 X60 Y4 X15 N50 Y12 ; fim do contorno LINGUAGEM DE ALTO NÍVEL

SENTENÇAS DE CONTROLO DOS PROGRAMAS • As sentenças de controlo que dispõe a programação em linguagem de alto nível, podem-se agrupar

como;

• Sentenças de atribuição • Sentenças de visualização • Sentenças de habilitação / desabilitação • Sentenças de controlo de fluxo • Sentenças de sub-rutinas • Sentenças para gerar programas • Sentenças de personalização

• Programa-se uma única sentença em cada bloco, não se permite programar mais nada nesse mesmo

bloco. SENTENÇAS DE ATRIBUIÇÃO • É o tipo de sentença mais simples e pode definir-se como: (DESTINO = EXPRESSÃO ARITMÉTICA) • Como destino pode-se seleccionar um parâmetro local ou global ou também uma variável de leitura ou

de escrita. A expressão aritmética pode ser complexa, ou uma simples constante numérica

(P102 = FZLOY) (ORGY55 = (ORGY 54 + P100)) (P101 = 123.5)

Page 34: Fagor 55 Prog

• No caso particular de se realizar uma atribuição a um parâmetro local, utilizando o seu nome, e sendo a

expressão aritmética uma constante numérica, a sentença pode-se abreviar da seguinte forma:

(P0 = 13.7) => (A = 13.7) => (A13.7) • Num único bloco pode-se realizar até 26 atribuições para destinos distintos, interpretando-se como uma

única atribuição, o conjunto de atribuições realizadas para o mesmo destino. (P1=P1+P2,P1=P1+P3,P1=P1*P4,P1=P1/P5) => => (P1=(P1+P2+P3)*P4/P5). • As diferentes atribuições que se realizam no mesmo bloco separam-se com vírgulas “,”. SENTENÇAS DE VISUALIZAÇÃO (ERROR N.º INTEIRO, “TEXTO DE ERRO”) • Esta sentença detém a execução do programa e visualiza o erro indicado, podendo-se seleccionar o dito

erro da seguinte forma:

• (ERROR N.º inteiro). Visualiza o número do erro indicado, e o texto associado ao erro, segundo o código de erros do CNC.

• (ERROR N.º inteiro, “texto de erro”). Visualiza o número e o texto do erro indicado, deve-se

escrever o texto entre comas.

• (ERROR “texto de erro”). Visualiza unicamente o texto do erro indicado. • O número de erro pode ser definido mediante uma constante numérica ou mediante um parâmetro.

Quando se utiliza um parâmetro local deve-se utilizar a forma numérica de P0 a P25. • Exemplos de programação:

• (ERROR 5)

• (ERROR P100)

• (ERROR “ERRO DO UTILIZADOR”)

• (ERROR 3, “ERRO DO UTILIZADOR”)

• (ERROR P120, “ERRO DO UTILIZADOR”)

(MSG “MENSAGEM”) • Esta sentença visualiza a mensagens indicada entre comas. • No monitor do CNC, aparece uma zona para visualizar as mensagens do DNC e do programa do

utilizador. • Visualiza-se sempre a última mensagens recebida, independentemente da sua procedência.

• Exemplo: • (MSG “VERIFICAR FERRAMENTA”)

Page 35: Fagor 55 Prog

SENTENÇAS DE HABILITAÇÃO / DESABILITAÇÃO (ESBLK E DSBLK) • A partir da execução da sentença ESBLK, o CNC executa todos os blocos que vem a seguir, como se

fossem um único bloco. • Este tratamento de bloco único, mantém-se activo até que se anule mediante a execução da sentença

DSBLK. • Desta maneira, se executarmos o programa em modo “bloco a bloco” o grupo de blocos que se

encontrar entre as sentenças ESBLK e DSBLK executam-se em ciclo contínuo, o que quer dizer que não pára a execução ao terminar um bloco, mas executa todos como se fossem um único bloco.

• EXEMPLO:

G01 X10 Y10 F500 T1 D6 (ESBLK) ; início do bloco único G02 X20 Y20 I20 J-10 G01 X40 Y20 G01 X40 Y40 F120 G01 X20 Y40 F200 (DSBLK) ; anulação do bloco único G01 X10 Y10 M30 (ESTOP E DSTOP) • A partir da execução da sentença DSTOP, o CNC desabilita a tecla de STOP, assim como o sinal de

STOP, proveniente do PLC. • Esta desabilitação permanece activa até que volte a ser habilitada mediante a sentença ESTOP. (EFHOLD E DFHOLD) • A partir da execução da sentença DFHOLD, o CNC desabilita a entrada de FEED-HOLD, proveniente do

PLC. • Esta desabilitação permanece activa até que volte a ser habilitada mediante a sentença EFHOLD.

SENTENÇAS DE CONTROLO DE FLUXO (GOTO N(EXPRESSÃO)) • A sentença GOTO provoca um salto dentro do mesmo programa, ao bloco definido mediante a etiqueta

N (expressão). • A execução do programa continuará depois do salto, a partir do bloco indicado. • A etiqueta do salto pode ser direccionada mediante um número ou mediante qualquer expressão que

tenha como resultado um número.

• EXEMPLO: G00 X0 Y0 Z0 T4 D6

Page 36: Fagor 55 Prog

X10 (GOTO N22) ; sentença de salto X15 Y20 ; não se executa N22 G01 X30 Y40 ; executa-se a partir deste bloco G02 X20 Y40 I-5 J-5 ................. (RPT N (EXPRESSÃO), N (EXPRESSÃO)) • A sentença RPT executa dentro do mesmo programa, a parte do programa existente entre os blocos

definidos mediante as etiquetas N (EXPRESSÃO). • A execução do programa continuará depois do salto, a partir do bloco indicado. • A etiqueta do salto pode ser direccionada mediante um número ou mediante qualquer expressão que

tenha como resultado um número. • A parte do programa seleccionado mediante as duas etiquetas deve pertencer ao mesmo programa,

definindo-se primeiro o bloco inicial e logo a seguir o bloco final. • A execução do programa continuará no bloco seguinte ao que se programou na sentença RPT, uma vez

executada a parte seleccionada do programa. • Exemplo:

N10 G00 X10 Z20 G00 Z0 N20 X0 N30 (RPT N10, N20) N3 N40 G01 X20 M30 • Ao chegar ao bloco N30, o programa executará 3 vezes a secção N10 - N20. Uma vez finalizada,

continuará a execução no bloco N40. (IF CONDIÇÃO <ACÇÃO1> ELSE <ACÇÃO2>) • Esta sentença analisa a condição dada, que deverá ser uma expressão relacional. Se a condição for

certa (resultado igual a um), executa-se a <ACÇÃO1>, e no caso contrário (resultado igual a zero) executa-se a <ACÇÃO2>.

* Exemplo:

(IF (P8 EQ 12.8) CALL 3 ELSE PCALL 5,A2,B5,D8) SE P8 = 12.8 executa-se a sentença (CALL 3) SE P8 <> 12.8 executa-se a sentença (PCALL 5,A2,B5,D8) • A SENTENÇA PODE CARECER DA PARTE ELSE, BASTARÁ PROGRAMAR IF CONDIÇÃO

<ACÇÃO1>. Exemplo: (IF (P8 EQ 12.8) CALL 3) • Tanto <ACÇÃO1> como <ACÇÃO2> podem ser expressões ou sentenças, com excepção das

sentenças IF e SUB. • Devido a que num bloco de alto nível os parâmetros locais podem ser denominados mediante letras,

podem-se obter expressões deste tipo: (IF (E EQ 10) M10)

Page 37: Fagor 55 Prog

• Se se cumpre a condição de que o parâmetro P5 tenha o valor 10, não se executará a função auxiliar

M10, já que um bloco de alto nível não pode dispor de comandos de código ISO. Neste caso M10

representa a atribuição do valor 10 ao parâmetro P12, é o mesmo que programar:

(IF (E EQ 10) M10 ou (IF (P5 EQ 10) P12=10)

SENTENÇAS DE SUB-RUTINAS • Chama-se sub-rutina a uma parte de um programa que, convenientemente identificada, pode ser

chamada desde qualquer posição de um programa para, ser executada. • Uma sub-rutina pode estar armazenada na memória do CNC como um programa independente ou como

parte de um programa, e pode ser chamada uma ou várias vezes, desde diferentes posições de um programa ou desde diferentes programas.

(SUB NºINTEIRO) • A sentença SUB define como sub-rutina o conjunto de blocos de programa que se encontrem

programados a seguir a este bloco, identificando a dita sub-rutina mediante um número inteiro, compreendido entre 0 e 9999.

• Na memória do CNC não pode existir duas sub-rutinas com o mesmo número de identificação, mesmo

que pertençam a programas diferentes. (RET) • A sentença RET indica que a sub-rutina que se definiu mediante a sentença SUB, terminou nesse bloco. Exemplo: (SUB 10) ; definição da sub-rutina G91 G01 XP0 F120 YP1 X-P0 Y-P1 (RET) ; fim da sub-rutina (CALL (EXPRESSÃO)) • A sentença CALL realiza uma chamada da sub-rutina indicada mediante um número inteiro ou mediante

qualquer expressão que tenha como resultado um número. • Dado que de um programa principal, se pode chamar uma sub-rutina, e de esta uma segunda, e da

segunda uma terceira, etc.., o CNC limita estas chamadas, até um máximo de 15 níveis de implicação, podendo-se repetir cada um dos níveis 9999 vezes.

(PCALL (EXPRESSÃO),(SENTENÇA DE ATRIBUIÇÃO)........) • A sentença PCALL realiza uma chamada à sub-rutina indicada mediante um número ou mediante

qualquer expressão que tenha como resultado um número. E ainda permite inicializar até um máximo de 26 parâmetros locais da dita sub-rutina.

• Estes parâmetros locais inicializam-se mediante as sentenças de atribuição.

• Exemplo: (PCALL 52,A3,B5,C4,P10=20) • Neste caso, além de gerar um novo nível de implicação de sub-rutinas, gera-se um novo nível de

implicação de parâmetros locais, existindo um máximo de 6 níveis de implicação de parâmetros locais, dentro dos 15 níveis de implicação de sub-rutinas.

Page 38: Fagor 55 Prog

• Tanto o programa principal, como cada sub-rutina que se encontre num nível de implicação de

parâmetros, dispõe de 26 parâmetros locais (P0 a P25). (MCALL (EXPRESSÃO),(SENTENÇA DE ATRIBUIÇÃO)........) • Por meio da sentença MCALL, qualquer sub-rutina definida pelo utilizador (SUB Nº INTEIRO) adquire a

categoria de ciclo fixo. • A execução desta sentença é igual à sentença PCALL, mas a chamada é modal, o que quer dizer que,

se a seguir a este bloco programamos outro com movimento de eixos, depois do dito movimento, executa-se a sub-rutina indicada e com os mesmos parâmetros de chamada.

• Se está seleccionada uma sub-rutina modal e se executa um bloco de movimento com número de

repetições, por exemplo X10 N3, o CNC executa uma única vez o movimento X10, e depois a sub-rutina modal, tantas vezes como indique o número de repetições.

• No caso de se seleccionar repetição de bloco, a primeira execução da sub-rutina modal, realiza-se com

os parâmetros de chamada actualizados, mas não, no resto das repetições, que se executarão com os valores que tenham nesse momento.

• Se está seleccionada uma sub-rutina como modal, e se executa um bloco que tenha a sentença MCALL,

a sub-rutina actual perderá a sua modalidade e a nova sub-rutina seleccionada se converte em sub-rutina modal.

OPERADORES ARITMÉTICOS

SINAL + Adição, soma P1=3+4 -> P1=7

SINAL - Subtracção P2=5-2 -> P2=3

ASTERISCO * Multiplicação P3=2*3 -> P3=6

BARRA / Divisão P4=9/2 -> P4=4.5

OPERADORES RELACIONAIS

EQ Igual

NE Distinto

GT Maior que

GE Maior ou igual que

LT Menor que

LE Menor ou igual que

FUNÇÕES TRIGONOMÉTRICAS

SIN Seno P1=SEN 30 ->P1=0.5

COS Co-seno P2=COS 30 ->P2=0.8660

Page 39: Fagor 55 Prog

TAN Tangente P3=TAN 30 ->P3=0.5773

ASIN Arco seno P4=ASIN 1 ->P4=90

ACOS Arco co-seno P5=ACOS 1 ->P5=0

ATAN Arco tangente P6=ATAN 1 ->P6=45

ABS Valor absoluto P1=ABS -8 ->P1=8

LOG Logaritmo decimal P2=LOG 100 ->P2=2

SQRT Raiz quadrada P3=SQRT 16 ->P3=4

ROUND Arredonda para número inteiro P4=ROUND 5.9 ->P4=6

FIX Parte inteira P5=FIX 5.423 ->P5=5

FUP

Se é número inteiro, fica com valor de parte inteira. Se não é número inteiro, fica com o valor inteiro mais um.

P6=FUP 7 ->P6=7 P6=FUP 5.423 ->P6=6

EXPRESSÕES DE LINGUAGEM DE ALTO NÍVEL

ERROR Visualização de um texto de erro e paragem do programa

MSG Visualização de uma mensagem para o operador

ESBLK Habilitação de bloco único

DSBLK Anulação de bloco único

ESTOP Habilitação de Stop

DSTOP Inibição de Stop

EFHOLP Habilitação do FEED-HOLD

DFHOLD Inibição do FEED-HOLD

GOTO Salto a um bloco ou uma etiqueta

RPT Repetição de blocos do programa

SUB Identificação de uma sub-rutina

RET Fim de uma sub-rutina

CALL Chamada de uma sub-rutina

PCALL Chamada de uma sub-rutina paramétrica

MCALL Chamada modal de uma sub-rutina

Page 40: Fagor 55 Prog

MDOFF Desactivação da sub-rutina modal

IF, ELSE Execução condicional (comparação)

OPEN Abertura de um programa

WRITE Criação de blocos do programa

Exemplos da programação de linguagem de alto nível

%ELIPSE, MX, ;LINGUAGEM DE ALTO NÍVEL ;8050 MG (000120.PIM) ;PROGRAMAÇÃO EM PARAMÉTRICAS DO CONTORNO DE UMA ELIPSE N010 (P0=5) ; incremento angular N020 (P1=0) ; ponto de partida (0 graus) N030 (P2=40) ; raio maior no eixo Y N040 (P3=20) ; raio maior no eixo X N050 G90 G5 G17 G40 F950 S1200 D1 M3 M8 N060 G0 X120 Y-10 N070 Z-5 N080 (P4=SIN P1) N090 (P5=COS P1) N100 (P6=P4*P2) N110 (P7=P5*P3) N120 G1 G90 G42 XP7 YP6 N130 (P1=P1+P0) N140 (IF(P1 LT 360.1)GOTO N80) N150 G0 Z20 N160 X-100 Y100 N170 M30

Page 41: Fagor 55 Prog

%CAIXA INCLINADA, MX,

; 8050 MG (000100.PIM)

; LINGUAGEM DE ALTO NÍVEL

; PROGRAMA EM PARAMÉTRICAS PARA FRESAR UMA CAIXA COM INCLINAÇÃO

; COM ESQUINAS IGUAIS AO RAIO DA FERRAMENTA

N020 (P1=45) ; cota de X, metade do comprimento da caixa N030 (P2=25) ; cota de Y, metade da largura da caixa N060 (P3=20) ; ângulo de inclinação da caixa N070 (P4=11.5) ; profundidade da caixa N090 (P5=0) ; Z=0 N100 (P6=10) ; raio para entrada e saída da ferramenta N110 (P7=1.15) ; incremento para o acabamento da caixa N105 (P10=2) ; incremento para o desbaste da caixa N120 (P8=P2-((TAN P3)*P4)) N130 (P9=P1-((TAN P3)*P4)) N140 G0G87G98X0Y0Z2I-P4JP9KP8BP10C8D2H300L0.2F950S1200D1M3M8 N150 G80 N160 G0 Z20 N210 G0 X0 Y0 N220 G0 ZP5 N230 G1 Z-P5 N240 G41 G90 G1 G37 RP6 YP2 N250 G1 X-P1 N260 Y-P2 N270 XP1 N280 YP2 N290 G38 RP6 X0 N300 G40 G0 X0 Y0 N310 (P1=P1-(TAN P3)*P7) N320 (P2=P2-(TAN P3)*P7) N330 (P5=P5+P7) N340 (IF(P4 GE P5)GOTO N230) N345 (RPT N230,N300) N350 G0 G90 Z20 N360 X-100 Y100 N370 M30