3D Designprogramme im Vergleich am Beispiel eines Einschaltschutzes für Laserpointer
Viele von euch wissen sicher auch dass ich das Hobby Geocaching betreibe.Bei einem ambitionierten Geocacher sammelt sich im Laufe der Zeit eine Menge Equipment außer dem obligatorischen GPS-Gerät an: Teleskop-Leiter und Kletterzeug für Caches auf Bäumen, Gummistiefel oder Wathose für den Cache unter der Brücke und Taschenlampe, UV-Lampe und Laserpointer für den Nachtcache.
Einen Einschaltschutz für meine Fenix HL 50 Stirnlampe habe ich ja bereits vorgestellt.
Laserpointer-Einschaltschutz-Schieber
Wir brauchen also etwa, das man auf den Knopf drüber schieben kann und das gegen Abfallen gesichert ist. Meine Idee ist eine Hülse mit einem gefrästem Gang, in dem der Einschaltknopf gleitet und der nach eine 90°-Biegung nach einem Stück unter einer Haube endet, die so groß ist, dass der Einschaltknopf nicht mehr hervorschaut.
Am besten zeigt das wohl dieses Video vom fertigen Produkt:
Wer selbst einen 3D-Drucker wie z. B. den Anycubic i3 Mega besitzt, kann sich hier die entsprechenden Files dafür in einem gemeinsamen Zip-File downloaden. Dieses enthält:
- laserpointereinschaltschutz-13.4mm.stl: STL-Datei für 13.4mm (muss im Slicer noch gedreht werden)
- laserpointereinschaltschutz-13.4mm.idea: IDEA-Datei für 13.4mm (Datei für den Slicer ideaMaker, schon richtig gedreht)
- laserpointereinschaltschutz-13.6mm.stl: STL-Datei für 13.6mm (muss im Slicer noch gedreht werden)
- laserpointereinschaltschutz-13.6mm.idea: IDEA-Datei für 13.6mm (Datei für den Slicer ideaMaker, schon richtig gedreht)
- laserpointereinschaltschutz-13.8mm.stl: STL-Datei für 13.8mm (muss im Slicer noch gedreht werden)
- laserpointereinschaltschutz-13.8mm.idea: IDEA-Datei für 13.8mm (Datei für den Slicer ideaMaker, schon richtig gedreht)
Bei den Slicereinstellungen haben sich bei mir bewährt:
- Objekt so drehen, dass es mit dem geschlossenen Ring auf dem Druckbett steht
- Layerhöhe 0.2mm, PLA
- 100% Infill
- mit Support drucken
Man sollte die STL-Datei nehmen, die etwa 0.2mm größer ist aus der Außendurchmesser des Laserpointers. Im Zweifelsfall das Teil nicht ganz zuende drucken, sondern nur einen Ring. Der sollte dann mit ganz leichtem Widerstand über den Laserpoint geschoben werden können. Dann das ganze Teil drucken. Das spart Filament.
Sollten weder 13.4, noch 13.6, noch 13.8 mm passen, dann kann man das Objekt im Sliver natürlich noch vergrößern. Das gibt zwar auch ein wenig mehr Spiel in den Knöpfen, aber das sollte schon gehen.
Wer es doch anders braucht oder wer in 3D-Design Interesse hat, der liest weiter, denn im Folgenden werde ich unterschiedliche CAD-Programme auf ihre Intuitivität testen (das ist natürlich rein subjektiv). Außerdem findet sich dort auch der Source Code für OpenSCAD, den man ganz einfach selbst an seine Maße anpassen kann und dann eine STL-Datei selbst erzeugt.
Design mit OpenSCAD
//--------------------------
// (C) 2019 Oliver Kuhlemann
// http://cool-web.de/
//--------------------------
wand=1; // Wandstärke, stabil, aber Knopf muss noch rausschauen
innen=13.6; // Durchmesser des Laserpointers plus Spiel
aussen=innen+wand*2;
hoehe=30; // Länge der Hülse
knopf=6; // Durchmesser des Knopfes
knopfh=2; // wieviel steht Knopf heraus?
difference () {
union () {
// massiven Zylinder Außenmaß
translate( [0,0,0] ) {
cylinder( d=aussen, h=hoehe, $fn=40, center=true );
}
// auf die Außenseite setzen wir einen kleinen Zylinder,
// unter dem später user Knopf verschwindet
rotate([0,90,0]) {
translate( [0,0,0] ) {
cylinder( d=knopf+2, h=aussen/2+knopfh+wand, $fn=40, center=false);
}
}
}
// Aus dem Vollzylinder mit Kappe die Laufbahn für den Knopf herausfräsen
// dazu einen Zylinder drehen
for (i= [0:5:180]) {
rotate([0,90,i]) {
translate( [0,0,0] ) {
cylinder( d=knopf, h=aussen/2+knopfh, $fn=40, center=false);
}
}
}
// Und noch eine Bahn, damit man es aufstecken kann
for (i= [0:.5:hoehe/2]) {
rotate([0,90,180]) {
translate( [i,0,0] ) {
cylinder( d=knopf, h=aussen/2+knopfh, $fn=40, center=false);
}
}
}
// Zum Schluss Gesamt-Zylinder innen aushöhlen
translate( [0,0,0] ) {
cylinder( d=innen, h=hoehe, $fn=40, center=true );
}
}
Intuitiv kann man OpenSCAD nicht nennen, höchstens für Programmier-Geeks, die schon ein paar Jahre Programmiererfahrung auf dem Kerbholz haben.Man muss sich eine Weile einarbeiten, bis man OpenSCAD soweit beherrscht, dass man seine ersten eigenen Objekte erstellen kann. Das wird Menschen mit mathematischem Verständnis und Programmierkenntnissen leichter fallen.
Man kann nicht einfach so drauf loszeichnen. Man muss sich die Teile eines Körpers erst vor seinem geistigen Auge vorstellen, in dann in OpenSCAD-Code übertragen und bekommt erst dann eine visuelle Bestätigung. Dafür ist mit kleinen Änderungen am Code das Objekt schnell geändert, F5 gedrückt und neu visuell bestätigt.
Der große Vorteil: Wenn man pfiffig programmiert, gibt man die wichtigen Variablen am Anfang an und bezieht sich dann auf diese statt auf Absolutwerte. Dann kann man dort die Werte (etwa hier den Durchmesser) anpassen, F5 und F6 drücken, fertig. In anderen, visuellen CAD-Programmen muss man erst die Skizze oder das Objekt suchen, dann die Bemaßung suchen, diese ändern und dann aktualisieren.
OpenSCAD ist ideal, damit Profis Anfängern etwas an die Hand geben können, um Objekte an ihre Bedürfnisse anpassen zu können. Eine entsprechende Anleitung für obiges Objekt könnte lauten: "Passen Sie die Wert von innen auf den Durchmesser Ihres Laserpointers plus 0.2mm Spiel an, drücken Sie F6 und exportieren Sie das STL in den Slicer, um es zu drucken.".
So können Anfänger ihre selbst angepassten Objekte drucken, ohne selbst im CAD-Programm designen zu müssen. Das anpassen einer Zeile genügt.
Design mit Autodesk TinderCAD
TinkerCAD kommt quietschbunt daher und sieht auf den ersten Blick aus wie die Holzbausteinbox eines Kindes. Und es ist eigentlich auch kinderleicht zu bedienen. Man kombiniert einfach 3D-Objekte miteinander, von denen man reichlich auf der rechten Seite auswählen kann.
Das ist toll für einfache Konstruktionen. Wenn es dann aber präzise und etwas komplizierter wird, tut man sich schon ein bisschen schwerer. Mal greift man falsch und ändert die falsche Dimension, mal fehlt der Überblick.
Ich habe aber den Schutzschieber konstruiert bekommen, wenn auch nicht mit so schöner Rundung. Beim exportieren in STL und Anzeige im Slicer zeigte sich dann, dass das Objekt recht grob gerendet wird - der Zylinder ist eher ein Polyeder mit vielen Kanten und nicht richtig rund. Es gibt auch keine Option, feiner zu rendern.
TinkerCAD ist das richtige, um schnell und ohne Einarbeitung einfachste Konstruktionen zu erstellen. Für anspruchsvollere Dinge ist es weniger geeignet. Da stolpert man dann über seine eigene Füße.
Design mit Autodesk Fusion 360
In der 3D-Maker-Szene gibt es viele Fans, wohl auch, weil eine Privatlizenz kostenlos zu haben ist. So gibt es im Internet viele Videos von Gleichgesinnten, wie man etwas mit Fusion 360 designt.
Mit Fusion 360 ist genaues Arbeiten mit Maßangaben möglich. Es beherrscht Abhängigkeiten, also dass eine Bemaßung eine andere beeinflusst. Wenn ich z. B. eine Wandstärke von 1 mm durch das Versatzwerkzeug abhängig vom Innendurchmesser festgelegt habe und dann später den Innendurchmesser ändere, dann bleibt der Versatz und damit die Wandstärke gleich. Ich muss also nur einen Wert anzupassen, ganz ähnlich wie bei dem obigen OpenSCAD-Programm, nur mit dem Unterschied, dass ich hier nicht programmieren muss, sondern zeichne und die Abhängigkeiten sich dann von selbst ergeben und von Fusion 360 verwaltet werden.
Der Funktionsumfang ist sehr groß, ich habe noch nicht alles ausprobieren können. Die Sache, die ich brauchte, waren nach nach ein bisschen Einarbeitung aber gut zu finden und wiederzufinden.
Es gibt aber auch ein paar Dinge, die sind weniger intuitiv bis überraschend. Mehrmals war ich wie vor den Kopf geschlagen, weil das Programm nicht wie erwartet funktionierte. Es gibt also ein paar Tücken, die man erst kennenlernen muss, um sie umschiffen zu können. Oft war ich mir nicht sicher, ob ich jetzt einen Fehler gemacht habe (etwa versehentlich eine diese unsäglich nervenden Mausgesten gezeichnet) oder ob das Programm einfach einen Bug hat.
Um es auf einen Punkt zu bringen: Etwas gewöhnungsbedürftig aber brauchbar.
Design mit DesignSpark Mechanical
Auch bei DS Mechanical arbeitet man wie in Fusion 360 mit 2D-Zeichnungen, die man hochzieht. Nur heißt es hier das Werkzeug "Ziehen" statt "Extrudieren", macht aber das gleiche.
Den Kubus aus Fusion 360, den man drehen kann und auf dem man seine Zeichenfläche auswählen kann, gibt es hier leider nicht, hier muss man mit einem Untermenü Vorlieb nehmen, in dem man oben, unten, rechts, links, vorne, hinten auswählen muss. Drehen im Raum kann man hier mit der mittleren Maustaste (wo man in Fusion 360 ja zusätzlich die Shift-Taste halten musste), aber was mich schier in den Wahnsinn treibt: Verschieben geht nicht so einfach. Dazu muss man extra einen Button "Verschieben" anklicken und danach wieder abwählen. Schrecklich. Anstatt das auf die rechte Maustaste zu legen, erwartet einen doch wieder das völlig überflüssige Mausgesten-Monster.
Auch kennt DS Mechanical keine Abhängigkeiten wie Fusion 360. Wenn ich meinen Schutzschieber für einen Laserpointer mit größerem Durchmesser anpassen will, muss ich in Fusion 360 (bei halbwegs intelligenter Konstruktionsweise) nur den Wert für den Innendurchmesser anpassen, der Rest ist davon abhängig und passt sich automatisch an. Hier in DS Mechanical müsste ich jede einzelne Wand verschieben.
Auch habe ich mich oft verloren gefühlt zwischen 2D-Konstruktions-Ansicht und 3D-Ansicht. Trotz des so bezeichneten Buttons funktionierte der Wechsel nicht.
Ein präzises Arbeiten fällt auch schwer. Man kann zwar auch fertige 3D-Objekte erstellen und kombinieren, aber die hängen dann irgendwo im Raum mit irgendeinem Winkel, den man garantiert nicht braucht und auch nicht einfach angepaßt bekommt.
Für einfache Objekte würde DS Mechanical vielleicht taugen, aber das kann man auch fast schon TinkerCAD benutzen. Ansonsten würde ich Fusion 360 immer den Vorzug geben. Eventuell mit einer Ausnahme: Bei DS Mechanical kann man scheinbar Elektronik-Komponenten als 3D-Objekte von RS Components importieren. Das sollte das Design einer Leiterplatte sehr vereinfachen, weil Widerstände, Kondensatoren, Transistoren, Chips und Buchsen alle schon fertig designt sind und einfach nur noch arrangiert werden müssen. Wenn mir irgendwann die Resultate von Fritzing nicht mehr ausreichen sollten, finde ich hier sicher eine gute Alternative - aber das hat jetzt nichts mehr mit 3D-Druck zu tun.
Design mit FreeCAD
Man kann auch nicht gleich loslegen, sondern muss sich erst klar machen, dass es mehrere Oberflächen (bzw. Funktionsleisten mit Symbolen) gibt. Hier sind für mich als 3D-Druckender "Part" und "Part Design" das richtige. Vom Namen her darauf zu kommen ist schwierig, da muss man schon die Hilfe bemühen.
In der Hilfe erwartet einen dann ein munterer Mix aus deutsch und englisch, aus hochtrabender Fachsprache in quasi-Latein und Hauptschuldeutsch. Böse Zungen würde behaupten, jeweils so ausgewählt, dass man das, was dahinter steckt, möglichst schwer erraten kann. Sucht man nach einem Begriff in der Hilfe, wird man eher nicht fündig, obowhl es viele viele Treffer gibt, die allerdings wenig zur Problemlösung beitragen. Hier kann man sicherlich lange Zeit verbringen und viel Nebensächliches erfahren, ohne das die Frage beantwortet wird.
Die Oberfläche Part steht für das Kombinieren von 3D-Objekten wie in TinkerCAD.
Die Oberfläche Part steht für das Zeichnen von 2D-Skizzen und dem anschließenden Hochziehen ("Extrudieren") zu 3D-Objekten, so zumindest die Hilfe. Das wäre das richtige für mich - so ähnlich wie in Fusion 360 also und laut Hilfe auch das Richtige für etwas komplizierte Körper.
Nachdem ich dann eine Skizze geöffnet habe, brauche ich ewig, um herauszufinden, dass man zum Zeichnen eines Kreises nicht einfach irgendwo hinklicken kann und dann den Kreis weitet. Nein, man muss beim Setzen des Kreismittelpunktes des CTRL (Strg) Taste gedrückt halten und beim Umfangsetzen dann nochmal. Ohne CTRL-Taste kann man soviel klicken wie man will, das dreht nur die Ansicht. Zum Markieren muss man dann wiederum die SHIFT (Umschalt) Taste gedrückt halten und einen Rahmen um das zu Markierende ziehen. Intuitiv geht anders.
Als der Kreis nur endlich gezeichnet war, wollte ich einen zweiten mit einem Versatz von 1mm zeichnen, also eine Abhängigkeit schaffen, damit sich der 2. Kreis mit dem 1. mitändert, sollte ich dort den Durchmesser ändern. Das Werkzeug dazu habe ich nicht gefunden. Die Hilfe hat mir nicht weitergeholfen.
Auch habe ich das Werkzeug zum Extrudieren nicht gefunden. Weder innerhalb noch außerhalb der Zeichnung. An dieser Stelle habe ich dann nach einer dreiviertel Stunde, in dem ich es nur zu einem Kreis gebracht hatte, aufgegeben.
In Sache intuitive Bedienung ist FreeCAD ein Reinfall. Das ist nichts zum mal eben drauf loslegen, sondern benötigt Einarbeitung. Die allerdings bei der bescheidenen Hilfe wohl eher zum Missvergnügen wird.
FreeCAD schenit mächtig zu sein und außerdem Architektur und Spezialgebieten abzudecken. Aber was hilft mir das, wenn ich einfach nur ein paar Objekte für meinen 3D-Drucker designen will, ohne mich jetzt tagelang einzuarbeiten? Was ich brauche, ist eher ein Programm, dass das kann, was ich brauche ohne mich mit (für mich) unnützem Zeug abzulenken.
Design mit Blender
Oben rechts findet sich ein Orientierungs-Kubus, bei dem man wie bei Fusion 360 die Ansicht frei drehen kann oder sich eine bestimmte Ansicht (oben, unten, vorne, hinten, links, rechts) heranholen kann.
Als Anfangsobject steht ein Würfel auf dem Parkett, mit dem man ein bisschen herumspielen kann. Die Hauptfunktionen für verschieben, Größe ändern und Rotieren hat man so schnell gefunden und gelernt.
Doch dann geht die Sucherei los, als ich mir einen Zylinder erstellen will. Dazu will ich einen Kreis malen und mir diesen hochziehen. Nachdem ich den Kreis in einem Unteruntermenü gefunden habe (Add/Mesh), ist dieser auch schnell gemalt. Nur wie ich nachträglich den Durchmesser ändere, ist mir schleierhaft. Ich kann dann zwar mit Scale die Größe ändern, aber nur relativ zur Ausgangsgröße (also soundso viel Prozent). Wie ich hier den absoluten Wert (soundso Millimeter) ändere, bleibt mir verborgen.
Die Überraschungen gehen weiter. Als ich den Kries mittels Extrusion hochziehe, bekomme ich nur eine dünne Haut und kein gefülltes Objekt. Wenn ein Kreis eine Fläche ist und ich eine Dimension durch Extrusion hinzufüge, dann sollte das doch einen gefüllten Körper ergeben. Denke ich zumindest. Blender denkt da anders.
Also das Prinzip "2D-Zeichnen und dann hochziehen" über den Haufen geworfen und den Eintrag Add Cylinder gefunden. Nebenbei: Blender spricht nur englisch. Da tut man sich dann doch mit dem einen oder anderen Fachbegriff schwer. Aber immer noch besser als schlecht übersetzes deutsch.
Also einen Zylinder erstellt, bei dem ich alle Werte eingeben konnte: Koordinaten des Mittelpunktes, Radius (nicht Durchmesser!), Höhe. Geht doch.
Als nächsten Schritt will ich einen zweiten kleineren Zylinger mit 8mm seitlich in der Mitter an den großen Zylinder pappen. Mit ein bisschen probieren bekommen ich den halbwegs exakt positioniert. Allerdings muss man hier bei der Eingabe der Werte denselben gedanklichen Spagat machen wie bei OpenSCAD bei gedrehten Objekten. Die X, Y, Z-Werte beziehen sich auf das Objekt vor der Drehung. Wenn ich beim gedrehten Zylinder die X-Weite ändern will, muss ich Z ändern, weil X vor dem Drehen Z war. Das kann einen dann schon mal durcheinanderbringen.
Den Zylinder zu kopieren und zu verschieben und zu verkleinern ist dann wieder ein bisschen umständlich, aber machbar. Ich brauche als nächsten einen 6mm-Zylinder, mit dem ich den 1. und 2. Zylinder mittig ausbohre und ein 6mm-Loch in die von 2. Zylinder gegenüberliegende Seite bohre. Leider auch hier keine absoluten Angaben. Anstatt "6mm" muss ich "6/8" angeben, also 75% der ursprünglichen 8mm bzw. 0.75.
Was ich allerdings nicht geschafft habe, ist, den 3. Zylinder als Bohrung zu deklarieren, damit er ausgeschnitten wird. Ich bin alle Menüs durchgegangen und wurde nicht fündig. In TinkerCAD oder Fusion360 ist diese wichtige Funktion sofort sichtbar und man muss nicht danach suchen.
Selbst als ich in der Hilfe gesucht habe (die auf die Website verweist) und nach etwas Suchen eine Anleitung zur Nutzung von Booleanschen Operationen gefunden habe, von der ich mir sicher war, dass sie das richtige in diesem Fall ist, habe ich das entsprechenden Untermenü nicht im Blender wiedergefunden. Zu verzweigt und tiefgehend sind die Menüs.
An diesem Punkt habe ich dann aufgegeben. Blender mag etwas für Leute sein, die dieses Programm schon kennen und die Tastaturkürzel schon auswendig können. Und vielleicht den einen oder anderen Trick oder Abkürzung kennen. Dann lässt sich evtl. schnell auch etwas für den 3D-Drucker designen. Aber für CAD-Einsteiger ist es wohl nicht die richtige Wahl.
Fazit
Fusion 360 ist zwar nicht perfekt, aber für mich das beste Programm der getesteten in Sachen Intuitivität und Funktionalität. Ich werde also mit Fusion 360 weiter arbeiten, wenn ich mit OpenSCAD nicht mehr weiterkomme, weil mir z. B. die Objekte zu komplex werden und ich im Code den Überblick verliere.In Fusion 360 kann man eine Kante oder ähnliches im Objekt visuell heraussuchen und dann direkt ändern. Durch die Abhängigkeiten ändern sich von z. B. Größenänderung betroffenen Nebenteile gleich mit. Bei vielen kombinierten Objekten verliert man in OpenSCAD schnell den Überblick, welche Codeteil für welches Objekt steht, auch wenn man noch so viel kommentiert. Im Geiste dann Rotationen auszuführen, um zu wissen, ob nun X, Y oder Z-Parameter geändert werden müssen, kann schon anstrengend sein und darin resultieren, dass man die Werte einfach für X, Y und Z durchprobiert, bis man die richtige Dimension erwischt hat.
Für einfache Objekte bleibt aber OpenSCAD meine Nr. 1, aber das liegt wohl an meinem Programmier-Hintergrund. Andere werden sich hier eventuell schwer tun.
Update Laserpointer mit 2 Tastern
Ich habe noch einen anderen Laserpointer in meinem Fundus. Naja, es ist eher eine Taschenlampe, UV-Lampe, Laserpointer-Kombination als Schlüsselanhänger. Es hat 2 Knöpfe, einmal um Taschen- und UV-Lampe abwechseln an- und auszuschalten und einen, um den Laserpointer temporär einzuschalten.Das Ding am Schlüsselbund herumzutragen ist allerdings ziemlich sinnlos, denn ständig werden die kleinen Tasterchen versehentlich gedrückt und die 3 kleinen Knopfzellen sind garantiert leer, wenn man das Teil mal braucht. Mit dem Einschaltschutz ist es jetzt sicher zu tragen.
In OpenSCAD mussten nur ein paar Zeilen kopiert werden und ein paar Werte angepasst und schon wurde aus dem Ein-Knopf-Modell eines mit zwei Knöpfen und einem anderen Durchmesser.
Auch die 2-Knopf-Variante sind im laserpointereinschaltschutz.zip enthalten:
- laserpointereinschaltschutz-doppelknopf.stl: STL-Datei für 13.1mm (muss im Slicer noch gedreht werden)
- laserpointereinschaltschutz-doppelknopf.idea: IDEA-Datei für 13.1mm (Datei für den Slicer ideaMaker, schon richtig gedreht)