//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