Anfängerleitfaden zur OpenSCAD-Programmierung von 3D-gedruckten Modellen

Anfängerleitfaden zur OpenSCAD-Programmierung von 3D-gedruckten Modellen / DIY

Wollten Sie schon immer eigene 3D-Modelle entwerfen? Was ist mit dem 3D-Druck eines Teils, das Sie entworfen haben? Es gibt viele 3D-Modellierungsprogramme, aber diese können schwierig sein, wenn Sie nicht künstlerisch sind (wie ich). OpenSCAD bietet Ihnen die Möglichkeit, Modelle speziell für den 3D-Druck zu entwerfen Code. Machen Sie sich keine Sorgen, wenn Sie auch nicht wissen, wie man programmiert. Heute werde ich Sie durch die Grundlagen führen.

Was ist OpenSCAD??

OpenSCAD ist kostenlos Solides computergestütztes Design Modellbauer. Es ist für Windows, Mac und Linux verfügbar. Was unterscheidet es von vielen anderen Programmen ist, dass Sie Teile mithilfe von Code anstelle einer Maus entwerfen. Dies macht es sehr einfach, mathematische Berechnungen durchzuführen, Dimensionen in Variablen zu speichern, Teile zu verkleinern und vieles mehr.

Es gibt einige Faktoren, die Sie beim 3D-Druckmodell berücksichtigen müssen. Viele davon gelten jedoch für 3D-Druck-CAD-Modelle im Allgemeinen, nicht nur für OpenSCAD-Konstruktionen. Wenn Sie mehr über den 3D-Druck erfahren möchten, lesen Sie unser Ultimate-Handbuch für Anfänger. Ultimate-Einsteigerhandbuch für den 3D-Druck Ultimate-Einsteigerhandbuch für den 3D-Druck Der 3D-Druck sollte die neue "industrielle Revolution" sein. Es hat noch nicht die Welt erobert, aber ich bin hier, um Sie durch alles zu führen, was Sie wissen müssen, um loszulegen. Weiterlesen . Wenn Sie nach einem interaktiveren Modellbauer suchen, lesen Sie den Leitfaden zum Erstellen von Objekten in Sketchup. Erstellen und Erstellen von virtuellen 3D-Gebäuden und Objekten mit Google SketchUp Erstellen und Erstellen von virtuellen 3D-Gebäuden und Objekten. Mit Google SketchUp ist Google SketchUp das Backbone-Modellierungsprogramm für Google BuildingMaker, mit dem Grafikdesigner Gebäudeentwürfe an Google übermitteln können, um sie in die offiziellen Bilder von Google Earth aufzunehmen. Weiterlesen .

Erste Schritte

Gehen Sie zunächst zur Downloadseite und suchen Sie nach einer für Ihr Betriebssystem geeigneten Version von OpenSCAD. Ich verwende Mac OS, aber diese OpenSCAD-Prinzipien gelten für alle Systeme.

Einmal installiert, öffnen Sie es. Sie werden mit diesem Startmenü angezeigt:

Dies zeigt Ihnen die zuletzt geöffneten Dateien und gibt Ihnen die Möglichkeit, einige Beispiele zu laden. Fühlen Sie sich frei, um einige der Beispiele zu sehen, aber ich fand, dass die Dinge beim ersten Start verwirrender waren. Erstellen Sie für dieses Lernprogramm eine neue Datei, indem Sie auf klicken Neu Taste.

Nach dem Öffnen wird Ihnen diese bloße Oberfläche angezeigt:

Dies ist in drei Hauptbereiche unterteilt. Auf der linken Seite ist dein Editor und Menü. Hier schreiben Sie Ihren Code. Dieser Code enthält noch keinen Code, da Sie eine neue Datei erstellen. Im oberen Bereich befinden sich einige Menüschaltflächen zum Ausführen grundlegender Aufgaben wie Laden, Speichern, Rückgängigmachen usw..

Die rechte untere ist die Konsole. Daraufhin werden Fehler beim Erstellen des Modells angezeigt.

Der letzte Abschnitt ist der Haupt-Schnittstelle oben rechts. Hier können Sie mit Ihrem Modell interagieren, aber Sie können es hier nicht bearbeiten (Sie werden dazu Code schreiben).

Am unteren Rand dieser Hauptoberfläche befinden sich mehrere Schaltflächen. Damit können Sie Ihr Design in erster Linie auf verschiedene Arten betrachten.

Speichern Sie eine neue Datei, indem Sie die drücken Schaltfläche speichern in dem Editor-Menü oder durch zu gehen Datei > sparen.

Die Grundlagen

Die Funktionsweise von OpenSCAD besteht meistens darin, dass einfache Formen hinzugefügt und subtrahiert werden. Sie können auf diese Weise sehr komplexe Modelle erstellen, also lassen Sie uns gleich hineingehen.

Hier ist die erste Form, eine einfache Box:

Und hier ist der Code, um das zu produzieren:

Würfel(); // einen Würfel erstellen

Damit Ihr Code ausgeführt und das Modell erstellt werden kann, müssen Sie eine Vorschau anzeigen. OpenSCAD führt dies standardmäßig bei jedem Speichern durch, oder Sie können drücken F5 eine Aktualisierung erzwingen. Experimentieren Sie mit der Bewegung im 3D-Raum, indem Sie die linke oder rechte Maustaste gedrückt halten.

Nun entsteht ein schöner Würfel, der jedoch ohne Abmessungen nicht besonders nützlich ist. OpenSCAD funktioniert nicht in einem bestimmten Messsystem, sondern alle Einheiten sind relativ zueinander. Sie können eine Box 20 x 10 erstellen, und es liegt an jedem anderen Programm (z. B. Ihrem 3D-Druck-Slicer), diese zu interpretieren, entweder als Metrik oder als imperial. Es bietet tatsächlich eine große Flexibilität.

Fügen Sie Ihrem Cube einige Dimensionen hinzu. Dazu müssen Sie Parameter an den übergeben Würfel Methode:

Würfel (Größe = [10, 20, 30]); // Rechteck

Die Werte 10, 20, und 30 repräsentieren die Größe des Würfels im X, Y, und Z Achse. Beachten Sie, wie dies zu einem viel größeren Rechteck geführt hat:

Standardmäßig zeichnet OpenSCAD Komponenten von links unten. Sie können dies durch Einstellen von einstellen Center Parameter zu wahr. Hier ist der Code, um das mit dem Rechteck zu tun:

Würfel (Größe = [10, 20, 30], Mitte = wahr); // Rechteck zentriert

Und so sieht es aus:

Das Zentrieren von Objekten funktioniert für einfache Formen gut, aber für nicht symmetrische Objekte ist dies kompliziert. Sie müssen entscheiden, welche Methode für Sie am besten geeignet ist.

Um zu einer komplexeren Form zu gelangen, hier ist ein Zylinder:

Hier ist der Code zum Erstellen:

Zylinder (d = 10, h = 10, Mitte = wahr); // Zylinder

nicht wie Würfel, Zylinder werden automatisch in der Mitte der X- und Y-Achse gezeichnet. Das d Parameter steht für Durchmesser (Sie können stattdessen den Radius passieren, wenn Sie möchten). Das h Parameter ist die Höhe. Hier stimmt etwas nicht. Dieser Zylinder sieht ziemlich gut aus “blockig”. Sie müssen die Anzahl der am Umfang gezeichneten Flächen erhöhen. Dies ist ganz einfach - fügen Sie dem Zylindercode den folgenden Parameter hinzu.

$ fn = 100

Die Zylinderdefinition wird also zu:

Zylinder (d = 10, h = 10, Mitte = wahr, $ fn = 100);

So sieht das aus:

Dies erhöht die Anzahl der Flächen, die zum Erstellen von Kreisen benötigt werden - 100 ist ein guter Ausgangspunkt. Beachten Sie, dass dadurch die Renderzeiten besonders bei komplexen Modellen erheblich verlängert werden. Daher ist es normalerweise ratsam, diese Option auszulassen, bis Sie mit dem Entwurf fertig sind.

Transformationen lassen sich leicht auf Formen anwenden. Sie müssen spezielle Methoden aufrufen, bevor Sie Ihre Formen erstellen. So drehen Sie den Zylinder mit der drehen Methode:

Zylinder drehen (a = [0, 90, 0]) (d = 10, h = 10, Mitte = wahr); // gedrehter Zylinder

Die Werte wurden an übergeben ein Parameter stellen den Drehwinkel der X-, Y- und Z-Achse dar. Hier ist das Ergebnis:

Eine weitere sehr nützliche Funktion ist Übersetzen. Auf diese Weise können Sie Objekte im 3D-Raum verschieben. Erneut müssen Sie den Bewegungsbetrag für jede Achse übergeben. Hier ist das Ergebnis:

Hier ist der Code:

translate (v = [0, 25, 0]) Zylinder (d = 10, h = 10, Mitte = wahr); // übersetzter Zylinder

Das verstehen Übersetzen Methode ist eines der wichtigsten Dinge, die Sie tun können. Es ist für das Design komplexer Designs erforderlich.

Schließlich ist eine weitere nützliche Form a Kugel:

Hier ist der Code:

Kugel (d = 100);

Genau wie der Zylinder können Sie dies mit dem Glättungsfilter glätten $ fn Code oben.

Erweiterte Codierung

Nun, da Sie die Grundlagen kennen, wollen wir uns einige fortgeschrittenere Fähigkeiten ansehen. Beim Entwerfen eines Teils ist es hilfreich, darüber nachzudenken, wie es aus kleineren Formen und Objekten bestehen kann. Sie müssen das nicht tun, und Sie können es “etwas ins Lot bringen” wie du gehst, aber es hilft, einen groben Plan zu haben - selbst wenn es nur in deinem Kopf ist.

Erstellen wir eine erweiterte Form: einen Würfel mit einer ausgehöhlten Kugel im Inneren. Ein ... kreieren Würfel und ein Kugel mit Center auf wahr setzen. Subtrahieren Sie eins mit dem Unterschied Methode:

Differenz () // Subtraktionswürfel (Größe = [50, 50, 50], Mitte = wahr); // äußere Würfelkugel (d = 65, center = true); // innere Sphäre

Hier ist das Ergebnis:

Experimentieren Sie mit dem Durchmesser (d Parameter) der Kugel und sehen, was passiert.

In OpenSCAD gibt es normalerweise viele Möglichkeiten, dieselbe Aufgabe auszuführen. Wenn Sie einen Groove in einem Cube haben möchten, können Sie einen weiteren Cube davon abziehen oder zwei weitere hinzufügen. Normalerweise spielt es keine Rolle, auf welche Art und Weise Dinge erledigt werden. Abhängig von der Komplexität des Teils ist es jedoch möglicherweise einfacher, bestimmte Manipulationen zuerst durchzuführen.

So erstellen Sie einen Kanal in einem Cube. Anstelle eines anderen Würfels wird mit einem Zylinder ein abgerundeter Kanal erstellt. Beachten Sie, wie die Unterschied Methode wird noch einmal verwendet und wie Übersetzen und drehen Methoden werden verwendet, um die Formen zu manipulieren. Verwendung der drehen Diese Methode macht Transformationen oft schwierig. Spielen Sie also mit den Parametern, bis Sie das gewünschte Ergebnis erzielen. Hier ist der Code:

Differenz () // Subtraktionswürfel (Größe = [50, 150, 50]); // Würfelumwandlung (v = [25, 150, 50]) Drehen (a = [90, 0, 0]) Zylinder (d = 40, h = 150); // Zylinderkanal

So sieht das aus:

Sie fragen sich vielleicht, was das grüne Zeug ist. Dies ist hier, weil das 3D-Modell gerade eine Vorschau darstellt. Um dies zu beheben, drücken Sie F6 das Modell vollständig rendern. Dies kann je nach Komplexität einige Zeit dauern. Die Vorschau (F5) ist während der Arbeit normalerweise gut genug. So sieht das finale Rendern aus (mit $ fn auf 100 setzen:

Hier ist ein weiteres fortgeschrittenes Beispiel. Angenommen, Sie wollten etwas mit einem Bolzen montieren. Das Erstellen eines Lochs ist einfach genug Zylinder, Was wäre, wenn Sie den Schraubenkopf bündig für Senkkopfschrauben haben wollten? Sie könnten einfach einen großen Zylinder erstellen, in den der Schraubenkopf eingesetzt werden kann, aber das würde nicht sehr schön aussehen. Die Lösung ist eine Fase, die Sie mit dem erstellen können Zylinder Methode. Der Trick hier ist, zwei Durchmesser anzugeben - d1 und d2. Wenn Sie diese Größen ändern, erledigt OpenSCAD den Rest.

Da ich Brite bin, verwende ich hier metrische Abmessungen für einen M5-Senkkopf. Sie können dies leicht anpassen, um zu den Befestigungselementen zu passen, die Sie verwenden möchten. Hier ist der Code:

$ fn = 100; // Schraubeneinstellungen m5_clearance_diameter = 5,5; m5_head_clearance_diameter = 11; m5_head_depth = 5; Differenz () // Würfel abziehen (20, 20, 20); Bolzenloch (10, 10, 20); bolt_bevel (10, 10, 15);  Modul Bolzenloch (x, y, Höhe) / * M5-Loch bei 90 °. * / translate (v = [x, y, 0]) Zylinder (d = m5_clearance_diameter, h = Höhe);  module bolt_bevel (x, y, z) // M5 Abschrägungsverschiebung (v = [x, y, z]) Zylinder (d2 = m5_head_clearance_diameter, d1 = m5_clearance_diameter, h = m5_head_depth); 

Beachten Sie, wie die Schraubendimensionen in Variablen gespeichert werden. Dies erleichtert die Codierung und Wartung. Eine Methode, die Sie vielleicht noch nicht kennengelernt haben, ist Modul. Auf diese Weise können Sie einen Codeblock definieren, der jederzeit ausgeführt werden soll. In Wirklichkeit ist dies ein Funktion. Du solltest benutzen Module und Variablen für komplexe Formen, da sie das Lesen erleichtern und Änderungen schneller vornehmen. So sieht die Fase aus:

Schauen wir uns ein letztes Beispiel an. Angenommen, Sie wollten eine Reihe von Löchern um einen Kreis erzeugen. Sie können alle diese Werte manuell messen, übersetzen und drehen, aber selbst bei Modulen wäre dies mühsam. Hier ist das Endergebnis, 10 Zylinder sind sogar um einen Kreis herum verteilt:

Hier ist der Code:

$ fn = 100; number_of_holes = 10; for (i = [1: 360 / number_of_holes: 360]) // number_of_holes gibt an, wie oft dieser Code ausgeführt wird. make_cylinder (i);  Modul make_cylinder (i) // Zylinder machen und sogar verteilen drehen ([0, 0, i]) translate ([10, 0, 0]) Zylinder (h = 2, r = 2); 

Dieser Code ist einfacher als Sie erwarten würden. EIN zum Schleife wird verwendet, um die. aufzurufen make_cylinder zehnmal. Da es 360 Grad in einem Kreis gibt und 360/10 = 36, muss jeder Zylinder in Schritten von 36 Grad gedreht werden. Bei jeder Wiederholung dieser Schleife wird der Wert erhöht ich Variable um 36. Diese Schleife ruft die make_cylinder Modul, das einfach einen Zylinder zieht und entsprechend den von der Schleife übergebenen Grad positioniert. Sie können mehr oder weniger Zylinder zeichnen, indem Sie das ändern Anzahl der Löcher Variable - obwohl Sie den Abstand anpassen möchten, wenn Sie dies tun. So sehen 100 Zylinder aus, die sich leicht überschneiden:

Exportieren

Nachdem Sie nun wissen, wie Sie in OpenScad programmieren, ist ein letzter Schritt erforderlich, bevor Sie Ihre Modelle in 3D drucken können. Sie müssen Ihr Design aus OpenSCAD in den Standard exportieren STL Format, das von den meisten 3D-Druckern verwendet wird. Zum Glück gibt es einen Export nach STL-Button: Editor-Menü > Oben rechts:

Das war `s für heute. Sie sollten jetzt über gute Kenntnisse in OpenSCAD verfügen - all diese komplexen Dinge bauen auf diesen Grundlagen auf, und viele komplexe Formen bestehen aus vielen einfachen Formen.

Schauen Sie sich einige unserer 3D-Druckprojekte an und versuchen Sie, die Teile in OpenSCAD neu zu erstellen:

  • 3D-Ausdrucke für Tabletop-Fantasy-RPGs Die besten 3D-Ausdrucke für Tabletop-Fantasy-RPGs Die besten 3D-Ausdrucke für Tabletop-Fantasy-RPGs Wenn Sie ein intensives Erlebnis für Rollenspiele bevorzugen, gibt es einen neuen Weg: Verwenden Sie 3D-Druck, um physische Geländestücke zu erstellen Miniaturen. Weiterlesen
  • Benutzerdefinierte Tastenkombinationen Erstellen Sie Ihre eigenen Tastenkombinationen mit einem Arduino Erstellen Sie Ihre eigenen Tastenkombinationen mit einem Arduino Der bescheidene Arduino kann viele Dinge tun, aber wussten Sie, dass er eine USB-Tastatur emulieren kann? Mit dieser einfachen Schaltung können Sie lange Tastenkombinationen in einer einzigen benutzerdefinierten Tastenkombination kombinieren. Weiterlesen
  • Elektronische D20-Rolle im Stil mit dieser DIY-Elektronik D20-Rolle in Stil mit dieser DIY-Elektronik-D20-Matrize Möchten Sie bei Ihrem nächsten Gaming-Treffen etwas Einzigartiges? Schauen Sie sich diese elektronische DIY D20 an, die benutzerdefinierte Grafiken für kritische Treffer und Fehlschüsse bietet. Weiterlesen
  • Spiele, die Sie drucken können 3D-Druck 6 coolste Spiele, die Sie 3D-Druck zu Hause erstellen können 6 coolste Spiele, die Sie 3D-Druck zu Hause drucken können Jeder kennt 3D-Drucker deine ganze Familie Wir sprechen von 3D-gedruckten Tabletop-Spielen. Weiterlesen

Hast du heute neue Tricks gelernt? Was ist deine Lieblingsfunktion von OpenSCAD? Wechseln Sie bald von einem anderen CAD-Werkzeug? Lass es uns in den Kommentaren wissen!

Erfahren Sie mehr über: 3D-Modellierung, 3D-Druck.