Browse Source

Added slight inward angle on left Y-Axis fan holder arm

Thomas Buck 8 years ago
parent
commit
63fc7e3fbb
2 changed files with 4986 additions and 4893 deletions
  1. 83
    46
      Y-Axis Fan/Fan Holder.scad
  2. 4903
    4847
      Y-Axis Fan/Fan Holder.stl

+ 83
- 46
Y-Axis Fan/Fan Holder.scad View File

13
  *
13
  *
14
  * The Fabrikator Mini V1.5 include a new bracket that prevents
14
  * The Fabrikator Mini V1.5 include a new bracket that prevents
15
  * the old design from sliding fully onto the stepper motor.
15
  * the old design from sliding fully onto the stepper motor.
16
- * A parameter has been added (fab_mini_v15) that allows
17
- * reverting to the old behvior.
18
- *
19
- * For V1.5, a height of 25mm is suggested, as this provides
20
- * enough stability with the big cut-out. To revert to something
21
- * like the original model, set the height to 15mm (and
22
- * fab_mini_v15 to "false").
23
  */
16
  */
24
 
17
 
25
 // -----------------------------------------------------------
18
 // -----------------------------------------------------------
37
 
30
 
38
 fan_hole_angled = "true"; // [true, false]
31
 fan_hole_angled = "true"; // [true, false]
39
 
32
 
33
+arm_inward_angle_left = 2; // [0:5]
34
+
40
 // -----------------------------------------------------------
35
 // -----------------------------------------------------------
41
 
36
 
42
 /* [Hidden] */
37
 /* [Hidden] */
62
 fan_screw_neg = -fan_screw_pos;
57
 fan_screw_neg = -fan_screw_pos;
63
 
58
 
64
 fabrikator_mini_v15_height = 20;
59
 fabrikator_mini_v15_height = 20;
65
-mid_left_cutout_height = 5;
60
+mid_left_cutout_height = 6;
66
 
61
 
67
 base_height = 5;
62
 base_height = 5;
68
 
63
 
64
+arm_inward_angle_right = 0;
65
+
69
 // -----------------------------------------------------------
66
 // -----------------------------------------------------------
70
 
67
 
71
 module ellipse(w, l, d) {
68
 module ellipse(w, l, d) {
80
         cylinder(d = w, h = d);
77
         cylinder(d = w, h = d);
81
 }
78
 }
82
 
79
 
83
-// -----------------------------------------------------------
80
+module left_arm() {
81
+    // bottom left arm
82
+    translate([0, 0, bottom_arm_gap])
83
+        cube([motor_depth + nub_depth, wall_size, bottom_arm_height]);
84
 
84
 
85
-// stepper motor
86
-%translate([nub_depth, wall_size, 0])
87
-    cube([motor_depth, motor_width, height + 1]);
85
+    // bottom left nub
86
+    translate([0, 0, bottom_arm_gap])
87
+        cube([nub_depth, wall_size + nub_size, bottom_arm_height]);
88
+
89
+    if (height > fabrikator_mini_v15_height) {
90
+        // top left arm
91
+        translate([0, 0, fabrikator_mini_v15_height + 1])
92
+            cube([motor_depth + nub_depth, wall_size, height - fabrikator_mini_v15_height - 1]);
93
+    
94
+        // top left nub
95
+        translate([0, 0, fabrikator_mini_v15_height + 1])
96
+            cube([nub_depth, wall_size + nub_size, height - fabrikator_mini_v15_height - 1]);
97
+    }
88
 
98
 
89
-// bottom left arm
90
-translate([0, 0, bottom_arm_gap])
91
-    cube([motor_depth + nub_depth, wall_size, bottom_arm_height]);
99
+    // left back support
100
+    translate([motor_depth + nub_depth - back_support_depth, 0, 0])
101
+        cube([back_support_depth, wall_size, height]);
92
 
102
 
93
-// bottom left nub
94
-translate([0, 0, bottom_arm_gap])
95
-    cube([nub_depth, wall_size + nub_size, bottom_arm_height]);
103
+    // mid left support
104
+    translate([nub_depth + mid_left_cutout, 0, 10])
105
+        cube([motor_depth - back_support_depth - mid_left_cutout, wall_size, height - fabrikator_mini_v15_height + mid_left_cutout_height]);
106
+    
107
+    if (arm_inward_angle_left != 0) {
108
+        // connecting piece for angled arm
109
+        translate([motor_depth + nub_depth - back_support_depth, 0, 0])
110
+            cube([1.5 * back_support_depth, wall_size, height]);
111
+    }
112
+}
96
 
113
 
97
-if (height > fabrikator_mini_v15_height) {
98
-    // top left arm
99
-    translate([0, 0, fabrikator_mini_v15_height])
100
-        cube([motor_depth + nub_depth, wall_size, height - fabrikator_mini_v15_height]);
114
+module right_arm() {
115
+    // right arm
116
+    difference() {
117
+        translate([0, motor_width + wall_size, 0])
118
+            cube([motor_depth + nub_depth, wall_size, height]);
119
+        
120
+        translate([24 - wall_size, 28, 4])
121
+            rotate([0, 0, 90])
122
+            ellipse(7, 20, 8);
123
+        
124
+        if (height > 23) {
125
+            translate([24 - wall_size, 28, 15])
126
+                rotate([0, 0, 90])
127
+                ellipse(7, 20, 8);
128
+        }
129
+    }
130
+    
131
+    // right nub
132
+    translate([0, motor_width + wall_size - nub_size, 0])
133
+        cube([nub_depth, wall_size + nub_size, height]);
101
     
134
     
102
-    // top left nub
103
-    translate([0, 0, fabrikator_mini_v15_height])
104
-        cube([nub_depth, wall_size + nub_size, height - fabrikator_mini_v15_height]);
135
+    if (arm_inward_angle_right != 0) {
136
+        // connecting piece for angled arm
137
+        translate([motor_depth + nub_depth - back_support_depth, motor_width + wall_size, 0])
138
+            cube([1.5 * back_support_depth, wall_size, height]);
139
+    }
105
 }
140
 }
106
 
141
 
107
-// left back support
108
-translate([motor_depth + nub_depth - back_support_depth, 0, 0])
109
-    cube([back_support_depth, wall_size, height]);
142
+// -----------------------------------------------------------
110
 
143
 
111
-// mid left support
112
-translate([nub_depth + mid_left_cutout, 0, 10])
113
-    cube([motor_depth - back_support_depth - mid_left_cutout, wall_size, height - fabrikator_mini_v15_height + mid_left_cutout_height]);
144
+// stepper motor
145
+%translate([nub_depth, wall_size, 0])
146
+    cube([motor_depth, motor_width, height + 1]);
114
 
147
 
115
-// right arm
116
 difference() {
148
 difference() {
117
-    translate([0, motor_width + wall_size, 0])
118
-        cube([motor_depth + nub_depth, wall_size, height]);
119
-    
120
-    translate([24 - wall_size, 28, 4])
121
-        rotate([0, 0, 90])
122
-        ellipse(7, 20, 8);
149
+    // left arm
150
+    translate([0, 27 * sin(arm_inward_angle_left / 1.5), 0])
151
+        rotate([0, 0, -(arm_inward_angle_left / 1.5)])
152
+        left_arm();
123
     
153
     
124
-    if (height > 23) {
125
-        translate([24 - wall_size, 28, 15])
126
-            rotate([0, 0, 90])
127
-            ellipse(7, 20, 8);
154
+    // cut off small ledge
155
+    translate([0, -1, -base_height])
156
+        cube([motor_depth + nub_depth + wall_size, 1, motor_width + base_height + wall_size]);
157
+}
158
+
159
+difference() {
160
+    // right arm
161
+    translate([35 * sin(arm_inward_angle_right / 1.5), -27 * sin(arm_inward_angle_right / 1.5), 0])
162
+        rotate([0, 0, arm_inward_angle_right / 1.5])
163
+        right_arm();
164
+
165
+    if (arm_inward_angle_right != 0) {
166
+        // cut off small ledge
167
+        translate([0, motor_width + (2 * wall_size), -base_height])
168
+            cube([motor_depth + nub_depth + wall_size, 1, motor_width + base_height + wall_size]);
128
     }
169
     }
129
 }
170
 }
130
-    
131
-// right nub
132
-translate([0, motor_width + wall_size - nub_size, 0])
133
-    cube([nub_depth, wall_size + nub_size, height]);
134
 
171
 
135
 // back wall
172
 // back wall
136
 difference() {
173
 difference() {

+ 4903
- 4847
Y-Axis Fan/Fan Holder.stl
File diff suppressed because it is too large
View File


Loading…
Cancel
Save