Você está na página 1de 60

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 (1)
G53 G00 X20 Y20 (2)
G59
G01 X0 Y0 F1000 (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... Coordenadas do ponto final.


F 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 (1)
G3 G18 X110 Z10 I0 K5 (2)
G2 G17 X100 Y100 R5 (3)

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: X, Y, Z Coordenadas do ponto final do círculo.


I, J, K Coordenadas do centro do círculo (I = X, J = Y, K
= Z)
Valores incrementais em relação ao ponto inicial
do círculo (ponto final do último movimento).
R Define raio do círculo.
F 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 Coordenadas do ponto final da hélice.

8 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 Define raio do círculo no plano.


F 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 Número do “label” a ser desviado.

V1.00 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 Valores do fator de escala em ponto flutuante


com sinal.

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 Plano Primeiro eixo Segundo eixo


do Plano selecionado (Raio) (Ângulo)
G17 XY X Y
G18 ZX Z X
G19 YZ Y Z

Exemplo:

:G0 X0 Y0 ;coordenada inicial


:G17 ;seleciona plano xy
:G16 ;seleciona coordenadas polares
:X10 Y45 ;movimento com raio igual a 10mmm e ângulo 45º
:G15 ;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 B>0: Valor do raio de arredondamento / B<0:


Valor do chanfro.

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: Giro do eixo árvore no sentido horário na rotação programada.


M4: Giro do eixo árvore no sentido anti-horário na rotação programada.
M5: Pára eixo árvore.
S: 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 (1)
G96 M3 S10 (2)
G95 G1 X0 F2.5 (3)
G97 S100 (4)
M5

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 Giro do eixo árvore auxiliar no sentido horário.


M4 Giro do eixo árvore auxiliar no sentido anti-horário.
M5 Pára eixo árvore auxiliar.
S 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 Coordenadas da posição final da rosca.


F Passo da rosca (mm/rotação).
U Distância transversal (X) p/ saída de “pullout”.
W Distância longitudinal (Z) p/ saída de “pullout”.
A Ângulo de entrada em graus.
P 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 e a seguinte janela será aberta.

20 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 e a seguinte janela será aberta.

22 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 anti-
horá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 MCS Engenharia

Na linguagem MCS, pressione 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 . Deixar o campo


R(raio) vazio.

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 e a tecla e a seguinte janela será aberta.

V1.00 25
Manual de Programação - CNC Proteo MCS Engenharia

Pressione 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 e . Nos campos de introdução de dados pode-se


programar:

COTA do eixo auxiliar

No caso de roscas paralelas, programar em modo incremental o valor 0 para o


eixo sem movimento; para isso teclar , e ;

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.

Inicialização com teclas e . O comando monta a estrutura do ciclo e conduz a


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 e . O comando conduz a entrada de dados na


sequência:

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 para o estado


"desligado".

V1.00 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 e . O comando conduz a entrada de dados na


sequência:

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 sub-
rotina, 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. Pressionando-
se 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 teclando-
se 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 executa-


o; 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 a seguinte tela será exibida.

38 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

Você também pode gostar