123 lines
5.4 KiB
OpenSCAD
123 lines
5.4 KiB
OpenSCAD
//OpenSCAD-Skript
|
|
// 2024-06-09 xsider Anpassung 7mm Abstand
|
|
// 2024-06-03 xsider Anpassungen an Raster 25
|
|
|
|
//Moduldefinition mit Parametern
|
|
//---------------------------------------------------------------------
|
|
module support (
|
|
//Parameter
|
|
b=250, //Breite der Frontplatte, innenmaß für P0170 200x100mm
|
|
h=150, //Höhe der Frontplatte
|
|
dick=3, //Auflagedicke des Rahmens
|
|
chmfr=3, //Maß der Kante (muss identisch sein mit Rahmen chmfr)
|
|
chmtyp=1, //Typ der Kante 0:Fase, 1:Rundung (muss identisch sein mit Rahmen chmtyp)
|
|
fnn=32, //Definition Anzahl Facetten der Rundung (muss identisch sein mit Rahmen fnn)
|
|
//Bohrungen außen (muss identisch sein mit Bohrungen Rahmen)
|
|
beschriftung = "P0188-16-a",
|
|
|
|
|
|
//Raster (muss identisch sein mit Rahmen x,y,segment)
|
|
x=5,y=3,segment=50,
|
|
//Rasteroffsets (muss identisch sein mit Rahmen x_off,y_off)
|
|
x_off=0,y_off=0,
|
|
//Eintauchtiefe der Stützstruktur ins Gehäuse
|
|
intr=0,
|
|
//Rasterbohrungen und Stützgitter
|
|
diab=3.2, // Kernloch Durchgangsloch für M2
|
|
diamat=5, //Materialdurchmesser für Schraubenbefestigung
|
|
//Strebendefinition vertikale Streben
|
|
//Definition Schraubenblöcke
|
|
sm25 = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],
|
|
sm24 = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],
|
|
sm23 = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],
|
|
sm22 = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],
|
|
sm21 = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],
|
|
sm20 = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],
|
|
sm19 = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],
|
|
sm18 = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],
|
|
sm17 = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],
|
|
sm16 = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],
|
|
sm15 = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],
|
|
sm14 = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],
|
|
sm13 = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],
|
|
sm12 = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],
|
|
sm11 = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],
|
|
sm10 = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],
|
|
sm09 = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],
|
|
sm08 = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],
|
|
sm07 = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],
|
|
sm06 = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],
|
|
sm05 = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],
|
|
sm04 = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],
|
|
sm03 = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],
|
|
sm02 = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],
|
|
sm01 = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1]
|
|
)
|
|
//Beginn Modul
|
|
{
|
|
difference(){ //difference 1
|
|
union(){ //union 2
|
|
//alles, was vor der nächsten geschweiften Klammer steht, wird zusammengefügt (union 2)
|
|
translate([-b/2-1, -h/2-1, 0]) cube([b+2,h+2,dick]);
|
|
//Schraubenblöcke
|
|
//Schraubenzylinder
|
|
for (i = [0:x]) {
|
|
for (k = [0:y]) {
|
|
translate([-(x*segment)/2+i*segment+x_off,-(y*segment)/2+k*segment+y_off,0]) cylinder(d=diamat, h=dick, $fn=fnn);}}
|
|
|
|
} //union 2 end
|
|
//Schraubenlöcher abziehen
|
|
for (i = [0:x]) {
|
|
for (k = [0:y]) {
|
|
sm=[sm01,sm02,sm03,sm04,sm05,sm06,sm07,sm08,sm09,sm10,sm11,sm12,sm13,sm14,sm15,sm16,sm17,sm18,sm19,sm20,sm21,sm22,sm23,sm24,sm25];
|
|
if (sm[k-1][i-1]!=0) {
|
|
translate([-(x*segment)/2+i*segment+x_off,-(y*segment)/2+k*segment+y_off,-intr-0.1]) cylinder(d=diab, h=2*dick, $fn=fnn);}}
|
|
}
|
|
// Vertiefungen für die Leuchtbänder
|
|
bandbreite=11;
|
|
bandtiefe=2;
|
|
bandlange=500;
|
|
for (i= [-3:3] ) {
|
|
translate([0,i*25+12.5,0])
|
|
translate([-bandlange/2,-bandbreite/2,dick-bandtiefe/2])cube([bandlange,bandbreite,bandtiefe]);
|
|
}
|
|
// Lochbild für DCDC-Wandler M3-Gewinde DP6037
|
|
translate([-90,38,0])
|
|
{
|
|
translate([52/2,29/2,intr-0.1])cylinder(d=2.5, h=2*dick, $fn=fnn);
|
|
translate([-52/2,29/2,intr-0.1])cylinder(d=2.5, h=2*dick, $fn=fnn);
|
|
translate([52/2,-29/2,intr-0.1])cylinder(d=2.5, h=2*dick, $fn=fnn);
|
|
translate([-52/2,-29/2,intr-0.1])cylinder(d=2.5, h=2*dick, $fn=fnn);
|
|
}
|
|
// Lochbild für DP100100 Optional
|
|
translate([00,0,0])
|
|
{
|
|
translate([92/2,92/2,intr-0.1])cylinder(d=2.5, h=2*dick, $fn=fnn);
|
|
translate([-92/2,92/2,intr-0.1])cylinder(d=2.5, h=2*dick, $fn=fnn);
|
|
translate([92/2,-92/2,intr-0.1])cylinder(d=2.5, h=2*dick, $fn=fnn);
|
|
translate([-92/2,-92/2,intr-0.1])cylinder(d=2.5, h=2*dick, $fn=fnn);
|
|
}
|
|
|
|
// Lochbild für DP10062
|
|
translate([85,0,0])
|
|
{
|
|
translate([54/2,92/2,intr-0.1])cylinder(d=2.5, h=2*dick, $fn=fnn);
|
|
translate([-54/2,92/2,intr-0.1])cylinder(d=2.5, h=2*dick, $fn=fnn);
|
|
translate([54/2,-92/2,intr-0.1])cylinder(d=2.5, h=2*dick, $fn=fnn);
|
|
translate([-54/2,-92/2,intr-0.1])cylinder(d=2.5, h=2*dick, $fn=fnn);
|
|
}
|
|
|
|
// Beschriftung
|
|
translate([55,-57,0.5])rotate([180,0,0])
|
|
linear_extrude(height=1)
|
|
text( text=beschriftung,size=10,font="osifont",valign=center,halign=center,$fn=50);
|
|
}
|
|
|
|
|
|
} //module end
|
|
|
|
//Hier werden Instanzen des Moduls aufgerufen
|
|
//rotate([0,180,0]) //auskommentieren für seitenrichtige Anzeige
|
|
translate([0,0,0]) support(); //in z-Richtung um -dick verschieben
|
|
|