X-Git-Url: http://git.rohieb.name/stratum0-wiki.git/blobdiff_plain/ca642bda862254946737e79a278ab04aca3af814..8afc45fd66c02df1f3f4d2b9435081de850f876a:/RepRap.mw?ds=inline diff --git a/RepRap.mw b/RepRap.mw index c55d2dd9e..34bae24c6 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,9 +43,16 @@ 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}} +* {{Benutzer|Alex-k}} + === Interessierte Entitäten === Bitte bei Bedarf eine erfahrene Druckentität ansprechen. @@ -57,6 +72,7 @@ Zum deklarativen Erstellen von 3D-Modellen eignet sich [http://github.com/opensc 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) +** 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 @@ -67,49 +83,62 @@ SchlieÃlich noch '''Printrun'''/Pronterface/Pronsole, das zum Steuern des Repra * [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. -Konfigurationen für Slic3r gibt es unter [[Reprap/Configs/Slic3r]]. +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]] -[[Benutzer:Stew|Stew]] hat eine funktionierende Konfiguration unter [[Reprap/Skeinforge]] eine Kurzanleitung und Konfiguration für Skeinforge abgelegt. +==== 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. + +==== 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: + + 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 Y0; set postition to X=0, Y=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. +{{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): -* Head size â X towards home: 60 mm -* Head size â X towards end: 36 mm -* Head size â Y towards home: 54 mm -* Head size â Y towards end: 66 mm -* Head gantry height: 35 mm +{{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.) @@ -117,7 +146,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. @@ -130,7 +159,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. @@ -156,7 +205,7 @@ Während des Drucks kann mit dem G-Code M220 die Geschwindigkeit aller Druckoper M220 S