Intro
CadQuery ist eine codebasierte CAD-Bibliothek, sehr ähnlich wie OpenSCAD, aber auf Python basierend. Im Gegensatz zu OpenSCAD verwendet die Modellierung OpenCascade im Hintergrund. Daher ist die Modellierungserfahrung näher an anderen BRep-CAD-Softwarepaketen wie Fusion 360 oder Solidworks. Diese Gehäuse ist mein erstes Projekt, bei dem ich die Bibliothek verwendet habe.
Eine coole Sache ist, dass Dateien als STEP-Dateien importiert und exportiert werden können. Das bedeutet, dass die in KiCAD entworfenen PCBs importiert und in das Gehäuse integriert werden können.
Wo man CadQuery bekommt
Ich empfehle die Installation von CQ-Editor. Es ist eine kleine IDE, die CadQuery gebündelt hat und Ihr Modell direkt innerhalb der IDE anzeigen und exportieren kann. Das offizielle Github ist hier:https://github.com/CadQuery/CQ-editor
Wie man das Gehäuse anpassen kann
An der Spitze der Datei befindet sich eine Sammlung von globalen Variablen, die an den unten stehenden Code übergeben werden, um die Umhausung zu generieren.
#Secect Welche Komponenten zu erstellen sind makeTop=True makeBottom=True makeFront=True makeBack=TrueIm obigen Code entspricht 'coorispond' den Teilen, die generiert werden sollen. Zum Beispiel setzen Sie 'makeTop' auf 'True' und die anderen Variablen auf 'False', um nur die Oberseite des Gehäuses zu erstellen.
#overall shell Dims Höhe=40 #Höhe des Gehäuses Breite=170 #Breite des Gehäuses Länge=90 #Länge des Gehäuses Dicke=2 #Dicke der Wände Rundungsradius=3 #Größe der Nuten für die Furniere Dicke=2 #Dicke der vorderen und hinteren Panels Toleranz=0,6 #Toleranz oder zusätzliche Neigung, die für die Nuten der Panels gegeben istÄndern Sie die obigen Werte, um die Größe des Gehäuses zu ändern. Beachten Sie, dass alle Abmessungen in Millimetern angegeben sind.
#Abmessungen der Montagefüße an der Unterseite. mounts=True mountLenPad=8 mountT=dick mountHoleDia=5Der obige Code beeinflusst die Größe der seitlichen Montagepads. Setzen Sie "needMounts" auf False, um die seitlichen Montagefüße vollständig zu entfernen.
#Abmessungen der seitlichen Laschen auf der unteren LascheW=10 tabH=8 tabT=2 tabHoleDia=2Diese Variablen beschreiben die Größe der Montageklammern, die vom unteren Teil des Gehäuses herausragen, so dass das obere Teil daran geschraubt werden kann.
#PCB-Montagepfosten #Standorte der PCB-Pfosten [(x,y),(x,y)] pcbMLocs=[(-66.675+5.715, 46.79-27.94-12), (-66.675+5.715, 21.79-27.94-12), (+66.675-5.715, 46.79-27.94-12), (+66.675-5.715, 21.79-27.94-12)] pcbMDia=5 pcbHoleDia=2 pcbMHeight=Wenn Sie Montagepfosten benötigen, können Sie eine beliebige Anzahl davon haben, indem Sie das Array ausfüllen. Die PCB befindet sich in der Mitte des Gehäuses. Wenn keine PCB-Montagen benötigt werden, ändern Sie pcbMlocs in ein leeres Array.
#Bottom Vents botSideVents=False #Top Vents topSideVents=False topTopVents=TrueSetze True oder False, je nachdem, ob du Belüftungsöffnungen im Gehäuse möchtest.
##Fülle für Löcher auf der Vorderseite der Gehäusekarte##### #Standorte für Löcher sind definiert als [(x_loc,y_loc.dia),(x,y.dia)] frontHoles=[] #Standorte für Rechtecke sind definiert als [(x_loc,y_loc,width,length)] frontRects=[] #Text [(x,y,thick,fontsize,text)] frontTexts=[] ##Fülle für Löcher und Text auf der Rückseite der GehäDefinieren Sie die Position und Größe der vorderen Lochausschnitte auf der Vorder- und Rückseite. In diesem Modell unterstützt es Kreise und Quadrate jeder Größe. Text kann auch auf die Vorder- und Rückseite hinzugefügt werden, indem die obigen Arrays geändert werden.
Nun, das war's. Ich hoffe, dass dieser Code für jeden, der ihn braucht, nützlich sein kann, und lasst mich wissen, wenn ihr irgendwelche Empfehlungen habt.
Etiketler
Model Kaynağı
