Thema: 3D Druck
Extruder kalibrieren am 3D Drucker

Extruder kalibrieren am 3D Drucker

Für ein gutes Druckergebnis muss der Extruder am 3D-Drucker gut kalibriert sein. Solange man nicht viele Veränderungen an seinem 3D Drucker vorgenommen hat, sollte der Extruder eigentlich das Filament so fördern, wie es sein muss.

Bisher habe ich sehr selten Abweichungen bei 3D Druckern im Werkszustand festgestellt. Sehr selten heißt dabei in einem von knapp 20 Drucker-Modellen.

Den Creality Ender 3 habe ich noch vor Verkaufsstart als Testgerät erhalten gehabt. Kann auch einfach sein, das war noch nicht die finale Version.

Trotzdem kann es nicht schaden, die Fördermenge wenigstens einmalig zu kontrollieren. Eventuell kann es notwendig sein die E-Steps (Extruder-Steps) in der Konfiguration des 3D Druckers anzupassen. Solltest du bereits Veränderungen an der Filament-Zuführung vorgenommen haben, ist es sogar recht wahrscheinlich notwendig.

DIY Extruder muss kalibriert werden
Solltest du selber einen Extruder gedruckt haben, musst du diesen auf jedenfall kalibrieren

In dieser Anleitung zeige ich dir, wie du deinen Extruder kontrollieren und kalibrieren kannst.

Was macht einen gut kalibrierten Extruder aus?

Ein gut kalibrierter Extruder liefert genau die Menge (eher Länge) Filament an das Hotend, welche von der ansteuernden Software erwartet wird.

Das bedeutet, wenn du per Befehl an den 3D Drucker sendest "5 Millimeter extrudieren" dann sollen auch genau 5 Millimeter gefördert werden.

Bowden Extruder vorbereiten

Einen Bowden Extruder der per PTFE-Röhrchen das Filament an das Hotend liefert kann man sehr leicht kalibrieren. Bei dieser Bauart muss nur das Filament am Hotend-Ende des Röhrchens gemessen werden, welches gefördert wird.

An einem 3D Drucker mit Bowden Extruder, musst du das Filament nicht zwingend vorbereiten für den Test.

Direct Extruder vorbereiten

Ein Direct-Extruder sitzt mit direkter Verbindung am Hotend. Das geförderte Filament wird also direkt in das Hotend gefördert. Keine Sorge, du muss nicht deinen ganzen 3D Drucker ausseinander bauen. Bei diesen 3D Druckern kann man den Extruder ähnlich einfach kalibrieren mit einem kleinen Trick.

Und zwar braucht man einfach ein bisschen Logik: Alles Filament was auf der Seite des Einzugs eingezogen wird, muss auf der anderen Seite wieder herauskommen. Da wir aber auf der Seite des Hotends nicht messen können, müssen wir vor dem Einzug messen.

Filament vorbereiten

Dafür nehmen wir uns ein Stück Filament und markieren uns diverse Test-Abschnitte auf dem Filament. Am besten nimmst du dazu einen Edding Filzstift, der auf dem Filament hält. Um das widerspenstige Filament gerade zu bekommen, kannst du es etwas unter Zug mit dem Föhn erwärmen. Da das Test-Stück nur für das Beschriften gerade sein muss, kannst du auch eine Schraubzwinge nehmen und es auf Spannung halten.

Markiere verschiedene Abschnitte einer Länge mehrfach für wiederholte Tests

Messe jetzt verschiedene Abschnitte mit 5, 10, 15, 20, und 25 Millimeter auf dem Filament ab. Auch größere Werte solltest du prüfen. Zeichne also auch Abschnitte mit 100mm oder sogar mehr auf. Am besten immer 2 oder 3 dieser einzelnen Abschnitte in einer Abfolge. So kannst du den Test einfach wiederholen oder auch summieren.

Tipp: Am besten lässt du am Anfang noch 10 Zentimeter Filament vor den Abschnitten stehen, damit du später das Filament wieder einfach in den Extruder einführen kannst und deine Abschnitte nicht direkt darin verschwinden.

Extruder kalibrieren

Schritt 1: Auslesen der aktuellen Konfiguration

Zunächst mal lesen wir die aktuelle Konfiguration des 3D-Druckers aus. Öffne eine Konsole per Octoprint, Simplify 3d, Repetier oder eine andere Software mit Konsolenzugriff auf den Drucker. Gebe dort diesen Befehl ein:

M503

In der Konsole solltest du nun eine Ausgabe wie diese erhalten:

21:03:41.165: N16 M503
21:03:41.168: echo: G21 ; Units in mm
21:03:41.170: echo: M149 C ; Units in Celsius
21:03:41.171: echo:Filament settings: Disabled
21:03:41.172: echo: M200 D1.75
21:03:41.173: echo: M200 D0
21:03:41.173: echo:Steps per unit:
21:03:41.174: echo: M92 X80.06 Y80.06 Z399.29 E408.00
21:03:41.176: echo:Maximum feedrates (units/s):
21:03:41.178: echo: M203 X400.00 Y400.00 Z50.00 E45.00
21:03:41.180: echo:Maximum Acceleration (units/s2):
21:03:41.182: echo: M201 X3000 Y3000 Z300 E10000
21:03:41.186: echo:Acceleration (units/s2): P<print_accel> R<retract_accel> T<travel_accel>
21:03:41.188: echo: M204 P1500.00 R10000.00 T3000.00
21:03:41.192: echo:Advanced: S<min_feedrate> T<min_travel_feedrate> B<min_segment_time_ms> X<max_xy_jerk> Z<max_z_jerk> E<max_e_jerk>
21:03:41.194: echo: M205 S0.00 T0.00 B20000 X10.00 Y10.00 Z0.30 E5.00
21:03:41.195: echo:Home offset:
21:03:41.196: echo: M206 X0.00 Y0.00 Z0.00
21:03:41.197: echo:Material heatup parameters:
21:03:41.199: echo: M145 S0 H200 B70 F0
21:03:41.199: M145 S1 H240 B110 F0
21:03:41.200: echo:PID settings:
21:03:41.202: echo: M301 P12.56 I0.91 D43.20
21:03:41.206: echo: M304 P138.56 I24.51 D195.80

Schreib dir am besten die Werte irgendwo auf oder mache einen Screenshot. Für uns relevant sind die "Steps per Unit" für die Achse "E" wie "Extruder", ganz am Schluss der Zeile:

21:03:41.173: echo:Steps per unit:
21:03:41.174: echo: M92 X80.06 Y80.06 Z399.29 E408.00

Der ausgelesene Wert ist pro Millimeter Filament zu verstehen. Der Drucker im Beispiel braucht also 408 Steps für einen Millimeter Filament.

Der Beispiel Extruder ist ein Getriebe-Extruder und braucht deshalb mehr Steps. Solltest du nur einen Bruchteil an Steps angezeigt bekommen, z.B. 90 bis 100, ist das ganz normal. Zum Beispiel für einen MK8 Extruder.

Schritt 2: Aktuelle Extruder-Kalibrierung testen

Jetzt geht es an die eigentlich Kalibrierung. Dafür extrudieren wir die aufgezeichneten Mengen gemessen am Ausgang von Markierung zu Markierung. Sprich, du schiebst das Filament soweit durch die Führung, bis eine Markierung gerade so herausschaut. Dann förderst du die aufgezeichnete Menge und es sollte sich danach die nächste Markierung an derselben Stelle befinden.

Um eine bestimmte Menge zu fördern, kannst du entweder die Steuerung in Octoprint verwenden oder du gibst einen Befehl in die Konsole des 3D Druckers ein.

Der Befehl sieht für 25 Millimeter wie folgt aus:

G1 E25

Mit "G1 E50" würden folglich 50 Millimeter extrudiert werden. Kapiert oder?

Damit kannst du nun extrudieren und anhand der Markierung sehen, ob die aktuellen Steps per Millimeter passen.

S0llte die geförderte Menge abweichen, mache eine Differenz-Markierung die du später messen kannst. Nimm dafür einen dünnen Filzstift in einer anderen Farbe.

Schritt 3: Ändern der Konfiguration

Wenn die Markierungen nicht genau gefördert wurden, dann musst du die Konfiguration der Steps per Millimeter anpassen.

Sei bitte sehr gründlich beim Messen und insgesamt, andernfalls kannst du deine Konfiguration deutlich verschlechtern! Speichere in jedem Fall die ursprünglichen Werte irgendwo, damit du  auf die ursprüngliche Konfiguration zurück kannst.

Steps berechnen bei Abweichungen

Um die Steps anpassen zu können, brauchen wir zunächst ein bisschen Mathematik:

408 Steps waren in der Ursprungskonfiguration für 1 mm vorgesehen.

Dann sind 408 mal 20 = 8160 Steps notwendig für 20 mm

Wenn nur 18 Millimeter extrudiert wurden in den 8160 Steps, dann bräuchten wir eigentlich 408 geteilt durch 18 mal 20 = 453.33 Steps für 20 mm Filament.

Wenn aber 22 mm statt 20 mm extrudiert worden wären, dann bräuchten wir 408 geteilt durch 22 mal 20 = 370.90 Steps für 20 mm Filament

Die ausgerechneten Beispiele sind fiktiv und du musst logischerweise deine Werte für diesen Rechenweg anwenden. Die neuen Steps berechnest du also so:

[Ursprüngliche Steps/mm] geteilt durch
[tatsächlich extrudierte Länge in mm] mal
[Sollmenge in mm] gleich
[neuer Wert für Steps/mm]

Neuen Wert für Steps/mm speichern

Den neuen Wert kannst du mit dem Befehl M92 speichern. Bei 370.90 Steps /mm sieht das zum Beispiel so aus:

M92 E370.90

Wichtig ist, man verwendet Punkt statt Komma im Wert, (370.90)

Dieser Wert ist nun temporär gespeichert. Bei nächsten Neustart ist dieser Wert wieder weg. Um den Wert dauerhaft zu speichern, musst du die Änderung noch mti dem Befehl M500 bestätigen.

M500
Damit wird die Änderungen im EEPROM gespeichert.

Bei vielen 3D Druckern ist der EEPROM-Speicher standardmäßig nicht aktiviert. In diesem Fall müsstest du die Firmware neu hochladem, um ihn zu aktivieren.

Eine andere Möglichkeit ist es, die Änderung in den Startcode des Slicers oder bei Octoprint einzutragen.

Die Octoprint-Variante finde ich charmanter. Da an jedem Octopi im Normalfall nur der eine Drucker hängt. Der GCODE aus dem Slicer geht eventuell auch an einen anderen Drucker. Um also den Wert in Octoprint zu hinterlegen, gehe in die Drucker-Einstellungen und hinterlege dort den M92-Befehl mit den ermittelten Steps:

Trage den Befehl M92 mit den Steps einfach in den Start-Bereich ein

Im Slicer kannst du den M92 Befehl ebenfalls im Profil beim Startcode hinterlegen. Das funktioniert für Cura, S3D, Slic3r und auch alle anderen.

So, damit hast du deine Einstellungen aktualisiert und bekommst jetzt hoffentlich bessere Ergebnisse.

Viele Grüße

tm

Author:

Technikmensch

Technikmensch @TechnikmenschDE
Mitte 30, Nerd... Auf technikmensch.de fröne ich meiner Leidenschaft Technik und setze mich kontrovers mit aktuellen Gadgets, Hardware und Software auseinander.

Mehr zum Thema lesen: