P. 1
17357614-14504846ApostilaMecatronica

17357614-14504846ApostilaMecatronica

|Views: 119|Likes:
Publicado porgilberto barbosa

More info:

Published by: gilberto barbosa on Oct 04, 2010
Direitos Autorais:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

02/02/2013

pdf

text

original

Os controles MCS aceitam basicamente instruções que podem ser do tipo conversacional (MCS)
ou instruções padronizadas pela norma ISO ou ainda uma mistura delas no mesmo programa.

mecatrônica

286

lSO (códigos G)

MCS conversasional puro

Misto MCS / ISO
no mesmo programa

%100

:%100

:%100

N010 G90

:CYC CALL 0

:CYC CALL 0

N020 G54 X -150 Z -30

:CYC CALL 4 X A -150:CYC CALL 4 Z A -30

:G54 X-150 Z-30

N030 G00 X 100 Y 400 Z150

:POS T X A 100 Y A 400 Z A 150 F0

:G00 X 100 Y 400 Z150

N040 T2 D2 M3 S1200

:CYC CALL 2 M3 S1200 T 2 D2

:T2 D2 M3 S1200

N050 G01 X2.5 Y45 F200

:POS X A 2.5 Y A 45 F200

:POS X A 2.5 Y A 45 F200

N060 Y30

:POS Y A 30

:Y30

N070 Z-80.15

:POS Z A -80.15

:Z-80.15

N080 G91 X10

:POS X I 10

:POS X I 10

N090 G90 Z7 F100

:POS Z A 7 F100

:POS Z A 7 F100

N100 X10 Y10

:POS L X A 10 Y A 10

:POS L X A 10 Y A 10

N110 G02 X-10 Y-10 I -10

:POL X I -10 Y I -10:POS C X A -10

:POL X I -10 Y I -10:POS C X A

J -10 F300 M8

Y A -10 F300 M8

-10 Y A -10 F300 M8

N120 G01 Z10 F200

:POS Z10 F200

:POS Z10 F200

N130 G03 X10 Y10 R20 F400

:POS C X A 10 Y A 10 R20 F400

:POS C X A 10 Y A 10 R20 F400

N140 M30

:CYC CALL 2 M30

:M30

:

:

MCS : Programa típico de uma peça

; uma linha que começa com ; é uma linha de comentário que o CNC despreza
; quando está recebendo o programa via serial RS232
;
%100

; você pode inserir um comentário após uma instrução válida como

; essa, pgm = 100
(um texto entre parênteses é incluído no programa , sem interferir na execução)
(dessa forma podemos identificar o programa , informar o número do desenho , etc.)

Instruções
:
; o caractere : seguido de uma mudança de linha significa fim de programa

mecatrônica287

Programação MCS conversacional :

1 - MOVIMENTO

:POS X A 10

F1000

; move X em absoluto para
10.000 , avanço = 1000mm/min

:POS X A 10

F1.000

; move X em absoluto para
;10.000, avanço = 1mm/
;revolution

; note que números inteiros para
;avanço significam mm/min

; enquanto números com parte
;decimal significam mm/rotação

:POS Y I -20

; move Y em incremental -
20.000, avanço = modal

:POS Z 30

; move Z em Absoluto /
Incremental conforme condição
modal

; anterior 30.000 , avanço modal

:POS X A 10

F200 M3

; move X em absoluto para
10.000, avanço = 200 ,

; função M3

:POS L X A 10 Y I -20

; Interpolação linear, 2 eixos , X
; em absoluto para 10.000 e Y
; em incremental -20

:POS C H X A 10 Y I -20 I -5 J 8 F100

; interpolação circular sentido
; horário,2 eixos, X em absoluto
; para 10.000 e Y em incremental
;-20 , centro em incremental -5
;na direção X e 8 na direção Y,
;avanço = 100

:POS C AH X A 10 Y I -20 R13 F100

; interpolação circular sentido
;anti-horário, 2 eixos, X em
;absoluto para 10.000 e Y em
;incremental -20 , raio = 13.000,
;avanço = 100

mecatrônica

288

:POS T X A 10 Y I -20 Z I 12,34

; interpolação linear, 3 eixos , X
;em absoluto para 10.000 , Y em
;incremental -20, e Z em
;incremental 12.34

:POS T C AH X A 10 Y I -20 Z A 10 R13 F100 M4

; interpolação helicoidal, sentido
;anti-horário, 3 eixos , X em
;absoluto para 10.000 ,Y em
;incremental -20 e Z em absoluto
;para 10, raio = 13.000, avanço
;=100 , função M4

2 - SUB-ROTINAS

:LBL SET 10

; define uma marca no programa
;= 10

:LBS 10

; (idem) marca = 10

:LBS 0

; retorno de uma sub-rotina ,caso
;não houve uma chamada prévia,
;nada faz.

:LBC

CALL 10

; chama uma sub-rotina que
;inicia na marca 10 e que termina
;na marca LBS 0

:LBR CALL 10 REP 5

; repete blocos entre LBS 10 e a
;instrução que iniciou o loop de
;repetição, repetindo esse trecho
;por 5 vezes.

:LBP CALL 100

; chama um outro programa , o
;programa 100, retorna ao final
;do programa 100. O programa
;chamado deve evitar instruções
;como M30, que zera a pilha de
;sub-rotinas.

3 - COMPENSAÇÃO DE FERRAMENTA

Para Tornos :

TOOL DEF 10 LX 10.37 LZ 20.81 R 1 LC 11

; define os dados da ferramenta
;número 10 comprimento X =

mecatrônica289

;10.37 comprimento Z = 20.81
;raio da ponta R = 1 lado de corte
;= 11

TOOL CALL 10 S1000 C ON R0

; torna ativos os comprimentos
;imediatamente, sem compensação
;de raio , RPM = 1000

TOOL CALL 10 S1000 C OFF R0

; torna os comprimentos ativos
;no próximo movimento, por
;enquanto sem compensação de
;raio.

TOOL CALL 10 S1000 C OFF RR+

; torna os comprimentos e o raio
;da ponta da ferramenta ativos no
;próximo movimento. Compensa
;o raio pela direita .

TOOL CALL 10 S1000 C OFF RL-

; torna os comprimentos e o raio
; da ponta da ferramenta ativos no
;próximo movimento. Compensa o
;raio pela esquerda.

Para Fresadoras :

TOOL DEF 10 L 10.37 R 10

; define os dados da ferramenta
;número 10 comprimento L =
;10.37 raio da ponta R = 10

TOOL CALL 10 Z S1000 C ON R0

; torna ativa a compensação de
;comprimento para o eixo Z ime-
diatamente , sem compensação
de raio

TOOL CALL 10 Z S1000 C OFF R0

; torna ativa a compensação
;de comprimento para o eixo Z
;no próximo movimento, sem
;compensação de raio

TOOL CALL 10 Y S1000 C OFF RR+

; torna ativa a compensação
;de comprimento para o eixo Y
;no próximo movimento, com
;compensação de raio à direita
;no plano ortogonal

mecatrônica

290

TOOL CALL 10 Z S1000 C OFF RL-

; torna ativa a compensação
;de comprimento para o eixo Z
;no próximo movimento, com
;compensação de raio a
;esquerda no plano ortogonal

4 - CÁLCULOS

Obs.: Os controles da MCS possuem 128 memórias ou registros de ponto flutuante que o
usuário pode manipular para resolver expressões e utilizar os resultados em programas paramétricos,
subprogramas ou MACROS (ciclos fixos) .

Esses registros são identificados de H0 até H127, podendo armazenar números em ponto

flutuante com grande precisão.

O usuário pode resolver expressões como +, - , * , / , seno , co-seno , tangente , arco
tangente , raiz quadrada , distância , módulo , negação , e desvios condicionais, como menor que,
maior ou igual, igual ou diferente. Ele pode também ler parâmetros e dados do PLC para calcular ou
tomar decisões no programa.

:FUNC 0 ATR P0 H0 P1 10

; H0 = 10

:FUNC 0 ATR P0 H2 P1 H3

; H2 = H3

:FUNC 1 ADD P0 H2 P1 H3 P2 10.15

; H2 = H3 + 10.15

:FUNC 1 ADD P0 H100 P1 1.23456 P2 1.23E-4

; H100 = 1.23456 + 0.000123

:FUNC 2 SUB P0 H2 P1 H3 P2 -27

; H2 = H3 - 27

:FUNC 3 MULT P0 H0 P1 H127 P2 3.1415

; H0 = H127 * 3.1415

:FUNC 4 DIV P0 H0 P1 H127 P2 3.1415

; H0 = H127 / 3.1415

:FUNC 5 ABS P0 H0 P1 H127

; H0 = ABS(H127) , sempre
;positivo

:FUNC 6 REST P0 H0 P1 H127 P2 3.1415

; H0 = resto de divisão (H127 /
;3.1415)

:FUNC 7 NEG P0 H0

; H0 = -H0 , mudança de sinal

:FUNC 8 RAD P0 H0 P1 488.97

; H0 = raiz quadrada (488.97)

:FUNC 9 PI P0 H13

; H13 = p , 3.141....

:FUNC 10 SEN P0 H2 P1 H3

; H2 = sin ( H3 )

:FUNC 11 COS P0 H2 P1 H3

; H2 = cos ( H3 )

:FUNC 12 TAN P0 H2 P1 H3

; H2 = tan ( H3 )

:FUNC 13 ATG P0 H2 P1 H3

; H2 = atan ( H3 )

:FUNC 14 DIST P0 H2 P1 H3 P2 H4

; H2 = raiz ( H3 2

* H4 2

)

mecatrônica291

:FUNC 15 JE LBL 10 P1 H15 P2 10

; desvia p/ label 10 se (
;H15==10)

:FUNC 16 JNE LBL 10 P1 H15 P2 10

; desvia p/ label 10 se (
;H15!=10)

:FUNC 17 JP LBL 10 P1 H15 P2 10

;desvia p/ label 10 se (
;H15>=10)

:FUNC 18 JN LBL 10 P1 H15 P2 10

; desvia p/ label 10 se ( H15<10)

:FUNC 19 PLCR P0 H2 P1 M200

; H2 = lê memória do PLC ,
;endereço = 200

:FUNC 20 PLCW P0 M100 P1 10

; escreve na memória do PLC ,
;endereço = 200, valor = 10

:FUNC 21 PARR P0 H2 P1 P100

; H2 = leitura de parâmetro de
;máquina, endereço = 100

:FUNC 22 TDFR P0 H30 P1 10 P2 0

; H30 = lê dado do corretor de
;ferramenta 10 , índice 0

:FUNC 23 TDFW P0 H30 P1 10 P2 1

; escrita no corretor 10 , índice
;1 , dado = H30

5 - CICLOS FIXOS

:CYC CALL 1 T 10

; tempo de espera , 10 x 0.1
;segundos

:CYC 1 T 10

; idem

:CYC CALL 2 M3

; função M , no exemplo M3

:CYC CALL 2 M3 M8 M21

; até 3 funções M por CYC 2

:CYC 2 M3 S1200

; rotação Snnnn , nnnn =
; rotações / min

:CYC 2 T3 D5

; estação T = 3 , corretor
;( data ) = 5

:CYC 2 B5

; arredondamento de cantos (R
;= 5 )

:CYC 2 B-5

; chanfro (projeção = 5 )

:CYC CALL 3 X A 10 Z A 20 P1.5 A45 U 3

; ciclo de corte de rosca onde X e
;Z são as coordenadas da posição
;final P = passo da rosca A =
;ângulo de saída no final da
rosca U = distância para início
;da saída

mecatrônica

292

:CYC CALL 4 X A 10.15

; preset eixo X , X = 10.15 após
;esse bloco

:CYC CALL 4 Y I 1

; preset eixo Y , Y = atual + 1
;após esse bloco

:CYC CALL 5 E ON 12

; condição = TRUE se entrada
;12 ativa

:CYC CALL 5 E OFF 12

; condição = TRUE se entrada
;12 desligada

:CYC CALL 6 J 100

; desvio para marca LBS 100

:CYC CALL 6 J ON 100

; desvio para marca LBS 100 se
; condição TRUE

:CYC CALL 6 J OFF 100

; desvio para marca LBS 100 se
;condição FALSE

6 - CICLOS DE USUÁRIO ( MACROS )

O usuário pode definir ciclos fixos ou MACROS :

Forma Geral :

:CYC CALL nn NOME_OPCIONAL PAR_1_OPCIONAL ... PAR_15_OPCIONAL

Exemplo:

:CYC CALL 33 ROSCA X 10 Y 20 P1.5 PROF 3 N 5 ACAB 0.1

Essa pode ser uma MACRO definida por um usuário que chama o subprograma 33, cujo
nome é ROSCA , passando os seguintes parâmetros para os registros de ponto flutuante :

H0 = 10

; X

H1 = 20

; Y

H2 = 1.5

; P

H3 = 3

; PROF

H4 = 5

; N

H5 = 0.1

; ACAB

O subprograma 33 utiliza esses dados para gerar os movimentos necessários, retornando ao
final para o programa do usuário que originou a chamada.

Com esses recursos, os controles MCS podem realizar ciclos fixos e permitir ao usuário criar
seus próprios ciclos e utilizá-la como uma instrução (MACRO) em seus programas.

mecatrônica293

OBS.: O usuário pode incluir ciclos com os quais está acostumado, por exemplo os
ciclos HEIDENHAIM (pocket, drilling, threading...) e adaptá-los para a linguagem MCS
conversacional ou simplesmente emulá-los em nosso CNC.

HEIDENHAIM :

MCS conversational: ( nn >= 20 )

CYCL DEF nn ........

CYC CALL nn ......

CYCL CALL nn .......

7 - FUNÇÕES M

M 00

; parada programada

M 01

; parada opcional

M 02

; final de programa

M 03

; rotação eixo árvore sentido horário

M 04

; rotação eixo árvore sentido anti-horário

M 05

; interrompe a rotação

M 06

; troca de ferramenta

M 07

; refrigeração fraca

M 08

; liga refrigeração

M 09

; desliga refrigeração

M 13

; M3 + M8

M 14

; M4 + M8

M 15

; M5 + M9

M 30

; final de programa

M nn

; nn não listado acima => função dependente
;do PLC

You're Reading a Free Preview

Descarregar
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->