You are on page 1of 9

SIEMENS

PROGRAMAÇÃO AVANÇADA E PROG. COM APALPADORES

1-VARIÁVEIS DE PONTO ZERO:

$P_UIFR[a]
Sendo que a= ao ponto zero peça ativo de 1 a 99, ou seja:
a=0 = ponto zero G500
a=1 até 4 = ponto zero G54 a G57
a=5 até 99 = ponto zero G505 até G599

a= .....
0= G500
1= G54
2= G55
3= G56
4= G57
5= G505
6= G506
..
..
99=G599

$P_UIFR[1]=CTRANS(X,100,Y,150,Z,150,B,0)
Neste caso, CTRANS quer expressar uma translação grossa de valores.

$P_UIFR[1]=CFINE(X,0.1,Y,0.05,Z,-0.12,B,0)
Neste caso, CFINE quer expressar uma translação fina de valores.

$P_UIFR[1]=CROT(X,45)
Neste caso, CROT quer expressar uma translação de rotação de eixos.

$P_UIFR[1]=CSCALE(X,1,Y,2,Z,1,B,0)
Neste caso, CSCALE quer expressar uma translação ESCALA de valores nos eixos.

$P_UIFR[1]=CMIRROR(X,1000,Y,-1000,Z,1000,B,1000)
Neste caso, CTRANS quer expressar uma translação espelhamento nos eixos.

$P_UIFRNUM=10
Quando nesta variável estiver carregado o valor 10, é porque o DPZ ativo é o G510.
Se por exemplo o G54 estiver ativo, o valor carregado nesta variável é o 1.
Se por exemplo o G518 estiver ativo, o valor carregado nesta variável é o 18.

$P_UIFR[1]=CTRANS(X,100.026):CROT(X,45)
Atribuir o valor de 100,026 para o eixo X rotacionando o mesmo eixo em 45 graus.
Ou
Atribui em única linha o valor de X=100 para G54:

$P_UIFR[1,X,TR]=100
Atribue na mesma linha o valor de 100 para o eixo X em G54.
1 equivale a G54
X equivale ao eixo
TR equivale a ação de traslação do valor
=100 equivale ao valor carregado.

$P_UIFR[1,X,TR]= $P_UIFR[2,X,TR]
Neste caso é atribuído ao X do G54 o mesmo X do G55, baseado no mesmo raciocínio
acima.

R700=$P_UIFR[1,X,TR]
Atribui à variável R700 o valor que esta carregado no DPZ de G54 do eixo “X”.
O valor atual que esta no eixo “X”do G54 é carregado em R700. Por exemplo, se o valor
carregado em “X” do G54 for 250 é o mesmo que R700=250
1= Seqüência da origem (1 a 99) corresponde a G54 a G599.
X= Eixo
TR= Translação Grossa.
FI= Translação Fina.
RI= Rotação
SC= Escala

$P_UIFR[1,X,TR]=$P_UIFR[2,X,TR]
Neste caso, carrega o valor do “X” do G55 no “X” do G54.

TRANSFORMAÇÕES DE STRING (CONCATENAÇÃO)

MSG(“MENSAGEM”)

<< é igual a concatenação.

MSG(“PROFUNDIDADE = “<<R100)

Pega o valor carregado na memória R100 e transforma em string para texto de mensagem.
Por exemplo, se a profundidade é 180, e esta carregado dentro da variável R100, aparecerá
na tela a mensagem: PROFUNDIDADE=180.

Tudo que for expansão da concatenação tem que estar entre ASPAS por exemplo:
MSG(“PROFUNDIDADE=”<<R100”,””LARGURA=”R200).
Então por exemplo aparece na tela: PROFUNDIDADE=180 LARGURA=20

2-VARIÁVEIS DE FERRAMENTAS:

$TC_DP6[t,d]
Nesta variável é colocado o valor de correção da ferramenta. Por exemplo:
$= variável
T= Ferramenta
C= Canal
_DP= Nome da variável
6= parâmetro que especifica que se trata do raio da ferramenta na característica da
ferramenta na lista.
[t, = t especifica o número interno da ferramenta.
d] = d especifica o corretor (lâmina) ( de 1 até 9 ou de 1 até 12)

$_TOOLNO = Número Interno da ferramenta no fuso.


O número interno vai de 0 à 32000, por exemplo:
Troca-se uma ferramenta com CS_TOOL(“T10”,1,1) neste caso a ferramenta T10 recebe
um número interno, por exemplo = 120.
Para buscar o valor do raio aplica-se:
R714=$TC_DP6[$P_TOOLNO,1]
R715=$TC_DP6[$P_TOOLNO,2]

$TC_TP2 = IDENTIFICAÇÃO DA FERRAMENTA DO FUSO.

Definir uma variável do usuário como STRING e jogar dentro dela o $TC_TP2.

DEF STRING [10] BROCA_D14 ; DEFINA COMO STRING(LETRAS E NUMEROS


DE MAX 10 CARACTERES A VARIAVEL
BROCA_D14.

BROCA_D14=T10

3-VARIÁVEIS DO USUÁRIO:

Tipos de Variáveis do Usuário:


- #100 = variável Fanuc
- P100 = variável Unipro
- R100 = variável “R” Siemens
- Prof_1 = variável Local ou Global (LUD / GUD)

LUD= Local User Data


Exemplo de aplicação no Programa de Usinagem:

%_N_USINAGEM123_MPF
N10 DEF REAL PROF_1 ; DEFINA COMO NUMERO REAL A VARIAVEL PROF_1
N20 DEF STRING [20] ESTACAO ; DEFINA COMO STRING(LETRAS E NUMEROS
DE MAX 20 CARACTERES A VARIAVEL
ESTACAO
N30 ESTACAO=”A_E” ;CARREGA NA VARIAVEL ESTACAO O QUE
ESTA ENTRE ASPAS, OU SEJA A_E
N40 PROF_1=-30 ; CARREGA O VALOR –30 NA VARIAVEL PROF_1
.....
....
G0 Z=PROF_1
IF ESTACAO == A_E GOTOF TREM
....
...
TREM:
....
..

M30

VARIÁVEIS GUD / LUD

INT = Números inteiros.


Real = Número Reais de – infinito a + infinito.
Bool = Números Boleanos ( 0 ou 1).
String = valores alfa-numéricos.

Os GUDs vão de GUD1 à GUD9, sendo que o reservado ao usuário é o GUD4.


Quando uma variável nova é criada, as antigas podem ser mantidas no programa.
ALTERAR/CARREGAR/ATIVAR

OBS:. IPM MÁXIMO 50 CARACTERES

EXEMPLO DE PROGRAMA GUD:

%_N_GUD_4_DEF
;$PATH=/_N_GUD_4_DEF
DEF REAL BOLA=0
DEF REAL PROFUNDIDADE REAL = 100
……..
….

M30

PADRONIZAR
GV_RRRR NOME PARA VARIÁVEL GLOBAL
LV_RRRR NOME PARA VARIÁVEL LOCAL

Então criar variável assim:

DEF REAL LV_PROF_1


ou
DEF REAL GV_PROF_1
4- APALPADORES BLUMM e RENISHAW (MP10)

Existem outros modelos inclusive com comutação via freqüência de radio.

APALPAÇÃO
BLUM tem dois graus de liberdade, axial e radial e apenas uma direção.
RENISHAW tem a liberdade de apalpação em todas as direções.

O apalpador Blum mostra no cone de fixação (SK/HSK) o lado de montagem >


Este símbolo mostra o sentido de avanço para medição. Tem que ser montado voltado para
cima com o fuso orientado em S0.

É aconselhável que não se faça a medição com o apalpador com algum “Frame” (Rot,
Mirror, Scale, etc.) ativado que não seja o de translação CTRANS(X,...,Y,...,Z....).

Iniciar a medição sempre com o fuso em S0 com SPOS=0

As subrotinas de medição estão preparadas para medir apenas em G17.

COMUTAÇÃO:
BLUM:
Comutação de 2 graus curso total de 15 graus Radial.
Comutação de 5mm total de 20mm Axial.

RENISHAW:
Comutação de 2 .....3......5 micros
Curso 17,5 graus Radial.
Curso de 8mm Axial.

Dados de Ferramentas
Indentificar o apalpador como T...... ou outro nome qualquer.
Ponta Tradicional:

Ponta Dupla:
A calibração tem que ser feita toda vez que a ferramenta for montada ou trocado algum
componente (ponta, fuzivel, etc..) .
Para garantir a precisão recomenda-se calibrar o apalpador toda vez que o mesmo entra no
fuso para eliminar o erro de indexação no fuso.

Precisão:

Centralizar; 0,008mm à 0,010mm.


Medir: 0,010mm à 0,012mm.

Avanço de Medição

Renishaw = 480mm/min
Blum = 600mm/min

Até 3000mm/min.

Obs:. A calibração e a medição tem que ser feita com a mesma orientação inicial do fuso e
na mesma velocidade de avanço.

Bateria:

Carga normal de 9V a 10V.


Interface:
M56 liga a interface entre o apalpador e a máquina.
Se caso tiver a bateria com a carga inferior a 7,8V ou vazio, deve-se verificar se houve
medição através de consulta as variáveis que armazenam os valores medidos. Entre 7,8V e
9V emite sinal de bateria fraca.
Resultados de Medição:
Consultar Variáveis:
Sistema coordenadas máquina(MKS) = $AA_MM[a]
Sistema coordenadas peça(WKS) = $AA_MW[a]

a= eixo X, Y, Z

Exemplo de carregamento de valores;


R700=$AA_MW[X]

MEAS=1 (Função para medir)


Exemplo de sentença de medição;
……..
G1 X-10 MEAS=1
STOPRE
R701=$AA_MW[X]
G1 X-30
Y210
X-5
G1 Y200 MEAS=1
STOPRE
R702=$AA_MW[Y]
G1 Y210
Z10
Y185
G1 Z0 MEAS=1
STOPRE
R703=$AA_MW[Z]
.......
...
Pode-se verificar se houve medição com a seguinte estratégia:
...
......M56
G1 X-10 MEAS=1
STOPRE
IF $AC_MEA[1]==1 ;HOUVE MEDICAO
R770=$AA_MW[X]
ELSE ; SENAO = 1
MSG(“NÃO HOUVE MEDIÇÃO”)
G0X-30
Z100 Se igual a 1
PARADA:
M0
GOTOB PARADA
ENDIF
......
...

Com o apalpador Renishaw atuando com M56 desliga após 134 segundos. Para evitar
problemas, em medições demoradas, ligar novamente com M56.

IMPORTANTE: Com medições com MEAS=1 temos que somar ou subtrair o raio da
esfera no valor apalpado.
Exemplo:
R780=$TC_DP6[$P_TOOLNO,5] Igual ao raio da ponta da ferramenta que esta no fuso
com a lâmina 5.

VALOR REAL = VALOR MEDIDO+/- RAIO +/- DEFLEXÃO

R790= ($AA_MW[X]) - R780

RETOMADA SEM APALPAR NOVAMENTE A MESMA PEÇA

IF $P_SEARCH==1 GOTOF INICIO


………
G10L…… CARREGA O DPZ INICIAL E TEÓRICO
G10…
…… SE FOR IGUAL
G1 MEAS=1…… É RETOMADA
….. MEDE COM APALPADOR E JUSTA DPZ A 1 NÃO
… CARREGA DPZ
INICIO: NEM MEDE
;INICIO DE USINAGEM SALTA P/
.....
...
M30
EXEMPLO COM SUBROTINAS
...
...
G520 X0 Y0 D0
Z0
M56
R10=0
R20=0
R40=80,006
R42=0
R1=5
R5=5
R6=2
R65=1
R66=0,1
R68=1
R70=600
L3602
Z300
M57
....
...
M30

FERNANDO - Heller Máquinas Operatrizes Ind. Com. Ltda.


30/10/2006

You might also like