summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--another.scad14
1 files changed, 9 insertions, 5 deletions
diff --git a/another.scad b/another.scad
index 8d9d22c..b1cbdeb 100644
--- a/another.scad
+++ b/another.scad
@@ -57,16 +57,17 @@ module the_extruder(
57 protrusion_tolerance_h=.5, // horizontal tolerance for the motor protrusion 57 protrusion_tolerance_h=.5, // horizontal tolerance for the motor protrusion
58 protrusion_tolerance_v=.5, // vertical tolerance for the motor protrusion 58 protrusion_tolerance_v=.5, // vertical tolerance for the motor protrusion
59 mount_screw_d_tolerance=.4, 59 mount_screw_d_tolerance=.4,
60 idler_v_tolerance=.5, 60 idler_v_tolerance=.5,
61 knob_bore_d_tolerance=.6, 61 knob_bore_d_tolerance=.6,
62 st_nut_h_tolerance=.2, 62 st_nut_h_tolerance=.2,
63 st_nut_d_tolerance=.2,/* TODO: make it st_nut_w_tolerance */ 63 st_nut_d_tolerance=.2,/* TODO: make it st_nut_w_tolerance */
64 st_screw_d_tolerance=.5, 64 st_screw_d_tolerance=.5,
65 st_split_w_tolerance = .3,
65 66
66 min_z_shell = 4*layer_height, // the very minimal shell thickness along z-axis. 67 min_z_shell = 4*layer_height, // the very minimal shell thickness along z-axis.
67 min_xy_shell = 2*extrusion_width, 68 min_xy_shell = 2*extrusion_width,
68 69
69 what="lever", // lever|body|knob|springpad|* 70 what="lever", // lever|body|knob|springpad|*
70 left=false, 71 left=false,
71 vitamins = true, 72 vitamins = true,
72 supports = false, bridges = true, 73 supports = false, bridges = true,
@@ -232,36 +233,39 @@ module the_extruder(
232 fsw = gearbox_d-(gearbox_d-mount_d)/2-spring_lc; 233 fsw = gearbox_d-(gearbox_d-mount_d)/2-spring_lc;
233 translate([-gearbox_d/2,0,0]) difference() { 234 translate([-gearbox_d/2,0,0]) difference() {
234 union() { 235 union() {
235 hull() { 236 hull() {
236 translate([0,-longwing,ls_z]) 237 translate([0,-longwing,ls_z])
237 rotate([0,90,0]) 238 rotate([0,90,0])
238 cylinder(d=lever_thickness,h=fsw,$fn=fnd*lever_thickness); 239 cylinder(d=lever_thickness,h=fsw,$fn=fnd*lever_thickness);
239 hh=body_h-ls_z; 240 hh=body_h-ls_z;
240 translate([0,0,ls_z-lever_thickness/2]) 241 translate([0,0,ls_z])
241 mirror([0,1,0]) cube(size=[fsw,longwing-hh+lever_thickness/sqrt(2),hh+lever_thickness/2]); 242 mirror([0,1,0]) cube(size=[fsw,longwing+(st_thinshell+st_split_w_tolerance)/2+st_thickshell,body_h-ls_z]);
242 hhh=ls_z; 243 hhh=ls_z;
243 translate([0,0,0]) 244 translate([0,0,0])
244 mirror([0,1,0]) cube(size=[fsw,longwing-hhh+lever_thickness/sqrt(2),hhh+lever_thickness/2]); 245 mirror([0,1,0]) cube(size=[fsw,longwing-hhh+lever_thickness/sqrt(2),hhh+lever_thickness/2]);
245 } 246 }
246 } 247 }
247 translate([0,-longwing,ls_z]) rotate([0,-90,0]) { 248 translate([0,-longwing,ls_z]) rotate([0,-90,0]) {
248 if(!tensioner) finger_indent(d=lever_thickness-1,r=15); else { 249 if(!tensioner) finger_indent(d=lever_thickness-1,r=15); else {
249 mirror([0,0,1]) { 250 mirror([0,0,1]) {
250 translate([0,0,st_thickshell]) 251 translate([0,0,st_thickshell])
251 hull() for(o=[0,spring_d]) translate([0,-o,0]) 252 hull() for(o=[0,spring_d]) translate([0,-o,0])
252 rotate([0,0,30]) 253 rotate([0,0,30])
253 cylinder(d=st_nut_d+st_nut_d_tolerance,h=st_nut_h+st_nut_h_tolerance,$fn=6); 254 cylinder(d=st_nut_d+st_nut_d_tolerance,h=st_nut_h+st_nut_h_tolerance,$fn=6);
254 translate([0,0,-1]) cylinder(d=st_screw_d+st_screw_d_tolerance,h=fsw+2,$fn=fnd*(st_screw_d+st_screw_d_tolerance)); 255 translate([0,0,-1]) cylinder(d=st_screw_d+st_screw_d_tolerance,h=fsw+2,$fn=fnd*(st_screw_d+st_screw_d_tolerance));
255 bigd = spring_d+spring_d_clearance; 256 bigd = spring_d+spring_d_clearance;
256 hf = (bigd-st_screw_d-st_screw_d_tolerance)/2; 257 hf = (bigd-st_screw_d-st_screw_d_tolerance)/2;
257 translate([0,0,st_thickshell+st_nut_h+st_nut_h_tolerance+st_thinshell-epsilon]) 258 translate([0,0,st_thickshell+st_nut_h+st_nut_h_tolerance+st_thinshell-epsilon]) {
258 cylinder(d1=st_screw_d+st_screw_d_tolerance,d2=bigd, 259 cylinder(d1=st_screw_d+st_screw_d_tolerance,d2=bigd,
259 h=hf+epsilon, $fn=fnd*bigd); 260 h=hf+epsilon, $fn=fnd*bigd);
261 translate([0,-(st_thinshell+st_split_w_tolerance)/2,0])
262 cube(size=[body_h-ls_z+1,st_thinshell+st_split_w_tolerance,fsw+1]);
263 }
260 translate([0,0,st_thickshell+st_nut_h+st_nut_h_tolerance+st_thinshell+hf-epsilon]) 264 translate([0,0,st_thickshell+st_nut_h+st_nut_h_tolerance+st_thinshell+hf-epsilon])
261 cylinder(d=bigd,h=fsw+1,$fn=fnd*bigd); 265 cylinder(d=bigd,h=fsw+1,$fn=fnd*bigd);
262 } 266 }
263 } 267 }
264 } 268 }
265 } // translate 269 } // translate
266 270
267 // pushfit bracket 271 // pushfit bracket