diff --git a/Matekiste_Power_PCB_Bracket.scad b/Matekiste_Power_PCB_Bracket.scad new file mode 100644 index 0000000..3cf9781 --- /dev/null +++ b/Matekiste_Power_PCB_Bracket.scad @@ -0,0 +1,43 @@ +PCB_SIZE_X=50; +PCB_SIZE_Y=70; +PCB_DITCH_Z=2; +THICKNESS=5; + +PIN_DIAMETER=2; +PIN_HEIGHT=5; +PIN_SPACING_X=2; +PIN_SPACING_Y=2; + +FRAME_ROD_DIAMETER=6; // M6 +FRAME_ROD_DISTANCE=25; + +TOLERANCE=0.5; +$fn = 36; + +// the frame +difference() { + cube([PCB_SIZE_X, PCB_SIZE_Y, THICKNESS]); + translate([THICKNESS, THICKNESS, THICKNESS - PCB_DITCH_Z]) + cube([PCB_SIZE_X - THICKNESS*2, PCB_SIZE_Y - THICKNESS*2, PCB_DITCH_Z]); +} + +// PCB holder pins +translate([0, 0, THICKNESS]) { + translate([PIN_SPACING_X, PIN_SPACING_Y]) + cylinder(d=PIN_DIAMETER - TOLERANCE, h=PIN_HEIGHT); + translate([PCB_SIZE_X - PIN_SPACING_X, PIN_SPACING_Y]) + cylinder(d=PIN_DIAMETER - TOLERANCE, h=PIN_HEIGHT); + translate([PIN_SPACING_X, PCB_SIZE_Y - PIN_SPACING_Y]) + cylinder(d=PIN_DIAMETER - TOLERANCE, h=PIN_HEIGHT); + translate([PCB_SIZE_X - PIN_SPACING_X, PCB_SIZE_Y - PIN_SPACING_Y]) + cylinder(d=PIN_DIAMETER - TOLERANCE, h=PIN_HEIGHT); +} + +// frame connector +translate([PCB_SIZE_X, PCB_SIZE_Y/2 - THICKNESS/2]) +cube([FRAME_ROD_DISTANCE + THICKNESS, THICKNESS, THICKNESS]); +translate([PCB_SIZE_X + FRAME_ROD_DISTANCE + FRAME_ROD_DIAMETER/2 + THICKNESS + TOLERANCE, PCB_SIZE_Y/2]) +difference() { + cylinder(d=FRAME_ROD_DIAMETER + TOLERANCE + THICKNESS*2, h=THICKNESS); + cylinder(d=FRAME_ROD_DIAMETER + TOLERANCE, h=THICKNESS); +} \ No newline at end of file