Bonjour à tous
ce message suite à l'utilisation de la macro pour le changeur d'outil.
en l'utilisant je me suis aperçu de deux ou trois bugs.
je suis pas une bête en programmation donc je voudrai si possible ,que quelqu'un m'aide pour changer le bout de programme.
déjà tous d'abords quand on lance le changement d'outil le programme fait comme si il y avait un changement d'outil dans le vide et après la machine repart pour aller chercher l'outil ( voir cette vidéo)
https://drive.google.com/open?id=1FGVTTUDUkez-IH3a3rPoBM7FtrnFYQmh
autre remarque quand je fais M6 T0 pour retirer l'outil dans le nez de broche celle-ci retire bien l'outil mais tout de suite après elle le reprend. ( voir vidéo )
https://drive.google.com/open?id=17dUFPAXzzZJlkg9sSCkRwi6px-FN16uT.
en vous remerciant d'avance pour vos réponses.
voici le code macro que j'utilise pour l'instant :
'ToolChange Macro For Bed type tool changer 11/05 Brian
Sub Main() ' ??? DEBUT DE LA MACRO "MAIN" ???
OldTool = GetOEMDRO (1200) ' n° de l'outil actuel copier dans la DRO... Tool In spindle DRO You must add this to your settings screen
x = 6.15
y = 355.0
z = -75.0
'x = GetToolChangeStart( 0 ) ' " posion des axes avant le changement d'outil
'y = GetToolChangeStart( 1 ) ' "
'z = GetToolChangeStart( 2 ) ' "
tool = GetSelectedTool() ' n° de l'outil désiré copier depuis T... de la commande M6
NewTool = tool ' NewTool = n° de l'outil désiré Tool Changer Macro (Bed Type)
MaxToolNum = 4 ' n° d'outil maximume pour le chargeure Max number off tools for the changer
ToolDown = -235.00 ' ?? hauteur Z du chargeure d'outil ?? Z Pos to Get or drop a tool
ToolUp = -100.0 ' ?? hauteur de déplacement vers le chrageure d'outil ?? Z Hieght to Rapid from tool to tool
If NewTool = OldTool Then ' Si le nouvel outil et = à l'ancien ...
Exit Sub ' ... arrêter la macro
End If ' ... fin de Si
While NewTool > MaxToolNum ' Quand : le n° d'outil désiré et plus grand que le max d'outil ...
NewTool = Question ("Entrer un n° d'outil plus petit que " & MaxToolNum) ' ... le n° d'outil et = à la boîte de question "Entrer un n° d'outil plus petit que ( nombre d'outil du chargeure)" à remplacer par : NewTool = Question ("Enter New Tool Number up to " & MaxToolNum +1 )
Wend ' ... fin de quand
Code "G00 G53 Z" & ToolUp ' relève Z à la hauteur de déplacement "G53 = valeur absolue"
While IsMoving() ' Attend que la valeur Z soit atteinte ...
Wend ' fin de l'attente
Call MovePos(OldTool) ' ???? déplace à la position de changemment de déchargemment de l'outil (oldTool) ??? X? Y? Z? A? ...
While IsMoving() ' Attend que le déplacement soit fini ...
Wend ' ... fin de l'attente
Code "G53 Z" & ToolDown ' abesse Z à la hauteur de changement d'outil "G53 = valeur absolue"
Sleep(150) ' fait une pose de 0.75 seconde
While IsMoving() ' Attend la fin de la pose ...
Wend ' ... fin de l'attente
ActivateSignal(Output2) ' Active le signal de libération de l'outil "Output2 = on" Turn On Draw bar to release the tool
Sleep(150) ' Pause de 1 seconde
'Wait for the tool to release
'SystemWaitFor (7) 'Wait for the tool Release Limit switch
Code "G53 Z" & ToolUp ' relève Z à la hauteur de déplacement "G53 = valeur absolue"
Call MovePos(NewTool) ' ???? déplace à la position de changemment de chargement de l'outil (NewTool) ??? X? Y? Z? A? ...
While IsMoving() ' Attend que le déplacement soit fini ...
Wend ' ... fin de l'attente
Code "G53 Z" & ToolDown ' abesse Z à la hauteur de changement d'outil
Sleep(150) ' fait une pose de 0.75 seconde
While IsMoving() ' Attend la fin de la pose ...
Wend ' ... fin de l'attente
DeActivateSignal(Output2) ' Désactive le signal de libération de l'outil "Output2 = off"
'Turn Off Draw bar to Clamp the tool
Sleep(150) ' Pause de 1 seconde
'Wait for the tool to Clamp
While IsMoving() ' Attend la fin de la pose ...
Wend ' ... fin de l'attente
Code "G53 Z" & ToolUp ' Relève Z à la hauteur de déplacement
Sleep(150)
Code "G00 X" & x+60
Sleep(150)
Code "G00 Y" & y
Call SetUserDRO (1200,NewTool) ' ????? Inscrit la valeur du nouvel outil dans la DRO...
SetCurrentTool( NewTool ) ' défini le nouvel outil comme outil actif
Code "G00 X" & x & " Y" & y ' Remet la broche en position X,Y relevée au début de la macro
'Move back to where the tool change was prompted
End Sub ' FIN DE LA MACRO
Sub MovePos(ByVal ToolNumber As Integer) ' SOUS MACRO (début)
Select Case ToolNumber ' Relève les coordonnées des outil selon leur n° ...
Case Is = 1 ' Le n° 1 comprend les valeurs ...
Xpos = 6.15 ' Position en X (??? certainnement en coordonée absolue ???)
YPos = 454.76 ' Position en Y
Case Is = 2 ' Le n° 2 comprend les valeurs ...
Xpos = 6.15 ' ...
YPos = 554.76
Case Is = 3
Xpos = 6.15
YPos = 654.76
Case Is = 4
Xpos = 6.15
YPos = 754.76
Case Is = 5
Xpos = 6.15
YPos = 854.76
Case Is = 6
Xpos = 6.15
YPos = 954.76
Case Is = 7
Xpos = 6.15
YPos = 1054.76
Case Is = 8
Xpos = 6.15
YPos = 1154.76
End Select ' ... fin du relever de positions
Code "G53 X" & XPos & " Y" & YPos ' ??? Valeur de la sous macro remplacer par Call dans le code ???
End Sub ' FIN DE LA SOUS MACRO
Main ' ??? FIN DE LA MACRO "MAIN" ???