Browse Source

Final iteration of hdd cage

Thomas Buck 6 years ago
parent
commit
872831fe68
2 changed files with 24984 additions and 15 deletions
  1. 24950
    0
      lian-li-hdd-cage/hdd-cage-small.stl
  2. 34
    15
      lian-li-hdd-cage/hdd-cage.scad

+ 24950
- 0
lian-li-hdd-cage/hdd-cage-small.stl
File diff suppressed because it is too large
View File


+ 34
- 15
lian-li-hdd-cage/hdd-cage.scad View File

@@ -20,9 +20,9 @@ lip_width = cage_lip_hole_dist + 10.0;
20 20
 rail_height = 7.5;
21 21
 rail_height_front = 13.0;
22 22
 rail_radius = 7.0;
23
-rail_length = 117;
23
+rail_length = 120;
24 24
 rail_width = lip_wall + 2;
25
-rail_dist = 27.5;
25
+rail_dist = 27.5 - 8;
26 26
 rail_off_front = 7.8;
27 27
 
28 28
 nub_small = 6.6;
@@ -34,11 +34,13 @@ stable_cut_height = 15.0;
34 34
 stable_cut_depth = 20.0;
35 35
 stable_cut_width = 7.5;
36 36
 
37
+add_after_rail = 6;
38
+
37 39
 $fn = 20;
38 40
 
39 41
 module cage_hold() {
40 42
     translate([cage_hold_large / 2, cage_hold_large / 2, 0])
41
-    union() {
43
+    hull() {
42 44
         cylinder(d = cage_hold_large, h = cage_wall + 2);
43 45
     
44 46
         translate([0, cage_hold_length - (cage_hold_large / 2) - (cage_hold_small / 2), 0])
@@ -142,26 +144,24 @@ module mount_lip() {
142 144
     }
143 145
 }
144 146
 
145
-add_after_rail = 15;
146
-
147 147
 module rail_wall() {
148 148
     difference() {
149
-        cube([lip_wall, rail_length + add_after_rail, rail_dist + rail_height + (rail_dist / 2)]);
149
+        cube([lip_wall, rail_length + add_after_rail, rail_dist + rail_height + (rail_dist / 3)]);
150 150
         
151 151
         // bubbles
152 152
         translate([-1, 10, 10])
153 153
         for (i = [0 : 15 : (rail_length + add_after_rail - 20)]) {
154
-            translate([0, i, 0])
154
+            translate([0, i + 1, 0])
155 155
                 rotate([0, 90, 0])
156 156
                 cylinder(d = 7, h = lip_wall + 2);
157 157
             
158
-            translate([0, i + 8, 10])
159
-                rotate([0, 90, 0])
160
-                cylinder(d = 7, h = lip_wall + 2);
158
+            //translate([0, i + 8, 10])
159
+            //    rotate([0, 90, 0])
160
+            //    cylinder(d = 7, h = lip_wall + 2);
161 161
             
162
-            translate([0, i + 4, 32.5])
163
-                rotate([0, 90, 0])
164
-                cylinder(d = 7, h = lip_wall + 2);
162
+            //translate([0, i + 4, 32.5])
163
+            //    rotate([0, 90, 0])
164
+            //    cylinder(d = 7, h = lip_wall + 2);
165 165
         }
166 166
     }
167 167
 }
@@ -219,8 +219,27 @@ module mount() {
219 219
         stabilizer();
220 220
     
221 221
     // bottom/top horizontal plate
222
-    translate([-lip_wall, -lip_wall, cage_lip + rail_dist + rail_height + (rail_dist / 2)])
222
+    difference() {
223
+        translate([-lip_wall, -lip_wall, cage_lip + rail_dist + rail_height + (rail_dist / 3)])
223 224
         cube([cage_width + (2 * lip_wall), rail_length + add_after_rail, lip_wall]);
225
+        
226
+        translate([0, 0, cage_lip + rail_dist + rail_height + (rail_dist / 3)])
227
+        union() {
228
+            translate([cage_hold_off_left, cage_hold_off_bot, -1])
229
+            cage_hold();
230
+        
231
+        translate([cage_hold_off_left + cage_hold_large + cage_hold_off_right, cage_hold_off_bot, -1])
232
+            cage_hold();
233
+        
234
+        translate([cage_hold_off_left, cage_hold_off_bot + cage_hold_length + cage_hold_off_top, -1])
235
+            cage_hold();
236
+        
237
+        translate([cage_hold_off_left + cage_hold_large + cage_hold_off_right, cage_hold_off_bot + cage_hold_length + cage_hold_off_top, -1])
238
+            cage_hold();
239
+        }
240
+    }
224 241
 }
225 242
 
226
-mount();
243
+translate([60, 120, 1])
244
+rotate([90, 0, -90])
245
+    mount();

Loading…
Cancel
Save