New parts
This commit is contained in:
40
server_rack/scad/dual_cm4_io_board_mount.scad
Normal file
40
server_rack/scad/dual_cm4_io_board_mount.scad
Normal file
@@ -0,0 +1,40 @@
|
||||
$fn=60;
|
||||
|
||||
include <BOSL2/std.scad>
|
||||
include <nutsnbolts/cyl_head_bolt.scad>
|
||||
include <mini_itx_board.scad>
|
||||
|
||||
frame_l=180;
|
||||
frame_e=3;
|
||||
p_height=5;
|
||||
|
||||
module pilar() {
|
||||
difference() {
|
||||
zcyl(l=p_height, d=8, rounding1=-2);
|
||||
zcyl(l=p_height, d=3, rounding=-1);
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
module io_board() {
|
||||
cuboid([110,80,frame_e], rounding=3, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT]);
|
||||
translate([-39,-24.5,p_height-1]) pilar();
|
||||
translate([-39,24.5,p_height-1]) pilar();
|
||||
translate([19,-24.5,p_height-1]) pilar();
|
||||
translate([19,24.5,p_height-1]) pilar();
|
||||
}
|
||||
|
||||
// io_mount
|
||||
difference() {
|
||||
union() {
|
||||
//base
|
||||
cuboid([frame_l,frame_l,frame_e], rounding=5, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT]);
|
||||
// io_boards
|
||||
translate([-25,40,0]) io_board();
|
||||
translate([-25,-40,0]) io_board();
|
||||
}
|
||||
translate([-35,40,0]) cuboid([60,40,frame_e+1], rounding=3, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT]);
|
||||
translate([-35,-40,0]) cuboid([60,40,frame_e+1], rounding=3, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT]);
|
||||
translate([frame_l/4+5,frame_l/4-2.5,0]) cuboid([frame_l/2-30,frame_l/2-17.5,frame_e+1], rounding=5, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT]);
|
||||
translate([frame_l/4+5,-frame_l/4+2.5,0]) cuboid([frame_l/2-30,frame_l/2-17.5,frame_e+1], rounding=5, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT]);
|
||||
}
|
||||
20
server_rack/scad/dual_ssd_mount.scad
Normal file
20
server_rack/scad/dual_ssd_mount.scad
Normal file
@@ -0,0 +1,20 @@
|
||||
$fn=60;
|
||||
|
||||
include <BOSL2/std.scad>
|
||||
include <nutsnbolts/cyl_head_bolt.scad>
|
||||
|
||||
difference() {
|
||||
union() {
|
||||
translate([0,0,-1.5]) rotate([0,0,90]) import("../stl/dual_2.5_ssd_shelf.stl");
|
||||
rotate([0,0,41]) cuboid([170,10,3], rounding=5, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT]);
|
||||
rotate([0,0,-41]) cuboid([170,10,3], rounding=5, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT]);
|
||||
tube(od=135, id=125, l=3);
|
||||
}
|
||||
cuboid([70,64.5,8]);
|
||||
color("red") {
|
||||
translate([60,52.5,0]) zcyl(l=10, d=4.5);
|
||||
translate([60,-52.5,0]) zcyl(l=10, d=4.5);
|
||||
translate([-60,52.5,0]) zcyl(l=10, d=4.5);
|
||||
translate([-60,-52.5,0]) zcyl(l=10, d=4.5);
|
||||
}
|
||||
}
|
||||
20
server_rack/scad/mini_itx_board.scad
Normal file
20
server_rack/scad/mini_itx_board.scad
Normal file
@@ -0,0 +1,20 @@
|
||||
fragments = 36;
|
||||
d=3.96;
|
||||
h=3;
|
||||
|
||||
module pcb() {
|
||||
color("green") {
|
||||
difference(){
|
||||
cube(size = [170,170,h], center = false);
|
||||
// mini-itx holes
|
||||
translate([6.35,6.35+22.86,0])
|
||||
cylinder(5, d/2, d/2, $fn = fragments, center=false);
|
||||
translate([6.35,6.35+154.94,0])
|
||||
cylinder(5, d/2, d/2, $fn = fragments, center=false);
|
||||
translate([6.35+157.48,6.35,0])
|
||||
cylinder(5, d/2, d/2, $fn = fragments, center=false);
|
||||
translate([6.35+157.48,6.35+154.94,0])
|
||||
cylinder(5, d/2, d/2, $fn = fragments, center=false);
|
||||
}
|
||||
}
|
||||
}
|
||||
38
server_rack/scad/mini_itx_mount.scad
Normal file
38
server_rack/scad/mini_itx_mount.scad
Normal file
@@ -0,0 +1,38 @@
|
||||
$fn=60;
|
||||
|
||||
include <BOSL2/std.scad>
|
||||
include <nutsnbolts/cyl_head_bolt.scad>
|
||||
include <mini_itx_board.scad>
|
||||
|
||||
frame_l=180;
|
||||
frame_e=3;
|
||||
p_height=5;
|
||||
|
||||
module pilar() {
|
||||
difference() {
|
||||
zcyl(l=p_height, d=8, rounding1=-2);
|
||||
zcyl(l=p_height, d=3, rounding=-1);
|
||||
}
|
||||
}
|
||||
|
||||
* translate([-85,-81,10]) pcb();
|
||||
|
||||
difference() {
|
||||
union() {
|
||||
cuboid([frame_l,frame_l,frame_e], rounding=5, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT]);
|
||||
}
|
||||
cuboid([frame_l-41,frame_l-41,frame_e+1], rounding=5, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT]);
|
||||
}
|
||||
|
||||
translate([-78.7,-52.2,p_height-1]) pilar();
|
||||
translate([-78.7,80.1,p_height-1]) pilar();
|
||||
translate([78.8,80.1,p_height-1]) pilar();
|
||||
translate([78.8,-74.8,p_height-1]) pilar();
|
||||
|
||||
// base
|
||||
* color("red") {
|
||||
translate([-78.7,-52.2,5]) zcyl(l=20, d=1);
|
||||
translate([-78.7,80.1,5]) zcyl(l=20, d=1);
|
||||
translate([78.8,80.1,5]) zcyl(l=20, d=1);
|
||||
translate([78.8,-74.8,5]) zcyl(l=20, d=1);
|
||||
}
|
||||
Reference in New Issue
Block a user