'elle commence par mesurée l'outils maître, puis vous pouvez définir maximum 8 d’outils si vous le souhaitez ou annuler à la fin.
' elle effectue 2 palpage pour chaque longueur d' outils pour auguementer la precision
Sub Main()
'**************** PREPARATION ************************
' variable n°3 difference longueur outils maitre moins outils secondaire
Code "M9" ' STOP L ARROSAGE
DoSpinStop() ' STOP LA SPINDLE
Sleep(10) ' donne le temps de charge à fond
MaxToolNum = 8 'Maximum d outils pour le rack
ToolDown = -200 'Z bas position pour prendre ou relacher les outils dans le rack
ToolUp = -50 'Z haut de secu pour les deplacement au dessus table et rack
Yprepa = 1000 'Y position pour la descente du porte outils permettant encliquement dans les rainures des berceaux
Ypos = 1176.33 'Y position à fond de berceau pour prendre ou relacher l outils
XpalF = 141.1 'X position palpeur fixe en X
YpalF = 1165.8 'Y position palpeur fixe en Y
NewTool = Tnum ' le numero du nouvel outils = le n° d outils dans la table d 'outils
OldTool = GetOEMDRO (824) 'enregistre le numero d 'outils dans la broche
Tnum= 1
tool = GetSelectedTool()
NewTool = tool
ActivateSignal(OUTPUT5) 'remonte les balais anti-projection en haut
MsgBox(" *** la broche doit etre VIDE Pas d'outils ***")
MachMsg ("Prêt à exécuter le réglage de L'OUTILS MAITRE N°1 BROCHE VIDE SANS OUTILS < tool information =0> ET Ok", "OUTILS MAITRE", 1)
If Ret= 2 Or OldTool<>0 Then End 'si Ret=2 ou si Tool differend de zero alors fin du programme
'************************************* REM VA CHERCHER L OUTILS N°1 MAITRE ************************
NewTool = 1
Code "G0G53 Z" & ToolUp 'Z haut de secu pour les deplacement au dessus table et rack
Call MovePos(NewTool) ' appel MovePos(NewTool)coordonnées Machine des outils
While IsMoving()
Wend
Code "G0G53 Z" & ToolUp 'Z haut de secu pour les deplacement au dessus table et rack
Code "G0G53 Y" & Ypos 'Y position à fond de berceau pour prendre ou relacher l outils
ActivateSignal(OUTPUT6) 'active la sortie 5 ( machoires) pour relacher l'outils
Sleep(4) '**tempo 10 s secondes pour relacher l'outils + jet d air chasse copeaux
Code "G53 Z" & ToolDown 'Z bas position pour prendre ou relacher les outils dans le rack
Code "G4 P2.75" ' temporisation 2.75 seconde
While IsMoving() ' tant que ça bouge
Wend
DeactivateSignal(Output6) 'desactive la sortie 5 de la carte en plus ou en moins selon la config des pins
Code "G4 P1.50" 'temporisation 2secondes attente fermeture des machoires sortie 5
While IsMoving() 'tant que ça bouge
Wend
Code "G53 Y" & Yprepa 'Y position pour la descente du porte outils permettant encliquement dans les rainures des berceaux
Code "G4 P1.75" '** temporisation 1.75 seconde
Code "G0G53 Z" & ToolUp 'Z haut de secu pour les deplacement au dessus table et rack
Code "G0G53 X"&XpalF &"Y"&YpalF 'va audessus du palpeur fixe
While IsMoving() ' tant que ça bouge
Wend
SetOEMDRO (824, NewTool)
Sleep(1)
'***************************************** Rem MESURE DE L OUTILS N°1 MAITRE ************************
Code "G31 Z-150 f 350." ' descente sur le palpeur jusqu'a -150 avance f=350
While IsMoving ( ) 'tant que ça bouge
Sleep(3) ' temporisation 10s
Wend
PRP= GetOEMDRO(802)+10
Code "G0 Z" & PRP ' remonte de10mm au dessus de la sonde
Code "G31 Z-150. f 150." ' descente sur le palpeur jusqu'a -150 avance f=150
While IsMoving ( ) 'tant que ça bouge
Sleep(3) ' temporisation 10s
Wend
SetDRO(2,0.00) 'Code "G92 Z0.00"***passe z à o.oo en sans mouvement en relatif origine des mesures de longueur
Tlo = GetDro(2) ' valeur de z Tlo = GetDro(2) '
SetToolParam(Tnum,2,Tlo) ' ecrit la longueur z de l outils n°1 dans la table d outils
Sleep(4) 'tempo 3 s pour ecriture
Code "G00 G53 Z" & ToolUp ' va a grande vitesse en Z secu coordonnées Machine
Code"f500"
N1: '************************ ROUTINE nom de la routine N1 *********************************************
'************* PREPARATION N1 **********
OldTool = GetOEMDRO(824)
NewTool= NewTool +1
Tnum = NewTool
Ret = MachMsg ("Etes-vous prêt pour le réglage de l’outil suivant?", "OUTILS SECONDAIRES",1)
If Ret=2 Or NewTool>8 Then End ' si Ret=2 reponse NON=2 alors fin du programme ou outils superieur à 8 alors fin
Call MovePos(OldTool) '**** appel MovePos(OldTool) coordonnées Machine des outils
While IsMoving() ' tant que ça bouge
Wend 'fin du mouvement
Code "G0G53 Y" & Yprepa 'Yprepa position pour la descente du porte outils permettant encliquement dans les rainures des berceaux
Code "G53 Z" & ToolDown 'va à Z position pour relacher les outils dans le rack
Code "G53 Y"& Ypos 'va à Y position à fond de berceau pour prendre ou relacher l outils
Sleep(1) ' temporisation 1. seconde
While IsMoving()
Wend
ActivateSignal(OUTPUT6) 'active la sortie 6 machoires OUVERTES pour relacher l'outils
Code "G4 P2.75" ' temporisation sans mouvement 2.75 secondes pour relacher l'outils + jet d air chasse copeaux
Code "G0G53 Z" & ToolUp ' monte en Z secu coordonnées Machine
Call MovePos(NewTool) '****appel MovePos(NewTool)coordonnées Machine des outils
While IsMoving()
Wend
Code "G0G53 Z" & ToolUp 'Z haut de secu pour les deplacement au dessus table et rack
Code "G0G53 Y" & Ypos 'Y position à fond de berceau pour prendre ou relacher l outils
Code "G53 Z" & ToolDown 'Z bas position pour prendre ou relacher les outils dans le rack
Code "G4 P2.75" ' temporisation 2.75 seconde
While IsMoving() ' tant que ça bouge
Wend
DeactivateSignal(Output6) 'desactive la sortie 5 MACHOIRES FERMEES
Code "G4 P 0.70" 'temporisation 2secondes attente fermeture des machoires sortie 6
While IsMoving() 'tant que ça bouge
Wend
Code "G53 Y" & Yprepa 'Y position pour la descente du porte outils permettant encliquement dans les rainures des berceaux
Code "G0G53 Z" & ToolUp 'Z haut de secu pour les deplacement au dessus table et rack
Code "G0G53 X"&XpalF &"Y"&YpalF 'va audessus du palpeur fixe
While IsMoving() ' tant que ça bouge
Wend
SetOEMDRO (824, NewTool) 'ecrit le numero du nouvel outils dans tool information dro
Sleep(1)
'********************REM MESURE DES OUTILS SECONDAIRES double palpage = prescision ****************************
Code "G31 Z-130 f350." ' descente sur le palpeur jusqu'a -150 avance f=350
While IsMoving() 'alors que ça bouge
Sleep(4) 'tempo 10 s
Wend
PRP= GetOEMDRO(802)+10 'PRP= Z +10mm
Code "G0 Z" & PRP 'remonte de 10mm
Code "G31 Z-130 f150." 'va palper jusqu'a Z-150mm vitesse 150mm/M
While IsMoving() 'alors que ça bouge
Sleep(4) ' tempo 10s
Wend
Tlo =GetDro(2) 'Tlo=GetDro(2) lit la valeur de z au contact sur la sonde
SetToolParam(Tnum,2,Tlo) ' ecrit la diference de longueur de l'outils N°"" par rapport à la longueur de l outils maitre
While Ismoving() 'alors que ça bouge
Sleep(5) 'tempo 10 s
Wend
Code"f1000" ' on regle l avance icipour les deplacements qui n ont pas de G0
GoTo N1 ' retourne au debut de la routine N1
End Sub
Sub MovePos(ByVal ToolNumber As Integer)
Select Case ToolNumber
' COORDONNEES X ,Y ET Yprepa DES OUTILS SELON LEUR Numero°
Case Is = 1 ' VALEUR X ET Y de l outils N°1 sur le rack
Xpos = 430.17
Yprepa = 1000 ' EN COORDONNEES MACHINE
YPos = 1176.33
Case Is = 2
Xpos = 543.01
Yprepa =1000
YPos = 1176.33
Case Is = 3
Xpos = 655.68
Yprepa = 1000
YPos = 1176.33
Case Is = 4
Xpos = 771.82
Yprepa = 1000
YPos =1176.33
Case Is = 5
Xpos = 885.60
Yprepa = 1000
YPos = 1176.33
Case Is = 6
Xpos = 998.28
Yprepa = 1000
YPos = 1176.33
Case Is = 7
Xpos = 1115.72
Yprepa = 1000
YPos = 1176.33
Case Is = 8
Xpos = 1227.27
Yprepa = 1000
YPos =1176.33
End Select
Code "G53 Y" & Yprepa ' position des Y prepa pour les retour d outils au rack
Code "G53 X" & XPos 'position des Xpos pour les retour d outils au rack
While IsMoving()
Wend
End Sub
Main