Mach3 - Werkzeug automatisch vermessen
Ich übernehme keinerlei Haftung für etwaige Schäden, die beim Nachmachen entstehen.
Was    mich    immer    genervt    hat    war    das    Nullen    eines    neuen    Werkzeugs    oder    Bohrers.    Platinen verlangen    oft    viele    Bohrerwechsel.    Per    Hand    ist    das    eine    zeitraubende    Geschichte.    Ohne automatischen   Werkzeugwechsler   muss   man   die   Werkzeuge   einbauen   und   Mach3   das   beibringen. Bohrer   oder   Fräser   einspannen   ist   schon   genug   Arbeit.   Den   Rest   sollte   die   Mach3-Software   dann können.    Mein    Gedanke    war    -    Werkzeug    einspannen,    einen    Referenzpunkt    anfahren    und    das Werkzeug automatisch vermessen.
Was braucht man dazu
Einen   Mess-Schalter,   der   am   Probe   Eingang   angeschlossen   wird,   und   ein   paar gute   Ideen.   Wie   beim   Handrad    fand   ich   zwar   eine   Menge   Info,   dass   es   funktioniert - aber leider nicht wie.
Grundlegender Gedanke
Man   NULLT   ein   Werkzeug   am   Werkstück-Nullpunkt   und   fährt   dann   als   Referenz   einen   Schalter   an (Probe).   Diese   Z-Position   speichert   man   gesondert.   Ändert   sich   die   Werkzeuglänge,   dann   fährt   man wieder zum Probe und übernimmt den Wert als Z-Position.
 Ablauf am Beispiel einer Platine
Die   Platine   wird   befestigt   und   der   Stichel   eingebaut.   Dann   lädt   man   den   G-Code.   (   Ich   benutze Eagle    und    mitgelieferte    ULPs,    die    fertigen    GCode    liefern    ).    Dann    wird    der    Stichel    an    den Ausgangspunkt    gefahren    und    alle    Achsen    werden    händisch    genullt.    Und    hier    beginnt    die Automatisierung.   Der   Mess-Schalter   wird   an   einer   geeigneten   Position   befestigt,   so   dass   er   das Fräsen   nicht   behindert   oder   selbst   zerstört   wird.   Das   Script   ist   so   ausgelegt,   dass   das   Suchen   des Mess-Schalters   bis   maximal   -10   mm   vom   gerade   gültigen   Nullpunkt   möglich   ist.   Also   den   Schalter maximal   10   Millimeter   unterhalb   des   gerade   gültigen   Nullpunktes   setzen.   Man   kann   natürlich   auch im   Script   (Referenzpunkt   Code   "G31   Z-10.0   F20")   die   Spanne   größer   10   wählen,   wenn   z.B.   der Mess-Schalter    fix    auf    der    Aufspannplatte    montiert    ist.    Anschließend    fährt    man    das    genullte Werkzeug   über   den   Mess-Schalter.   Nicht   zu   knapp,   weil   man   sonst   das   Werkzeug   nicht   mehr wechseln   kann.   Hat   man   die   geeignete   Stelle   ermittelt,   sagt   man   Mach3   wo   das   ist,   indem   man   den Button   (Werkzeug   Messpunkt   setzen)   drückt. Auf   der   Seite   6   ist   der   Werkzeugwechselpunkt   bereits definiert. Bei meiner Mach3 263 fehlte noch der Button zum Speichern und das Script dazu.
Man   sollte   daran   denken,   dass   diese   Position   beim   Abspeichern   die   Maschinenkoordinaten   und nicht die Werkstückkoordinaten zeigt. Das hat mich zuerst ziemlich verwirrt.
Mit      dem   Button   „   Zum   Werkzeug   Messpunkt“   fährt   man   als   Nächstes   (wenn   man   nicht   schon   da   ist) über    den    Mess-Schalter    zum    Werkzeug    Messpunkt.    Mit    Button    Referenzpunkt    fährt    man    den Messschalter   an   und   speichert   somit   den   angefahrenen   Wert   der   Z-Achse   als   Referenzpunkt.   Die   Z- Achse   fährt   selbst   zum   Schalter   und   wieder   zurück   zum   Werkzug   Messpunkt.   Dieser   Vorgang   wird, solange    man    den    gleichen    Nullpunkt    verwendet,    nur    einmal    gemacht    -    denn    der    Eich-    oder Referenzpunkt     für     das     Ausmessen     des     Werkzeugs     ist     damit     gesetzt.     Das     Bild     unten     veranschaulicht dies. Die Maus auf die Markierung im Bild ziehen für einen größeren Ausschnitt.
Zum   Eichen   sind   der   Button   Referenzpunkt   und   das   UserDRO   rechts   daneben   zuständig.   Eine Anmerkung   noch   dazu.   Das   UserDRO   (Anzeige)   ist   deshalb   da,   weil   sich   unter   Mach3   die   Gültigkeit benutzereigener   Variablen,   die   in   einem   VB-Script   verwendet   werden,   lediglich   auf   das   VB-Script beziehen   und   nicht   weitergegeben   werden.   Wird   die   Variable   in   einem   anderen   VB-Script   benutzt, dann    ist    der    Wert    Null.    Je    nach    Software    (G-Code)    kann    man    hier    Starten    muss    aber    einen bestimmten   Punkt   anfahren.   Der   sichere   Weg   ist   das   Anfahren   des   Nullpunktes .   Die   Platine   kann nun   gefräst   werden.   Die   Software   sollte   nach Ablauf   des   Vorganges   halten,   die   Spindel   und   Wasser stoppen,   und   zum   Werkzeugwechsel   auffordern.   Die   gelbe   LED   Change   Tool   sollte   blinken.   Wir wechseln   nun   das   Werkzeug   -   im   Beispiel   anstelle   des   Stichels   einen   Bohrer.      Zu   Werkzeugwechsel fahren    wir    wieder    über    den    vorher    bestimmten    Punkt    über    den    Mess-Schalter    (Button    Zum Werkzeug   Messpunkt).   Und   nun   kommt   das   eigentliche   automatische   Vermessen,   indem   man   den Button   (Werkzeug   vermessen)   drückt.   Das   Werkzeug   fährt   zum   Mess-Schalter.   Beim   Erreichen   des Mess-Schalters   wird   der   vorher   gespeicherte   UserDRO   (Im   Bild   die   Anzeige   +24.2880)   als   Z- Position   übernommen.   Danach   fährt   das   Werkzeug   wieder   automatisch   den   Werkzeug-Messpunkt über   dem   Mess-Schalter   an   und   stoppt.   Nun   kann   man   mit   CYCLE   START   den   weiteren   GCODE ausführen.
Noch    ein    Hinweis.    Die    Buttons    Remember    und    Return    kann    man    ganz    prima    als    Start-    oder Rückkehrposition   im   Ablauf   verwenden.   Bei   meiner   Platine   wird   z.B.   ein   Werkzeugwechselpunkt eingebunden,    den    Mach3    dann    vor    jedem    Werkzeugwechsel    anfährt.    Mit    Remember    wird    die Position   gespeichert.   Nun   kommt   der   Werkzeugwechsel   und   das   Vermessen.   Danach   steht   das Werkzeug   (Z-Achse)   am   Werkzeugmesspunkt   über   dem   Probe-Schalter.   Mit   Return   fährt   Mach3 den   alten   Punkt   wieder   an   und   es   kann   mit   Start   weitergemacht   werden.   Jeder   vernünftige   GCODE bietet   Werkzeugwechsel   an.   Im   GCODE   sollte   die   Z-Achse   aus   dem   Werkstück   gefahren   werden, dann   M9   (Wasser   stopp),   M5   (Spindel   stopp)   und   dann   T3   M6   (Werkzeugwechsel)   kommen.   Hier kann    man    dann    wieder    mit    Remember    die    aktuelle    Position    speichern,    die    Werkzeugwechsel Prozedur   ausführen   und   mit   Return   zur   gespeicherten   aktuellen   Position   zurückkehren.   Mit   Cycle Start sollte im GCODE M8 (Wasser an) und M3 (Spindel an) wieder angeworfen werden.
Hier ein Auszug aus einem GCODE
N2400 Y47. N2410 X122.622 N2420 G00 Z5. M09 (Werkzeug aus dem Werkstück und Wasser Stopp) N2430 M05 (Spindel Stopp) N2440 (MACHINE DEFINITION CREATED BY UPDATEPOST.DLL) N2450 T3 M06 (Toolchange HM SCHAFTFRAESER DM 2 - ALU) (---- LED Tool Change blinkt ----) (---- Remember drücken - speichert aktuelle Position ----) (---- Werkzeugwechsel Prozedur wie oben beschrieben durchführen ----) (---- Return drücken - kehrt zur aktuellen Position zurück ----) (---- Start Cycle drücken - setzt Ablauf fort ----) N2460 (MAX - Z5.) N2470 (MIN - Z-1.2) N2480 G00 Z5. M08 (Alte z-Position nochmal anfahren und Wasser an) N2490 G00 X31.2 Y21.2 S2000 M03 (Spindel an) N2500 Z2. N2510 G01 Z-1.2 F100.
Buttons und DROs
Mach3Screen.exe   ist   das   Tool,   mit   dem   man   seine   eigenen   Buttons   und   DROs   einbinden   kann. Auf der    Homepage    von    Mach3    findet    man    die    Software    und    auch    ein    Wiki,    das    den   Ablauf    gut beschreibt.     Mit     Mach3Screen.exe     kann     man     seine     1024.set     aufrufen     und     ändern.     Eine Beschreibung    hierfür    gibt    es    auch    auf    der    Wiki    Seite .    Und    nicht    vergessen.    Die    1024.set abspeichern   und   dann   unter   Mach3   unter   "View   ->   Load   Screen"   aufrufen.   Zum   Erzeugen   eines DROs   klickt   man   auf   DRO   und   dann   an   die   Stelle   wo   man   es   haben   will.   Ein   Doppelklick   öffnet   dann ein Konfigurationsfenster.
Unser USERDRO hat die Nummer 1000. Zum   Erzeugen   eines   Buttons   geht   man   eigentlich   in   gleicher   Weise   vor.   Im   Bild   ist   beispielhaft   der Button "Zum Werkzeug Messpunkt" dargestellt.
Man sollte sich auf alle Fälle die Doku (Wiki) durchlesen. Nur so versteht man, was gemacht wird.
Inhalt der VB-Scripts
Ich übernehme keinerlei Haftung für etwaigen Schäden, die beim Nachmachen entstehen.
----------------------------------------------------------------------- Seite 6 ----------------------------------------------------------------------- Werkzeug Messpunkt setzen SetOEMDRO(1200,GetOEMDRO(83)) SetOEMDRO(1201,GetOEMDRO(84)) SetOEMDRO(1202,GetOEMDRO(85)) ----------------------------------------------------------------------- Seite 1 ----------------------------------------------------------------------- Zum Werkzeug Messpunkt Code("G00 G53 Z0.000") Code("G00 G53 X" & GetOEMDRO(1200)) Code("G00 G53 Y" & GetOEMDRO(1201)) Code("F10 G00 G53 Z" & GetOEMDRO(1202)) ------------------------------------------------------------------------- Referenzpunkt Code "G31 Z-10.0 F20" While IsMoving() Wend setuserdro (1000,GetVar(2002)) 'Zur Werkzeugwechselpos zurück Code("F10 G00 G53 Z" & GetOEMDRO(1202)) Code("G00 G53 X" & GetOEMDRO(1200)) Code("G00 G53 Y" & GetOEMDRO(1201)) ------------------------------------------------------------------------- Werkzeug vermessen Code "G31 Z-10.0 F20" While IsMoving() Wend setdro(2, Getuserdro(1000)) 'Zur Werkzeugwechselpos zurück Code("F10 G00 G53 Z" & GetOEMDRO(1202)) Code("G00 G53 X" & GetOEMDRO(1200)) Code("G00 G53 Y" & GetOEMDRO(1201)) -------------------------------------------------------------------------