RepRap: Unterschied zwischen den Versionen
(→Filamente: -> 3D-Drucken) |
(→Während des Drucks: Space 1.0-Problem entfernt) |
||
Zeile 164: | Zeile 164: | ||
==== Während des Drucks ==== | ==== Während des Drucks ==== | ||
− | |||
− | |||
Während des Drucks kann mit dem G-Code M220 die Geschwindigkeit aller Druckoperationen geändert werden: | Während des Drucks kann mit dem G-Code M220 die Geschwindigkeit aller Druckoperationen geändert werden: | ||
M220 S<Speed> | M220 S<Speed> |
Version vom 30. Januar 2018, 23:41 Uhr
RepRap | |
---|---|
Beschreibung: | 3D-Drucker |
Status: | working (Was heißt das?) |
Kontakt: | larsan, Daniel Bohrer, Sintox, #Druckberechtigte |
Usage Policy: | nach Einweisung durch Druckberechtigte |
Links: | Octoprint auf dem Rapsberry |
- Auf dieser Seite werden nur die Besonderheiten des RepRap dokumentiert, die Druckanleitung und allgemeine Informationen gibt es unter 3D-Drucken.
- Alles zum alten Drucker von DanielWillmann unter Reprap/Parent.
Der RepRap ist einer unserer 3D-Drucker. Es ist ein RepRapPro Mendel mit ein paar kleinen eigenen Zusätzen.
Inhaltsverzeichnis
- 1 Hinweise zur Benutzung
- 2 Druckberechtigte
- 3 Logbuch
- 4 Software
- 5 Modelle
- 6 Workflow
- 7 Erweiterungen
- 8 Triple-Extruder-Druck: Mehrfarbdruck / Multi-Material-Druck
- 9 Probleme
- 10 Verwandte Projekte
Hinweise zur Benutzung
Druckberechtigte
- Siehe 3D-Drucken#Druckberechtigte.
Logbuch
Im Logbuch ist eine unvollständige Liste der bisher gedruckten Teile.
Software
Zum deklarativen Erstellen von 3D-Modellen eignet sich OpenSCAD, Blender oder jedes andere Programm, was STL-Format ausgeben kann.
- OpenSCAD: git clone git://github.com/openscad/openscad.git
- Blender ist in den meisten Distributionen in den Repos
Die STL-Modelle müssen dann in GCode umgesetzt werden, der zum Drucker gesendet werden kann. Slic3r und Cura sind die meistverwendeten Programme dafür.
- Slic3r (oder über die Paketverwaltung, oder git clone git://github.com/alexrj/Slic3r.git)
- Für einen ersten Test erzeugt der Wizard eine brauchbare konfiguration. Zu beachten ist, dass wir 1.75mm-Filament und eine 0.5mm-Düse haben.
- Beispiel-Konfiguration für Slic3r ist unter Reprap/Configs/Slic3r zu finden
- Cura
- Beispiel-Konfiguration ist unter Reprap/Configs/Cura zu finden
- Skeinforge
- SFACT (Fork von Skeinforge)
Schließlich noch Printrun/Pronterface/Pronsole, das zum Steuern des Repraps verwendet werden kann (prinzipiell meldet sich der Drucker als serielle Konsole im System, aber du willst etwas mehr Komfort haben). Hiermit kann man insbesondere auch GCode zum Drucker schicken.
- Printrun (oder über die Paketverwaltung, oder git clone git://github.com/kliment/Printrun.git)
Modelle
- siehe auch Unterseite: RepRap/Modelle
- Mate name tags - http://www.thingiverse.com/thing:38861
- bei Verwendung von Slic3r einiges beachten:
- als Fill Pattern am besten "honeycomb" auswählen
- neuere Versionen von Slic3r generieren bei einer Nozzle Size von 0.5mm keine senkrechten Striche mehr in der Schrift. Dagegen hilft, die Option “Detect thin walls“ ausschalten (“Print Settings” → “Layers and Perimeters”, siehe dieser Kommentar vom Entwickler). Alternative Lösungen: die Nozzle Size bis auf 0.4mm heruntersetzen (“Printer Settings“ → “Extruder 1”), unter Umständen muss dann aber auch der Extrusionsfaktor des Filaments (Tab „Filament”) nach oben korrigiert werden, dies sollte aber während des Drucks je nach Aussehen entschieden werden (siehe unten: #Während des Drucks). Andere Möglichkeit: mit der Extrusionsbreite herumspielen (Blogpost von RichRap: Slic3r: Advanced perimeter tuning).
- bei Verwendung von Slic3r einiges beachten:
- INGA Gehäuse - http://www.thingiverse.com/thing:22450
Workflow
Zum Workflow gab es auf dem BarCamp Braunschweig 2012 einen längeren Vortrag (PDF) von Daniel Bohrer, larsan und Neo Bechstein. Hier die Kurzfassung:
3D-Modell-erstellen
Siehe 3D-Modell erstellen. Es wird eine .stl-Datei benötigt.
Slicen
Fertige Konfigurationen:
- auf dem USB-Stick, der am RepRap hängt
- für Slic3r unter 3D-Drucken (ehemals RepRap/Configs/Slic3r)
- für Cura zur Zeit noch nicht
- für Skeinforge gibt es zur Zeit keine Konfigurationsdatei aber eine Kurzanleitung unter RepRap/Skeinforge
Nutzbare Druckfläche
Die nutzbare Druckfläche beträgt 200×177 mm. Die gesamte Druckplatte ist zwar 200×200 mm groß, durch den Multi-Extruder-Druckkopf und die Klemmen, die die Glasscheibe halten, muss die Druckfläche verringert werden, damit die Extruder nicht gegen die Klemmen stoßen.
Initiale Positionierung
Nach einem Firmwareupdate kann nach Homing aller Achsen einfach losgedruckt werden. Es ist lediglich darauf zu achten, dass zuerst die z-Achse gehomt wird, damit es nicht zu Kollisionen kommt.
Im Start-GCode sieht das so aus:
G28 Z0 ; home Z first so when homing X Y the extruder does not collide with the frame G1 Z10 ; if bed is not level, don't scratch bed when homing X Y G28 X0 Y0 ; home X Y G28 Z0 ; home Z again
Einzelne Objekte am Stück fertigstellen
Cura und Slic3r haben die Möglichkeit, mehrere Objekte gleichzeitig zu drucken, wobei jedes Objekt einzeln fertiggestellt wird, bevor das nächste Objekt angefangen wird (also nicht alle Objekte gleichzeitig Layer für Layer). Das ergibt unter Umständen bessere Druckerzeugnisse, da während der Travel-Bewegungen weniger Filament heraustropfen und an anderen Objekten hängen bleiben kann.
In Slic3r aktiviert man dafür auf dem Tab "Print Settings" im Abschnitt "Output options" die Option "Complete individual objects". Unter "Extruder clearance" muss folgendes eingestellt werden:
Abmessungen haben sich in zwischen geändert, bitte nachmessen.
- Radius: ? mm
- Height: ? mm.
In Cura öffnet man dafür den Project Planner (im Menü "Tools") und dann das Dialogfeld "Project planner preferences" (auf der Toolbar). Folgende Werte müssen dort eingetragen werden (ohne die angehängte LED mit Kühlkörper links am Druckkopf):
Abmessungen haben sich in zwischen geändert, bitte nachmessen.
- Head size – X towards home: ? mm
- Head size – X towards end: ? mm
- Head size – Y towards home: ? mm
- Head size – Y towards end: ? mm
- Head gantry height: ? mm
- Siehe 3D-Drucken.
Generelles vor dem Druck
- Nach dem Einschalten auf jeden Fall die Druckkopfposition homen, damit der Drucker weiß, wo sich sein Druckkopf befindet, und ihn nicht über die Grenzen hinaus bewegt und dabei möglicherweise etwas beschädigt. Das ist wichtig!
- Wenn nötig auch das Druckbett mit den Schrauben justieren, sodass der Kopf an allen Stellen etwa eine Papierdicke Abstand vom Druckbett hat.
- Falls nötig, das Bett so früh wie möglich schonmal vorheizen (das dauert laaaange.)
Über den eigenen Rechner
- Pronterface öffnen (pronterface.py), den GCode laden und mit 250000 Baud zur entsprechenden seriellen Schnittstelle (meist /dev/ttyUSB0) verbinden. Es sollte die Meldung "Printer is now online." erscheinen und die Steuerelemente, die den Drucker kontrollieren, sollten farbig werden.
- Es bietet sich an, die Temperaturüberwachung einzuschalten (Checkbox "Watch" neben dem Graphen bzw. "Monitor Printer" neben dem Reset-Button oben)
- Dann den Button "Print" drücken.
Über den Raspberry Pi und HTTP
Outdated:
Aus dem Space-Netz ist eine OctoPrint-Instanz über http://rapsberry.local:5000/ [sic!] erreichbar. Die Benutzung fühlt sich fast wie Pronterface an (braucht dem entsprechend JavaScript und Websockets), man kann GCodes hochladen (der große Button „Upload“ links unten), laden (das kleine Verzeichnis-Icon neben einem Dateinamen), sich den GCode anschaun (Tab „GCode Viewer“), drucken, den Druckkopf bewegen (Tab „Control“) und GCodes manuell an den Drucker senden (Tab „Terminal“).
Falls irgendwas mal nicht so läuft wie es soll, einfach den Pi neustarten (Netzteil raus und wieder rein). Alle relevanten Dienste sollten dann nach dem Reboot wieder von selbst starten.
Über den Raspberry Pi und SSH
Falls der Raspberry am Drucker hängt, kann auch der zum Drucken benutzt werden, allerdings mit etwas Komforteinbußen ohne grafische Oberfläche.
- Per SSH ist der Raspberry unter dem Namen rapsberry [sic] zu erreichen (zB über mDNS: ssh pi@rapsberry.local). Zugangsdaten stehen auf der SD-Karte.
- GCode könnt ihr einfach direkt unter /home/pi abladen, zB per scp.
- Dann entweder:
- pronsole.py aus /home/pi/Printrun starten
- oder die pronsole-Instanz aus der screen-Session benutzen, die ich immer benutze (damit nix kaputtgeht, wenn die SSH-Session mal abschmiert): screen -x. Mit der Tastenfolge Ctrl-A Ctrl-D kommt man wieder aufs „normale“ Terminal.
- pronsole dokumentiert sich eigentlich mit dem Befehl help ausreichend selbst. Oft benutzte Befehle sind: connect, load, home, settemp, bedtemp, gettemp, extrude, print, monitor. GCode kann man außerdem auch direkt eingeben.
Typische Befehlreihenfolgen
Druck starten
$ screen -x
oder, falls das nicht an eine vorhandene screen-Session andockt:
$ screen Printrun/pronsole.py
Dann in pronsole:
> connect > load $filename > print
Druck abbrechen
> pause > settemp 0 > move z 20 > m84
Hinweise
- Reverse-extrude geht, indem man dem Befehl extrude eine negative Länge gibt.
- /tmp und /run sind im Arbeitsspeicher gemountet, um die SD-Karte etwas zu schonen. Dort also besser nichts wertvolles ablegen.
Filament wechseln
- Zum Filamentwechseln zuerst den Extruder aufheizen (~180°C für PLA)
- Die Buttons "Extrude" und "Reverse" können dazu benutzt werden, das Filament heraus- bzw. wieder hineinzuschieben. Die beiden Felder "mm" und "mm/min" daneben geben jeweils die Geschwindigkeit bzw. Länge des beförderten Filaments an.
- Daniel Bohrer hat das mal ausgemessen: 3×200 mm bei 1000 mm/min sind nötig, damit das Filament ganz rausgeschoben wird, beim Einführen des neuen Filaments kann man ruhig 2×200 mm bei 1000 mm/min machen, und sich danach mit einer langsameren Geschwindigkeit (~100 mm/min) vorantasten, bis das Filament unten am Druckkopf rauskommt.
- Zur Not noch ein bisschen weiter extrudieren (in ~5 mm-Schritten), bis das restliche alte Filament rausgedrückt ist und die Farbe stimmt.
Drucken über SD-Karte
Falls eine Mini-SD-Karte im Slot steckt (auf der Reprap-Platine unter dem USB-Anschluss), kann der GCode mit Pronterface auch als Datei auf die SD-Karte geschrieben werden. Das hat den Vorteil, dass man nach dem Starten des Drucks prinzipiell den Drucker vom USB-Port abziehen kann, sofern die Platine nicht über USB mit Strom versorgt wird (der Jumper auf der Platine muss weg vom Reset-Button gesetzt sein).
Zum Upload benutzt man in Pronterface den Button "SD", der dann ein Menü anzeigt. Dort wählt man "SD Upload" (und wartet, während Pronterface den GCode über die serielle Schnittstelle lädt, und gleichzeitig anzeigt, was grade hochgeladen wird). Wenn der Upload fertig ist, kann man im selben Menü wieder "SD Print" wählen und bekommt dann eine Liste der Dateien, die sich auf der SD-Karte befinden.
Wenn man nicht so lange auf den Upload warten will, kann man auch einfach die SD-Karte herausnehmen und die Datei über seinen Rechner auf die Karte legen. (FIXME: Was für ein Dateisystem?) Wichtig ist nur, dass der Dateiname im 8.3-Format ist. Nachdem die SD-Karte wieder in den Reprap geschoben wurde, muss unter Umständen der Button "INIT SD" betätigt werden.
Während des Drucks
Während des Drucks kann mit dem G-Code M220 die Geschwindigkeit aller Druckoperationen geändert werden:
M220 S<Speed>
Wobei <Speed> der Faktor in Prozent ist.
M220 S200
verdoppelt also die Druckgeschwindigkeit auf 200%.
Ein äquivalenter Befehl ist der Extrudierfaktor
M221 S110
erhöht die extrudierte Menge Filament um 10% auf 110%.
Mehr GCodes kennt das RepRap-Wiki.
Erweiterungen
Der RepRap wurde mit zwei weiteren Druckköpfen zum 3-Farb-3-D-Drucker aufgerüstet.
Außerdem wurde ein 6 cm-Lüfter mit Luftführung vor dem ersten Extruder installiert.
Triple-Extruder-Druck: Mehrfarbdruck / Multi-Material-Druck
Der RepRap ist noch nicht vollständig aufgerüstet auf Triple-Extruder-Druck.
Die Hardware ist aufgerüstet, es fehlt Firmware-Update und Inbetriebnahme (?)
Mehr dazu auf RepRap/Mehrfarb-3D-Druck
Probleme
Drucker hört mitten drin auf, Filament zu extrudieren
Dieses Problem tritt meist bei Solid-Layern auf. Anscheinend wird das Filament zu schnell nachgeschoben, sodass es nicht schnell genug erhitzt werden kann. Durch den Widerstand wird das Filament am Vorschubritzel zu sehr abgerieben und der Motor verliert seine Grundlage für den Vorschub des Filaments.
Lösung: Druckgeschwindigkeit (zumindest während der Solid-Layer) verringern, z.B. schon beim Slicen oder während des Drucks mit dem Befehl M220.
Möglicherweise hing das Problem auch mit der Abnutzung des Extruderblocks zusammen, sodass der Spielraum für das Vorschubritzel zu groß ist und das Filament nicht mehr fest genug an das Vorschubritzel angedrückt wird. Seit der Extruderblocks neulich getauscht wurde, ist das Problem zumindest erstmal (Stand: 01:33, 21. Okt. 2015 (CEST)) nicht wieder aufgetreten.
Drucker druckt die Diagonalen merkwürdig
Am linken Ende druckt er ein Stückchen doppelt, am rechten Ende macht er einen merkwürdigen Versatz.
Ursache: Am X-Motor ist die Inbusschraube locker und rutscht mit ganz viel Schlupf bei jedem Richtungswechsel hin und her.
Lösung: Inbusschraube mit Schraubenlack festziehen.
Drucker zieht beim Wechsel zwischen Objekten Fäden
Das Problem scheint ein bisschen Filament-Abhängig zu sein (Transparentes PLA ist besser als grüntransparentes PLA).
Lösung: Retraction im Slicer anschalten. 5 mm sollten genügen.
Verwandte Projekte
- LulzBot, der andere 3D-Drucker
- HaptoRender
- Fabscan, der 3D-Scanner
- Gesellschaftsspiel-Replikator
- MurmeleBahn