CNC-MINI-FRÄSE: GRBL einrichten

Prinzipiell läuft die Mini-Fräse. Für den produktiven Einsatz fehlt aber noch Einiges. Das holen wir mit diesem Artikel nach …

GRBL ist das Betriebssystem auf dem Arduino Uno, dass die Fräse steuern wird. Der PC sendet nur sogenannten GCODE an den UNO. Der übersetzt die Befehle dann in Richtungs- und Schrittimpulse für die Schrittmotoren. Dabei werden die Impulse (STEP und DIR) vom Arduino mittels der DRV8825-Treiber in Leitungsimpulse umgewandelt. Diese Impulse regen in geeigneter Weise die jeweils 2 Wicklungen pro Schrittmotor an. Die Schrittmotoren wirken über Gewindestangen oder Trapezspindeln auf die Achsen. Die unterschiedlichen Hardwarekomponenten, wie zum Beispiel die Gewindesteigung, machen eine Einrichtung der GRBL-Firmware unumgänglich. Die Steuersoftware auf dem PC kann das nicht, denn sie arbeitet maschinenunabhängig. Das ist ein großer Unterschied zur Steuerung über den Parallelport, wie es im Auslieferungszustand war. Der maschinenseitige Firmwareanteil und sogar der gesamte Prozessor fehlen bei dieser Art der Ansteuerung. Deshalb muss eine Software wie MACH3 auch genau auf die Maschine eingestellt werden.

Die Parameter, die in der Grundkonfiguration in GRBL angelegt sind, lassen sich über den Befehl $$ auflisten. In der Software GRBL-Controller geschieht das zu Programmstart sogar automatisch. Doch der Reihe nach …

Nach dem Start von GRBL-Controller wird der richtige Port eingestellt:

Ein erfolgreicher Connect mit der Fräse bzw. mit dem Arduino sollte die Antwort sein:

An dieser Stelle bleibt die Anzeige meist kurz stehen, bevor durch das automatische Kommando $$ der aktuelle Parametersatz angezeigt wird:

Die Bedeutung aller Parameter lässt sich im Internet an diversen Stellen unter dem Stichwort GRBL ermitteln. Ich empfehle dazu diesen Link. Wichtig zu Anfang sind die Parameter von 100 bis 102:

$100=400.000 (x, step/mm)
$101=400.000 (y, step/mm)
$102=400.000 (z, step/mm)

Hier wird eingestellt, wieviele Stepps die Steuerung erzeugen muss um an der betroffenen Achse eine Bewegung von 1mm zu bewirken. Bei Fräsen dürften Riementriebe wohl kaum vorkommen. Also muss hier nach der Steigung der Gewindestange (Trapezgewindestange etc.) gesucht werden. Vorsicht: Einfaches Messen am Objekt kann trickreich sein. Denn Trapezgewindestangen haben meist 2 Gewindegänge oder sogar mehr. Das muss man beim Messen beachten!

Ich habe eine 8mm Trapezgewindespindel mit 2 Gängen. Die Steigung eines Gewindeganges ist 4mm pro Umdrehung. Ich habe Achtel-Microsteps eingestellt. Nach der Formel …

step/mm = Motorsteps pro Umdrehung * Microsteps / Steigung

… ergibt sich bei mir durch 200 * 8 / 4 der Wert 400.  Die Einstellung des Parameters erfolgt durch Eingabe in der Command-Zeile:

Das Ergebnis unserer Einstellungen lässt sich jetzt leicht überprüfen. In GRBL-Controller lassen sich die Achsen über die Pfeiltasten bewegen. Die Spindel sollte mit eingespanntem Bohrer oder Fräser frei sein und nicht das Fräsbett berühren.

Die ersten zwei Zeilen im Log-Fenster sind durch Betätigen des Z-Jogs nach oben entstanden. Ausführliche Informationen liefert zum Beispiel dieses Wiki.  G91 setzt das System auf relative Positionierung. Die eingegebenen Koordinaten sind also immer als Inkrement oder Dekrement zur aktuellen Position zu sehen. G01 startet eine Bewegung für die angegebene Achse mit dem nachfolgenden Wert. G01 X10 bewegt also die Spindel in X-Richtung um 10mm. G01 X-10 bewegt in die Gegenrichtung. Man sollte zunächst sehr kleine Beträge wählen, um nicht in die Achsenende zu fahren. Hat man den Bogen dann raus, kann es ans Messen gehen. G01 X100 bewegt also um 10cm (100mm). Da kann man schon recht verlässlich messen, ob die Parametereingabe richtig war.

Stimmt denn auch die Richtung? Man kann den Koordinatenursprung sowohl vorne links setzen oder hinten rechts. Das ist eine Frage, die man sich anhand der Gegebenheiten überlegen muss. Bei mir sitzt der Ursprung hinten rechts. Nach vorne wächst also Y und nach links wächst X. Von vorne sieht man also das Ergebnis auf dem Kopf. Hebt sich die Spindel (Z-Richtung), ist das in jedem Fall die positive Richtung.

Ich habe mir das auch angezeichnet, was für spätere Überlegungen nützlich sein kann. Wenn man jetzt mit den oben genannten Kommandos zur Achsbewegung arbeitet, ist eventuell eine oder mehrere Achsen falsch angesteuert. An der Elektronik braucht man dafür glücklicherweise nichts ändern. Auch das geht über die Parameter.

$3 – Direction port invert mask:binary

… wird mit der folgenden Tabelle gesetzt

Soll also sowohl die X- als auch die Z-Achse invertiert werden, ist es der Wert 5. Der wird nun wieder in der Befehlszeile mit $3=5 eingegeben. Auch die oben genannte Tabelle findet man im Link zu GRBL.

Diverse weitere Parameter können noch eingegeben werden. Ob das notwendig ist, wird sich später noch zeigen. Ich habe mal alles Andere beim Standard belassen.

Als nächstes wäre es sinnvoll sich ein passendes „Opferbrett“ zu besorgen, dass das maschineneigene Fräsbett schont. Denn wer will schon in die Maschine bohren?  Hier hat sich MDF als sehr brauchbar erwiesen. Kleine Bretter in der Größe unseres Fräsbereiches sollten im Baumarkt als preisgünstiger „Abfall“ zu finden sein. Ich habe relativ schnell etwas gefunden, obwohl es mit einem Zentimeter etwas dünn war. Also habe ich einfach zwei Bretter übereinander fixiert.

Im Bild ist hinten rechts die Markierung meines Koordinatennullpunkts zu sehen.

Wir fahren jetzt über die oben gelernten Kommandos vorsichtig soweit wie möglich in den Nullpunkt X und Y. Ein geeigneter Fräser mit etwa 2 bis 3mm Schneidendurchmesser sollte in die Spindel gespannt sein. Spindelmotor einschalten und dann vorsichtig mit kleinen Bewegungen in negative Z-Richtung fahren, bis der Fräser die Platte berührt. Dann noch 2mm weiter. Jetzt per Kommando in positiver X-Richtung soweit wie möglich fahren. Damit haben wir die hintere im Bild sichtbare Linie bzw. Rinne erzeugt. Sinnvollerweise rechnet man den gesamten Weg aus den Kommandos zusammen, um den maximalen X-Weg zu erhalten. Ich habe mich mit 180mm zufrieden gegeben. Das gleiche Spielchen jetzt mit Y. Da kann man ruhig mit einem 100mm-Schritt starten und dann kleiner werden. Zusammenrechnen und wir haben den maximalen Y-Weg. Das ist dann die linke Rinne im Bild. Das nächste Kommando lautet dann G01 X-(maximaler X-Weg). Nicht das Minus vergessen, denn wir bewegen uns wieder Richtung Nullpunkt. Das war die vordere Rinne. Jetzt noch G01 Y-(maximaler Y-Weg). Negativ !! Jetzt sollte der Fräser wieder auf der ursprünglichen Eintauchposition stehen. Mit G01 Z15 heben wir den Fräser 13mm über das Brett. Er war ja vorher 2mm im Brett. Wir haben jetzt den Arbeitsbereich auf der Platte angezeichnet, was auch bei der Ausrichtung für die Werkstücke später sinnvoll ist. Abmontieren sollte man das Brett jetzt natürlich nicht mehr.

Der ganze oben beschriebene Vorgang hilft bei der ersten Berührung mit der Fräse und sollte das Verständnis für die Koordinatenhandhabung stärken. Zudem zeigt es auch in gewisser Weise die Wiederholgenauigkeit der Maschine. Sollte der Fräser nicht genau am Eintauchpunkt angekommen sein, liegt es mit hoher Sicherheit daran, dass irgendwo zu großes Spiel in den Trapezgewindespindeln vorliegt oder der Spindelmotor nicht richtig befestigt ist oder die Treiberbausteine nicht richtig eingestellt sind und Schritte verlieren. Bevor es im nächsten Beitrag weitergeht, sollte das alles reibungslos funktionieren.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.