XYZ-Kalibrierung von 3D-Drucker-Schrittmotoren (+ Rechner)

Martin

Achtung: Links mit * sind Affiliate-Links. Ich verdiene etwas an qualifizierten Einkäufen, wenn du dich entscheidest, über diese Links einen Kauf zu tätigen – ohne zusätzliche Kosten für dich!


Das Ziel der XYZ Kalibrierung eines 3D-Druckers ist, dass sich die Nozzle in alle drei Richtungen genauso weit bewegt, wie vom Slicer erwartet.

Besonders bei Projekten, die aus mehreren 3D-gedruckten Teilen bestehen, sind die Maße wichtig. Ansonsten passen die jeweiligen Teile nicht gut ineinander. Die XYZ-Kalibrierung ist einer der größten Einflüsse auf die Maßhaltigkeit deiner Teile.

In diesem Artikel zeige ich dir Schritt für Schritt, wie du die Kalibrierung der einzelnen Achsen deines 3D-Druckers durchführst und wie du die Kalibrierung am Ende prüfst.

Es gibt aber noch einige andere wichtige Funktionen und Einstellungen, die du kalibrieren solltest. In diesem Artikel findest du einen ausführlichen Guide dazu: 3D-Drucker Kalibrierung: Schritt-für-Schritt Anleitung

Warum du dieser Anleitung vertrauen kannst

  • Ich habe schon über 50 3D-Drucker getestet.
  • Jeden dieser 3D-Drucker habe ich kalibriert.
  • Diese Kalibrierung führe ich regelmäßig bei all meinen 3D-Druckern durch.
  • Ich habe die XYZ-Kalibrierung also schon mehrere Hundert Male durchgeführt und das mit verschiedensten Firmwares, Menüs und Designs.

Genauigkeit der Kalibrierung der XYZ-Schrittmotoren

MessmittelGenauigkeitStreckeProzentualer Fehler
(= Genauigkeit/Strecke)
Lineal± 0,5 mm200 mm0,25%
Messschieber± 0,02 mm20 mm0,1%
Genauigkeit der XYZ-Kalibrierung mit verschiedenen Messmitteln

Je nachdem, welche Art von Messmittel du zur Verfügung hast, unterscheidet sich Kalibrierung. Wenn du einen sehr genauen Messschieber zur Verfügung hast, kannst du direkt einen Kalibrier-Würfel drucken und damit seine Kantenlänge messen.

Falls du keinen Messschieber besitzt, kannst du trotzdem eine relativ hohe Genauigkeit mit einem Lineal erzielen. Der Ablauf der Kalibrierung ist trotzdem im Prinzip identisch, du musst nur größere Strecken zurücklegen, damit der prozentuale Fehler kleiner wird. In diesem Artikel gehe ich davon aus, dass du keinen Messschieber zur Verfügung hast.

Schritt 1: Lineal an Achse befestigen

Lineal entlang der x-Achse

Die XYZ-Kalibrierung deines 3D-Druckers teilt sich in die jeweiligen Achsen auf. Dabei sind die einzelnen Schritte gleich.

Als Erstes musst du ein Lineal entlang einer Achse befestigen. Die x- und y-Achsen kannst du am besten kalibrieren, indem du ein Lineal auf dem Druckbett befestigst. Achte dabei penibel auf einen 90° Winkel zur jeweils anderen Achse.

Um die bewegte Strecke zu messen, benötigst du auch einen Zeiger. Du kannst dafür entweder die Nozzle verwenden, oder du befestigst einen geeigneten Gegenstand am Druckkopf. Im Bild oben habe ich einen Inbusschlüssel am Druckkopf befestigt.

Die Nozzle oder der Zeiger, den du in am Druckkopf angebracht hast, sollte die Startposition eindeutig anzeigen können. Im Beispiel oben im Bild zeigt die rechte Kante des Inbusschlüssels auf die 4 cm Marke des Lineals.

Lineal entlang der z-Achse

An der z-Achse kannst du das Lineal entweder am Rahmen befestigen oder du misst die Höhe des Druckkopfes direkt.

Im Beispiel oben im Bild gibt es am Druckkopf eine flache Fläche, an der ich das Lineal einfach anhalten kann. Die Höhe der gezeigten Kante relativ zum Druckbett lässt sich gut ablesen.

Notiere dir den Startpunkt der Bewegung. Am Ende benötigst du diesen Wert, um die zurückgelegte Strecke zu berechnen.

Schritt 2: Achse über das Menü bewegen

In diesem Schritt bewegst du die jeweilige Achse um einen bestimmten Wert. Bewege die Achse so weit wie möglich. Je länger die Strecke ist, desto kleiner wird der prozentuale Fehler der Kalibrierung.

Zurückgelegte StreckeAblese-GenauigkeitProzentualer Fehler der Kalibrierung
acc/a
5 cm± 1 mm± 2%
20 cm± 1 mm± 0,5%
Beispiel für den prozentualen Fehler der XYZ-Kalibrierung eines 3D-Druckers

Bei vielen 3D-Druckern kannst du keine gewünschte Bewegungslänge eingeben, sondern muss über Knöpfe Menü den Druckkopf oder das Druckbett in mehreren Schritten bewegen. Falls das Menü keine Anzeige über die aktuelle Position besitzt, musst du dir daher die Anzahl der Schritte merken und mit der Schrittlänge multiplizieren, um die gesamte Strecke zu bekommen.

Schritt 3: Zurückgelegte Strecke messen

Notiere dir den Endpunkt der Bewegung, nachdem du die jeweilige Achse bewegt hast. Aus dem Startpunkt und dem Endpunkt berechnen wir im nächsten Schritt die tatsächlich zurückgelegte Strecke und daraus die neuen XYZ-Steps.

Falls du einen Messschieber besitzt, kannst du nun die Kantenlänge des gedruckten Kalibrier-Würfels messen und diesen Wert als zurückgelegte Strecke verwenden.

Schritt 4: Auslesen der vorherigen XYZ-Steps

Die XYZ-Steps der Schrittmotoren geben an, wie viel Schritte die Schrittmotoren sich für eine Längeneinheit bewegen. Dies wird auch über G-Code definiert.

Bei manchen 3D-Druckern kannst du diese Werte direkt im Menü auslesen und verändern. Dies macht die Kalibrierung der XYZ-Achsen dieser 3D-Drucker wesentlich schneller. Bei anderen 3D-Druckern kannst du diese Werte jedoch weder sehen noch anpassen.

Falls du OctoPrint für deinen 3D-Drucker verwendest, kannst du durch bestimmte G-Code Befehle die Einstellungen auslesen und verändern. Da die Installation jedoch relativ aufwendig ist und du nur die Einstellungen für die Schrittmotoren verändern möchtest, ist die Chrome Erweiterungen gcode-sender besser dafür geeignet.

Um deinen 3D-Drucker über diese Erweiterung steuern zu können, musst du ihn per Kabel an deinen Computer anschließen. Unter den Einstellungen in der Erweiterung kannst du den jeweiligen Port auswählen. Gib bei der baud rate den höchstmöglichen Wert ein (115200). Du solltest nun in der Lage sein, die Erweiterung mit deinem 3D-Drucker zu verbinden und ihn darüber zu steuern.

M501″ ist der G-Code-Befehl, um die aktuellen Einstellungen des 3D-Druckers auszulesen.

Unter den vielen ausgegebenen Einstellungen wirst du auch folgende Zeilen finden:

  • echo:; Steps per unit:
  • echo: M92 X80.20 Y80.20 Z400.00 E390.00

Das hier ist die Bedeutung der relevanten Parameter:

  • X80.20: die aktuellen Schritte pro Längeneinheit des X-Motors
  • Y80.20: die aktuellen Schritte pro Längeneinheit des Y-Motors
  • Z400.00: die aktuellen Schritte pro Längeneinheit des Z-Motors
  • E390.00: die aktuellen Schritte pro Längeneinheit des Extruder-Motors (wie du den Extruder kalibrierst, kannst du hier nachlesen)

Jetzt hast du alle Werte, um die neuen XYZ-Steps auszurechnen und die Genauigkeit deines 3D-Druckers zu verbessern.

Schritt 5: Berechnung der neuen XYZ-Steps


Mit den gemessenen und ausgelesenen Werten kannst du mit obigem Rechner deine neuen XYZ-Steps ausrechnen. Die Formel dafür lautet wie folgt:

Vorherige X/Y/Z-steps * (Länge der Bewegung / (Endpunkt -Startpunkt))

Oder im Falle eines Kalibrier-Würfels:

Vorherige X/Y/Z-steps * (theoretische Kantenlänge / tatsächliche Kantenlänge)

In unserem Beispiel war der Startpunkt bei 40 mm auf dem Lineal. Die Länge der Bewegung sollte 200 mm betragen und der gemessene Endpunkt lag bei 241,5 mm. Das heißt, dass die Bewegung in x-Richtung zu weit war. Die Steps des X Schrittmotors der x-Achse sind also zu hoch. Daher sind die neuen X-Steps niedriger als vorher.

Die vorherigen X-Steps betrugen 80,20 und mit den eingegebenen Werten der Bewegung folgen daraus zu neuen X-Steps von 79,60.

Schritt 6: Eingabe der neuen XYZ-Steps

Die neuen XYZ-Steps kannst du nun über das Menü, über OctoPrint oder mit dem gcode-sender in deinem 3D-Drucker speichern.

Falls du es über G-Code machen möchtest, lautet der Befehl dafür M92. Nach dem Befehl folgen die neuen Parameter, die gespeichert werden sollen.

Das ist wäre der G-Code Befehl, um die neuen X-Steps aus unserem Beispiel an den 3D-Drucker zu senden:

  • M92 X79.60

Wiederhole dies für die beiden anderen Achsen und speichere die neuen Einstellungen mit dem Befehl M500.

Falls du im Menü deines 3D-Druckers die neuen XYZ-Steps nicht eingeben kannst und du auch nicht manuell im G-Code etwas verändern möchtest, kannst du im Slicer die Skalierung prozentual anpassen. Dies musst du dann jedoch für jeden Druck machen.

Schritt 7: Prüfen der Kalibrierung

Damit du sicher gehen kannst, dass der 3D-Drucker die neuen Einstellungen übernommen hat, kannst du sie erneut mit dem M501 G-Code abfragen.

Danach kannst du erneut eine Bewegung durchführen und die eingegebene mit der gemessenen Strecke miteinander vergleichen. Falls der die Nozzle relativ zum Druckbett um genau die eingegebene Strecke verfährt, ist die Kalibrierung abgeschlossen.

Schritt 8: XYZ-Würfel drucken und messen

Um auf Nummer sicher zu gehen, drucke ich nach der XYZ Kalibrierung immer noch einen Kalibrier-Würfel und messe seine Kantenlänge mit einem Messschieber. Er soll eine Kantenlänge von 20 mm haben. Wenn die Kalibrierung nicht erfolgreich war, würde die gemessene Kantenlänge abweichen.

Achte beim Messen der Kantenlänge jedoch darauf, dass du keinen Elefantenfuß oder sonstige Druckfehler in deine Messung einbeziehst. Du kannst zum Beispiel nur die Mitte messen oder die oberen und unteren Schichten mit einem Seitenschneider entfernen.

Zwar ist die XYZ-Kalibrierung nicht der einzige Einflussfaktor auf die Maßhaltigkeit der gedruckten Teile, jedoch eine der größten. Damit bist du genauen Teilen, die du auch für mechanische Anwendungen verwenden kannst, einen Schritt näher.


Achtung: Diese Website ist Eigentum von Martin Lütkemeyer und wird von Martin Lütkemeyer betrieben. Martin Lütkemeyer ist Mitglied bei Partnerprogrammen von Amazon Services LLC und anderen. Dies sind Affiliate-Werbeprogramme, die es Webseiten ermöglicht, Werbeeinnahmen durch Werbung und Verlinkung mit Amazon.com und anderen zu erzielen. Die mit * markierten Links sind Affiliate-Links.