Re: Mittwoch: 3D Druck unter Linux

Konrad Rosenbaum <[email protected]> Thu, 23 Jan 2025 18:18:05 +0100
Newsgroups gmane.user-groups.linux.dresden
Message-ID <[email protected]>
Hi,

On 22/01/2025 17:44, N. Schwirz wrote:
> 3D-Druck unter Linux würde mich zwar auch interessieren, allerdings 
> wird mir das heute etwas zuviel. Vielleicht findet ja eine 
> Zusammenfassung (oder ein Link auf diese) den Weg auf diese 
> Mailingliste. :-)


Extra (nicht nur) für Dich versuche ich mal die wichtigsten Punkte 
zusammenzufassen...


Ganz ganz kurz gefasst: Funktioniert 3D Druck mit Linux und ist es 
ordentlich integriert? Ja, definitiv. Es macht eine Menge Spaß. Jeder 
(Linux-) Haushalt sollte einen 3D Drucker haben!


Wenn Interesse besteht kann ich auch mal versuchen einen längeren 
Workshop zu organisieren. Falls irgendjemand einen Raum hat wo man sich 
am Wochenende für einige Stunden treffen kann?


Vorsicht: SEHR LANGE Mail.


Kapitel 0) Warum machen die das?

3D Druck ist nicht nur ein prima Hobby, es ist sehr praktisch.

Man braucht nicht mehr für jede Kleinigkeit hoffen dass es irgendwo 
schon ein fertiges Produkt gibt - man kann sich viele Dinge einfach 
selbst drucken. Entweder aus heruntergeladenen 3D Modellen oder mit 
selbst entwickelten Modellen. Oft sind es Probleme, wo ich vorher nicht 
dran gedacht hätte dass ich sie lösen könnte oder sie zähneknirschend 
akzeptiert hatte.

Es ist sehr bereichernd und hält die grauen Zellen fit. Wo man Kindern 
sagt "komm wir basteln mal was" ist 3D Druck das Äquivalent für 
Jugendliche und Erwachsene. Keine Sorge, es ist wesentlich spannender 
als Laubsägearbeiten oder Stricken.

Ein paar Beispiele was bei mir in den letzten paar Monaten so nebenbei 
entstanden ist: ein EiPod für's Frühstücksei (wirkt lustiger als ein 
oller Eierbecher), eine Halterung für meine Espresso-Utensilien, 
verschiedene Puzzle, ein Lineal für Buchbindearbeiten, viele Gehäuse für 
meine Elektronik-Experimente, ein Transport-Henkel für eine Eurobox, 
eine schützende Hülle für teure Bühnenmikrofone, Legosteine, ein 
Dosierlöffel für die Spülmaschine, etc.pp.


Kapitel 1) Software-Pipeline:


1.1) Modellierung

Man braucht eine Software, die 3D Modelle erzeugen kann. Erstmal 
unabhängig davon ob und wie man diese Modelle in die physische Realität 
übersetzen will.

Welche Software man verwendet hängt davon ab welchen Zweck man damit 
verfolgt und welches Design-Prinzip einem am besten liegt.

Für künstlerische Ansprüche ist vermutlich der 3D Modeller in Blender 
die beste Wahl - er ist dafür ausgelegt künstlerisch ansprechende 3D 
Figuren zu modellieren, weniger dafür exakte technische Designs zu 
fabrizieren.

Für Programmierer, Mathematiker und andere Script-Fans ist OpenSCAD eine 
gute Wahl. Man beschreibt einfache Polyeder (Quader, Zylinder, Kugeln, 
...) und kombiniert diese durch boolsche Operationen (Volumen 
vereinigen, Volumen B von Volumen A abziehen, ...) zu komplexeren 
Körpern. Zusätzlich kann die OpenSCAD Script-Sprache auch mit den 
wichtigsten Programmierkonstrukten, wie Variablen, Verzweigungen und 
Schleifen, umgehen. Die Sprache hat ein paar Einschränkungen, aber als 
gelernter IT'ler kann man damit gut umgehen. OpenSCAD hat seine Grenzen 
wenn man langsam in den Ingenieursbereich vordringt: Abkantungen sind 
unnötig schwierig und Gewinde sind ein Horror, den man sich nicht antun 
will. Auf der anderen Seite ist es ideal wenn man aus langen Listen von 
externen Daten ein sich wiederholendes Muster basteln muss.

Für Ingenieure und solche die sich dafür halten ist FreeCAD inzwischen 
eine recht gute Wahl. Es orientiert sich am klassischen CAD-Workflow - 
man beschreibt Körper durch aufeinander aufbauende 2D Zeichnungen und 
dazugehörige Operationen in der 3. Dimension (verschiedene Formen der 
Extrusion (positive Operation) oder Ausfräsung (negative Operation)). Es 
ist die beste Wahl wenn man technisches Design machen will, also Dinge 
entwickeln, die man am Ende auch in einer Werkstatt mit Säge, Feile, 
Borer, Drehbank, etc. herstellen könnte.

Zu OpenSCAD und FreeCAD können Bernhard und ich gerne Vorträge und 
Workshops machen - man kann eine Menge dazu erzählen.

Am Ende exportiert man auf jeden Fall eine STL oder STEP Datei:

STL ist ein Mesh aus Dreiecken im 3D-Raum, welches die Oberfläche des 
entwickelten Körpers (annähernd) enthält.

STEP ist ein standardisiertes CAD Austauschformat(*). Zumindest in der 
Theorie sollten dort die Körper exakt beschrieben sein - Kurven können 
als echte Kurven gespeichert werden. In der Realität passieren trotzdem 
Kompromisse.

(*)Bitte nicht zu viel Hoffnung! Man kann ein STEP importieren, aber man 
sieht den originalen Workflow und die Parameter nicht mehr. Dafür 
braucht man die originale programmspezifische CAD-Datei.


1.2) Slicer

Die STL oder STEP Datei lädt man in einen Slicer. Der Slicer zerlegt die 
Körper in Scheibchen und die Scheibchen in Werkzeugpfade, die dann in 
GCode-Anweisungen für den jeweiligen Drucker übersetzt werden. GCode ist 
quasi der Assembler für einen 3D Drucker mit Anweisungen, wie "Gehe zu 
Position X/Y/Z", "bewege Dich in Richtung A/B mit Geschwindigkeit C und 
extrudiere dabei Plastik mit D mm^3/s".

Der GCode muss auf den jeweiligen Drucker angepasst sein, da jeder 
Drucker spezielle Eigenschaften hat, die man berücksichtigen muss (z.B. 
Genauigkeit der Mechanik, Heizleistung, Koordinatensystem, ...). Die 
bekannten Slicer haben dazu Druckerkonfigurationen im Bauch. 
Normalerweise kommen diese Beschreibungen schon vorinstalliert oder über 
einen Wizard, aber man könnte sich auch selbst eine Beschreibung 
zurechtbasteln.

Der Slicer füllt den Innenraum zwischen den Mesh-Dreiecken (Infill), 
erzeugt hinreichend dicke Wände und erlaubt es weitere 
Materialeigenschaften zu beeinflussen. Z.B. kann man auch Farben 
auswählen wenn der Drucker Mehrfarbdrucke unterstützt. In meinem 
Prusaslicer kann ich etwa 2 dutzend Eigenschaften an einen Körper 
anhängen bevor ich ihn übersetze.


Im Open Source Bereich gibt es zwei Ökosysteme:

Cura - wurde irgendwann von Ultimaker gesponsort und ist bei denen (und 
verwandten Druckern) Standard

Slic3r - kommt eher aus der RepRap Linie; das Ursprungsprojekt ist im 
Moment irgendwo zwischen Zombie und untot - es gab seit Jahren keine 
Updates; die Forks davon haben aber eine rasante Entwicklung durchgemacht:

PrusaSlicer - ist ein Slic3r-Fork, der von Prusa (Druckerhersteller in 
Prag) sehr aktiv gepflegt wird und auch viele non-Prusa Drucker unterstützt

Bambuslicer - PrusaSlicer-Fork für Bambu Labs Drucker (siehe auch 
Hardware unten)

Orcaslicer - Community-Fork von Bambuslicer, der ebenfalls sehr aktiv 
ist und die meisten relevanten Drucker unterstützt - Prusaslicer und 
Orcaslicer konkurrieren um die beste Implementation aktueller Features


Den fertigen GCode kopiert man entweder auf einen USB-Stick (oder 
SD-Card) und transportiert ihn so zum Drucker oder (bei vielen modernen 
Druckern) man sendet den GCode direkt vom Slicer über das Netzwerk zum 
Drucker.



Kapitel 2) Hardware

Ich beschränke mich mal auf FDM (Fused Deposition Modelling - 
Filamentdrucker). Es gibt auch noch Kunstharzdrucker und 
Laser-Sinter-Drucker, aber mit denen habe ich noch nicht gearbeitet und 
würde es (nach dem was ich von Nutzern weiß) auch nicht für Anfänger 
empfehlen.

Am Anfang war der RepRap und eine neue Welt ward geschaffen...

Die ersten Open Source 3D Drucker waren noch qualitativ suboptimal - 
starke Abweichungen bei der Achsgenauigkeit, kaltes Druckbett, verzogene 
Drucker und Albträume beim Versuch die Drucker zu kalibrieren oder auch 
nur dazu zu überreden zuverlässig zu drucken. Diese Zeiten sind vorbei. 
In den letzten 5-10 Jahren hat sich sehr viel getan!

Ja, ich weiß: kommerzielle 3D Drucker sind wesentlich älter, aber nach 
wie vor auch wesentlich teurer. Meistens ähnliche Preislage wie Mercedes 
oder BMW.

Heutige Drucker kann man fertig oder oft auch im Kit kaufen. Man packt 
sie aus und druckt los oder bei Kits bekommt man eine gut verständliche 
und relativ einfache Anleitung und hat hinterher fast garantiert einen 
auf Anhieb funktionierenden Drucker. Kalibrierungen sind entweder gar 
nicht mehr nötig (z.B. neuere Prusas) oder sehr einfach halbautomatisch 
durchzuführen (z.B. Prusa MK3, MINI, die meisten mittleren Modelle).

Es gibt unzählige Hersteller, insbesondere aus China. Daneben gibt es 
immer noch eine funktionierende Community, die freie Firmware pflegt und 
experimentelle neue Drucker-Designs entwickelt. Hersteller bedienen sich 
oft bei der Community um sehr schnell neue Drucker auf den Markt werfen 
zu können.

Meine Empfehlung für Anfänger wäre Prusa - ein Hersteller aus Prag, der 
aus der Open Source Szene entstanden ist. Die Drucker sind teurer als 
die Angebote aus China, aber man bekommt auf jeden Fall Qualität und 
wird als Kunde fair behandelt - es gibt sehr guten 24/7 Support, 
Ersatzteile zu fairen Preisen, gute Anleitungen auch für obskure 
Reparaturen, Source Code für Firmware sowie Hardware-Designs sind früher 
oder später online zu finden, Plastikteile kann man auf jeden Fall 
selbst drucken (oder bestellen wenn man das lieber macht). Der Slicer 
ist komplett Open Source und es gibt eine aktive Community.

Der Drucker, den ich gestern mit im Club hatte war ein Prusa MINI+ - der 
ist gut geeignet wenn man wirklich nur ganz ganz wenig Platz hat oder 
als Zweitdrucker. Bei mir ist es der "Mitnehmdrucker" für Projekte bei 
Freunden und für Schulungen. Preis etwa 500€. Persönlich sehe ich ihn 
nicht als idealen ersten Drucker, da er noch etwas Kalibrierung braucht. 
Bernhard hat da weniger Vorbehalte. Im Durchschnitt ist er aber auch als 
Erstdrucker okay.

Zu Hause habe ich einen Prusa MK4S (aktuelles Prusa-Modell) mit MMU (für 
Mehrfarbdruck) und bin extrem zufrieden. Preis (ohne MMU, als Kit) im 
Moment ca. 820€. Aus meiner Sicht der ideale Erstdrucker - die 
Bauanleitung ist sehr gut verständlich, die Kalibrierung ist 
vollautomatisch und man kann 30min nach dem Zusammenbau (oder Auspacken) 
los drucken.

MMU (Multi-Material Unit) sollte man nicht gleich am Anfang mit kaufen, 
sondern erstmal mit dem Drucker vertraut werden - ob man sie wirklich 
braucht sollte man sich überlegen - nach meiner Erfahrung für 
(mehrfarbige) Skulpturen sehr praktisch, aber bei technischen Drucken 
eher nur ein Gimmick. Man sollte auch beachten dass sowas eher eine 
Multi-Color-Unit ist - verschiedene Plastiksorten mit nur einem 
Druckkopf mischen ist keine gute Idee.

Ich würde auf jeden Fall (bei Prusa) empfehlen ein Kit zu kaufen. Nicht 
weil es billiger ist, sondern weil man hinterher den Drucker wirklich 
gut kennt und sich traut Dinge zu reparieren und zu modifizieren. Die 
Berührungsängste sind weg.

Meine Anti-Empfehlung der Woche ist BambuLabs - dieser Hersteller ist 
gerade dabei sein Ökosystem zu verriegeln. Sie haben den Anspruch "Apple 
für 3D Druck" zu werden - da weiß man ja was die Nutzer erwartet. Der 
aktuelle Shitstorm auf Youtube ist schon beachtlich. Selbst vorige Woche 
hätte ich von Bambu abgeraten, da die Ersatzteile immer nur in größeren 
Baugruppen kommen und relativ teuer sind (im Vergleich zum Drucker).

Ultimaker hat ähnliche Eskapaden schon hinter sich und hängt wohl im 
Moment auch der Entwicklung etwas hinterher.

Allgemein bei den chinesischen Herstellern bekommt man schön niedrige 
Preise (zum Teil schon ab 200€), aber langfristig hat man nicht immer 
viel Spaß dabei.

Prusa braucht manchmal sehr lange um ein Feature zu entwickeln, aber das 
liegt dann daran dass sie nicht einfach unfertige Produkte auf den Markt 
werfen, sondern erstmal die Probleme lösen. Die MMU3 hatte sich z.B. 
fast ein Jahr verzögert, weil das Filament sich beim Wechsel verhakt 
hatte und je nach Raumtemperatur unterschiedliche Probleme auftraten - 
die MMU3, die sie dann versandt haben hat alle diese Probleme gelöst und 
löst allgemeine Begeisterung aus.

Zu anderen westlichen Herstellern habe ich mir noch keine Meinung gebildet.

Open Source Designs sind dann eher was für den zweiten oder dritten Drucker.


Kapitel 3) Material/Filament

Ganz am Anfang der Entwicklung von 3D Druckern für den Consumer-Markt 
war 3mm(*) dickes Filament normal, weil es am einfachsten verfügbar war 
- es wird ebenfalls für "Plastikschweißen" mit der Heißluftpistole 
eingesetzt. Vor ein paar Jahren hat man auf 1,75mm(**) umgestellt, 
welches heute das alte 3mm Filament fast komplett vom Markt verdrängt hat.

(*)eigentlich 2,85mm, aber das will sich keiner so genau merken.

(**)ja, wir haben inzwischen gelernt mehr als 1 Ziffer im Kopf zu 
behalten ;-P

Es gibt Filamente in sehr vielen Farben, inklusive Transparent (die 
meisten Polymere sind transparent wenn sie nicht gefärbt werden).

Der Standard für >90% der 3D Drucke ist PLA - Poly-Lactic-Acid. PLA wird 
aus Maisstärke hergestellt, ist sehr günstig und wesentlich 
umweltfreundlicher als die meisten anderen Materialien. Es ist 
"kompostierbar" - das bedeutet aber nicht auf dem Komposthaufen im 
Garten, sondern man braucht eine industrielle Kompostieranlage mit den 
entsprechenden Temperaturen und speziellen Microorganismen - das 
bedeutet immerhin es bleibt nicht Ewigkeiten auf der Deponie liegen, 
sondern hat eine recht gute Chance sich innerhalb von ein paar Jahren in 
harmlose Milchsäure zu zersetzen. Für uns als "Maker" ist PLA ein 
schönes Material weil es sehr "gutmütig" ist - es ist haltbar genug für 
fast alle Anwendungen, sehr einfach zu drucken und verzieht sich nicht 
beim Druck (sondern erst im Hochsommer wenn es im Auto Sonne und 80C 
abbekommt).

Der Großteil vom Rest ist PETG - eine Variante von PET (siehe 
Trinkflaschen und Supermark-Verpackungen). Es hält mehr Hitze und 
mechanischen Stress aus. Auf der anderen Seite ist es nicht 
kompostierbar und wird demzufolge sehr lange auf der Deponie liegen 
bleiben. Es braucht etwas höhere Drucktemperatur und kann ausschließlich 
mit beheiztem Druckbett gedruckt werden (das ist bei aktuellen Druckern 
aber normal).

Es gibt dutzende weitere Materialien mit verschiedenen Vor- und 
Nachteilen. Inklusive Filamenten mit Füllstoffen, wie Holz oder Karbonfaser.



     Konrad
OpenPGP_0xBE96A6EE776FE5D0.asc (application/pgp-keys, 2.6 KB)
-----BEGIN PGP PUBLIC KEY BLOCK-----

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
GITvFOoOgCafGm48BZJcCkN1rLBx
=eE4a
-----END PGP PUBLIC KEY BLOCK-----
OpenPGP_signature.asc (application/pgp-signature, 495 B)
-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEjkC056IhcKJYJr8GxU4Frrk6fnUFAmeSec0FAwAAAAAACgkQxU4Frrk6fnXa
aggAndeRSB4T9lEXKRFG27xlezQBtyidGh7+rL81+PbazuWMOmY5Zr6Ri5705Mg++P+PQqgY9cFW
RBcCAHP1thqI9huW6qYTzEO8zhyNcwvXDzZZgqhKh9sv08xiFMuq/wYfEpe1cV6KkwSugesrEpso
bhWiTgrJsoG1dofKqs0oxTrOd6AeVX6SG8k3Fzus0KGjhrm+i1nbh7yd6l6DJ4vzwJ/whjtsBP1q
tuTWZKqIm8Q1YlX3CjCuRn1ffKiqmcr0rTkejK1+4C2AVzPGDrIsNvlrFd9P67xcls8TvgXwVHKT
UA0Li5OALVEhAi2JolwFtvsh38A+yo7qd8P5+il/oA==
=LO/K
-----END PGP SIGNATURE-----