diff options
-rw-r--r-- | connector_front.scad | 42 | ||||
-rw-r--r-- | nipple.scad | 8 | ||||
-rw-r--r-- | parameters.scad | 24 | ||||
-rw-r--r-- | rail.scad | 9 |
4 files changed, 46 insertions, 37 deletions
diff --git a/connector_front.scad b/connector_front.scad index e15089d..413f90b 100644 --- a/connector_front.scad +++ b/connector_front.scad @@ -1,37 +1,7 @@ -// PARAMETERS +include <parameters.scad> -// space above hdd available for air flow -cooling_height = 10; - -// thickness of the support bar -bar_thickness = 10; - -// diameter of thread rod used for support -rod_diameter = 4; - -// dimensions of HDDs; not model-specific; current values are fake -hdd_width = 80; -hdd_height = 30; -hdd_length = 100; - -// dimensions of the L-shaped rail between front and back -rail_width = 15; -rail_height = rail_width; -rail_thickness = 1; - -// dimension of a single hdd tray (hdd + space around) -tray_height = hdd_height + cooling_height + rail_thickness; -tray_width = hdd_width + bar_thickness; - -pla_epsilon = 0.1; - - -// CONSTRUCTION - -module nipple(e = 0) { - rotate([0, 180, 0]) - cylinder(h = bar_thickness / 4 + e, r1 = bar_thickness / 4 + e, r2 = 0, $fs=0.1); -} +use <nipple.scad> +use <rail.scad> module half() difference() { union() { @@ -54,10 +24,8 @@ module half() difference() { } // receiver for rail - translate([bar_thickness/2 - rail_thickness, 0, bar_thickness - rail_thickness]) { - cube([rail_thickness, bar_thickness, rail_height]); - cube([rail_width, bar_thickness, rail_thickness]); - } + translate([bar_thickness/2 - rail_thickness, 0, bar_thickness - rail_thickness]) + rail(); // holes for thread rods (horizontal, vertical) translate([0, bar_thickness / 2, 0]) diff --git a/nipple.scad b/nipple.scad new file mode 100644 index 0000000..2894d5c --- /dev/null +++ b/nipple.scad @@ -0,0 +1,8 @@ +include <parameters.scad> + +module nipple(e = 0) { + rotate([0, 180, 0]) + cylinder(h = bar_thickness / 4 + e, r1 = bar_thickness / 4 + e, r2 = 0, $fs=0.1); +} + +nipple(); diff --git a/parameters.scad b/parameters.scad new file mode 100644 index 0000000..f95d757 --- /dev/null +++ b/parameters.scad @@ -0,0 +1,24 @@ +// space above hdd available for air flow +cooling_height = 10; + +// thickness of the support bar +bar_thickness = 10; + +// diameter of thread rod used for support +rod_diameter = 4; + +// dimensions of HDDs; not model-specific; current values are fake +hdd_width = 80; +hdd_height = 30; +hdd_length = 100; + +// dimensions of the L-shaped rail between front and back +rail_width = 15; +rail_height = rail_width; +rail_thickness = 1; + +// dimension of a single hdd tray (hdd + space around) +tray_height = hdd_height + cooling_height + rail_thickness; +tray_width = hdd_width + bar_thickness; + +pla_epsilon = 0.1; diff --git a/rail.scad b/rail.scad new file mode 100644 index 0000000..69b2ffe --- /dev/null +++ b/rail.scad @@ -0,0 +1,9 @@ +include <parameters.scad> + +module rail() +{ + cube([rail_thickness, hdd_length, rail_height]); + cube([rail_width, hdd_length, rail_thickness]); +} + +rail();
\ No newline at end of file |