X-Git-Url: https://git.rohieb.name/stratum0-wiki.git/blobdiff_plain/8b2a27d62b1bfe4e99a8bf5cf0837b8029ad56a8..481df3f1cd68ebae4b1a4c929ac436f7f2da5d3e:/RepRap.mw?ds=sidebyside diff --git a/RepRap.mw b/RepRap.mw index 7f05f0341..652bdcf35 100644 --- a/RepRap.mw +++ b/RepRap.mw @@ -1,7 +1,15 @@ -{{Projekt|verantwortlich=[[Benutzer:larsan|larsan]], [[Benutzer:Daniel Bohrer|Daniel Bohrer]]|beschreibung=3D-Drucker|bild=20121020-reprap-01.jpg|status=aktiv}} +{{Hardware +|kontakt=[[Benutzer:larsan|larsan]], [[Benutzer:Daniel Bohrer|Daniel Bohrer]], [[Benutzer:Sintox|Sintox]], [[#Druckberechtigte]] +|beschreibung=3D-Drucker +|bild=20121020-reprap-01.jpg +|status=working +|links=[http://rapsberry:5000 Octoprint] auf dem [[Rapsberry]] +|usage=nach Einweisung durch Druckberechtigte +}} + :''Alles zum alten Drucker von [[Benutzer:DanielWillmann|DanielWillmann]] unter [[Reprap/Parent]].'' -Der RepRap ist unser 3D-Drucker. Es ist ein [http://reprappro.com/Mono_Mendel RepRapPro Mendel] mit ein paar kleinen eigenen Zusätzen. +Der RepRap ist einer unserer 3D-Drucker. Es ist ein [http://reprappro.com/Mono_Mendel RepRapPro Mendel] mit ein paar kleinen eigenen Zusätzen. ==Hinweise zur Benutzung== Der 3D-Drucker war nicht gerade billig, deshalb müssen einige Regeln befolgt werden. @@ -16,17 +24,17 @@ Der 3D-Drucker war nicht gerade billig, deshalb müssen einige Regeln befolgt we ==Druckberechtigte== * [[Benutzer:DanielWillmann|Daniel Willmann]] -* [[Benutzer:Shoragan|Shoragan]] -* [[Benutzer:Daniel Bohrer|Daniel Bohrer]] -* [[Benutzer:Oni|Oni]] -* [[Benutzer:DooMMasteR|DooMMasteR]] +* {{Benutzer|Shoragan}} +* {{Benutzer|Daniel Bohrer}} +* {{Benutzer|Oni}} +* {{Benutzer|DooMMasteR}} * [[Benutzer:DieLenaMaria|Lena]] -* [[Benutzer:Marylin|Marylin]] -* [[Benutzer:Larsan|Larsan]] -* [[Benutzer:Stew|Stew]] -* [[Benutzer:Chrissi^|Chrissi^]] +* {{Benutzer|Marylin}} +* {{Benutzer|Larsan}} +* {{Benutzer|Stew}} +* {{Benutzer|Chrissi^}} * {{Benutzer|Hanhaiwen}} -* [[Benutzer:Matthis|Matthis]] +* {{Benutzer|Matthis}} * {{Benutzer|Emantor}} * {{Benutzer|Joke}} * {{Benutzer|Lulu}} @@ -35,10 +43,17 @@ Der 3D-Drucker war nicht gerade billig, deshalb müssen einige Regeln befolgt we * mjh * {{Benutzer|mkalte666}} * {{Benutzer|Pecca}} -* [[Benutzer:Ortwin|Ortwin]] +* {{Benutzer|Ortwin}} * Arnulf +* leonmortiba +* {{Benutzer|Kasalehlia}} +* bw_snaable +* {{Benutzer|Sonnenschein}} +* {{Benutzer|Drahflow}} +* {{Benutzer|Sintox}} === Interessierte Entitäten === +Bitte bei Bedarf eine erfahrene Druckentität ansprechen. * {{Benutzer|dStulle}} * {{Benutzer|drc}} * rail @@ -46,67 +61,82 @@ Der 3D-Drucker war nicht gerade billig, deshalb müssen einige Regeln befolgt we Vereinheitlichter Druckführerscheinabsolvierungsundeinweisungsvorgang ist in Arbeit. Prinzipiell kann das aber auch jede Entität machen, die sich auskennt und schon mehrmals gedruckt hat. Es gibt keine Prüfung oder ähnliches. ==Logbuch== -Im [[Reprap/Logbuch|Logbuch]] ist eine Liste der bisher gedruckten Teile. +Im [[Reprap/Logbuch|Logbuch]] ist eine unvollständige Liste der bisher gedruckten Teile. ==Software== Zum deklarativen Erstellen von 3D-Modellen eignet sich [http://github.com/openscad/openscad.git OpenSCAD], [http://http://www.blender.org/ Blender] oder jedes andere Programm, was STL-Format ausgeben kann. -* OpenSCAD: git clone git://github.com/openscad/openscad.git +* '''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 [[reprap:GCode|GCode]] umgesetzt werden, der zum Drucker gesendet werden kann. Slic3r und Cura sind die meistverwendeten Programme dafür. -* [http://slic3r.org Slic3r] (oder über die Paketverwaltung, oder git clone git://github.com/alexrj/Slic3r.git) +* [http://slic3r.org '''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.35mm-Düse haben. ** Beispiel-Konfiguration für Slic3r ist unter [[Reprap/Configs/Slic3r]] zu finden * [http://daid.github.com/Cura/ Cura] ** Beispiel-Konfiguration ist unter [[Reprap/Configs/Cura]] zu finden * [http://fabmetheus.crsndoo.com/index.php Skeinforge] * [https://github.com/ahmetcemturan/SFACT SFACT] (Fork von Skeinforge) -Schließlich noch Printrun/Pronterface, 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. +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. * [http://github.com/kliment/Printrun.git Printrun] (oder über die Paketverwaltung, oder git clone git://github.com/kliment/Printrun.git) == Modelle == -:''siehe auch Unterseite: [[Reprap/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 "rectilinear" auswählen -*** unter Umständen wird kein Infill generiert, das führt dazu, dass die Tags innen hohl sind. Manchmal hilft es, die Option "Generate extra perimeters when needed" auszuschalten. Wenn das nicht hilft… cura verwenden ;-) +*** 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 [https://github.com/alexrj/Slic3r/issues/2611#issuecomment-72437005 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: [http://richrap.blogspot.de/2015/01/slic3r-advanced-perimeter-tuning-3d.html Slic3r: Advanced perimeter tuning]). * INGA Gehäuse - http://www.thingiverse.com/thing:22450 ==Workflow== Zum Workflow gab es auf dem [[BarCamp Braunschweig 2012]] einen längeren [[:Datei:Selbst 3D drucken - BarCamp Braunschweig 2012.pdf|Vortrag]] (PDF) von {{Benutzer|Daniel Bohrer}}, {{Benutzer|larsan}} und {{Benutzer|Neo Bechstein}}. Hier die Kurzfassung: +[[Datei:3D-Druck-Ablauf.png|thumb|Ablauf des 3D-Druck Workflows mit Nennung von freier Software.]] + ===3D-Modell-erstellen=== -* z.B. mit OpenSCAD, FreeCAD oder Blender oder jedes andere Program, das einen STL-Export hat -* Manchmal enthalten die STLs Fehler und Slic3r kommt durcheinander. [http://cloud.netfabb.com/ Netfabb] kann viele dieser Dateien wieder reparieren. -* [http://thingiverse.com Thigiverse] ist eine super Quelle bereits fertiger Modelle. +Siehe [[3D-Modell erstellen]]. +Es wird eine .stl-Datei benötigt. ===Slicen=== -* Die Bemerkungen hier beziehen sich auf Slic3r. Es gibt noch andere Tools, wie SFACT oder Skeinforge, aber die sind deutlich komplexer -* Die Config muss nach jedem Start neu geladen werden -* Eine gute Temperatur für PLA ist 180°C-185°C +* Die Drucktemperatur sollte auf dem Filament stehen. Ansonsten ist 180°C-200°C eine gute Temperatur für PLA, 230°C für ABS. * Der erste Layer sollte mit 10°C mehr gedruckt werden -* Es kann helfen, von Zeit zu Zeit die Version zu updaten +* Es kann helfen, von Zeit zu Zeit die Version des Slicers zu updaten. + +Fertige Konfigurationen: +* für Slic3r unter [[RepRap/Configs/Slic3r]] +* für Cura unter [[RepRap/Configs/Cura]] +* für Skeinforge gibt es von [[Benutzer:Stew|Stew]] funktionierende Konfiguration und eine Kurzanleitung unter [[RepRap/Skeinforge]] + +==== Nutzbare Druckfläche ==== +Die nutzbare Druckfläche beträgt 150×165 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. Sofern nur der erste Extruder genutzt wird, kann die Druckfläche auf 190×165 mm erweitert werden. -Konfigurationen für Slic3r gibt es unter [[Reprap/Configs/Slic3r]]. +==== Initiale Positionierung ==== +Da die Position des ersten Extruder nach dem x-Homing nicht mit der Nullposition der Druckfläche (linke untere Ecke) übereinstimmt, muss vor jedem Druck der Kopf um 50 mm in x-Richtung verschoben werden. Für den Abstand zu den Klemmen der Glasplatte muss außerdem die y-Achse um 5 mm in y-Richtung verschoben werden. In Slic3r geht dies (im Experten-Modus) über den Tab “Printer Settings“ unter “Custom G-Code”, in Cura (“Full settings“-Modus) über den Tab “Start/End-GCode”. Dort sollte folgender G-Code eingefügt (bzw. mit dem dort vorhandenen Code zusammengeführt) werden: -[[Benutzer:Stew|Stew]] hat eine funktionierende Konfiguration unter [[Reprap/Skeinforge]] eine Kurzanleitung und Konfiguration für Skeinforge abgelegt. + G28 X0 Y0 ; home X and Y + G0 X50 Y5; move to X50 for first extruder, and to Y5 to leave space for binder clips + G92 X0; set postition to X=0 + G28 Z0; home Z ==== 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: -* Radius: 62 mm -* Height: 35 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: -* Head size – X towards home: 75 mm -* Head size – X towards end: 32 mm -* Head size – Y towards home: 60 mm -* Head size – Y towards end: 62 mm -* Head gantry height: 35 mm +{{Hinweis|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): +{{Hinweis|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 === Drucken === ==== Ü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 kontrolloieren, sollten farbig werden. +* 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) * 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!''' * Falls nötig, das Bett schonmal vorheizen (das dauert laaaange.) @@ -114,7 +144,7 @@ In Cura öffnet man dafür den Project Planner (im Menü "Tools") und dann das D ==== Über den Raspberry Pi und HTTP ==== [[Datei:OctoPrint web interface.png|thumb|OctoPrint-Webinterface]] -Aus dem Space-Netz ist eine [http://octoprint.org OctoPrint]-Instanz über http://rapsberry [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“). +Aus dem Space-Netz ist eine [http://octoprint.org 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. @@ -127,7 +157,27 @@ Falls der Raspberry am Drucker hängt, kann auch der zum Drucken benutzt werden, ** 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. -Noch ein paar Hinweise: +===== Typische Befehlreienfolgen ===== + +====== Drucken ====== + +
+$ screen -x -oder- screen Printrun/pronsole.py
+> connect
+> load $filename
+> print
+
+ +====== Abbrechen ====== + +
+> pause
+> settemp 0
+> move z 20
+> m84
+
+ +===== Hinweise ===== * die aktuelle Version von pronsole hat noch ein paar Macken, unter anderem funktioniert der gettemp-Befehl nicht :-/ Ich schau da bei Gelegenheit™ nochmal nach. --[[Benutzer:Daniel Bohrer|Daniel Bohrer]] 03:35, 29. Mai 2013 (CEST) * 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. @@ -153,11 +203,35 @@ Während des Drucks kann mit dem G-Code M220 die Geschwindigkeit aller Druckoper M220 S Wobei der Faktor in Prozent ist. M220 S200 -erhöht die Druckgeschwindigkeit also um 100%. +verdoppelt also die Druckgeschwindigkeit. + +Ein äquivalenter Befehl ist der Extrudierfaktor + M221 S110 +erhöht die extrudierte Menge Filament um 10% [http://reprap.org/wiki/G-code Mehr GCodes kennt das RepRap-Wiki.] == Filamente == +Wir haben derzeit einen Druckkopf, der eine Filamentstärke von 1,75 mm benötigt. + +=== ABS === +Erster Test von {{Benutzer|Sintox}} mit schwarzem 1,75 mm ABS-Filament des Händlers "Filamentworld.de": +Sowohl bei großen als auch bei kleinen Teilen: +* Heatbed-Temperatur: 80 °C +* Hotend-Temperatur: 240 °C +* Hotend-Fan (mit "Luft-Kanalisierer"): dauerhaft auf 100%, da am besten keine 120 mm Lüfter verwendet werden sollten (ABS kann sich verformen, wenn der Bauraum zu stark gekühlt wird) + +Geschwindigkeiten und Infill-Dichte sind scheinbar nicht Filament-abhängig und müssen je nach Zweck und Größe des Gedruckten individuell eingestellt werden. +Beim verwendeten Filament war keine wirkliche ABS-Geruchsentwicklung im Raum festzustellen, lediglich leichter Geruch direkt am 3D-Drucker. + +Aufheiz-Zeit des Heatbeds auf 80 °C betrug etwa 15 Minuten, zwischen nacheinander gedruckten Modellen besser Heatbed-Temperatur auf 80 °C fixieren, um nicht immer wieder hochheizen zu müssen. + +Ablösen des Gedruckten ist bei großer Kontaktfläche mit dem Heatbed im geheizten Zustand recht schwer, aber mit ein wenig vorsichtiger Verwendung der "Ablöse-Werkzeuge" gut machbar. + +=== PLA === + +Wir haben derzeit PLA in mehreren verschiedenen Farben. + === Holz-PLA === {{Benutzer|Ortwin}} hat welches gekauft und [[Benutzer:Daniel Bohrer|Daniel Bohrer]] hat das mal ausprobiert. Die gedruckten Objekte sind längst nicht so stabil wie mit normalen PLA, eher so wie Hartgummi. * grrf sagt zwar, dass Holz-PLA ab 185°C zu drucken geht, aber Temperaturen um 200°C sind anscheinend noch besser für die Festigkeit. @@ -174,9 +248,46 @@ Datei:Holz-PLA Mate-Tag 2.jpg|Die Haptik erinnert ein bisschen an Kokosfaser. Datei:Holz-PLA Mate-Tag 3.jpg|Resultat von tropfendem Filament, kann aber mit dem Skalpell leicht korrigiert werden -== Projekte == +== 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 === +[[Datei:RepRap solid layer Filament fehlt.jpg|thumb|300px|Illustration: in der rechten Hälfte ordentliche Filamentbahnen, dann eine Lücke. Das Filament wurde daraufhin von Hand nachgeschoben, aber es fehlte schon ein Layer zwischendrin, sodass das neue Filament sich nicht mehr glatt verbindet.]] +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 [[#Während des Drucks|M220]]. + +=== 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]] [[Kategorie:RepRap]] [[Kategorie:Infrastruktur]] [[Kategorie:Raspberry Pi]] +[[Kategorie:3D-Druck]]