Triffid Hunter's Calibration Guide/de

From RepRap
Revision as of 08:54, 2 January 2015 by Ubit (talk | contribs) (Z height)
Jump to: navigation, search


Vorwort

Dies ist ein erster Versuch den kompletten Guide von Triffid ins Deutsche zu übersetzen. Ich werde nur sporadisch Zeit dazu finden aber ich Versuche nach und nach den gesamten Text hoffentlich vernüftig zu übersetzen. Selbst habe ich den größten Teil vom Guide selber bei meinem Drucker durchgeführt und speziell den Teil der Extruder-Kalibrierung hat mir so gut gefallen, dass es Wert ist diesen Guide zu übersetzen.

Ich musste wegen der Restriktionen vom Reprap-Wiki zunächst die Links so bearbeiten, dass sie nicht mehr funktionieren. Das wird geändert, sobald ich das darf. :(

Voraussetzungen

Werkzeuge

  1. Messschieber
  2. Bügelmessschraube (falls vorhanden)

Kenntnisse

  1. Anzahl der Vollschritte pro Umdrehung der Schrittmotoren. (1,8° Schrittwinkel = 200 Vollschritte, 0,9° Schrittwinkel = 400 Vollschritte, usw.)
  2. Kenntnis über die Einstellung der Mikroschritte des Schrittmotortreibers. A4988 meist 16x Mikroschritte, DRV8825 meist 32x Mikroschritte.
  3. Zähnezahl der Riemenscheiben. Sehr oft 20 Zähne bei GT2 Riemen.
  4. Teilung des Zahnriemens. GT2 = 2mm, T2,5 = 2,5mm, T5 = 5mm, HTD3m = 3mm
  5. Anzahl der Zähne des Extrudergetriebes oder Übersetzungsverhältnis

Sonstiges

  1. Finde (und beseitige) Umkehrspiel an allen Achsen, sonst wirst du keine genauen Teile produzieren können.
  2. Den Online RepRap Calculator (englisch) aufrufen um die Anzahl der Schritte pro mm, Schichtdicke und Beschleunigung zu ermitteln

XY Schritteinstellung

Bei der Nutzung von Zahnriemen kann die Anzahl der Schritte pro mm für die X- und Y-Achse sehr einfach berechnet werden. Eine weitere Kalibrierung der Achsen ist idR. nicht notwendig. Sollte man am Druckergebnis grobe Maßabweichungen feststellen, sollte man die Berechnung überprüfen und ggf. Fehler am Drucker suchen.

Die grundlegende Formel ist:

(vollschritte_pro_umdrehung * anzahl_mikroschritte) / (zahnriemen_teilung * zähnezahl) = schritte_pro_mm

Einige typische Beispiele:

// 1,8° NEMA 17 mit GT2 Riemen und 20Z Riemenscheibe
(200 * 16) / (2 * 20) = 80

// 1,8° NEMA 17 mit T2,5 Riemen und 20Z Riemenscheibe
(200 * 16) / (2,5 * 20) = 64

// 1,8° NEMA 17 mit HTD-3M und 20Z Riemenscheibe
(200 * 16) / (3 * 20) = 53.333

Z steps

Die meisten RepRap Drucker nutzen Gewindestangen um die Z-Achse anzutreiben. Zur Berechnung des Verfahrwegs muss der Drehwinkel und die Gewindesteigung bekannt sein.

Die grundlegende Formel ist:

(vollschritte_pro_umdrehung * anzahl_mikroschritte) / gewindesteigung = schritte_pro_mm

Einige typische Beispiele:

// 1,8° NEMA 17 mit M5 Regelwinde:
(200 * 16) / 0.8 = 4000

// 1,8° NEMA 17 mit M8 Regelwinde:
(200 * 16) / 1.25 = 2560

// 1,8° NEMA 17 mit Tr8x1,5mm:
(200 * 16) / 1,5 = 2133,3333

An manchen Druckern werden die Z-Spindeln über einen Zahnriementrieb bewegt. Nutzt man am Motor und an den Spindeln die gleichen Riemenscheiben kann die Rechnung von oben unverändert übernommen werden. Sind am Motor und den Spindeln verschiedene Riemenscheiben verbaut, muss das Übersetzungsverhältnis mit einbezogen werden.

E steps/Extruder Schritte - DE

Es gibt nahezu unendlich viele Varianten. Neben dem allseits bekannten "Wade"-Extruder der mit einer großen Untersetzen eine verzahnte Schraube (Hobbed Bolt) antreibt, gibt es die direkt angetriebenen Extruder (Direct-drive) bei der die Förderschraube ohne Untersetzung direkt angetrieben wird, wobei der Motor auch ein internes Getriebe besitzen kann. Typisch für die direkt angetriebenen Extruder sind Förderräder vom Typ MK7 bzw. MK8.

Neben den Extrudern die direkt über dem Hotend sitzen gibt es noch die sogenannten Bowden-Extruder. Der einzige Unterschied ist, dass hier der Extruder separat angebracht wird und das Filament über einen Bowdenschlauch zum Hotend gefördert wird.

Berechnung

Bei einen typischen Wade-Extruder, wird die Förderschraube aus einer M8-Schraube gefertigt. Dort beträgt der "effektive Durchmesser etwa 7mm. Beim Direct-Drive MK7 Förderrad beträgt der effektive Durchmesser ca 10.56mm. Das sind nur Anhaltspunkte um sich an einen korrekten Wert anzunähern. Später wird man diesen Wert genauer ermitteln.

Die Standard-Formel ist:

E_schritte_pro_mm = (motor_schritte_pro_umdrehung * micro_schritte) * (großes_zahnrad_zähnezahl / kleines_zahnrad_zähnezahl) / (effektiver_durchmesser_förderschraube * pi)

Einige typische Beispiele:

// Klassischer Wade mit einer 39:11 Getriebeuntersetzung
(200 * 16) * (39 / 11) / (7 * 3.14159) = 515.91048

// Gregstruder mit einer 51:11 Getriebeuntersetzung
(200 * 16) * (51 / 11) / (7 * 3.14159) = 674.65217

// Gregstruder mit einer 43:10 Getriebeuntersetzung
(200 * 16) * (43 / 10) / (7 * 3.14159) = 625.70681

// MK7 Direct Drive mit 2engineers 50:1 Planetengetriebe-Untersetzung
(48 * 16) * (50 / 1) / (10.56 * 3.14159) = 1157.49147

// MK8 Direct Drive ohne Untersetzung
(200 * 16) * (1 / 1) / (7 * 3.14159) = 145.54055

Messung

Benötigte Werkzeuge: Messschieber oder ähnliches welches präzise 100mm messen kann.

  1. Entferne das Hotend vom Extruder, sodass du kein Filament verschwendest.
  2. Führe dein Filament etwas hinein.
  3. Benutze den Extrudereingang als Referenzpunkt und markiere das Filament von dem Punkt aus 120mm.
  4. Sage dem Drucker das er 100mm Filament fördern soll.
  5. Messe jetzt zwischen Extruder und der Markierung. Ist der Abstand mehr als 20mm wird zu wenig gefördert, ist der Abstand weniger wird zu viel gefördert.
  6. neue_e_schritte = alte_e_schritte * (100 / (entfernung_zwischen_extruder_und_markierung + 80))
  7. Gebe den neuen Wert in deine Firmware ein und übertrage diese auf dein Board. Wenn Eeprom aktiviert ist kann man bei Sprinter/Marlin mit M92 Ennn den Wert temporär setzen. Bei Repetier geht das mit M206 T3 P200 Xnnn.
  8. Wiederhole das ganze ab Schritt 3 bis du zwischen 96-104mm bist und fahre mit dem Guide fort. Die perfekte Abstimmung erfolgt später.
  9. Wenn du die Werte ins EEPROM eingetragen hast brauchst du die neuen Werte erst einmal nicht direkt in die Firmware eintragen und neu flashen. Diese Werte warden später noch genau ermittelt. Warum? Der Druck im Hotend verändert noch die Menge die gefördert wird. Ggf. muss man auch noch den Anpressdruck am Extruder erhöhen und dadurch verändert sich der effektive Durchmesser vom Förderrad.
  10. Montiere jetzt wieder dein Hotend.

Z Höhe

Bei Z=0 sollte man ein einzelnes Stück Papier so zwischen Düse und Druckbett bewegen können, dass man das einen Widerstand spürt, wenn man das Papier bewegt. Es sollte sich aber nicht auffalten wenn man das Papier unter der Düse schiebt. Das ist ein einfacher, schneller und effektiver Test für die Ausrichtung des Druckbettes (man sollte das an 4 Ecken machen). Der kleine Abstand ist eine fast perfekte Kompensation für die thermische Ausdehnung des Hot-Ends welche dafür sorgt, dass das Hot-End im Druck länger ist als im kalten Zustand.

Anstatt den Endschalter endlos zu verstellen kann man einfach ein Makro schreiben welches die Z-Achse auf den Endschalter fährt (G28 Z0) und dann G92Z-nnn sendet wobei -nnn die negative Position des Endschalters ist. Natürlich muss dazu der Endschalter unter Z=0 liegen (nicht zu viel sonst kann man das Druckbett oder die Düse beschädigen). Ideal ist eine Einstellung, wenn die Düse im kalten Zustand das Druckbett gerade eben berührt und man dann G92 Z-0.1 (oder die gemessende thermische Expansion) sendet. Beachte, dass die meisten Slicer einen Home-Befehl gefolgt von G92 Z0 als Startcode senden - also muss man den Startcode des Slicers prüfen und ggf. anpassen. Mittlerweile gibt es viele justierbare Endschalter die eine große Zeitersparnis darstellen.

Wenn der Z=0 Punkt korrekt gesetzt ist, wird der erste Layer minimal dicker als die folgenden Layer - aber nicht extrem dicker. Die meisten Slicer sind per Default so eingestellt, dass sie beim ersten Layer etwas mehr Material extrudieren und man kann das einstellen bis man eine perfekte Extrusion für die erste Schicht bekommt (siehe unten).

Die Haftung auf dem Druckbett ist stark abhängig vom korrekten Z=0 Punkt. Wenn Du nicht genug Haftung hast, drucke langsamer mit einem niedrigeren Z=0 Punkt so dass der erste Layer mehr gequetscht wird. Ensprechend erhöhe den Z=0 Punkt, wenn der erste Layer zu stark gequetscht und die Haftung zu groß ist.

  1. Finde den passenden Z=0 Punkt
  2. Sende G92 Z0.
  3. Bereite den Drucker für den Druck vor - Heizbett erhitzen, Filament laden etc.

Slicer Einstellungen - DE

Layer Höhe, Extrusion Breite

Diese Werte sind recht einfach zu erklären. Wenn dein Drucker eine Spur Plastik erzeugt, dann hat diese eine Höhe und eine Breite. Diese Werte must du wählen.

Gute Resultate bekommt man, wenn die Layer-Höhe weniger als 80% des Düsendurchmessers und die Extrusionsbreite gleich oder etwas größer als der Düsendurchmesser ist. In den meisten Fällen erzeugt eine Layerhöhe von ca. 50% die besten Ergebnisse.

Beispiel: Eine Düse mit 0.4mm, deine maximale Layerhöhe ist demnach 0.4*0.8= 0.32mm (besser 0.4*0.5= 0.2mm) und deine Extrusionbreite sollte 0.4mm oder größer sein.

Du kannst auch niedrigere Werte für Höhe und Breite nutzen und wirst gute Ergebnisse bekommen. Die Slicing-Software berechnet automatisch die erforderliche Menge anhand der gewählten Werte. Ist gib kein echtes unteres Limit bei der Layerhöhe - Das Limit ist deine Erfahrung den Kunststofffluss bei niedrigen Höhen konstant zu halten. Ein paar Reprapper haben es geschaft mit Höhen von 5µm (0.005mm!) zu drucken.

Ich selbst nutze bei einer 0.4mm Düse eine Layerhöhe von 0.2mm. Triffid schreibt sogar, dass er unabhängig vom Düsendurchmesser eine Layerhöhe von 0.2mm und eine Extrusionsbreite von 0.5mm nutzt.

Slic3r wählt selbst die Extrusionbreite in Abhängigkeit deines Düsendurchmessers. Unter den Advanced Settings kann man eine Extrusionbreite wählen. Je nach Modell kann es hier sinnvoll sein eine andere Breite zu wählen um die Wände schön zu drucken.

Zusatz: Der gesamte advanced Bereich in Slic3r bezieht sich immer auf die Extrusionsbreite. Wenn ich z.B. beim Topfill anstatt 0 (Standard) 125% (entspricht 0.5mm bei einer 0.4mm-Düse) angebe, dann werden auf eine Fläche mit einer Breite von 10mm jetzt genau 20 Reihen erzeugt. Wenn die Standardeinstellung beibehalten würde, wären das 25 Reihen. Es wird nicht mehr Plastik auf der gleichen Fläche aufgetragen sondern nur anders verteilt (Wenn jemand das besser erklären kann, bitte ergänzen!)

Hotend Temperatur - DE

Jede Sorte Plastik, unterschiedliche Farben, unterschiedliche Hersteller, haben eine eigene ideale Temperatur. Z.B. drucke ich (Triffid) undurchsichtiges PLA bei 165°C mit hervorragenden Ergebnissen, aber das durchsichtig PLA braucht 180°C!

Jeder Drucker wird eine andere Temperatur brauchen, da die Termistoren immer ein wenig unterschiedlich sind. Selbst beim gleichen Hotend vom gleichen Hersteller können die Temperaturen unterschiedlich angezeigt warden.

So finde ich die optimale Temperatur für jede Rolle Filament:

  1. Wähle ein einfache Modell, welches groß genug ist, sodass du während des Druckens das Infill sehen kannst.
  2. Gucke dir vorher noch die Förderschraube an. Sie sollte sauber sein und keinen Plastikabrieb vom alten Filament haben.
  3. Ziehe die Spannrolle vom Extruder fest genug an. "Wenn deine Finger weh tun und du dennoch das Filament nicht durchschieben kannst" FEST! Eine lose Spannrolle gibt exakt die gleichen Symptome wie eine zu niedrige Temperatur.
  4. Starte mit dem Drucken...
  5. Verringere alle 2 bis 3 Layer die Temperatur um 5°
  6. Wenn das Infill statt Linien eine Reihe an Punkten erzeugt, erhöhe die Temperatur um 10°.
  7. Beobachte den Druck weiter und erhöhe die Temperatur um weitere 5° wenn du wieder Punkte sehen solltest. Wenn sich die einzelnen Layer lösen solltest du die Temperatur weiter erhöhen.
  8. Schreibe dir die Temperatur für genau das Filament am besten irgendwo auf. Die nächste Rolle wird wieder eine andere Temperatur brauchen.

Bed Temperature

Bed adhesion is critically important for quality prints. With the right amount of bed adhesion, your parts will:

  1. stick to the bed
  2. not curl or warp
  3. not exhibit 'hourglass' warping, and
  4. detach by themselves when the bed is cool.

This procedure helps attain 1 through 3 by finding the correct bed surface temperature. 4 is obtained by experimenting with various bed coatings such as PVA wood glue (best for PLA), UHU Glue (for nylon), automotive window tint, hairspray, ABS juice, sugar water (ABS), etc.

  1. Pick a starting temperature. a little too high is better than too low for this test. Suggestions: 110°C for ABS, 65°C for PLA.
  2. Start a print. If your first layer gets poor adhesion, increase by 3-5° and start again.
  3. At layer 2, send M104 S0 so your nozzle heater turns off. LEAVE THE BED HEATER ALONE.
  4. At layer 3, pause the print and move the nozzle away from it. LEAVE THE BED HEATER ALONE.
  5. Prepare/consume a <favourite beverage> while you wait for bed surface temperature to reach thermal equilibrium. This should take 10 minutes at most, generally 5 minutes is plenty.
  6. Remove the print from your bed. If it is soft or stretchy, your bed temperature is too high. Reduce by 5° and start again. It should behave almost the same as when it is cold.
  7. When your bed temperature is correct, your part will have hardened while you consumed <favourite beverage> and if you set your bed temperature 5° higher it will remain soft.

You should generally print your first layer with the bed about 10° hotter than the regular layers' temperature, to ensure that the plastic is very sticky and gets a good grip.

For reference, the SURFACE temperature of your bed (NOT the temperature measured by your sensor) should be around 105°C for ABS, and around 57°C for PLA.

Your thermistor WILL sense a higher temperature than the surface – a gradient of several degrees forms across your glass. DO NOT muck with thermistor tables or move your thermistor to the surface. You WANT it close to the heater so it can respond quickly and give a short feedback loop. Just find whatever number gets the surface to the right temperature, and stick with it!

After performing this procedure, if your prints warp off the bed mid-print at ends or corners, try adding a brim (Slic3r/Cura setting) and experimenting with various bed coatings. PVA wood glue diluted very thinly in water is excellent for PLA, and certain brands of hairspray are reportedly excellent with ABS.

E Steps Fine Tuning/Extruder Feineinstellung - DE

Nachdem jetzt alles recht nahe an den idealen Werten ist, kommt die Feineinstellung vom Extruder!

  1. Finde ein Testteil mit ebenen Oberflächen, z.B. dieses hier "5mm Calibration Cube Steps"
  2. Slice das Teil mit 95% "Rectlinear Infill". Nutze eine Layerhöhe mit der du gut klar kommst - je niedriger die Layerhöhe, umso genauer das Ergebnis am Ende der Kalibrierung. Ich nutze 0.2mm für einen ersten Test. Wenn man dann noch das Letzte heraus holen möchte kann man den Test noch mit einer Höhe von 0.1mm wiederholen.
  3. Druck es aus.
  4. Ignoriere die ersten 5 bis 6 Layer da diese noch sehr stark abhängig sind vom ersten Layer. Wenn es offensichtlich zu viel oder zu wenig ist, dann verändere die Extruder-Schritte bzw. Z=0 und wiederhole den Druck.
  5. Beobachte den Infill. Wenn du keine kleinen Lücken zwischen den Linien erkennen kannst, dann reduziere die Extruder-Schritte um 0.5%. Wiederhole das alle 2 Layer bis du kleine Lücken erkennen kannst. (Bei aktiviertem EEPROM geht das sehr gut über die E-Steps. Marlin/Sprinter über M92 Ennn. Bei E-Steps unter 200 (Direct-Drive) kann man in 1er Schritten reduzieren. Z.B. von e-steps = 145 mit M92 E144, analog bei Repetier mit M206 T3 P200 Xnnn. Bei Untersetzen Extrudern (Wade etc.) reduziere die Schritte in 5er Schritten)
  6. Jetzt beobachte den Top-Fill. Wenn du kleine Lücken erkennst, dann erhöhr die Schrittrate wieder in ähnlichen Schrittgrößen wie in Punkt 5 beschrieben, bis du keine Lücken mehr siehst.
  7. Wiederhole das ganze ab Schritt 5 bis du kleine Lücken im Infill siehst und keine im Top-Fill.
  8. Jetzt ist deine Extruder-Schrittrate perfekt eingestellt! Speichere die Werte jetzt in deiner Konfiguration.

Finish

Now print your favourite calibration piece (e.g., ultimate calibration) and see how it measures!

Optional: Switch to volumetric E units

Note: as of Feb 1, 2014, Marlin supports volumetric E units natively, without this modification. Just send an M200 D<millimeters> to set filament diameter before your print, and the Marlin settings below are unnecessary. You still need to do step 3 (change the filament diameter in your slicer to scale the output to cubic millimeters).

It seems silly to me to have to reskein if you change filament diameter (i.e., when switching colours – or printers!). Follow these instructions if you want to use mm^3 units for E instead of mm.

  1. Record the filament diameter setting you've been using in your slicer.
  2. Calculate (filament_diameter / 2) ^ 2 * PI. For filament_diameter = 3.0mm, this is almost exactly 7. For 1.75mm filament, it's almost exactly 2.4.
  3. Change your filament diameter in your slicer to 2*sqrt(1 / pi) = 1.128379
  4. Divide your E_steps by the number from Step 2.
  5. Multiply all your E-related speeds and accelerations (esp. maximums in firmware config!), and retract distance by the value from Step 2.
  6. Repeat E steps calibration above. Your first print should be extremely close.

Now you can reuse the same gcode over and over again, and simply alter E steps with M92 when you change filament, or use the same gcode on another printer.

Rationale

We currently have 3 tunables affecting one measurable - extrusion multiplier, filament diameter and E steps all affect the amount of plastic extruded.

Filament diameter does not change significantly - it should not change mid-print, and only changes by a small amount when switching from one roll of filament to another.

It should be possible to set two of these tunables to fixed values, and alter only the 3rd when necessary.

It is sensible to choose the tunable which is easiest to alter - this is E steps which can be altered at any time (even mid-print) by sending M92 Ennn.

The slicer calculates the volume of filament to extrude for each line segment. Then, it takes this volume and divides it by (filament_diameter / 2) ^ 2 * PI to find the distance of filament to extrude.

SO if we alter our filament diameter such that (filament_diameter / 2)^2 * PI == 1.0, then the E words in our gcode will be in units of mm^3.

Since our new unit is 7x bigger (area of a 3mm diameter circle is ~7mm^2, so 1mm(length) becomes 7mm^3(volume), for 1.75mm filament the factor is 2.4x), we have to adjust our retraction distance, and E steps and acceleration to suit the new units.

See my blog post for more info.