MCS Engenharia
Manual de Programação - CNC Proteo
ÍNDICE
Introdução ............................................................................................................. 5
1 - Programação ISO ............................................................................................ 6
1.1 - Coordenadas absolutas / incrementais (G90 / G91) .................................... 6
1.2 - Origens: Absoluta (G53), Peca (G54 a G57) e Incrementa (G58 e G59) .... 6
1.3 - Plano: XY (G17), ZX (G18) e YZ (G19) ....................................................... 7
1.4 - Movimento Rápido (G0)............................................................................... 7
1.5 - Interpolação Linear (G1) .............................................................................. 7
1.6 - Interpolação Circular (G2 / G3) .................................................................... 8
1.7 - Interpolação Helicoidal (G2 / G3)................................................................. 8
1.8 - Tempo de Espera (G4) ................................................................................ 9
1.9 - Desvio (G4) ................................................................................................. 9
1.10 - Fator de Escala (G5) ............................................................................... 10
1.11 - Rotação de Coordenadas (G5) ................................................................ 10
1.12 - Reset Expressão (G6) ............................................................................. 10
1.13 - Sistema de Coordenadas: Cartesianas (G15) / Polares (G16) ................ 10
1.14 - Unidades: Milímetros (G21) / Polegadas (G20) ....................................... 11
1.15 - Round / Chanfro (G7) .............................................................................. 11
1.16 - Ferramenta: Compensação de comprimento(G43 / G49)........................ 12
1.17 - Ferramenta: Compensação de raio (G40 / G41 / G42)............................ 12
1.18 - Aproximação e Saída Tangenciais (G7 / G40 / G41 / G42) ..................... 13
1.19 - Movimento Preciso (G61) ........................................................................ 13
1.20 - Movimento Contínuo - Transição Macia de Cantos (G64) ....................... 14
1.21 - Parada Precisa No Bloco (G9) ................................................................ 14
1.22 - Avanço: mm/min ou rotação/min (G94) ................................................... 14
1.23 - Avanço: mm/rotação (G95)...................................................................... 14
1.24 - Spindle: Giro Do Eixo Árvore (M3 / M4 / M5 / S) ..................................... 14
1.25 - Spindle: Velocidade De Corte Constante (G92 / G96 / G97) ................... 15
1.26 - Spindle: Parada Indexada (M19) ............................................................. 16
1.27 - Spindle: Posicionamento Com Eixo Árvore (M119) ................................. 16
1.28 - Spindle: Eixo Árvore Auxiliar (M45) ......................................................... 17
1.29 - Movimento De Rosca: Passada Única (G32) .......................................... 18
1.30 - Movimento Com Transição De Avanço (M102) ....................................... 19
1.31 - Acoplamento Entre Eixos / Eixo Virtual ................................................... 19
2 - Programação MCS......................................................................................... 20
2.1 - Comandos De Movimento ......................................................................... 20
2.1.1 - Movimento Simples (um eixo por vez) ................................................ 20
2.1.2 - Interpolações Lineares (movimento simultâneo de eixos) .................. 21
2.1.3 - Interpolações Circulares (movimento simultâneo de eixos) ................ 22
2.1.3.1 - Interpolações Circulares (centro definido via POLO).................... 22
V1.00
1
Manual de Programação - CNC Proteo
MCS Engenharia
2.1.3.2 - Interpolações Circulares (centro calculado dado o raio)............... 23
2.1.3.3 - Interpolações Helicoidais (centro definido via POLO) .................. 24
2.1.3.4 - Interpolações Helicoidais (centro calculado dado o RAIO)........... 25
2.2 - Ciclos Fixo ................................................................................................. 26
2.2.1 - Ciclo - 0 Reset modal .......................................................................... 26
2.2.2 - Ciclo 1 - Tempo de espera .................................................................. 27
2.2.3 - Ciclo 2 - Atuação de funções auxiliares .............................................. 27
2.2.4 - Ciclo 3 – Rosca ................................................................................... 28
2.2.5 - Ciclo 4 - Translação do sistema de coordenadas ............................... 30
2.2.6 - Ciclo 5 - Verificação do estado de uma entrada ou saída ................... 31
2.2.7 - Ciclo 6 - Salto a uma marca no programa........................................... 33
2.3 - Controle de Fluxo ...................................................................................... 33
2.3.1 - Introdução de marcas (Label) nos programas .................................... 33
2.3.2 - Localização de uma marca (Label) ..................................................... 34
2.3.3 - Chamada de uma marca (Label) ........................................................ 34
2.3.4 - Montagem e execução de sub-rotinas ................................................ 35
2.3.5 - Repetição de execução de parte do programa ................................... 36
2.3.6 - Chamada de sub-programas .............................................................. 37
2.4 - Funções Matemáticas Especiais ............................................................... 38
2.4.1 - Função 0 - Atribuição - ATR................................................................ 39
2.4.2 - Função 1 - Soma - ADD ...................................................................... 39
2.4.3 - Função 2 - Subtração - SUB ............................................................... 40
2.4.4 - Função 3 - Multiplicação - MULT ........................................................ 41
2.4.5 - Função 4 - Divisão - DIV ..................................................................... 41
2.4.6 - Função 5 - Valor absoluto - ABS ......................................................... 42
2.4.7 - Função 6 - Resto de divisão - REST ................................................... 43
2.4.8 - Função 7 - Negação - NEG................................................................. 43
2.4.9 - Função 8 - Raiz quadrada - RAD ........................................................ 44
2.4.10 - Função 9 - Valor de PI - PI................................................................ 45
2.4.11 - Função 10 - Seno - SEN ................................................................... 45
2.4.12 - Função 11 - Cosseno - COS ............................................................. 46
2.4.13 - Função 12 - Tangente - TAN ............................................................ 46
2.4.14 - Função 13 - Arco tangente - ATG ..................................................... 47
2.4.15 - Função 14 - Distância - DIST ............................................................ 47
2.4.16 - Função 15 - Desvio caso igual - JE................................................... 48
2.4.17 - Função 16 - Desvio caso diferente - JNE.......................................... 49
2.4.18 - Função 17 - Desvio caso maior ou igual - JP.................................... 49
2.4.19 - Função 18 - Desvio caso menor - JN ................................................ 50
2.4.20 - Função 19 - Leitura de uma posição de memória - PLCR ................ 51
2.4.21 - Função 20 - Escrita em posição de memória - PLCW ...................... 51
2.4.22 - Função 21 - Leitura de um parâmetro de máquina P - PARR........... 52
2
V1.00
MCS Engenharia
Manual de Programação - CNC Proteo
2.4.23 - Função 22 - Leitura de dados de ferramenta - TDFR ....................... 52
2.4.24 - Função 23 - Escrita em dados de ferramenta - TDFW...................... 53
2.4.25 - Função 24 - Expressão geral ............................................................ 54
2.4.26 - Função 25 - Expressão condicional com expressão - IF[ ] THEN[ ] .. 54
2.4.27 - Função 26 - Expressão condicional com salto - IF[ ]THEN GOTO ... 55
3 - Funções auxiliares ........................................................................................ 56
3.1 - Parada de Programa Incondicional - M00 ................................................. 56
3.2 - Parada de Programa Opcional - M01 ........................................................ 56
3.3 - Final de Programa com Reset - M02 ......................................................... 56
3.4 - Liga Rotação Sentido Horário - M03.......................................................... 56
3.5 - Liga Rotação Sentido Anti-Horário - M04 .................................................. 56
3.6 - Desliga Rotação - M05 .............................................................................. 56
3.7 - Troca Automática de Ferramenta - M06 .................................................... 56
3.8 - Liga Refrigeração - M07 ............................................................................ 56
3.8 - Liga Bomba de Refrigeração - M08 ........................................................... 56
3.10 - Desliga Bomba de Refrigeração - M09 .................................................... 56
3.11 - Parada Orientada - M19 .......................................................................... 56
3.12 - Fim de Programa com Reset e Retorno ao Início - M30.......................... 56
3.13 - Eixo Árvore Auxiliar - M45 ....................................................................... 56
3.14 - Libera POT F, POT S e Feed Hold - M48 ................................................ 56
3.15 - Fixa POT F, POT S em 100% e Bloqueia Feed Hold - M49 .................... 57
3.16 - Liga Velocidade de Corte Constante - M58 ............................................. 57
3.17 - Desliga Velocidade de Corte Constante - M59 ........................................ 57
3.18 - Liga Interpolação Spline - M70 (*em implementação) ............................. 57
3.19 - Desliga Interpolação Spline - M71 (*em implementação) ........................ 57
3.20 - Desabilita Gráfico - M75 .......................................................................... 57
3.21 - Habilita Gráfico - M76 .............................................................................. 57
3.22 - Limpa Gráfico - M77 ................................................................................ 57
3.23 - Inicia Modo Simulado / Retomada de Ciclo - M78 ................................... 57
3.24 - Encerra Modo Simulado / Retomada de Ciclo - M79 ............................... 57
3.25 - Origem Polar no Último Circulo - M80 ..................................................... 57
3.26 - Origem Polar no Último Ponto Final- M81 ............................................... 57
3.27 - Desliga Movimento Rotativo pelo Menor Caminho - M82 ........................ 57
3.28 - Liga Movimento Rotativo pelo Menor Caminho - M83 ............................. 57
3.29 - Liga Compensação de Avanço em Círculos- M84 ................................... 57
3.30 - Desliga Compensação de Avanço em Círculos- M85.............................. 57
3.31 - Para Calculo na Frente e Copia Ponto Real - M86 .................................. 57
3.32 - Para Calculo na Frente e Copia Ponto Teórico - M87 ............................. 58
3.33 - Escala de Avanço Normal - M88 ............................................................. 58
3.34 - Escala de Avanço x10 - M89 ................................................................... 58
V1.00
3
Manual de Programação - CNC Proteo
MCS Engenharia
3.35 - Desliga Compensação de Raio de Ferramenta - M90 ............................. 58
3.36 - Liga Compensação de Raio a Direita - M91 ............................................ 58
3.37 - Liga Compensação de Raio a esquerda - M92 ....................................... 58
3.38 - Liga Auto Inserção de Raios (Remédio ON) - M93.................................. 58
3.39 - Desliga Auto Inserção de Raios (Remédio OFF) - M94.......................... 58
3.40 - Posicionamento Relativo ao G53 - M95 .................................................. 58
3.41 - Transição Macia de Cantos - M96 ........................................................... 58
3.42 - Posicionamento Preciso - M97 ................................................................ 58
3.43 - Chama Último Ciclo Fixo - M98 ............................................................... 58
3.44 - Final de Sub-rotina - M99 ........................................................................ 58
3.45 - Mach - Mode Enter - M100 ...................................................................... 58
3.46 - Normal ISO - Mode Enter - M101 ............................................................ 58
3.47 - Transição de avanço no Próximo Movimento- M102 ............................... 58
3.48 - Desliga Busca de 2 Intersecções - M103 ................................................ 59
3.49 - Limites do Perfil - M104(*em implementação) ......................................... 59
3.50 - Desliga Busca de todas Intersecções - M105 .......................................... 59
3.51 - Liga Busca de todas Intersecções - M106 ............................................... 59
3.52 - Modo Puncionadeira (PUNCH ON) - M108 ............................................. 60
3.53 - Modo Normal (PUNCH OFF) - M109 ...................................................... 60
3.54 - Busca Limites do Perfil - M110 ................................................................ 60
3.55 - Liga Busca de 2 Intersecções com Sobremetal - M111........................... 60
3.56 - Liga Busca de 2 Intersecções sem Sobremetal - M112........................... 60
3.57 - Habilita Tracking no Monitor de Corte - M113 ......................................... 60
3.58 - Desabilita Traço G00 no Monitor de Corte - M114 .................................. 60
4
V1.00
MCS Engenharia
Manual de Programação - CNC Proteo
Introdução
No CNC MCS Proteo toda a programação pode ser feita na linguagem ISO ou na
linguagem MCS. Na tela que está sendo feito o programa, a linguagem que está
sendo utilizada é mostrada no primeiro item a esquerda da barra azul superior.
Para efetuar a mudança da linguagem de programação devemos pressionar a
tecla , feito isso imediatamente verificamos a mudança da linguagem nesta
barra. Conforme visto nas figuras a seguir.
Ao pressionar a tecla
veremos.
Neste tutorial mostraremos detalhadamente como programar as principais funções
que pode ser executadas pelo CNC MCS Proteo utilizando as duas linguagens
disponíveis.
V1.00
5
Manual de Programação - CNC Proteo
MCS Engenharia
1 - Programação ISO
Primeiramente verifique se na tela onde está sendo feito o programa, a
linguagem que está sendo utilizada é a ISO (mostrada no primeiro item a
esquerda da barra azul superior). Se estiver em MCS pressionar a tecla
e
automaticamente mudará para ISO.
1.1 - Coordenadas absolutas / incrementais (G90 / G91)
G01 G90 X10 Y20 Z10 F1000
G01 G91 X50
G90: programa coordenadas absolutas, valores se referem ao zero peça.
G91: programa coordenadas incrementais, valores são somados ao último
ponto programado.
Padrão: G90
Comando Modal (mantém valor até ser novamente alterado).
Bloco pode conter somente o comando ou este pode ser programado junto com
bloco de movimento.
1.2 - Origens: Absoluta (G53), Peca (G54 a G57) e Incrementa
(G58 e G59)
G54
G00 X10 Y10
G53 G00 X20 Y20
G59
G01 X0 Y0 F1000
(1)
(2)
(3)
G53: seleciona origem absoluta (zero máquina), válido somente no bloco.
G54: seleciona 1º Zero Peça definido pelo usuário.
G55-G56-G57: seleciona outras origens do usuário (zero peça).
G58: seleciona origem incremental default a ser somada ao zero peça
selecionado.
G59: seleciona outra origem incremental.
Padrão: G54 e G58
Com exceção do G53, todos os outros são comandos modais.
As origens devem ser programadas via Editor de Origens ou Preset dos Eixos.
No exemplo acima:
- Movimento (1): coordenadas em relação ao G54 + G58 (default).
- Movimento (2): coordenadas em relação ao zero máquina (G53).
- Movimento (3): coordenadas em relação ao G54 + G59.
6
V1.00
MCS Engenharia
Manual de Programação - CNC Proteo
1.3 - Plano: XY (G17), ZX (G18) e YZ (G19)
G17 G00 X10 Y10 F1000
G18 G00 X20 Z20 F1000
Define plano de trabalho usado nos movimentos (circular, round/chanfro,
compensação de raio de ferramenta...).
G17: plano XY
G18: plano ZX
G19: plano YZ
Default: Fresa: G17 , Torno: G18
Comando Modal.
Bloco pode conter somente o comando ou este pode ser programado junto
com bloco de movimento.
1.4 - Movimento Rápido (G0)
G0 X0 Y0 Z0
G0: Executa movimento linear em avanço rápido.
Parâmetros:
X, Y, Z...
Coordenadas do ponto final.
Comando Modal.
Interpolação Linear com até 6 eixos.
Avanço rápido calculado pela interpolação dos parâmetros de velocidade
máxima dos eixos, dependendo do movimento.
1.5 - Interpolação Linear (G1)
G1 X10 Y10 Z0 F1000
X20 Y30
G1: Executa movimento linear no avanço programado.
Parâmetros:
X, Y, Z...
F
Coordenadas do ponto final.
Avanço programado (mm/min, mm/rot).
Comando Modal (posicionamentos seguintes podem ter somente as
coordenadas).
Interpolação Linear com até 6 eixos.
Caso não seja programado o avanço (F) no bloco, vale o último programado.
No exemplo acima, o 2º posicionamento (X20 Y30) também é uma
interpolação linear com avanço F1000 (modal).
V1.00
7
Manual de Programação - CNC Proteo
MCS Engenharia
1.6 - Interpolação Circular (G2 / G3)
G0 X100 Y100 Z0
G2 G17 X110 Y100 I5 J0 F1000
G3 G18 X110 Z10 I0 K5
G2 G17 X100 Y100 R5
(3)
(1)
(2)
G2: Executa movimento circular horário no avanço programado com centro do
círculo ou raio definido.
G3: Executa movimento circular anti-horário no avanço programado com
centro do círculo ou raio definido.
Parâmetros:
= Z)
X, Y, Z
I, J, K
Coordenadas do ponto final do círculo.
Coordenadas do centro do círculo (I = X, J = Y, K
R
F
Valores incrementais em relação ao ponto inicial
do círculo (ponto final do último movimento).
Define raio do círculo.
Avanço programado (mm/min, mm/rot).
Comando Modal (posicionamentos seguintes podem ter somente as
coordenadas).
Interpolação Circular somente em um dos 3 planos definidos (XY, ZX, YZ).
Caso não seja programado o avanço (F) no bloco, vale o último programado.
Plano da circular pode ser definido no mesmo bloco ou anteriormente.
No exemplo acima:
(1) = Interpolação circular horária no plano XY (G17) com centro do círculo
definido.
(2) = Interpolação circular anti-horária no plano ZX (G18) com centro do
círculo definido.
(3) = Interpolação circular horária no plano XY (G17) com raio definido.
1.7 - Interpolação Helicoidal (G2 / G3)
G0 X100 Y100 Z0
G2 G17 X110 Y100 Z20 I5 J0 F1000
G2: Executa movimento helicoidal (interpolação circular horária no plano
definido com interpolação linear com eixo perpendicular) .
G3: Executa movimento helicoidal (interpolação circular anti-horária no plano
definido com interpolação linear com eixo perpendicular) .
Parâmetros:
X, Y, Z
8
Coordenadas do ponto final da hélice.
V1.00
MCS Engenharia
Manual de Programação - CNC Proteo
I, J, K
Coordenadas do centro do círculo no plano (I = X, J = Y, K = Z)
Valores incrementais em relação ao ponto inicial da hélice (ponto final do
último movimento).
R
F
Define raio do círculo no plano.
Avanço programado (mm/min, mm/rot).
Comando Modal (posicionamentos seguintes podem ter somente as
coordenadas).
Interpolação Helicoidal é composta por uma interpolação circular em um dos 3
planos definidos (XY, ZX, YZ) interpolando linearmente com um eixo
perpendicular (X,Y ou Z).
Nesse bloco (G2/G3) são definidos os 3 eixos (X,Y,Z) e o plano da circular
pode ser definido nesse mesmo bloco ou anteriormente.
Caso não seja programado o avanço (F) no bloco, vale o último programado.
No exemplo acima:
- Movimento circular em XY com movimento do eixo perpendicular Z.
1.8 - Tempo de Espera (G4)
G4 X10
ou
G4 F10
G4 X: Tempo de Espera na execução do programa em segundos(s).
ou
G4 F: Tempo de Espera na execução do programa em segundos(s).
Parâmetros:
X ou F
Tempo em segundos(s).
1.9 - Desvio (G4)
G4 H5
N01
...
N05
G0 X0 Y0
G4 H: Desvio incondicional p/ “label” desejado.
Parâmetros: H
V1.00
Número do “label” a ser desviado.
9
Manual de Programação - CNC Proteo
MCS Engenharia
Ao executar G4 H5 programa desvia p/ bloco seguinte ao “label” 5 (N05), ou seja,
executa G0 X0 Y0.
1.10 - Fator de Escala (G5)
G5 X2 Y-2 Z-1
G0 X10 Y10 Z10
G5 XYZ: Fator de Escala das coordenadas dos eixos (XYZ).
Parâmetros: XYZ
com sinal.
Valores do fator de escala em ponto flutuante
Valores do fator de escala se referem ao zero peça.
No exemplo:
- Posicionamento será p/ X20 Y-20 Z-10.
Para fazer espelhamento programar o valor do eixo que se deseja espelhar com
o valor negativo. Se não deseja utilizar escala, somente o espelhamento,
programe os eixos desejados com o valor -1.
1.11 - Rotação de Coordenadas (G5)
G5 A45
G0 G17 X20
G5 A: Rotação do plano cartesiano das coordenadas em graus.
Parâmetros: A
Ângulo de rotação em graus.
Rotação das coordenadas se refere ao zero peça.
Plano de trabalho (XY, ZX, YZ) define o plano de rotação das coordenadas.
No exemplo:
- Rotação do plano XY em 45º.
- Posicionamento será p/ X14.142 Y14.142.
1.12 - Reset Expressão (G6)
Incluir descrição.
1.13 - Sistema de Coordenadas: Cartesianas (G15) / Polares
(G16)
Primeiramente deve ser selecionado o plano desejado, com isso o primeiro eixo
selecionado deve conter a informação sobre o comprimento (raio) e o segundo
10
V1.00
MCS Engenharia
Manual de Programação - CNC Proteo
eixo deve conter o valor do ângulo (em graus), conforme podemos ver na tabela
abaixo.
Código G
do Plano
G17
G18
G19
Plano
selecionado
XY
ZX
YZ
Primeiro eixo
(Raio)
X
Z
Y
Segundo eixo
(Ângulo)
Y
X
Z
Exemplo:
:G0 X0 Y0
:G17
:G16
:X10 Y45
:G15
;coordenada inicial
;seleciona plano xy
;seleciona coordenadas polares
;movimento com raio igual a 10mmm e ângulo 45º
;seleciona coordenadas cartesianas
1.14 - Unidades: Milímetros (G21) / Polegadas (G20)
G21: Dados em milímetros
G20: Dados em polegadas
Parâmetro Geral do CNC define valor padrão (mm ou polegadas).
Programa pode alterar unidade com os comandos G20 e G21 que são
modais.
1.15 - Round / Chanfro (G7)
G0 X0 Y0 Z0
G1 X20 F1000
G7 B5
(1)
G1 Y20
G7 B-5
(2)
G1 X0
G7 B: Arredondamentos (B>0) ou Chanfros (B<0) nos cantos.
Parâmetros: B
Valor do chanfro.
B>0: Valor do raio de arredondamento / B<0:
No exemplo:
(1)= Arredondamento de raio 5 no canto (X20,Y0).
(2) = Chanfro de valor 5 no canto (X20,Y20).
V1.00
11
Manual de Programação - CNC Proteo
MCS Engenharia
1.16 - Ferramenta: Compensação de comprimento(G43 / G49)
G43: Liga compensação de comprimento de ferramenta.
G49: Desliga compensação de comprimento de ferramenta.
Default: G49 (compensação desligada)
G43 - ao selecionar uma ferramenta (Dn), a compensação de comprimento é
ligada automaticamente.
Dados da Ferramenta são programados no Editor de Ferramentas.
Comando modal.
Fresa:
- Compensação do comprimento (L) no eixo perpendicular ao plano de
trabalho (XY, ZX, YZ).
Torno:
- Compensação de comprimento (Lx, Lz) nos eixos do plano de trabalho
(normalmente ZX).
- Compensação de raio ativa: Raio da ferramenta (R) deve ser considerado
de acordo com o lado de corte da ferramenta (Lc).
1.17 - Ferramenta: Compensação de raio (G40 / G41 / G42)
D1
G0 X10 Y-10 Z0
G41 G1 Y0 F1000
X0
Y20
X20
Y0
X10
G40 Y-10
G40: Desliga compensação de raio de ferramenta.
G41: Liga compensação de raio de ferramenta à esquerda da peça.
G42: Liga compensação de raio de ferramenta à direita da peça.
Default: G40
Raio da ferramenta é compensado nos eixos do plano de trabalho, de acordo
com a geometria do movimento.
Dados da Ferramenta são programados no Editor de Ferramentas.
Comando modal.
A compensação de raio deve ser ligada (G41/G42) no movimento de
aproximação da peça e desligada (G40) no movimento de afastamento da
peça.
12
V1.00
MCS Engenharia
Manual de Programação - CNC Proteo
Os comandos podem estar no mesmo bloco desse movimento ou isolados
no bloco anterior.
No exemplo:
- Considerando raio de ferramenta de 5mm, os pontos do centro da
ferramenta serão:
(+10,-10) -> (+10,-5) -> (-5,-5) -> (-5,+25) -> (+25,+25) -> (+25,-5) -> (+10,-5) ->
(+10,-10)
1.18 - Aproximação e Saída Tangenciais (G7 / G40 / G41 / G42)
D1
G0 X10 Y-20 Z0
G41 G1 Y0 F1000
G7 B8
X0
Y20
X20
Y0
X10
G7 B8
G40 Y-20
Aproximação Tangencial (G41 ou G42 + G7 B):
- Liga compensação de raio de ferramenta à esquerda (G41) ou direita
(G42) seguido de movimento de round.
Saída Tangencial (G7 B + G40):
- Movimento de round seguido de desliga compensação de raio de
ferramenta.
No exemplo:
- Considerando raio de ferramenta de 5mm e round de 8mm (B8).
- Os pontos do centro da ferramenta na aproximação serão:
(+10,-20) -> (+13,-8) -> round(+10,-5) -> (-5,-5) -> (-5,+25) ...
- Os pontos do centro da ferramenta na saída serão:
... (+25,-5) -> (+10,-5) -> round(+7,-8) -> (+10,-20)
1.19 - Movimento Preciso (G61)
G61: define movimento preciso modal, ou seja, ganhos são ajustados para
que o movimento tenha o menor LAG possível, aumentando a precisão da
peça.
Default: G61
Comando Modal.
V1.00
13
Manual de Programação - CNC Proteo
MCS Engenharia
1.20 - Movimento Contínuo - Transição Macia de Cantos (G64)
G64: define movimento contínuo com transição macia de cantos, ou seja,
ganhos são ajustados permitindo que o movimento tenha uma tolerância de
contorno definida por parâmetro.
Default: G61 (movimento preciso)
Comando Modal.
Parâmetro de Eixo define a tolerância de contorno (G64) p/ um canto de 90º
com avanço F1000.
1.21 - Parada Precisa No Bloco (G9)
G9: parada precisa no bloco definido, ou seja, movimento só é concluído
após posição real estar dentro da janela de posicionamento definida por
parâmetro.
Default: G61 (movimento preciso)
Comando só vale para o bloco.
Parâmetro de Eixo define a janela de posicionamento.
Ajuste de melhor precisão da peça.
1.22 - Avanço: mm/min ou rotação/min (G94)
G94
G1 X0 F1000
G94: Programa avanço em mm/min (linear) ou rpm (rotativo).
Default: G94
Comando Modal.
1.23 - Avanço: mm/rotação (G95)
G95
M3 S100
G1 X20 F0.5
G95: Programa avanço em mm/rotação.
Default: G94
Comando Modal.
1.24 - Spindle: Giro Do Eixo Árvore (M3 / M4 / M5 / S)
14
V1.00
MCS Engenharia
Manual de Programação - CNC Proteo
M3 S1000
G95
G1 X20 F0.5
M5
S200
M4
G1 X0 F1
M5
M3:
M4:
M5:
S:
Giro do eixo árvore no sentido horário na rotação programada.
Giro do eixo árvore no sentido anti-horário na rotação programada.
Pára eixo árvore.
Programa rotação em rpm.
Caso a rotação S não seja programada no mesmo bloco do comando de giro
(M3/M4), a última rotação S programada será utilizada.
Os comandos de giro do eixo árvore devem ser autorizados pelo PLC.
1.25 - Spindle: Velocidade De Corte Constante (G92 / G96 / G97)
G0 X30
G92 S400
G96 M3 S10
G95 G1 X0 F2.5
G97 S100
M5
(1)
(2)
(3)
(4)
G92 S: Máxima RPM em velocidade de corte constante.
G96 S: Ativa velocidade de corte constante e programa a velocidade em
metros/min.
G97 S: Desativa velocidade de corte constante e programa a rotação em
rpm no modo normal.
Default: G97
G96 / G97 são comandos modais.
Nesse modo, a rotação do eixo árvore é calculada a partir do diâmetro da
peça (eixo X). Quanto menor o diâmetro, maior a rotação, sendo esta
limitada pela máxima RPM (G92).
Para programar a máxima RPM em velocidade de corte constante G92 e S
devem estar no mesmo bloco.
Para programar a velocidade de corte constante G96 e S devem estar no
mesmo bloco.
Se for programado somente o S no bloco, o valor será a rotação em rpm no
modo normal.
No exemplo:
V1.00
15
Manual de Programação - CNC Proteo
MCS Engenharia
(1) - Programa 400 rpm na máxima RPM em velocidade de corte constante.
(2) - Programa 10 m/min na velocidade de corte constante e gira M3 nesse
modo, considerando posição do eixo X atual (X30).
(3) - Movimenta X p/ 0 com avanço de 2.5 mm/rot (X diminuindo -> rotação
aumentando -> avanço F aumentando).
(4) - Desativa velocidade de corte constante e programa 100 rpm na rotação
S no modo normal.
1.26 - Spindle: Parada Indexada (M19)
M3 S200
G0 Z0
M19 S90
G0 Z20
M20
M19: Parada Indexada do eixo árvore no ângulo programado.
M20: Cancela parada indexada.
S:
Programa ângulo da parada indexada em graus.
Parâmetros:
- Ângulo do M19 (PLC).
- Velocidade em M19 (Eixo).
- Janela de posicionamento p/ M19 (Eixo).
- Ganhos do PID (Eixo).
Movimento controlado pelo PLC (M19 precisa de autorização do PLC).
Caso não seja programado S no bloco do M19, valor do ângulo é
considerado 0.
Ao receber código M19, PLC pode programar um novo ângulo antes de
autorizar a parada indexada no serviço do GeralS. Nesse caso, o ângulo S
do programa é descartado.
Caso o eixo árvore já esteja em movimento, desacelera até parar na posição
desejada.
Caso eixo árvore esteja parado, gira o eixo até a posição desejada, no último
sentido programado e limitando a rotação pelo parâmetro de velocidade em
M19.
M20 cancela parada indexada e também o último giro programado (M3/M4),
ou seja, o eixo árvore fica parado.
1.27 - Spindle: Posicionamento Com Eixo Árvore (M119)
M4 S400
...
M5
16
V1.00
MCS Engenharia
Manual de Programação - CNC Proteo
M119
G0 X0 C0
G1 C400 F100
M120
M119: Transforma eixo árvore em um eixo rotativo p/ posicionamentos no
programa.
M120: Cancela modo posicionamento e devolve controle p/ GeralS
(M3/M4/M5).
Parâmetros:
- Definir canal de execução do eixo árvore.
- Letra do eixo usada no posicionamento.
- Ajustar velocidade máxima do eixo (rápido) em rpm.
- Ajustar p/ malha fechada (ganhos do PID).
Default: M120 (GeralS)
Comando Modal.
Programa deve chamar M119 com eixo árvore parado.
Ao final dos posicionamentos desejados, programa deve chamar M120 p/
cancelar esse modo e voltar ao funcionamento normal do eixo árvore.
No modo M119, o programa pode usar o eixo árvore como um eixo rotativo
com a letra definida no parâmetro e fazer posicionamentos individuais ou
interpolados com outros eixos do programa.
No caso de posicionamento só com eixos rotativos, o avanço F é
programado em rpm.
1.28 - Spindle: Eixo Árvore Auxiliar (M45)
M45 M3 S200
...
M45 M5
M45: Comandos nesse bloco são atribuídos ao eixo árvore auxiliar.
Parâmetros: M3
M4
M5
S
Giro do eixo árvore auxiliar no sentido horário.
Giro do eixo árvore auxiliar no sentido anti-horário.
Pára eixo árvore auxiliar.
Programa rotação do eixo árvore auxiliar em rpm.
M45 só vale para o bloco.
Comandos do eixo árvore auxiliar são passados ao PLC:
- Códigos M são somados a um offset (450): M3 -> M453 , M4 -> M454 ,
M5 -> M455
- Valor do S é passado numa variável adicional p/ código S do eixo auxiliar.
V1.00
17
Manual de Programação - CNC Proteo
MCS Engenharia
Comando M5 sozinho pára os eixos árvores principal e auxiliar.
PLC é responsável pelo controle do eixo árvore auxiliar.
1.29 - Movimento De Rosca: Passada Única (G32)
M3 S100
G0 X50 Z10
G32 X50 Z-20 F2
(1)
G0 X60
...
G0 X50 Z5
G32 X50 Z-20 F2
(2)
G32 X70 Z-40 U2.5 W5 F1 (3)
G0 X80
G32: movimento de rosca (passada única) paralela ou cônica, com passo
fixo ou variável, ângulo de entrada, saída de “pullout”.
Parâmetros: X,Z
F
U
W
A
P
Coordenadas da posição final da rosca.
Passo da rosca (mm/rotação).
Distância transversal (X) p/ saída de “pullout”.
Distância longitudinal (Z) p/ saída de “pullout”.
Ângulo de entrada em graus.
Incremento do passo por volta.
Eixo árvore deve estar rodando ao chamar a rosca.
Movimento de rosca vale só no bloco (não é modal).
Tipos de Rosca:
- Paralela: coordenada transversal (X) inicial igual a final.
- Cônica: coordenada transversal (X) inicial diferente da inicial.
- Passo Fixo: passo programado (F) é o mesmo durante toda a rosca.
- Passo Variável: a cada volta do eixo árvore, passo atual é incrementado por
P.
- Ângulo de Entrada: pode ser programado ângulo de entrada da rosca
diferente de 0.
- Saída de “pullout”: rosca termina com um movimento de puxada no eixo
transversal (X).
No exemplo (considerando X em diâmetro):
(1) - Movimento de rosca paralela com passo de 2 mm por volta do eixo
árvore.
(2) - Igual a rosca (1) porém encadeada com rosca (3).
(3) - Movimento de rosca cônica com passo de 1 mm e saída de “pullout”
iniciando a uma distância de 5 mm em Z do final da rosca.
- Movimentos: (50,-20) -> (65,-35) -> (75,-40)
18
V1.00
MCS Engenharia
Manual de Programação - CNC Proteo
1.30 - Movimento Com Transição De Avanço (M102)
G0 X0
G1 X20 F2000 M102
G1 X80 F2000
G1 X100 F100 E1
G1 X105
M102 ou E: movimento do bloco com transição de avanço (último avanço ->
avanço programado no bloco).
Comando só vale p/ o bloco.
Precisa ser programado o avanço F no bloco.
Movimento inicia com avanço anterior e termina com avanço programado.
No exemplo:
- X0 -> X20: transição de avanço de aceleração (F0 -> F2000).
- X20 -> X80: avanço constante (F2000).
- X80 -> X100: transição de avanço de desaceleração (F2000 -> F100).
- X100 -> X105: avanço constante (F100).
1.31 - Acoplamento Entre Eixos / Eixo Virtual
Por enquanto, somente através do Serviço de Acoplamento do PLC.
V1.00
19
Manual de Programação - CNC Proteo
MCS Engenharia
2 - Programação MCS
2.1 - Comandos De Movimento
Primeiramente verifique se na tela onde está sendo feito o programa, a
linguagem que está sendo utilizada é a MCS (mostrada no primeiro item a
esquerda da barra azul superior). Se estiver em ISO pressionar a tecla
e
automaticamente mudará para MCS.
2.1.1 - Movimento Simples (um eixo por vez)
Com esta sentença programa-se o movimento de um eixo para a cota desejada,
em modo absoluto ou incremental, a velocidade de avanço em mm/min ou
mm/rotação e uma função auxiliar.
Para inicializar esta função, pressionar a tecla referente ao eixo que se deseja
movimentar( ,
ou ), em seguida digitar a posição desejada seguida do
avanço.
Pressione a tecla referente a qualquer um dos eixos ( ,
ou ),. A seguinte
janela será aberta.
Pressionar
20
e a seguinte janela será aberta.
V1.00
MCS Engenharia
Manual de Programação - CNC Proteo
Digite o valor para o campo desejado e a cada campo tecle , para finalizar o
comando tecle .
Para selecionar o modo incremental pressione a tecla , com isso a letra “A” após
o eixo X (ou o eixo que está sendo utilizado) será mudada para “I”.
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
POS X A 100.000 ; movimento simples eixo X move para cota absoluta 100.000
POS Y I
1.000 ; movimento simples eixo Y movimento incremental de 1.000
POS Z A - 20.000 F 2000 ; move eixo Z para -20.000 com avanço 2000
mm/minuto.
POS X - 20.000 ; move eixo X para -20.000, ABS x INC depende do estado
modal (G90/G91)
2.1.2 - Interpolações Lineares (movimento simultâneo de eixos)
Com esta sentença programa-se o movimento simultâneo de dois ou mais eixos
em interpolação linear para um ponto desejado, em modo absoluto ou incremental,
a velocidade de avanço e uma função auxiliar.
Pressione as teclas referentes aos eixos desejados ( e , por exemplo), a
seguinte janela será aberta.
Pressione
, a seguinte janela será aberta.
Digite o valor para cada campo, tecle
ou com o cursor, selecione outros campos
como F ou M se necessário. Para finalizar o comando tecle .
V1.00
21
Manual de Programação - CNC Proteo
MCS Engenharia
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
POS L X A 10.000 Y A 20.000 ; movimenta eixos X e Y em interpolação linear
POS L X A 10.000 Z A 20.000 F1000 ; move eixos X e Z com avanço 1000
mm/min.
POS L X A 10.000 Z A 20.000 F 0.75 ; move eixos X e Z com avanço 0.75
mm/rotação.
POS T X I 10.000 Y I 20.000 Z I 30.000 F1000 ; move 3 eixos X , Y e Z
cotas incrementais
POS L X A 1.000 Y A 2.000 Z A 3.000 /
U A 4.000 V A 4.000 W A 6.000 F1000 ; linear com 4 ou mais eixos
X,Y,Z,U,V,W
2.1.3 - Interpolações Circulares (movimento simultâneo de eixos)
2.1.3.1 - Interpolações Circulares (centro definido via POLO)
Na linguagem MCS, para executar este tipo de função, devemos primeiramente
definir o pólo.
Pressione a tecla
. A seguinte janela será aberta.
Digite as teclas dos eixos que compõem o plano onde será realizada a
interpolação circular, seguido de . A seguinte janela será aberta.
Digite os valores para cada campo e em seguida pressione
Em seguida pressione
22
.
e a seguinte janela será aberta.
V1.00
MCS Engenharia
Manual de Programação - CNC Proteo
Pressione as teclas dos eixos do plano no qual será executada a interpolação e
tecle , a seguinte janela será aberta.
Digite os valores do ponto final e se necessário outras funções. Deixar o campo
R(raio) vazio.
Para finalizar pressione
.
Nesta sentença programa-se além dos pontos do plano de interpolação, o sentido
"H" horário ou "AH" anti-horário de interpolação, o avanço e uma função auxiliar
M. A escolha do sentido de interpolação é feita teclando-se 1 para sentido horário
ou 0 para sentido anti-horário.
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
POL X A 0.000 Y A 0.000 ; centro para circulo X,Y em (0,0)
POS C H X A 10.000 Y A 20.000 ; move eixos X e Y em circulo sentido
horário
POS C AH X A 10.000 Y A 20.000 ; move eixos X e Y em circulo sentido antihorário
POS C H X A 10.000 Z A 20.000 F1000 ; circular horário X e Z com avanço
1000 mm/min.
POS C AH X I 10.000 Y I 20.000 F0.50 ; circular anti-horário X , Y cotas
incrementais
; com avanço 0.5 mm/rotação.
2.1.3.2 - Interpolações Circulares (centro calculado dado o raio)
Neste caso, o arco de circunferência fica definido pelo ponto atingido antes da
execução da sentença de interpolação circular e pelo ponto final e raio da
circunferência programados nesta sentença.
V1.00
23
Manual de Programação - CNC Proteo
Na linguagem MCS, pressione
MCS Engenharia
e a seguinte janela será aberta.
Pressione as teclas dos eixos do plano no qual será executada a interpolação e
tecle , a seguinte janela será aberta.
Digite os valores do ponto final, o raio e se necessário outras funções.Para
finalizar pressione . Nesta sentença programa-se além dos pontos do plano de
interpolação, o sentido "H" horário ou "AH" anti-horário de interpolação, o avanço
e uma função auxiliar M. A escolha do sentido de interpolação é feita
pressionando a tecla 1 para sentido horário ou a tecla 0 para sentido anti-horário.
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
POS C H X A 10.000 Y A 20.000 R 1000 ; move eixos X e Y em círculo
horário, raio 10.000
POS C AH X I 10.000 Y I 20.000 R 1000 ; move eixos X e Y, cotas
incrementais em círculo
; anti-horário, raio 10.000
POS C H X A 10.000 Y A 20.000 R 1000 F1000 ; move eixos X e Y em
círculo horário,
; raio 10.000, avanço
1000 mm/minuto
POS C H X A 10.000 Y A 20.000 R 1000 F0.500 ; move eixos X e Y em
círculo horário,
; raio 10.000, avanço 0.5
mm/rotação
POS C AH X I 10.000 Y I 20.000 R 1000 ; move eixos X e Y, cotas
incrementais em círculo
; anti-horário, raio 10.000
2.1.3.3 - Interpolações Helicoidais (centro definido via POLO)
24
V1.00
MCS Engenharia
Manual de Programação - CNC Proteo
Para executar este tipo de função, devemos primeiramente, definir o pólo como
visto anteriormente no item Interpolações Circulares 2.1.3.1.
Feito isso, pressione a tecla
e a tecla seqüencialmente, a seguinte janela
será aberta.
Pressione
e a seguinte janela será aberta.
Digite os valores para cada campo e em seguida pressione
R(raio) vazio.
. Deixar o campo
Nesta sentença programa-se além dos pontos do plano de interpolação, o sentido
"H" horário ou "AH" anti-horário de interpolação, o avanço e uma função auxiliar
M. A escolha do sentido de interpolação é feita pressionando a tecla 1 para
sentido horário ou a tecla 0 para sentido anti-horário.
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
POL X A 0.000 Y A 0.000 ; centro para hélice plano X,Y em (0,0)
POS H H X A 10.000 Y A 20.000 Z A 30.000; move eixos X e Y em circulo
sentido horário
; move simultaneamente o eixo
Z da hélice.
POS H AH X A 10.000 Y A 20.000 Z A 30.000; move eixos X e Y em circulo
sentido anti; horário enquanto move o
eixo Z da hélice.
2.1.3.4 - Interpolações Helicoidais (centro calculado dado o RAIO)
Pressione a tecla
V1.00
e a tecla
e a seguinte janela será aberta.
25
Manual de Programação - CNC Proteo
Pressione
MCS Engenharia
e a seguinte janela será aberta.
Digite os valores para cada campo e em seguida pressione
.
Nesta sentença programa-se além dos pontos do plano de interpolação, o sentido
"H" horário ou "AH" anti-horário de interpolação, o avanço e uma função auxiliar
M. A escolha do sentido de interpolação é feita pressionando a tecla 1 para
sentido horário ou a tecla 0 para sentido anti-horário.
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
POS H H X A 10.000 Y A 20.000 Z A 30.000 R 100.000; move eixos X e Y
em circulo sentido
; horário enquanto move simultaneamente o
eixo Z da hélice.
POS H AH X A 10.000 Y A 20.000 Z A 30.000 R 100.000 ; move eixos X e Y
em circulo
; sentido anti-horário enquanto move o eixo
Z da hélice.
2.2 - Ciclos Fixo
2.2.1 - Ciclo - 0 Reset modal
Restabelece as condições modais iniciais do CNC em relação a compensação de
ferramentas, níveis de sub-rotinas, etc. É aconselhável que os programas
comecem com esta sentença para assegurar que as condições modais sejam
restabelecidas no início dos programas principais.
26
V1.00
MCS Engenharia
Manual de Programação - CNC Proteo
Subprogramas e ciclos fixos não podem conter esta sentença, pois o zeramento
do nível de execução de rotinas faz com que o comando não mais retorne ao
programa principal no final destas rotinas.
Programação com teclas
e
.
Formato da sentença:
:CYC CALL 0
; comentários
2.2.2 - Ciclo 1 - Tempo de espera
Neste ciclo programa-se um tempo de espera em unidades de 0,1s.
Inicialização com teclas
e . O comando conduz a entrada de dados na
sequência:
TEMPO ?
Entrar com o valor do tempo de espera, em unidades de 0,1s.
Formato da sentença:
:CYC CALL 1 T 10 ; comentários
Faixa de valores programáveis:
1 a 65.535 (o valor máximo corresponde a 6.553,5 s).
2.2.3 - Ciclo 2 - Atuação de funções auxiliares
Com o ciclo 2 programa-se até três funções auxiliares M, a rotação S, um número
de ferramenta T, um corretor de ferramenta D e inserir um arredondamento ou um
chanfro B entre sentenças de posicionamento.
Inicialização com teclas
e . O comando monta a estrutura do ciclo com todas
as opções de programação e conduz a entrada de dados na sequência:
FUNÇÃO AUXILIAR ?
Caso se deseje programar uma ou mais funções auxiliares na sentença, deve-se
entrar com seu número e teclar ; pode-se programar até 3 funções M na mesma
sentença. Caso contrário teclar ,
ou
até que o cursor se posicione no
campo desejado.
V1.00
27
Manual de Programação - CNC Proteo
MCS Engenharia
NÚMERO DA FERRAMENTA ? (T)
Entrar com o número da ferramenta ou teclar
,
ou
.
DEFINIÇÃO DA FERRAMENTA ? (D)
Digitar o número do corretor da ferramenta ou teclar
,
ou
.
ROTAÇÃO DA ARVORE ? (S)
Entrar com a rotação desejada ou teclar
,
ou
.
ARREDONDAMENTO +B / CHANFRO -B ? (B)
Entrar com um valor positivo para inserção de raios ou negativo para inserção de
chanfros (ver também itens 5.6 e 5.7).
Formato da sentença:
:CYC CALL 2 M 03 M 08 M 90 T 01 D 20 S 200 B -10
; comentários
Faixa de valores programáveis:
- funções M: 00 a 99.
- ferramenta T: 00 a 99.
- corretores D: 00 a 99.
- rotações S: depende de parâmetros de máquina "P 69".
- raios ou chanfros B: +/- 8.000,000
OBSERVAÇÕES:
1. A rotação S é programada diretamente em rpm ou, caso a função auxiliar M58
esteja programada no mesmo bloco, em m/min.
2. O número de ferramenta T representa apenas um código associado à
ferramenta para solicitação de troca, não estando associado a um corretor.
3. O corretor de ferramenta D está associado aos dados de correção de
ferramenta, o que o torna independente do código T, permitindo associar
diversos corretores a um mesmo número de ferramenta T.
2.2.4 - Ciclo 3 – Rosca
28
V1.00
MCS Engenharia
Manual de Programação - CNC Proteo
Com este ciclo programa-se a usinagem de roscas paralelas ou cônicas, com
recuo automático ou não. A usinagem completa de uma rosca é feita
programando-se em sentenças à parte o retorno à posição de início e a
profundidade de cada passada. A MCS possui um ciclo fixo que realiza a
operação completa de rosqueamento (CICLO 33).
Inicialização com teclas
programar:
e
. Nos campos de introdução de dados pode-se
COTA do eixo auxiliar
No caso de roscas paralelas, programar em modo incremental o valor 0 para o
e ;
eixo sem movimento; para isso teclar ,
No caso de roscas cônicas, pode-se entrar com o valor incremental que define a
conicidade.
COTA do eixo principal
No caso de roscas paralelas ou cônicas, programar a cota final do comprimento da
rosca (modo absoluto ou incremental).
PASSO (P)
Entrar com o passo da rosca em mm.
ÂNGULO (A)
Define o ângulo de recuo no caso de recuo automático na saída de rosca. Entrar
com o ângulo de recuo. Caso não se deseje recuo automático teclar ;
AFASTAMENTO (U)
Caso sem recuo automático, teclar . Caso com recuo automático, programar o
início do recuo a partir do ponto final da rosca no eixo de maior deslocamento.
Formato da sentença:
:CYC CALL 3 X I(A)10 Z I(A) -60 P 2.31 A 45 U 2
; comentários
Esta sentença ocupa três passos na memória de programa.
Faixa de valores programáveis:
- cotas: +/-8.000,000 mm
V1.00
29
Manual de Programação - CNC Proteo
MCS Engenharia
- passo de rosca: 0,01 a 65,000 mm
- ângulo de recuo: 0, +/-45 ou +/-60 graus
- início de recuo: 0,001 a 65,000 mm
OBSERVAÇÕES:
1. O máximo valor programável para o passo da rosca é limitado pelas
características da máquina. Porém, dada uma velocidade do eixo árvore, o
máximo passo de rosca possível de ser executado é limitado pela fórmula:
passo (mm) = rápido (mm/min) ÷velocidade da árvore (rpm)
onde o rápido é a máxima velocidade de deslocamento nos eixos da máquina
(dado pelos parâmetros de máquina dos respectivos eixos).
2. O sinal de programação do ângulo de recuo deve ser coerente com o sinal do
movimento incremental de recuo; para roscas externas, o ângulo deve ser
positivo e, para roscas internas, deve ser negativo.
3. Pode-se encadear a execução de roscas programando-se uma sequência de
sentenças de rosca. O comando liga de forma contínua a execução das
sentenças.
4. Através da função auxiliar M79 o passo de rosca programado é multiplicado por
10, ampliando o passo máximo executável para 650mm. Através da função M78
retorna-se à condição normal.
2.2.5 - Ciclo 4 - Translação do sistema de coordenadas
Este ciclo permite deslocar a origem do sistema de coordenadas num dado eixo.
Para se deslocar a origem em mais de um eixo é necessário programar nova
sentença.
e . O comando monta a estrutura do ciclo e conduz a
Inicialização com teclas
entrada de dados na sequência:
EIXO ?
Pressionar a tecla do eixo que se deseja deslocar a origem.
COORDENADA DE PRESET DO EIXO ?
30
V1.00
MCS Engenharia
Manual de Programação - CNC Proteo
Entrar com a nova cota desejada para a posição.
Formato da sentença:
:CYC CALL 4 X(Z) A(I) 10.000
; comentários
Faixa de valores programáveis:
+/- 8.000,000 mm
OBSERVAÇÕES:
1. O deslocamento pode ser programado em modo absoluto ou incremental. Em
modo absoluto o valor programado passa a ser o novo valor de posição para o
eixo correspondente. Em modo incremental o valor programado é somado ao
valor atual de posição no eixo correspondente.
2. Dependendo do valor do parâmetro P50, a execução do ciclo 4 altera o zero
peça corrente.
2.2.6 - Ciclo 5 - Verificação do estado de uma entrada ou saída
Com esta sentença pode-se observar o estado das entradas e saídas do
comando. É possível ainda a programação de um tempo de guarda durante o qual
espera-se que, em funcionamento normal, a referida entrada seja ativada (ou
desativada). Caso não ocorra essa ativação durante o tempo de guarda, o
comando interrompe a execução do programa e sinaliza falha.
Esta sentença pode ser também preparatória para a sentença de salto condicional
(CICLO 6).
Inicialização com teclas
sequência:
e
. O comando conduz a entrada de dados na
OBSERVAR ENTRADA OU SAÍDA ?
Teclar
para observar entradas e
para observar saídas.
STATUS DESEJADO ?
Teclar
para observar o estado “ligado” da entrada ou saída e
"desligado".
V1.00
para o estado
31
Manual de Programação - CNC Proteo
MCS Engenharia
E/S A OBSERVAR ?
Entrar com o número da entrada ou saída que se deseja observar.
TEMPO ?
No caso de simples observação do status da entrada ou saída, deve-se cancelar o
tempo de guarda teclando . Caso se deseje tempo de guarda deve-se entrar
com o valor do tempo de guarda (unidades de 0,1s).
Formato da sentença:
:CYC CALL 5 E(S) ON(OFF) 5 (T 45)
; comentários
Faixa de valores programáveis:
- entradas: 0 a 31
- saídas: 0 a 23
- tempo de guarda: 0 a 65.535
OBSERVAÇÕES:
1. Ao iniciar a execução da sentença de observação do estado de uma entrada
com tempo de guarda o comando verifica seu estado e o compara com o
estado programado na sentença. Caso sejam iguais, o programa passa a
executar a próxima sentença; caso contrário, o comando
permanece
observando a entrada até que seu estado coincida com o programado e, a
seguir, continua a execução do programa. Se, durante o tempo de guarda, o
estado da entrada observada não coincidir com o estado programado, o
comando sinaliza falha e entra em estado de emergência.
2. Programando-se um tempo de guarda igual a zero, a sentença indica qual
entrada ou saída será observada durante uma execução especial do ciclo.
3. A ocorrência de falha é sinalizada através do ERRO 09 - ERRO DE
SUPERVISÃO DE ENTRADA/SAÍDA.
4. Quando o ciclo é preparatório para salto condicional (ver item 5.19.2), o estado
da entrada ou saída não é observado, sendo apenas indicado seu número ao
passo seguinte.
5. Deve-se cancelar o tempo de observação no caso de posicionamento com
observação simultânea de uma entrada (ver item 5.19.1).
32
V1.00
MCS Engenharia
Manual de Programação - CNC Proteo
2.2.7 - Ciclo 6 - Salto a uma marca no programa
Com esta sentença é possível desviar a execução do programa de forma
incondicional ou de acordo com o estado de entradas ou saídas do comando.
Inicialização com teclas
sequência:
e
. O comando conduz a entrada de dados na
TIPO DO JUMP ? NO ENT = JMP; 0=ON; 1=OFF
Teclar para salto caso entrada ou saída ligada;
Teclar para salto caso entrada ou saída desligada;
Teclar para salto incondicional.
NÚMERO DO LABEL ?
Entrar com o número da marca label para a qual a execução do programa deve
saltar caso a condição de salto seja satisfeita.
Formato da sentença:
:CYC CALL 6 J (ON/OFF) 10
; comentários
Faixa de valores programáveis:
1 a 65535
OBSERVAÇÃO:
A sentença de salto condicional deve obrigatoriamente ser precedida por uma
sentença de observação do estado de uma entrada ou saída (CICLO 5 indica
qual entrada ou saída a ser observada).
2.3 - Controle de Fluxo
2.3.1 - Introdução de marcas (Label) nos programas
O comando permite a elaboração de sub-rotinas e repetição da execução de parte
de programas, além da execução de saltos condicionais ou incondicionais. Para
V1.00
33
Manual de Programação - CNC Proteo
MCS Engenharia
isso são necessárias marcas no programa, também chamadas rótulos ou marcas
label.
O programa de uma sub-rotina sempre deverá estar inserido entre duas marcas. A
primeira marca define o número da sub-rotina e o seu início, e a segunda (marca
0, LBS 0 ou M99), o seu fim. Para a repetição de parte do programa, a marca
definirá o ponto a partir do qual o programa será repetido.
Pressione a tecla
. A seguinte janela será aberta.
Entrar com o número da marca que se deseja programar e pressione END.
Faixa de valores programáveis:
0 a 65535.
2.3.2 - Localização de uma marca (Label)
Com o comando nos modos de programação ou execução, pode-se selecionar
diretamente uma dada marca label, mesmo que não se conheça o número da
sentença onde ela está programada. Isto pode ser feito com a busca de uma
marca label.
Tecla até que apareça a janela a seguir.
Digitar o número da marca que se deseja selecionar. Na tela será mostrada a
sentença onde está definida a marca procurada. Caso não haja no programa a
definição da marca procurada, o comando sinaliza “Label não encontrado”.
2.3.3 - Chamada de uma marca (Label)
A execução de uma sub-rotina ou de repetição de parte do programa é feita com
um salto à marca que define o seu início.
Pressione a tecla . A seguinte janela será aberta.
34
V1.00
MCS Engenharia
Manual de Programação - CNC Proteo
Digite o número do label que deseja saltar e tecle . Dessa forma toda vez que o
programa passar por este ponto, efetuará um salto para o label definido, podendo
ser usado para efetuar um looping infinito.
Se quiser que o programa faça um numero finito de repetições ao passar por este
ponto, digite o numero de repetições desejadas em REP. Dessa forma o programa
contará o numero de vezes que passar por esse ponto e ao atingir o numero de
repetições determinado continuará adiante no programa.
Faixa de valores programáveis:
- para o número de marca: 1 a 65535.
- para o número de repetições: 1 a 65535.
2.3.4 - Montagem e execução de sub-rotinas
Uma sub-rotina é iniciada por uma marca LBS SET ou NXXX determinada pelo
usuário e terminada obrigatoriamente por uma marca LBS SET 0 ou M99.
Através de uma chamada LBC CALL a execução do programa é desviada para o
início da sub-rotina chamada. Ao final da sub-rotina (LBS SET 0) a execução do
programa volta para a sentença imediatamente posterior àquela da chamada de
sub-rotina que ocasiona o desvio.
FASES DE EXECUÇÃO
1. O programa é executado normalmente, incluindo sentenças da sub-rotina,
até se encontrar a chamada da sub-rotina.
V1.00
35
Manual de Programação - CNC Proteo
MCS Engenharia
2. A execução do programa é desviada para o início da sub-rotina.
3. A sub-rotina é executada.
4. Ao final da sub-rotina, a execução do programa é desviada novamente para
a sentença imediatamente posterior àquela que originou a chamada da subrotina, e o programa continua.
OBSERVAÇÕES
1. Pode-se encadear sub-rotinas até 8 níveis. Isto significa que, na programação
de uma sub-rotina, pode-se chamar outra, e assim por diante, até um número
máximo de oito encadeamentos.
2. Quando o número máximo de níveis de encadeamento de sub-rotinas for
ultrapassado, o comando sinaliza ERRO 04 - STACK USUÁRIO. Pressionandose a tecla
, o comando
passa a sinalizar ERRO 50 - CÓDIGO
INCOMPLETO. Neste caso sinaliza-se dois erros para que fique bem
caracterizada a ocorrência de um erro de programação (por exemplo, ausência
de marca LBS 0 no final de uma sub-rotina) ou de operação. Com a falha
ERRO 50 sinalizada, somente será possível sair da condição de erro teclandose a sequência , , ,
e . Caso contrário, volta a ser sinalizado ERRO
04.
2.3.5 - Repetição de execução de parte do programa
O início da parte de programa a ser repetida é marcado com LBS SET n. Através
de uma chamada LBR CALL, a execução do programa é desviada para a parte a
ser repetida, tantas vezes quantas foram programadas em REP (item 5.12.3).
FASES DE EXECUÇÃO
1. O programa é executado normalmente até se encontrar a sentença de
repetição de parte do programa.
36
V1.00
MCS Engenharia
Manual de Programação - CNC Proteo
2. Neste ponto a execução do programa é desviada para o início da parte de
programa a ser repetida.
3. A execução da parte do programa é repetida até encontrar-se novamente a
sentença de repetição.
4. Como foram programadas duas repetições e só foi executada uma, a
execução do programa é desviada novamente para o início da repetição.
5. A execução da parte do programa é repetida pela segunda vez e, ao se
encontrar a sentença de repetição, o comando a ignora, prosseguindo
adiante com a execução do programa.
OBSERVAÇÃO:
Caso seja programado um número N de repetições, na realidade a parte de
programa será executada n+1 vezes, pois a primeira vez que ele passa ele não
conta, ele vai contar as próximas n repetições.
2.3.6 - Chamada de sub-programas
A execução de um subprograma é feita com um salto para o subprograma cujo
número está definido na sentença.
Pressione a tecla . A seguinte janela será aberta.
Pressione a tecla
. A seguinte janela será aberta.
Digite o número do programa que deseja executar e para finalizar pressione
V1.00
.
37
Manual de Programação - CNC Proteo
MCS Engenharia
O programa identificado nesta sentença pode estar tanto no diretório em que se
encontra o programa principal, quanto no diretório de subprogramas(SUB). A
sequência de busca do subprograma segue a regra:
1. O comando procura o subprograma no diretório SUB; se encontrar executao; caso contrário passa para 2.
2. O comando procura o subprograma no diretório do programa principal; se
encontrar executa-o; caso contrário sinalizará “Erro na execução”, indicando
“Numero de programa ilegal”.
Faixa de valores programáveis:
1 a 65535.
OBSERVAÇÕES:
1. Quando na execução de um programa, uma sentença de chamada de
subprograma é executada, a execução salta para o subprograma, até o seu
final, quando então retorna automaticamente para a sentença seguinte àquela
da chamada do subprograma.
2. A marca LBS 0 indica o retorno ao programa principal quando não usada em
sub-rotinas dentro do subprograma.
3. Pode ser usado um numero de repetições finitas, sendo necessário preencher
este numero em REP.
Incluir.
2.4 - Funções Matemáticas Especiais
Com o comando na linguagem MCS, ao pressionar
38
a seguinte tela será exibida.
V1.00
MCS Engenharia
Manual de Programação - CNC Proteo
2.4.1 - Função 0 - Atribuição - ATR
Ao escolher a função 0, a seguinte tela será exibida.
A função paramétrica 0 atribui a uma variável H um valor numérico ou o valor de
uma outra variável. Para um valor numérico, com o cursor em P1 digite este
referido valor. Para que ele assuma o valor de uma outra variável, com o cursor
em p1 pressione
duas vezes e digite o numero da variável H.
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
:FUNC 0 ATR P0 #1
P1 10.00000
Esta instrução faz H1=10
2.4.2 - Função 1 - Soma - ADD
Ao escolher a função 1, a seguinte tela será exibida.
V1.00
39
Manual de Programação - CNC Proteo
MCS Engenharia
A função paramétrica 1 realiza a soma entre variáveis H, entre valores numéricos,
ou entre variáveis H e valores numéricos.
Atribui-se à variável escolhida em P0 o resultado da soma entre o conteúdo da
variável em P1 e o conteúdo da variável em P2. Os operandos P1 e P2 podem ser
variáveis H ou valores numéricos.
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
FUNC 1 ADD P0 #2
P1 #7
P2 10.15000
Esta instrução faz H2 = H7 + 10.15
2.4.3 - Função 2 - Subtração - SUB
Ao escolher a função 2, a seguinte tela será exibida.
A função paramétrica 2 realiza a subtração entre variáveis H, entre valores
numéricos, ou entre variáveis H e valores numéricos.
Atribui-se à variável escolhida em P0 o resultado da subtração entre o conteúdo
da variável em P1 e o conteúdo da variável em P2. Os operandos P1 e P2 podem
ser variáveis H ou valores numéricos.
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
40
V1.00
MCS Engenharia
Manual de Programação - CNC Proteo
:FUNC 2 SUB P0 #2
P1 #3
P2 27.00000
Esta instrução faz H2 = H3 – 27
2.4.4 - Função 3 - Multiplicação - MULT
Ao escolher a função 3, a seguinte tela será exibida.
A função paramétrica 3 realiza a multiplicação entre variáveis H, entr0.0e valores
numéricos, ou entre variáveis H e valores numéricos.
Atribui-se à variável escolhida em P0 o resultado da multiplicação entre o
conteúdo da variável em P1 e o conteúdo da variável em P2. Os operandos P1 e
P2 podem ser variáveis H ou valores numéricos.
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
:FUNC 3 MULT P0 #2
P1 #7
P2 3.14150
Esta instrução faz H2 = H7 * 3.1415
2.4.5 - Função 4 - Divisão - DIV
Ao escolher a função 4, a seguinte tela será exibida.
V1.00
41
Manual de Programação - CNC Proteo
MCS Engenharia
A função paramétrica 4 realiza a divisão entre variáveis H, entre valores
numéricos, ou entre variáveis H e valores numéricos.
Atribui-se à variável escolhida em P0 o resultado da divisão entre o conteúdo da
variável em P1 e o conteúdo da variável em P2. Os operandos P1 e P2 podem ser
variáveis H ou valores numéricos. O operando P1 representa do dividendo e o
operando P2 representa o divisor.
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
:FUNC 4 DIV P0 #2
P1 #7
P2 3.14150
Esta instrução faz H2 = H7 / 3.1415
2.4.6 - Função 5 - Valor absoluto - ABS
Ao escolher a função 5, a seguinte tela será exibida.
A função paramétrica 5 atribui a uma variável H o valor absoluto de uma outra
variável H (função matemática módulo) .
Atribui-se à variável P0 o valor absoluto do conteúdo do operando P1.
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
:FUNC 5 ABS P0 #2
P1 #7
Esta instrução faz H2 = ABS (H7 )
42
V1.00
MCS Engenharia
Manual de Programação - CNC Proteo
2.4.7 - Função 6 - Resto de divisão - REST
Ao escolher a função 6, a seguinte tela será exibida.
A função paramétrica 6 atribui a uma variável H o resto da divisão entre variáveis
H, entre valores numéricos, ou entre variáveis H e valores numéricos.
Atribui-se à variável P0 o resto da divisão entre o conteúdo do operando P1 e o
conteúdo do operando P2. O operando P1 representa o dividendo e o operando
P2 representa o divisor.
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
:FUNC 6 REST P0 #2
P1 #7
P2 7.00000
Esta instrução faz H2 = resto ( H7 / 7 )
2.4.8 - Função 7 - Negação - NEG
Ao escolher a função 7, a seguinte tela será exibida.
A função paramétrica 7 inverte o sinal de uma variável H ou de um valor numérico.
Atribui-se à variável P0 o valor inverso do conteúdo da variável P1. Observar que
as funções paramétricas permitem que se realizem operações com uma mesma
variável H em mais de um operando.
V1.00
43
Manual de Programação - CNC Proteo
MCS Engenharia
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
:FUNC 7 NEG P0 #2
P1 #7
Esta instrução faz H2 = - H7
2.4.9 - Função 8 - Raiz quadrada - RAD
Ao escolher a função 8, a seguinte tela será exibida.
A função paramétrica 8 extrai a raiz quadrada de uma variável H ou de um valor
numérico.
Atribui-se à variável P0 o resultado da raiz quadrada do conteúdo da variável P1.
O valor do operando P1 deve ser necessariamente positivo. Caso seja negativo o
valor atribuído ao operando P0 será zero. O valor atribuído ao operando P0 é
sempre o valor positivo da raiz quadrada.
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
:FUNC 8 RAD P0 #2
P1 16.00000
Esta instrução faz H2 = √16
44
V1.00
MCS Engenharia
Manual de Programação - CNC Proteo
2.4.10 - Função 9 - Valor de PI - PI
Ao escolher a função 9, a seguinte tela será exibida.
A função paramétrica 9 atribui o valor de PI (3,1415927) a uma variável H.
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
:FUNC 9 PI P0 #2
Esta instrução faz H2 = 3.1415
2.4.11 - Função 10 - Seno - SEN
Ao escolher a função 10, a seguinte tela será exibida.
A função paramétrica 10 realiza a função trigonométrica seno de uma variável H
ou de um valor numérico.
Atribui-se à variável P0 o seno do ângulo associado a variável P1. Observar que
os valores do operando P1 são tratados em graus.
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
:FUNC 10 SEN P0 #2
P1 #7
Esta instrução faz H2 = seno ( H7 )
V1.00
45
Manual de Programação - CNC Proteo
MCS Engenharia
2.4.12 - Função 11 - Cosseno - COS
Ao escolher a função 11, a seguinte tela será exibida.
A função paramétrica 11 realiza a função trigonométrica cosseno de uma variável
H ou de um valor numérico.
Atribui-se à variável P0 o cosseno do ângulo associado a variável P1. Observar
que os valores do operando P1 são tratados em graus.
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
:FUNC 11 COS P0 #2
P1 #7
Esta instrução faz H2 = cosseno ( H7 )
2.4.13 - Função 12 - Tangente - TAN
Ao escolher a função 12, a seguinte tela será exibida.
A função paramétrica 12 realiza a função trigonométrica tangente de uma variável
H ou de um valor numérico.
Atribui-se à variável P0 a tangente do ângulo associado a variável P1. Observar
que os valores do operando P1 são tratados em graus.
46
V1.00
MCS Engenharia
Manual de Programação - CNC Proteo
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
:FUNC 12 TAN P0 #2
P1 #7
Esta instrução faz H2 = tangente ( H7 )
2.4.14 - Função 13 - Arco tangente - ATG
Ao escolher a função 13, a seguinte tela será exibida.
A função paramétrica 13 realiza a função trigonométrica arco tangente de uma
variável H ou de um valor numérico.
Atribui-se à variável P0 a arco tangente do ângulo associado a variável P1.
Observar que os valores do operando P1 são tratados em graus.
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
:FUNC 13 ATG P0 #2
P1 #7
Esta instrução faz H2 = arcotangente ( H7 )
2.4.15 - Função 14 - Distância - DIST
Ao escolher a função 14, a seguinte tela será exibida.
V1.00
47
Manual de Programação - CNC Proteo
MCS Engenharia
A função paramétrica 14 realiza a operação raiz quadrada da soma do quadrado
de dois valores, que podem ser variáveis H ou valores numéricos (teorema de
Pitágoras).
Atribui-se à variável P0 o valor da raiz quadrada da soma do quadrado do
conteúdo da variável P1 com o quadrado do conteúdo da variável P2.
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
:FUNC 14 DIST P0 #2
P1 #7
P2 #4
Esta instrução faz H2 = √ (H7^2 + H4^2)
2.4.16 - Função 15 - Desvio caso igual - JE
Ao escolher a função 15, a seguinte tela será exibida.
A função paramétrica 15 realizar um desvio condicional na execução de um
programa caso os conteúdos dos operandos P1 e P2 sejam iguais.
A execução do programa é desviada para o rótulo definido em LBL, caso o
conteúdo da variável P1 seja igual a P2. Os operandos P1 e P2 podem ser
variáveis H ou valores numéricos.
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
:FUNC 15 JE LBL 8
P1 #5
P2 7.00000
Esta instrução faz desvio condicional para label 8 caso (H5==7)
48
V1.00
MCS Engenharia
Manual de Programação - CNC Proteo
2.4.17 - Função 16 - Desvio caso diferente - JNE
Ao escolher a função 16, a seguinte tela será exibida.
A função paramétrica 16 realizar um desvio condicional na execução de um
programa caso os conteúdos dos operandos P1 e P2 sejam diferentes.
A execução do programa é desviada para o rótulo definido em LBL, caso o
conteúdo da variável P1 seja diferente do conteúdo da variável P2. Os operandos
P1 e P2 podem ser variáveis H ou valores numéricos.
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
:FUNC 16 JNE LBL 8
P1 #5
P2 7.00000
Esta instrução faz desvio condicional para label 8 caso (H5!=7)
2.4.18 - Função 17 - Desvio caso maior ou igual - JP
Ao escolher a função 17, a seguinte tela será exibida.
A função paramétrica 17 realiza um desvio condicional na execução de um
programa caso o conteúdo do operando P1 seja maior ou igual ao conteúdo do
operando P2.
V1.00
49
Manual de Programação - CNC Proteo
MCS Engenharia
A execução do programa é desviada para o rótulo definido em LBL, caso o
conteúdo da variável P1 seja maior ou igual ao conteúdo da variável P2. Os
operandos P1 e P2 podem ser variáveis H ou valores numéricos.
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
:FUNC 17 JP LBL 8
P1 #5
P2 7.00000
Esta instrução faz desvio condicional para label 8 caso (H5>=7)
2.4.19 - Função 18 - Desvio caso menor - JN
Ao escolher a função 18, a seguinte tela será exibida.
A função paramétrica 18 realiza um desvio condicional na execução de um
programa caso o conteúdo do operando P1 seja menor ao conteúdo do operando
P2.
A execução do programa é desviada para o rótulo definido em LBL, caso o
conteúdo da variável P1 seja menor ou igual ao conteúdo da variável P2. Os
operandos P1 e P2 podem ser variáveis H ou valores numéricos.
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
:FUNC 18 JN LBL 8
P1 #5
P2 7.00000
Esta instrução faz desvio condicional para label 8 caso (H5<7)
50
V1.00
MCS Engenharia
Manual de Programação - CNC Proteo
2.4.20 - Função 19 - Leitura de uma posição de memória - PLCR
Ao escolher a função 19, a seguinte tela será exibida.
A função paramétrica 19 permite que se transfira um valor numérico de uma
memória da interface do comando para uma variável H.
Transfere-se para a variável P0 o conteúdo da memória M do PLC (valor inserido
em P1).
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
:FUNC 19 PLCR P0 #2
P1 M200
Esta instrução faz leitura da memória do PLC, endereço = 200
2.4.21 - Função 20 - Escrita em posição de memória - PLCW
Ao escolher a função 20, a seguinte tela será exibida.
A função paramétrica 20 permite que se transfira um valor numérico ou o conteúdo
de uma variável H para a memória do PLC. Por exemplo, se o conteúdo da
variável P1 for 19, sua transferência para a memória M24 do PLC bloqueia o
potenciômetro de avanço em 100%.
Transfere-se para a memória M do PLC (valor inserido em P0) o conteúdo da
variável P1.
V1.00
51
Manual de Programação - CNC Proteo
MCS Engenharia
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
:FUNC 20 PLCW P0 #2
P1 M200
Esta instrução faz escrita na memória do PLC, endereço = 200
2.4.22 - Função 21 - Leitura de um parâmetro de máquina P - PARR
Ao escolher a Função 21, a seguinte tela será exibida.
A Função paramétrica 21 permite que se transfira um valor numérico de um
parâmetro de máquina P para uma variável H.
Transfere-se para a variável P0 o conteúdo do parâmetro definido na variável P1.
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
:FUNC 21 PARR P0 #2
P1 P 100
Esta instrução faz escrita na memória do PLC, endereço = 100 , valor H2
2.4.23 - Função 22 - Leitura de dados de ferramenta - TDFR
Ao escolher a função 22, a seguinte tela será exibida.
52
V1.00
MCS Engenharia
Manual de Programação - CNC Proteo
A função paramétrica 22 permite a transferência do valor de um corretor para uma
variável H. O operando P0 é a variável H destino, o operando P1 indica o número
do corretor que se deseja ler e o operando P2 indica qual o campo de correção
deve ser transferido. Os campos de correção são assim definidos:
campo 1: primeiro comprimento da ferramenta
campo 2: raio da ferramenta
campo 3: segundo comprimento da ferramenta
campo 4: lado de corte da ferramenta
Os campos 3 e 4 somente são ativos no caso de ferramentas tipo "torno".
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
:FUNC 22 TDFR P0 #7
P1 8
P2 2
Esta instrução faz leitura de dado de corretor de ferramenta: H7 = campo 2 (raio)
do corretor D8
2.4.24 - Função 23 - Escrita em dados de ferramenta - TDFW
Ao escolher a função 23, a seguinte tela será exibida.
A função paramétrica 23 permite a transferência do conteúdo de uma variável H
para um campo de corretor de ferramenta. O operando P0 é a variável H cujo
conteúdo deve ser transferido, o operando P1 indica o número do corretor a ser
alterado e o operando P2 indica o campo de correção destino da transferência.
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
V1.00
53
Manual de Programação - CNC Proteo
MCS Engenharia
:FUNC 23 TDFW P0 #7
P1 8
P2 2
Esta instrução faz escrita no dado de corretor de ferramenta: campo 2 (raio) do
corretor D8 = H7
2.4.25 - Função 24 - Expressão geral
Ao escolher a função 24, a seguinte tela será exibida.
A função paramétrica 24 permite inserir uma expressão ao programa. Esta
expressão atribui seu resultado final a uma variável H.
Inserir primeiramente a variável H que onde será salvo o resultado da expressão.
Depois disso, inserir a expressão desejada.
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
:#2
= #3 + [4 * #5 / #8]
Executa a expressão H2=H3+(4*H5/H8)
2.4.26 - Função 25 - Expressão condicional com expressão - IF[ ] THEN[ ]
Ao escolher a função 25, a seguinte tela será exibida.
54
V1.00
MCS Engenharia
Manual de Programação - CNC Proteo
A função paramétrica 25 permite executar uma expressão, caso a condição
definida seja satisfeita.
Inserir a expressão que será utilizada para a verificação dentro dos colchetes.
Note que quando se abre a tela a condição inicial é para verificar igualdade, mas
pode ser verificado também se é diferente, maior que, maior que ou igual, menor
que e por ultimo menor que ou igual. Feito isso inserir uma expressão com as
mesmas características da expressão vista no item 5.6.25.
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
:IF [ #2 == 3 ] THEN #0 = 5
se H2 igual a 3 o programa executa a expressão H0 =5
2.4.27 - Função 26 - Expressão condicional com salto - IF[ ]THEN GOTO
Ao escolher a função 26, a seguinte tela será exibida.
A função paramétrica 26 permite executar um salto para um determinado label do
programa, caso a condição definida seja satisfeita.
Inserir a expressão que será utilizada para a verificação dentro dos colchetes.
Note que quando se abre a tela a condição inicial é para verificar igualdade, mas
pode ser verificado também se é diferente, maior que, maior que ou igual, menor
que e por ultimo menor que ou igual. Feito isso inserir o numero do ... que se
deseja saltar.
Depois de efetuado esta seqüência, a sentença aparecerá da seguinte forma no
programa:
:IF [ #2 == 3 ] THEN GOTO 10
se H2 for igual a 3 salta para o label 10
V1.00
55
Manual de Programação - CNC Proteo
MCS Engenharia
3 - Funções auxiliares
3.1 - Parada de Programa Incondicional - M00
Função usada para parada de programa incondicional.
3.2 - Parada de Programa Opcional - M01
Função usada para parada de programa de programa opcional.
3.3 - Final de Programa com Reset - M02
Função usada para final de programa com reset.
3.4 - Liga Rotação Sentido Horário - M03
Função usada para ligar eixo árvore no sentido horário.
3.5 - Liga Rotação Sentido Anti-Horário - M04
Função usada para ligar eixo árvore no sentido anti-horário.
3.6 - Desliga Rotação - M05
Função usada para desligar eixo árvore.
3.7 - Troca Automática de Ferramenta - M06
Função usada para troca automática de ferramentas.
3.8 - Liga Refrigeração - M07
Função usada para ligar refrigeração.
3.8 - Liga Bomba de Refrigeração - M08
Função usada para ligar bomba de refrigeração
3.10 - Desliga Bomba de Refrigeração - M09
Função usada para desligar bomba de refrigeração.
3.11 - Parada Orientada - M19
Função usada para efetuar uma parada orientada.
3.12 - Fim de Programa com Reset e Retorno ao Início - M30
Função usada para finalizar programa com reset e retorno ao início do mesmo.
3.13 - Eixo Árvore Auxiliar - M45
Função usada para comandar eixo árvore auxiliar.
3.14 - Libera POT F, POT S e Feed Hold - M48
Função usada para liberar o POT F, o POT S e o feed hold.
56
V1.00
MCS Engenharia
Manual de Programação - CNC Proteo
3.15 - Fixa POT F, POT S em 100% e Bloqueia Feed Hold - M49
Função usada para fixar POT F e POT S em 100% e bloquear feed hold.
3.16 - Liga Velocidade de Corte Constante - M58
Função usada para ligar velocidade de conte constante.
3.17 - Desliga Velocidade de Corte Constante - M59
Função usada para desligar velocidade de conte constante.
3.18 - Liga Interpolação Spline - M70 (*em implementação)
Função usada para ligar interpolação spline.
3.19 - Desliga Interpolação Spline - M71 (*em implementação)
Função usada para desligar interpolação spline.
3.20 - Desabilita Gráfico - M75
Função usada para desabilitar gráfico.
3.21 - Habilita Gráfico - M76
Função usada para habilitar gráfico.
3.22 - Limpa Gráfico - M77
Função usada para reiniciar o gráfico.
3.23 - Inicia Modo Simulado / Retomada de Ciclo - M78
Função usada para iniciar o modo simulado / retomada de ciclo.
3.24 - Encerra Modo Simulado / Retomada de Ciclo - M79
Função usada para finalizar o modo simulado / retomada de ciclo.
3.25 - Origem Polar no Último Circulo - M80
Função usada para mudar a origem polar para o centro do último circulo.
3.26 - Origem Polar no Último Ponto Final- M81
Função usada para mudar a origem polar para o ponto final do último movimento.
3.27 - Desliga Movimento Rotativo pelo Menor Caminho - M82
Função usada para desligar movimento rotativo pelo menor caminho.
3.28 - Liga Movimento Rotativo pelo Menor Caminho - M83
Função usada para ligar movimento rotativo pelo menor caminho.
3.29 - Liga Compensação de Avanço em Círculos- M84
Função usada para ligar compensação de avanço em círculos.
3.30 - Desliga Compensação de Avanço em Círculos- M85
Função usada para desligar compensação de avanço em círculos.
3.31 - Para Calculo na Frente e Copia Ponto Real - M86
Função usada para calculo na frente e copiar ponto real.
V1.00
57
Manual de Programação - CNC Proteo
MCS Engenharia
3.32 - Para Calculo na Frente e Copia Ponto Teórico - M87
Função usada para calculo na frente e copiar ponto teórico.
3.33 - Escala de Avanço Normal - M88
Função usada para utilizar escala de avanço normal.
3.34 - Escala de Avanço x10 - M89
Função usada para utilizar escala de avanço x10.
3.35 - Desliga Compensação de Raio de Ferramenta - M90
Função usada para desligar compensação de raio de ferramenta (similar ao G40).
3.36 - Liga Compensação de Raio a Direita - M91
Função usada para ligar compensação de raio de ferramenta à direita (similar ao
G42).
3.37 - Liga Compensação de Raio a esquerda - M92
Função usada para ligar compensação de raio de ferramenta à esquerda (similar
ao G41).
3.38 - Liga Auto Inserção de Raios (Remédio ON) - M93
Função usada para ligar auto inserção de raios.
3.39 - Desliga Auto Inserção de Raios (Remédio OFF) - M94
Função usada para desligar auto inserção de raios.
3.40 - Posicionamento Relativo ao G53 - M95
Função usada para posicionamento relativo ao G53
3.41 - Transição Macia de Cantos - M96
Função usada para efetuar transição macia de cantos.
3.42 - Posicionamento Preciso - M97
Função usada para efetuar posicionamento preciso.
3.43 - Chama Último Ciclo Fixo - M98
Função usada para chamar último ciclo fixo.
3.44 - Final de Sub-rotina - M99
Função usada para indicar final de sub-rotina.
3.45 - Mach - Mode Enter - M100
Função usada para efetuar Mach – Mode enter.
3.46 - Normal ISO - Mode Enter - M101
Função usada para efetuar normal ISSO – Mode enter.
3.47 - Transição de avanço no Próximo Movimento- M102
Função usada para efetuar transição de avanço no próximo movimento.
58
V1.00
MCS Engenharia
Manual de Programação - CNC Proteo
3.48 - Desliga Busca de 2 Intersecções - M103
Esta função é utilizada para finalizar a busca por 2 intersecções em um
determinado perfil. Esta função é utilizada após a programação do perfil desejado
3.49 - Limites do Perfil - M104(*em implementação)
Função usada para buscar limites de um determinado perfil programado.
3.50 - Desliga Busca de todas Intersecções - M105
Esta função é utilizada para finalizar a busca por todas as intersecções em um
determinado perfil. Esta função é utilizada após a programação do perfil desejado.
3.51 - Liga Busca de todas Intersecções - M106
Esta função é utilizada para iniciar a busca por todas as intersecções em um
determinado perfil. Numa altura previamente definida.
Esta função é utilizada antes da programação do perfil desejado.
Para o correto funcionamento desta função devemos programar os seguintes
parâmetros:
•
•
•
•
•
•
•
H80 = sobremetal, somado ao raio da ferramenta.
H81 = coordenada perpendicular ao sentido da intersecção (altura do
corte), em mm e em relação ao zero peça.
H82 = eixo da intersecção (corte), sinal define sentido de aproximação
o +1 = X positivo , -1 = X negativo
o +2 = Y/Z positivo , -2 = Y/Z negativo
H83 = número de intersecções ignoradas.
H84 = limite da cota paralela à intersecção (corte), em mm e em relação ao
zero peça.
H85 = máximo número de intersecções a serem buscadas.
H86 = variável H inicial p/ resultados das intersecções.
O resultado desta função é obtido a partir do H inicial definido no H86, e é definido
da seguinte forma:
•
•
•
•
•
•
•
H inicial + 0 : número de intersecções encontradas (-1 = erro / caso
tangente).
H inicial + 1 : coordenada X inicial do perfil, em mm e em relação ao zero
peça.
H inicial + 2 : coordenada Y/Z inicial do perfil.
H inicial + 3 : coordenada X final do perfil.
H inicial + 4 : coordenada Y/Z final do perfil.
H inicial + 5 : início das intersecções (coordenada X da 1a intersecção).
H inicial + 6 : início das intersecções (coordenada Y/Z da 1a intersecção).
Com isso o total de variáveis H usadas é: 5 + (num de intersecções * 2).
V1.00
59
Manual de Programação - CNC Proteo
MCS Engenharia
3.52 - Modo Puncionadeira (PUNCH ON) - M108
Função usada para utilizar o modo puncionadeira.
3.53 - Modo Normal (PUNCH OFF) - M109
Função usada para utilizar modo normal.
3.54 - Busca Limites do Perfil - M110
Função usada para buscar limites de um determinado perfil programado.
3.55 - Liga Busca de 2 Intersecções com Sobremetal - M111
Esta função é utilizada para iniciar a busca por 2 intersecções em um determinado
perfil. Numa altura préviamente definida.
Para o correto funcionamento desta função devemos programar os seguintes
parâmetros:
3.56 - Liga Busca de 2 Intersecções sem Sobremetal - M112
Esta função é utilizada para iniciar a busca por 2 intersecções em um determinado
perfil. Numa altura préviamente definida.
Esta função é utilizada antes da programação do perfil desejado.
Para o correto funcionamento desta função devemos programar os seguintes
parâmetros:
•
•
•
•
•
H80 = sobremetal, somado ao raio da ferramenta.
H81 = coordenada perpendicular ao sentido da intersecção (altura do
corte), em mm e em relação ao zero peça.
H82 = eixo da intersecção (corte), sinal define sentido de aproximação
o +1 = X positivo , -1 = X negativo
o +2 = Y/Z positivo , -2 = Y/Z negativo
H83 = número de intersecções ignoradas.
H84 = limite da cota paralela à intersecção (corte), em mm e em relação ao
zero peça.
O resultado desta função é armazenado nas seguintes variáveis:
•
•
•
•
•
H85 = coordenada X da 1a intersecção, em mm e em relação ao zero peça.
H86 = coordenada Y/Z da 1a intersecção.
H87 = coordenada X da 2a intersecção.
H88 = coordenada Y/Z da 2a intersecção.
H89 = número de intersecções encontradas (-1,0,1,2 ou 3)
o -1 = erro na intersecção (caso tangente)
o 3 = mais de 2 intersecções
3.57 - Habilita Tracking no Monitor de Corte - M113
Função usada para habilitar tracking no monitor de corte.
3.58 - Desabilita Traço G00 no Monitor de Corte - M114
Função usada para desabilitar traço G00 no monitor de corte.
60
V1.00
Download

MCS Engenharia Manual de Programação