/* Software und Workflow */
[stratum0-wiki.git] / RepRap.mw
1 {{Hardware
2 |kontakt=[[Benutzer:larsan|larsan]], [[Benutzer:Daniel Bohrer|Daniel Bohrer]], [[Benutzer:Sintox|Sintox]], [[#Druckberechtigte]]
3 |beschreibung=3D-Drucker
4 |bild=20121020-reprap-01.jpg
5 |status=working
6 |links=[http://rapsberry:5000 Octoprint] auf dem [[Rapsberry]]
7 |usage=nach Einweisung durch Druckberechtigte
8 }}
9
10 :''Auf dieser Seite werden nur die Besonderheiten des RepRap dokumentiert, die Druckanleitung und allgemeine Informationen gibt es unter [[3D-Drucken]].''
11 :''Alles zum alten Drucker von [[Benutzer:DanielWillmann|DanielWillmann]] unter [[Reprap/Parent]].''
12
13 Der RepRap ist einer unserer 3D-Drucker. Es ist ein [https://web.archive.org/web/20150317175216/https://reprappro.com/documentation/mendel-tricolour/ RepRapPro Mendel] mit ein paar kleinen eigenen Zusätzen.
14
15 ==Hinweise zur Benutzung==
16 :''Siehe [[3D-Drucken#Hinweise_zur_Benutzung]].''
17
18 ==Druckberechtigte==
19 :''Siehe [[3D-Drucken#Druckberechtigte]].''
20
21 ==Logbuch==
22 Im [[Reprap/Logbuch|Logbuch]] ist eine unvollständige Liste der bisher gedruckten Teile.
23
24 ==Software==
25 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.
26 * '''OpenSCAD''': <tt>git clone git://github.com/openscad/openscad.git</tt>
27 * Blender ist in den meisten Distributionen in den Repos
28
29 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.
30 * [http://slic3r.org '''Slic3r'''] (oder über die Paketverwaltung, oder <tt>git clone git://github.com/alexrj/Slic3r.git</tt>)
31 ** 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.
32 ** Beispiel-Konfiguration für Slic3r ist unter [[Reprap/Configs/Slic3r]] zu finden
33 * [http://daid.github.com/Cura/ Cura]
34 ** Beispiel-Konfiguration ist unter [[Reprap/Configs/Cura]] zu finden
35 * [http://fabmetheus.crsndoo.com/index.php Skeinforge]
36 * [https://github.com/ahmetcemturan/SFACT SFACT] (Fork von Skeinforge)
37
38 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.
39 * [http://github.com/kliment/Printrun.git Printrun] (oder über die Paketverwaltung, oder <tt>git clone git://github.com/kliment/Printrun.git</tt>)
40
41 == Modelle ==
42 :''siehe auch Unterseite: [[RepRap/Modelle]]
43 * Mate name tags - http://www.thingiverse.com/thing:38861
44 ** bei Verwendung von Slic3r einiges beachten:
45 *** als Fill Pattern am besten "honeycomb" auswählen
46 *** 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]).
47 * INGA Gehäuse - http://www.thingiverse.com/thing:22450
48
49 ==Workflow==
50 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:
51
52 [[Datei:3D-Druck-Ablauf.png|thumb|Ablauf des 3D-Druck Workflows mit Nennung von freier Software.]]
53
54 ===3D-Modell-erstellen===
55 Siehe [[3D-Modell erstellen]].
56 Es wird eine .stl-Datei benötigt.
57
58 ===Slicen===
59 :''Siehe [[3D-Drucken#Schritt_2:_Slicen]]
60
61 Fertige Konfigurationen:
62 * auf dem USB-Stick, der am RepRap hängt
63 * für Slic3r unter [[3D-Drucken]] (ehemals [[RepRap/Configs/Slic3r]])
64 * für Cura zur Zeit noch nicht
65 * für Skeinforge gibt es zur Zeit keine Konfigurationsdatei aber eine Kurzanleitung unter [[RepRap/Skeinforge]]
66
67 ==== Nutzbare Druckfläche ====
68 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.
69
70 ==== Initiale Positionierung ====
71 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.
72
73 Im Start-GCode sieht das so aus:
74
75 G28 Z0 ; home Z first so when homing X Y the extruder does not collide with the frame
76 G1 Z10 ; if bed is not level, don't scratch bed when homing X Y
77 G28 X0 Y0 ; home X Y
78 G28 Z0 ; home Z again
79
80 ==== Einzelne Objekte am Stück fertigstellen ====
81 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.
82
83 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:
84 {{Hinweis|Abmessungen haben sich in zwischen geändert, bitte nachmessen.}}
85 * Radius: ? mm
86 * Height: ? mm.
87
88 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):
89 {{Hinweis|Abmessungen haben sich in zwischen geändert, bitte nachmessen.}}
90 * Head size – X towards home: ? mm
91 * Head size – X towards end: ? mm
92 * Head size – Y towards home: ? mm
93 * Head size – Y towards end: ? mm
94 * Head gantry height: ? mm
95
96 === Drucken ===
97 :''Siehe [[3D-Drucken]].''
98
99 ==== Generelles vor dem Druck ====
100 * 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!'''
101 * Wenn nötig auch das Druckbett mit den Schrauben justieren, sodass der Kopf an allen Stellen etwa eine Papierdicke Abstand vom Druckbett hat.
102 * Falls nötig, das Bett so früh wie möglich schonmal vorheizen (das dauert laaaange.)
103
104 ==== Über den eigenen Rechner ====
105 * Pronterface öffnen (<tt>pronterface.py</tt>), den GCode laden und mit 250000 Baud zur entsprechenden seriellen Schnittstelle (meist <tt>/dev/ttyUSB0</tt>) verbinden. Es sollte die Meldung "Printer is now online." erscheinen und die Steuerelemente, die den Drucker kontrollieren, sollten farbig werden.
106 * Es bietet sich an, die Temperaturüberwachung einzuschalten (Checkbox "Watch" neben dem Graphen bzw. "Monitor Printer" neben dem Reset-Button oben)
107 * Dann den Button "Print" drücken.
108
109 ==== Über den Raspberry Pi und HTTP ====
110 :''Siehe [[3D-Drucken#Weboberfl.C3.A4che:_Repetier-Server]].
111 Outdated: <strike>
112 [[Datei:OctoPrint web interface.png|thumb|OctoPrint-Webinterface]]
113 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“).
114
115 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.
116 </strike>
117 ==== Über den Raspberry Pi und SSH ====
118 Falls der Raspberry am Drucker hängt, kann auch der zum Drucken benutzt werden, allerdings mit etwas Komforteinbußen ohne grafische Oberfläche.
119 * Per SSH ist der Raspberry unter dem Namen <tt>rapsberry</tt> [sic] zu erreichen (zB über [[mDNS]]: <tt>ssh pi@rapsberry.local</tt>). Zugangsdaten stehen auf der SD-Karte.
120 * GCode könnt ihr einfach direkt unter <tt>/home/pi</tt> abladen, zB per scp.
121 * Dann entweder:
122 ** <tt>pronsole.py</tt> aus <tt>/home/pi/Printrun</tt> starten
123 ** oder die pronsole-Instanz aus der [[screen]]-Session benutzen, die ich immer benutze (damit nix kaputtgeht, wenn die SSH-Session mal abschmiert): <tt>screen -x</tt>. Mit der Tastenfolge Ctrl-A Ctrl-D kommt man wieder aufs „normale“ Terminal.
124 * pronsole dokumentiert sich eigentlich mit dem Befehl <tt>help</tt> ausreichend selbst. Oft benutzte Befehle sind: <tt>connect</tt>, <tt>load</tt>, <tt>home</tt>, <tt>settemp</tt>, <tt>bedtemp</tt>, <tt>gettemp</tt>, <tt>extrude</tt>, <tt>print</tt>, <tt>monitor</tt>. GCode kann man außerdem auch direkt eingeben.
125
126 ===== Typische Befehlreihenfolgen =====
127
128 ====== Druck starten ======
129
130 $ screen -x
131
132 oder, falls das nicht an eine vorhandene screen-Session andockt:
133
134 $ screen Printrun/pronsole.py
135
136 Dann in pronsole:
137
138 > connect
139 > load $filename
140 > print
141
142 ====== Druck abbrechen ======
143 > pause
144 > settemp 0
145 > move z 20
146 > m84
147
148 ===== Hinweise =====
149 * Reverse-extrude geht, indem man dem Befehl <tt>extrude</tt> eine negative Länge gibt.
150 * <tt>/tmp</tt> und <tt>/run</tt> sind im Arbeitsspeicher gemountet, um die SD-Karte etwas zu schonen. Dort also besser nichts wertvolles ablegen.
151
152 ==== Filament wechseln ====
153 * Zum Filamentwechseln zuerst den Extruder aufheizen (~180°C für PLA)
154 * 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.
155 ** [[Benutzer:Daniel Bohrer|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.
156 * Zur Not noch ein bisschen weiter extrudieren (in ~5 mm-Schritten), bis das restliche alte Filament rausgedrückt ist und die Farbe stimmt.
157
158 ==== Drucken über SD-Karte ====
159 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).
160
161 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.
162
163 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.
164
165 ==== Während des Drucks ====
166 '''Man sollte es vermeiden, während des Drucks das Raumlicht oder andere leistungsstarken Verbraucher an- oder auszuschalten!''' Das kann dazu führen, dass die Reprap-Platine resettet wird und der Druck abbricht. (Es gibt aber eine gewisse Wahrscheinlichkeit, dass der Druck dabei nicht abbricht. Diese Wahrscheinlichkeit ist bisher allerdings nicht empirisch oder rechnerisch bestimmt worden.)
167
168 Während des Drucks kann mit dem G-Code M220 die Geschwindigkeit aller Druckoperationen geändert werden:
169 M220 S<Speed>
170 Wobei <Speed> der Faktor in Prozent ist.
171 M220 S200
172 verdoppelt also die Druckgeschwindigkeit auf 200%.
173
174 Ein äquivalenter Befehl ist der Extrudierfaktor
175 M221 S110
176 erhöht die extrudierte Menge Filament um 10% auf 110%.
177
178 [http://reprap.org/wiki/G-code Mehr GCodes kennt das RepRap-Wiki.]
179
180 == Filamente ==
181 Wir haben derzeit einen Druckkopf, der eine Filamentstärke von 1,75 mm benötigt.
182
183 === ABS ===
184 Erster Test von {{Benutzer|Sintox}} mit schwarzem 1,75 mm ABS-Filament des Händlers "Filamentworld.de":
185 Sowohl bei großen als auch bei kleinen Teilen:
186 * Heatbed-Temperatur: 80 °C
187 * Hotend-Temperatur: 240 °C
188 * 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)
189
190 Geschwindigkeiten und Infill-Dichte sind scheinbar nicht Filament-abhängig und müssen je nach Zweck und Größe des Gedruckten individuell eingestellt werden.
191 Beim verwendeten Filament war keine wirkliche ABS-Geruchsentwicklung im Raum festzustellen, lediglich leichter Geruch direkt am 3D-Drucker.
192
193 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.
194
195 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.
196
197 === PLA ===
198
199 Wir haben derzeit PLA in mehreren verschiedenen Farben.
200
201 === Holz-PLA ===
202 {{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.
203 * 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.
204 * Generell eher was für gröbere Arbeiten, das Filament kann anscheinend nicht sehr fein gedruckt werden. Man sollte darauf achten, dass man nicht zu feine Strukturen und nicht zu wenig Infill druckt (siehe Fotos). Beim Mate-Tags lohnt es sich durchaus, nochmal 1&nbsp;mm bei der Dicke draufzuschlagen.
205 * Das Filament ist ziemlich flüssig, sodass es sehr leicht heraustropft. Dadurch kommen die unschönen Würste am Mate-Tag zustande, Man Müsste™ nochmal probieren, ob Cura das besser als Slic3r hinkriegt (weil es den Druckkopf nur innerhalb der Perimeter bewegt).
206 * Auch aus diesem Grund lohnt es sich durchaus, 3-4 Skirt-Loops zu drucken, bis das Filament wieder richtig fließt.
207 * Nach dem Drucken die Objekte lieber länger als zu kurz abkühlen lassen, sonst sind sie noch ziemlich weich.
208 * Beim Ablösen behutsam vorgehen, das Holz-PLA klebt sehr gerne am Kapton fest, und besonders die Kanten der Kapton-Klebestreifen werden gerne mal mit hochgezogen. (Den Mate-Tag habe ich schließlich mit einem Messer vorsichtig an einer Ecke durch Hebelwirkung abgelöst und mich dann schrittweise mit dem Messer vorgetastet. Das Kapton ist heile geblieben.)
209
210 <gallery heights="150" widths="225">
211 Datei:Holz-PLA Würfel.jpg|Test-Würfel mit nur 20% Infill, dementsprechend failt der oberste Layer… Die untere Hälfte mit 185°C ist etwas heller als die obere Hälfte mit 200°C.
212 Datei:Holz-PLA Mate-Tag 1.jpg|Mate-Tag (durchgängig 200°C, 90% Infill)
213 Datei:Holz-PLA Mate-Tag 2.jpg|Die Haptik erinnert ein bisschen an Kokosfaser.
214 Datei:Holz-PLA Mate-Tag 3.jpg|Resultat von tropfendem Filament, kann aber mit dem Skalpell leicht korrigiert werden
215 </gallery>
216
217 == Erweiterungen ==
218 Der RepRap wurde mit zwei weiteren Druckköpfen zum 3-Farb-3-D-Drucker aufgerüstet.
219
220 Außerdem wurde ein 6 cm-Lüfter mit Luftführung vor dem ersten Extruder installiert.
221
222 == Triple-Extruder-Druck: Mehrfarbdruck / Multi-Material-Druck ==
223
224 Der RepRap ist noch nicht vollständig aufgerüstet auf Triple-Extruder-Druck.
225
226 Die Hardware ist aufgerüstet, es fehlt Firmware-Update und Inbetriebnahme (?)
227
228 Mehr dazu auf [[RepRap/Mehrfarb-3D-Druck]]
229
230 == Probleme ==
231 === Drucker hört mitten drin auf, Filament zu extrudieren ===
232 [[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.]]
233 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.
234
235 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]].
236
237 Möglicherweise hing das Problem auch mit der Abnutzung des [https://github.com/reprappro/Extruder-drive/blob/master/Print-extruder-drive/Individual-STLs/extruder-drive-1off.stl 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.
238
239 === Drucker druckt die Diagonalen merkwürdig ===
240 Am linken Ende druckt er ein Stückchen doppelt, am rechten Ende macht er einen merkwürdigen Versatz.
241
242 Ursache: Am X-Motor ist die Inbusschraube locker und rutscht mit ganz viel Schlupf bei jedem Richtungswechsel hin und her.
243
244 Lösung: Inbusschraube mit Schraubenlack festziehen.
245
246 === Drucker zieht beim Wechsel zwischen Objekten Fäden ===
247 Das Problem scheint ein bisschen Filament-Abhängig zu sein (Transparentes PLA ist besser als grüntransparentes PLA).
248
249 Lösung: Retraction im Slicer anschalten. 5 mm sollten genügen.
250
251 == Verwandte Projekte ==
252 * [[LulzBot]], der andere 3D-Drucker
253 * [[HaptoRender]]
254 * [[Fabscan]], der 3D-Scanner
255 * [[Gesellschaftsspiel-Replikator]]
256 * [[MurmeleBahn]]
257
258 [[Kategorie:RepRap]]
259 [[Kategorie:Infrastruktur]]
260 [[Kategorie:Raspberry Pi]]
261 [[Kategorie:3D-Druck]]
This page took 0.054388 seconds and 5 git commands to generate.