Nachdem die Balluff Laserlichtschranke schon eine ganze Weile im Schrank lag, bewegt sich beim Thema Werkzeuglängenmessung endlich etwas. Hier der erste Artikel:
Konzept
Aktuell haben wir noch keine Spindel mit automatischem Werkzeugwechsel, d.h. wir müssen auch beim Werkzeugwechsel innerhalb des selben Programms jedes Mal manuell am Werkstück anreißen um die Höhe des Fräswerkzeugs zu setzen. Das ist auch Dauer mehr als nervig.
Wieso Lichtschranke
Bei den meisten Maschinen in Hobby/Semi-professionellen Segment kommen mechanische Werkzeuglängensensoren zum Einsatz. Auf gut Deutsch wird das Werkzeug (also der Fräser) langsam gegen einen mechanischen Taster verfahren. Löst der Taster aus, stoppt die Maschine und die Länge des Werkzeugs wird in der CNC Steuerung gespeichert.
Gerade kleiner Fräser können dadurch beschädigt werden, wenn der benötigte Druck zum Auslösen des Tasters zu hoch ist. Außerdem kann bei mechanischen Systemen je nach Aufbau die Wiederholgenauigkeit, d.h. Reproduzierbarkeit des Messergebnisses, schwanken. Ebenfalls muss zur mechanischen Messung die Spindel gestoppt werden, was die Bearbeitungszeit verlängert.
Mit einer Laserlichtschranke kann bei voller Spindeldrehzahl (Man spricht hier auch von Arbeitsdrehzahl) und z.B. auch in radialer Richtung auch der Durchmesser (z.B. Verschleißkontrolle) gemessen werden. Möglich ist auch das CNC Programm um eine Kontrolle auf Werkzeugbruch zu erweitern… Die Möglichkeiten sind vielfältig.
Professionelle Systeme, etwa von Renishaw, setzen deshalb meistens auf eine Laserlichtschranke.
Wieso Laser
Im Vergleich zu IR Lichtschranken ist der Strahl bei einer Laserlichtschranke extrem stark gebündelt, was du einer höheren Genauigkeit führt. Außerdem ist der Laser besser gegen optische Störeinflüsse geschützt, da die erkannte Wellenlänge nur vom Laser selbst imitiert wird.
Professionelle Systeme setzen auf einen fokussiertem Laserstrahl. Damit lassen sich Messergebnisse im Bereich von ±0,1 μm (0,0001mm) und besser erreichen. Leider kosten so etwas ab 5.000 Euro aufwärts (z.B. Renishaw NC4) und ist für uns einfach nicht wirtschaftlich sinnvoll. Also muss ein Selbstbau her.
BGL000A
Wir verwenden eine gebrauchte BGL000A Laserlichtschranke vom Deutschen Hersteller Balluff. Der Neupreis liegt mit fast 280 Euro etwa 3x über dem Gebrauchtwert.
[table “” not found /]
Einbindung
Die Lichtschranke lässt sich einfach in PNP Schaltung, ähnlich wie bei einem induktiven Näherungsschalter, an die Steuerung einbinden. Exotischere Modelle besitzen eventuell noch einen weiteren Schaltausgang um den Betriebszustand zu überwachen.
Zyklus
Folgend der schematische Programmablauf zur Vermessung des Werkzeugs. Dieser wird über ein Macro in Mach3 realisiert.
- Z auf sichere Höhe fahren
- X/Y auf Koordinaten der Lichtschranke fahren (G00)
- Z auf 100mm über den Maschinentisch verfahren (G00)
- Z langsam auf 20mm über Maschinentisch verfahren (F100 G01)
- Anhalten, sobald die Lichtschranke durchbrochen wurde
- Setzen des Werkzeug Korrekturwerts
- Fortfahren mit dem Programm
Montageblock
Um die Lichtschrank sauber und mit Anschlagkante montieren zu können, habe ich aus einem Alublock eine Montage hergestellt. Hier noch in der Mache.
So lässt sich die Lichtschranke auch auf dem Nutentisch “aufgleisen”. Die endgültige Position auf der Maschine muss jedoch noch gefunden werden, damit so wenig Bearbeitungsraum wie möglich in Beschlag genommen wird.
Irgendwo habe ich im Internet eine Lösung gefunden bei der die Lichtschranke unter der Spindel eingeschwenkt wird… auf unnötige Mechanik will ich jedoch bewusst verzichten.
Testlauf
Die ersten echten Tests mit Lichtschranke und Messuhr waren erfolgreich – jetzt geht es an die Feinarbeit.
Gut:
Auch winzige Werkzeuge, wie etwa Gravierstichel, werden zuverlässig erfasst. Laut Datenblatt geht das bis 0,15mm.
Nicht so gut:
Taste ich das gleiche Werkzeug an der gleichen Position an (d.h. stehendes Werkzeug), habe ich durchweg Ergebnisse von max. ±1/100mm. Da wir jedoch keine indizierbare Werkzeugspannung haben, wandert dieser Punkt jedoch.
Bei Werkzeugen mit Radius oder Schneiden die nicht bis ins Zentrum des Fräsers reichen, sind die Ergebnisse noch Verbesserungswürdig. Hier erreiche ich eine Wiederholgenauigkeit von ca. ±3/100mm. Flache Fräser kommen auf ±1-2/100mm.
Messaufbau
Zum Überprüfen der Genauigkeit nutze ich eine normale Messuhr mit hydraulischer Klemmung. Diese ist unten an der Z Achse angebracht und misst parallel zur Spindelachse. Somit kann ich etwaige Positionierungsungenauigkeiten der Z Achse eliminieren.
Aktuell experimentiere ich mit der benötigten Drehzahl und der stufenlosen Erkennungseinstellung an der Lichtschranke selbst. Tendenziell wurde das Ergebnis mit niedriger Empfindlichkeit der Lichtschranke und maximaler Drehzahl (24.000 U/min) besser.
Verbesserungen / Für die Zukunft
Freiblasfunktion für das Werkzeug
Späne und Kühlmitteltopfen können das Messergebnis maßgeblich verfälschen und im schlimmsten Fall Werkstück und/oder das Werkzeug zerstören. Über ein kleines Ventil möchte ich den Fräser vorher mit Druckluft von sämtlichen Anhaftungen befreien
Sperrluft für die Optik
Damit die Optik des Lasers nicht auf Dauer durch Staub, Späne oder Kühlschmierstoff zugesetzt wird, soll der Laser ein Gehäuse mit Sperrluft über die Austrittsöffnungen bekommen. Kommerzielle Systeme nutzen hierfür eine feine Membran, welche selbst im drucklosen Zustand für fast absolute Dichtigkeit sorgt.
Der Einfachheit halber werde ich mich aber wohl auf eine Dauerhafte Öffnung beschränken, aus der dann permanent Druckluft austritt.
Hallo Andre,
es ist schon irre, dass ihr genau die gleiche Idee verfolgt wie ich mir der Gabellichtschranke wie ich.
Eure “Ungenauigkeiten” wundern mich jedoch etwas. Ich habe mir an meiner Maschine einen Ablauf programmiert, der bisher sehr gut funktioniert.
1. 1. Seite vom Werkzeug antasten. (Höhe etwa Mitte der Schneiden)
2. 2. Seite vom Werkzeug antasten. (Gleiche Höhe)
3. Aus den zuvor ermittelten Positionen die Mitte berechnen und dann in Null die Höhe antasten.
Das ganze mache ich bei ca. 2000-5000 1/min und es klappt sehr gut. Mehr als +/- 0,01 mm konnte ich noch nicht messen.
Vielleicht hilft euch der Tipp ja weiter.
Gruß Tobias
Hallo Tobias,
Vielen Dank für den ausführlichen Kommentar.
Ich hatte mich bei Renishaw inspirieren lassen – fand die kontaktlose Vermessung gerade für sehr kleine Werkzeuge super praktisch. Auch das Thema Verschleisskontrolle sollte sich damit abwickeln lassen.
Was die Werte angeht: Ehrlich gesagt habe ich noch nicht sonderlich viel Zeit in die Optimierung gesteckt. 1/100 sollte aber in der Tat machbar sein. Würdest du mir mal deinen Macro Code zeigen? Vielleicht habe ich bei mir auch einfach einen Denkfehler drin…
Was für eine Lichtschranke nutzt du (genaue Bezeichnung) und ist diese fokussiert oder unfokussiert?
Viele Grüße,
André
Hallo Andre kannst du bitte dein Macro teilen, würde den gerne für meine Lasergabel verwenden.
Hallo Tobias würdest du bitte dein Macro teilen, möchte auch so ein Werkzeug Taster bauen, weis aber nicht wie ich ein Macro richtig erstelle.
Hallo Dave,
ich bin zwar nicht Tobias, aber antworte trotzdem mal 🙂
Wir hatten zwischenzeitig auf Royal-CNC umgestellt, dort gibt es zu diesem Zweck eine eingebaute Routine. Ich werde am Wochenende mal schauen, ob ich das alte Testscript noch finde…
Grundsätzlich ist der Aufbau recht simpel:
1. Eilgang Z- in den Strahl
2. dann langsam wiede raus
3. und nochmal langsam rein
Die Aktivierungs/Deaktivierungspunkte 2 und 3 wurden gemittelt und entsprechend als Werkzeug-Offset an Mach3 übergeben. Die Spindel drehte bei der Antastung zuletzt mit 12.000 U/min.
Achtung – Lichtschranke ist nicht gleich Lichtschranke! Abhängig vom Strahl (Größe, Form, Fokusiert / Unfokusiert) und Lichtquelle (IR oder Laser) kommst du nur auf eine Wiederholgenauigkeit von 1-5/10 mm. Zur Werkzeugantastung sollten es schon 1-2/100 mm sein…
Grüße,
André
Moin!
Das Makro würde mich auch brennend interessieren! Könntest du das veröffentlichen, oder mir zuschicken, falls es für dich ok ist? Würde es gerne auch in meiner Fräse integrieren!
Ahoi!
Wir haben zuletzt das eingebaute Macro von RoyalCNC genutzt, arbeiten aber gerade an einer eigenen Implementiertung.
Dauert noch etwas…
VG,
André
Hallo Andre, habe auch Versuche gesartet. Aber mit einer Infrarot Lichtschranke. Hast Du den Code zur Werkzeug Längenvermessung und Durchmesser für mich? Kann das leider nicht. Meine Software ist Eding CNC. Mit der Bitte um Antwort. Gruß Ernst
Hallo Ernst,
der Lichtstrahl der Infrarotlichtschranke ist möglicherweise zu breit für eine genaue Messung, selbst bei unserer unfokussierten Laserlichtschranke ist die Genauigkeit begrenzt. Über eine kurze Rückmeldung zu deinen Erfahrungen würde ich mich aber trotzdem freuen.
Ich nutze Mach3, weswegen dir meine Macros wahrscheinlich nur wenig helfen werden. Oder suchst du nur den generellen Aufbau als GCode?
Grüße,
André
Grüße,
André
Hallo Andre,
habe mich “aufgrund” Deiner Konzeptbeschreibung (vor allen gefällt mir, dass eben ohne mechanischen Einfluss gemessen wird) dann kurzerhand entschlossen, dass auch so zu machen -> habe allerdings eine Balluff Lasergabellichtschranke mit 30 mm Abstand geholt (weil neu und die größeren waren mit dann doch zu teuer).
Konntest Du schon mehr Erfahrungswerte bzgl. Wiederholgenauigkeit sammeln, Drehzahl, Anfahrtsroutine, Mitteln mehrerer Messungen? (Kommentar von Tobias hier ist schon einmal hilfreich).
Vielen Dank schon mal
Grüsse Peter
Hallo Peter,
30mm sind für unser Einsatzzwecke eigentlich ausreichend. Einen Messerkopf, den wir ja nun dank mehr Spindelpower endlich sinnvoll einsetzen können, würde ich sowieso vorab vermessen.
Die Wiederholgenauigkeit lag nach diversen Versuchen mit Drehzahl und Geshcwindigkeit im Bereich von 2-3/100mm bei einfacher Messung. Erreicht habe ich die besten Ergebnisse mit 24.000 U und experimentieren mit der einstellbaren Empfindlichkeit an der Lichtschranke.
Mehr geht wohl nur mit einem fokussierten Laserstrahl (siehe Renishaw), was aber im Hobbybereich nicht bezahlbar ist.
Ich werde in Kürze nochmal einen Detailartikel zu dem Thema schreiben.
Grüße,
André
Moin
hier mal ein kleiner Minimalablauf als Grundlage für alle “Jäger uns Sammler”.
Ohne Kompensation ect.
Benutzung auf eingene Gefahr.
Probe_Test.nc
%Probe_Test
#10=0
#11=0
#12=0
G0 Z20
G0 X0 Y0
G31 Z-10 F200
G91 G0 Z-5
G90 G0 Y-10
G31 Y10 F200
#10=#2001
G0 Y10
G31 Y-10 F200
#11=#2001
G0 Y10
#12=[ABS[#10-#11]]
M1000 P#12
M30
M1000.m1s
Message(“#12=” & Param1())
Gruß
Robert