Da ich keine Kabelkette gefunden habe, die meinen Bedürfnissen entspricht, habe ich beschlossen, meine eigene zu machen.
Ich war auf der Suche nach einer vollständig parametrischen Kabelkette, die in der Lage ist, in CSG auszugeben.
Die Kabelketten, die ich hier gefunden habe, waren größtenteils nur .stl-Oberflächen.
Außerdem wollte ich nicht nur einen einzelnen Chainlink bauen können, sondern eine komplette Kabelkette.
Hier können Sie einen Vektor angeben, der aus den Winkeln in Richtung der vorherigen Kettenglieder besteht.
In Zukunft wird es eine zusätzliche Option zu verschiedenen Link-Typen geben, um die Winkelbewegung der Kette einzuschränken.
Die Kabelkette wird durch einen verschachtelten Vektor generiert.
Es gibt ein Tupel, bestehend aus dem Kettentyp (im Moment gibt es nur Typ 1: beschränkt auf 45°-Bewegung und Typ 2: +-45°-Bewegung, Typ 3 erzeugt eine schön aussehende geschlossene Kette, die aber mechanisch nicht unbedingt sinnvoll ist, Typ 4 und weiter ist genau das gleiche wie Typ 3) und dem Winkel dieser Verbindung zum vorherigen. Z. B. [1,30] ist eine Verbindung mit einem W
Diese Tupel sind in einen Vektor eingebettet. Der Vektor:
ChainDef = [[1,0],[1,0],[1,0],[1,0],[1,0],[1,0],[1,0],[1,0],[1,0],[1,0],[1,30],[1,30],[1,30],[1,30],[1,30],[1,30],[1,0],[1,0],[1,0],[1,0],[1,0],[1,0],[1,0],[1,0]];
Definiert die als Screenshot gezeigte Beispiel-Kabelkette.
Der Vektor:
ChainDef = [[1,0],[1,5],[1,15],[1,15],[1,20],[1,20],[1,20],[1,20],[1,15],[1,15],[1,10],[1,10],[1,10],[1,10],[1,10],[1,10],[1,7],[1,6],[1,5],[1,5],[1,5],[1,5],[1,5],[1,5],[1,4],[1,4],[1,4],[1,4],[1,3],[1,3],[1,0],
Definiert die Version, die ich in meinem 3D-Drucker für die xy-Achse verwende.
Die Kettenglieder sind nicht für den Druck optimiert. Ich habe dies gemacht, um schnell Kabelketten in einem soliden Geometrieformat in meine FreeCAD Drucker-Montage hinzufügen zu können. Wenn Sie maßgeschneiderte Kettenglieder drucken möchten, können Sie natürlich einfach die Kettenlänge auf ein einzelnes Element einstellen und die .stl exportieren:
ChainDef = [[1,0]];
Ich werde einen für das Drucken optimierten Link hinzufügen. Aber vielleicht könnte es für Sie interessant sein, wie man parametrische Ketten generiert, da OpenSCAD eine funktionale Sprache ist, in der man keine "for"-Schleifen und Variablen verwenden kann. Zur Auswertung des Eingabeverners muss dies in einer rekursiven Funktion erfolgen.
Bitte, achten Sie nicht auf die schlechte Formatierung der Quelle mit deutschen Wörtern in den Kommentaren. Ich habe das nur schnell an einem Nachmittag gemacht, da ich es als eine schnelle und einfache Lösung für mein 3D-Druckerprojekt brauchte, aber ich dachte, es könnte vielleicht für jemanden hier von Interesse sein, also habe ich es trotzdem in dieser "Beta"-Version hier hochgeladen.
Ich werde es sicherlich später mit einer besser strukturierten und kommentierten Version aktualisieren.
Wenn ihr irgendwelche Fragen habt, könnt ihr gerne einen Kommentar hinterlassen.
ToDo:
- Möglichkeit, den erlaubten Bewegungswinkel einzuschränken.
- Weitere 3D-Drucker-freundliche Linktypen (z. B. basierend auf:http://www.thingiverse.com/thing:34661)
- Überprüfen Sie, ob eine chainprintbare Version möglich ist.
- Fügen Sie Start- und End-Links hinzu.
- Den Quellcode aufräumen
- Verbessern Sie die Erkennung vonUnmöglich.Designs ("Fehler-Kubus")
Wie ich das entworfen habe
Kategorie: 3D-Drucker-TeileTags
Model Source
