summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--backplane.scad37
-rw-r--r--parameters.scad21
2 files changed, 56 insertions, 2 deletions
diff --git a/backplane.scad b/backplane.scad
new file mode 100644
index 0000000..532885b
--- /dev/null
+++ b/backplane.scad
@@ -0,0 +1,37 @@
+include <parameters.scad>
+
+module hdd_connector(w,h,d) {
+ difference() {
+ cube([w, d, h]);
+ translate([1, 2, 1])
+ cube([w - 2, d, h - 2]);
+ }
+}
+
+
+// board
+module backplane_pcb() {
+ color("sienna")
+ cube([backplane_width, backplane_thickness, backplane_height]);
+}
+
+module backplane_populated() {
+ backplane_pcb();
+
+ // front connector (power + data)
+ color("darkgrey")
+ translate([backplane_con_hoffset, 0, backplane_con_voffset])
+ mirror([0, 1, 0]) {
+ hdd_connector(backplane_con_width/ 3 * 2 + 1, backplane_con_height, backplane_con_depth);
+ translate([backplane_con_width / 3 * 2, 0, 0])
+ hdd_connector(backplane_con_width / 3 * 1, backplane_con_height, backplane_con_depth);
+ }
+
+ // back connector (data)
+ translate([backplane_con_hoffset + backplane_con_width / 3 * 2,
+ backplane_thickness, backplane_con_voffset])
+ mirror([0, 1, 0]) rotate([90, 0, 0])
+ hdd_connector(backplane_con_width / 3 * 1, backplane_con_height, backplane_con_depth);
+}
+
+backplane_populated(); \ No newline at end of file
diff --git a/parameters.scad b/parameters.scad
index a1f1b2e..6fad0e7 100644
--- a/parameters.scad
+++ b/parameters.scad
@@ -1,6 +1,6 @@
// size of the array
num_hdd_x = 4;
-num_hdd_y = 3;
+num_hdd_y = 5;
// space above hdd available for air flow
cooling_height = 10;
@@ -11,12 +11,29 @@ bar_thickness = 10;
// length hdd is standing out to be grabbed
hdd_standout = 25;
+// dimensions of the backplane PCB
+backplane_width = 70;
+backplane_height = 30;
+backplane_thickness = 1.6;
+
+// offsets of the backplane relative to the hdd
+backplane_hoffset = -(bar_thickness - 2);
+backplane_voffset = -(bar_thickness - 2);
+
+// display only: dimensions and offsets of the SATA connector relative
+// to the backplane
+backplane_con_width = 45;
+backplane_con_height = 5;
+backplane_con_depth = 10;
+backplane_con_hoffset = 5 - backplane_hoffset;
+backplane_con_voffset = 15;
+
// outer diameter of thread rod and nut used for support
rod_diameter = 4;
nut_diameter = 6;
nut_height = 3;
-// dimensions of HDDs; not model-specific; current values are fake
+// dimensions of HDDs; not model-specific
hdd_width = 101.6;
hdd_height = 25.4;
hdd_length = 146;
contact: Jan Huwald // Impressum