Mit OpenSCAD eigene 3D-Modelle zeichnen

3D-Drucker und CNC-Fräse können im Modellbau sehr hilfreich sein und viele Dinge vereinfachen: die Ergebnisse reichen vom Prototypen und Ersatzteile bis hin zu ganzen Modellen, die mit diesen Werkzeugen gebaut werden können. Eines haben die beiden Geräte gemeinsam: man benötigt fertige 3D-Modelle, aus denen die Anweisungen erzeugt werden, mit denen sie dann gefüttert werden. Im Netz findet man auf Plattformen wie Thingiverse schon sehr viele fertige 3D-Modelle; auf dieser Seite können sie auch kostenlos ausgetauscht und heruntergeladen werden, da sie dort generell unter der Creative Commons-Lizenz stehen. Dennoch: gerade im Modellbau gibt es immer spezielle Wünsche, wie ein Bauteil aussehen sollte und da kommt der Bastler nicht daran vorbei, selber 3D-Modelle zu erzeugen oder wenigstens bestehende abzuändern. Nach einiger Recherche habe ich mich entschieden, dafür OpenSCAD zu benutzen, das ich euch heute in diesem Beitrag vorstellen möchte.

Überblick zu OpenSCAD

OpenSCAD - Quelle: <a href="http://upload.wikimedia.org/wikipedia/commons/9/97/OpenSCAD-logo.png" target="_blank">Wikipedia</a>

OpenSCAD – Quelle: Wikipedia

OpenSCAD ist für mehrere Betriebssysteme verfügbar: Nachdem Windows, MAC OS und verschiedene Linux-Distributionen darunter sind, wird das Paket für die meisten Heimanwender geeignet sein. Das Programm ist Open Source und unter der General Public License version 2 kostenlos verfügbar. Auf der Seite von OpenSCAD kann die aktuellste Version für jede Plattform heruntergeladen werden. Die Builds sind nach dem Erscheinungsdatum benannt, die derzeit neueste Version vom März hat die Version OpenSCAD 2014.03. Die erstellten Modelle können am besten im STL-Format exportiert werden, aber es funktioniert auch, DXF- und OFF-Dateien zu erzeugen.

Beim ersten Start fällt gleich auf, dass dieses Tool kein gewöhnliches CAD-Programm ist: Die zweigeteilte Benutzeroberfläche besteht aus einem Texteditor und einem Vorschaufenster. Statt das Bauteil über eine grafische Oberfläche mit Maus und Angabe von Bemaßung zu erstellen, kann der Benutzer das gewünschte Bauteil mit einer eigens definierten Sprache textuell beschreiben. Im Vorschaufenster sieht der Anwender auf Wunsch ein aktuelles 3D-Modell seines Teils.

Auf diese Weise kann jedes beliebige Modell gebaut werden, es steht anderen CAD-Programmen prinzipiell um Nichts nach. Davon überzeugt die Gallery-Seite auf der Homepage; dort sind einige Beispiele zu sehen, die vom SNES-Controller, über verschiedene iPhone-Cases bis hin zum kompletten 3D-Drucker reichen.

Pro OpenSCAD

Gerade für Nutzer im Hobbybereich ist es nicht einfach, ein geeignetes CAD-Programm für 3D-Modelle zu finden – der Preis schränkt häufig die Auswahl bereits stark ein. Übrig bleiben Open-Source-Programme, die häufig abstürzen, nicht weiterentwickelt werden oder noch nicht reif für den produktiven Einsatz für den Modellbauer sind. Als Entscheidungshilfe soll der folgende Absatz dienen, in diesem habe ich die wichtigsten Vor- und Nachteile aus meiner Sicht zusammengestellt. Zunächst zu den Vorteilen:

OpenSCAD läuft stabil. Generell bin ich ein Fan von Open Source, weil meist hochwertige Software herauskommt, wenn man gemeinsam und öffentlich entwickelt. Leider habe ich den Eindruck, dass das bei CAD-Software (noch) nicht so ist. Alle anderen Programme, die ich ausprobiert habe, sind entweder abgestürzt oder hatten seltsames Fehlverhalten. OpenSCAD sticht da besonders hervor, denn bis jetzt hatte ich noch keinen Absturz.

OpenSCAD ist kostenlos. Der Preis ist im Hobbybereich ein wichtiger Faktor – wenn ich die Anwendung nicht jeden Tag intensiv verwende und mein Geld damit verdiene, bin ich auch nicht bereit, einen fünfstelligen Betrag dafür auszugeben; das ist in meinem schmalen Budget für den Modellflug nicht drinnen. Umso besser, dass OpenSCAD gratis ist.

In OpenSCAD sind Modelle parametrierbar. Die Sprache von OpenSCAD kennt Variablen, mit denen Werte für Längen, Winkel und Ähnliches an einer zentralen Stelle im Quelltext definiert und später wiederverwendet werden können. Wenn man beispielsweise einen Quadkopter entwirft, können die Konstanten für Armlänge, Abstand zwischen Boden- und Deckplatte und Dicke von Bohrlöchern genützt werden.

In OpenSCAD können Modelle wiederverwendet werden. Es ist relativ einfach möglich, bereits bestehende Teile zu kombinieren: Andere Dateien können über einen Befehl eingebunden werden. Das Feature sollten zwar die meisten CAD-Programme kennen, aber ich finde es ist einfach zu nützlich, um es nicht zu erwähnen.

OpenSCAD wird weiterentwickelt. Die Abstände von einer Version zur nächsten sind nicht regelmäßig, aber man kann davon ausgehen, dass in etwa alle sechs bis zwölf Monate eine Version freigegeben wird. Darüber hinaus gibt es auch ein Forum, in dem Anwendern gerne weitergeholfen wird oder in dem man zumindest Anregungen zur Lösung eines Problems bekommt.

Contra OpenSCAD

Natürlich existiert kein Produkt, das nur Vorteile aufweist – neben den genannten Vorteilen gibt es auch mehrere Nachteile, über die man jedenfalls bescheid wissen sollte:

OpenSCAD hat nur einen einfachen Texteditor. In die Entwicklung eines perfekten Texteditors könnte man sicherlich Mannjahre stecken. Vermutlich hat man sich deshalb entschieden, nur einen spartanisch gehaltenen Editor anzubieten. Der integrierte Editor bietet nicht viel mehr Funktionen, als ein einfaches Textfeld. Alternativ kann man einen externen Texteditor seiner Wahl nutzen – die Vorschau auf das Objekt aktualisiert OpenSCAD automatisch, wenn die Datei gespeichert wird.

OpenSCAD will Geschriebenes. Nicht jeder tut sich leicht damit, ein dreidimensionales Objekt rein textuell zu beschreiben. An die Methode, ein Modell „zu programmieren“ muss man sich erst ein wenig gewöhnen.

OpenSCAD nutzt eigenwillige Syntax. Beruflich entwickle ich Software und bin den Umgang mit Quelltext und zum Teil seltsamen Systemen gewohnt. Dennoch gibt es ein paar Dinge in der Sprache von OpenSCAD, über die ein Benutzer zu Beginn sicher stolpern wird: Eine Variable hat immer den zuletzt gesetzten Wert, auch wenn man ihn zwischenzeitlich abfragt – mit bestimmten Ausnahmen. Mag sein, dass es im Programm so leichter umsetzbar war, aber als Anwender muss man sich erst damit auseinandersetzen und sich damit anfreunden.

OpenSCAD arbeitet nicht mit Objekten. Für Leute, die gerne mit dem DXF-Dateiformat arbeiten ist dieser Punkt sicher lästig: Beim Erzeugen des Modells kennt OpenSCAD keine geometrischen Objekte wie Kreise mehr. Ein Kreis wird unterteilt in mehrere Punkte, die durch gerade Linien miteinander verbunden sind – Polygone. Immerhin lässt sich durch eine Variable steuern, wie fein die Objekte aufgeteilt werden. So sieht der Kreis dann wieder wie ein Kreis aus; aber OpenSCAD kann in der DXF-Datei trotzdem nicht hinterlegen, dass es ein Kreis „ist“.

Fazit

DJI F550 Landegestell

DJI F550 Landegestell

Wenn man sich erst einmal daran gewöhnt hat, dreidimensionale Objekte mit Text zu beschreiben, merkt man, dass es durchaus auch seine Vorteile hat. Ich nutze OpenSCAD mittlerweise sehr gerne und habe auch schon einiges damit entworfen: eine Motorhalterung für meine MX2, ein Landegestell für meinen DJI F550 und einen Quadkopter. Den Quadkopter habe ich so entworfen, dass ich leicht die wichtigsten Maße anpassen kann – so kann ich mich auch nach den ersten Probedruckken noch anders entscheiden, falls etwas gegen die momentanen Längen sprechen sollte.

Als Editor verwende ich Notepad++; es gibt auch eine Erweiterung, mit der sich die Schlüsselworte andersfarbig anzeigen lassen. Somit bin ich froh, dass ich nach einigen Tests doch noch eine für mich passende Lösung gefunden habe – und das sogar zum Nulltarif.

Wie ist der Ablauf bei euch aus – welche CAD-Software nutzt ihr und warum? Ich freue mich wie immer auf eure Meinung!

Links

 

2 Antworten

Trackbacks & Pingbacks

  1. […] Eine passende Box für die beiden Schalter musste ich allerdings erst selber mit OpenSCAD zeichnen. Inzwischen steht sie die Schalterbox ebenfalls auf Thingiverse zum Download bereit. Hier […]

  2. […] am Abend habe ich mich daran gesetzt, eine neue Motorhaube mit OpenSCAD zu entwerfen. Vom Design her ist sie recht einfach gehalten: ein Zylinder als Basis und direkt […]

Hinterlassen Sie einen Kommentar

Wollen Sie an der Diskussion teilnehmen?
Wir freuen uns über ihren Beitrag!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.