summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--another.scad29
1 files changed, 16 insertions, 13 deletions
diff --git a/another.scad b/another.scad
index 297c1fc..ed18874 100644
--- a/another.scad
+++ b/another.scad
@@ -34,12 +34,13 @@ module the_extruder(
34 knob_indent_d = 4, 34 knob_indent_d = 4,
35 knob_indents = 12, 35 knob_indents = 12,
36 // spring tensioner 36 // spring tensioner
37 st_nut_d = 9, st_nut_h = 4, 37 st_nut_d = 9, st_nut_h = 4,
38 st_screw_d = 5, 38 st_screw_d = 5,
39 st_thickshell = 8*extrusion_width, st_thinshell = 2*extrusion_width, 39 st_thickshell = 8*extrusion_width, st_thinshell = 2*extrusion_width,
40 st_split_w = 4*extrusion_width,
40 41
41 // screw it 42 // screw it
42 mount_screw_d = 3.1, mount_screw_l = 20, 43 mount_screw_d = 3.1, mount_screw_l = 20,
43 mount_screwhead_d=6, mount_screwhead_h=3, 44 mount_screwhead_d=6, mount_screwhead_h=3,
44 idler_screw_d = 3, 45 idler_screw_d = 3,
45 idler_screwhead_d=6, idler_screwhead_h=3, 46 idler_screwhead_d=6, idler_screwhead_h=3,
@@ -234,13 +235,13 @@ module the_extruder(
234 translate([-gearbox_d/2,0,0]) hull() { 235 translate([-gearbox_d/2,0,0]) hull() {
235 translate([0,-longwing,ls_z]) 236 translate([0,-longwing,ls_z])
236 rotate([0,90,0]) 237 rotate([0,90,0])
237 cylinder(d=lever_thickness,h=fsw,$fn=fnd*lever_thickness); 238 cylinder(d=lever_thickness,h=fsw,$fn=fnd*lever_thickness);
238 hh=body_h-ls_z; 239 hh=body_h-ls_z;
239 translate([0,0,ls_z]) 240 translate([0,0,ls_z])
240 mirror([0,1,0]) cube(size=[fsw,longwing+(st_thinshell+st_split_w_tolerance)/2+st_thickshell,body_h-ls_z]); 241 mirror([0,1,0]) cube(size=[fsw,longwing+(st_split_w+st_split_w_tolerance)/2+st_thickshell,body_h-ls_z]);
241 hhh=ls_z; 242 hhh=ls_z;
242 translate([0,0,0]) 243 translate([0,0,0])
243 mirror([0,1,0]) cube(size=[fsw,longwing-hhh+lever_thickness/sqrt(2),hhh+lever_thickness/2]); 244 mirror([0,1,0]) cube(size=[fsw,longwing-hhh+lever_thickness/sqrt(2),hhh+lever_thickness/2]);
244 }//hull translate 245 }//hull translate
245 246
246 // pushfit bracket 247 // pushfit bracket
@@ -358,29 +359,31 @@ module the_extruder(
358 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)); 359 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));
359 bigd = spring_d+spring_d_clearance; 360 bigd = spring_d+spring_d_clearance;
360 hf = (bigd-st_screw_d-st_screw_d_tolerance)/2; 361 hf = (bigd-st_screw_d-st_screw_d_tolerance)/2;
361 translate([0,0,st_thickshell+st_nut_h+st_nut_h_tolerance+st_thinshell-epsilon]) { 362 translate([0,0,st_thickshell+st_nut_h+st_nut_h_tolerance+st_thinshell-epsilon]) {
362 cylinder(d1=st_screw_d+st_screw_d_tolerance,d2=bigd, 363 cylinder(d1=st_screw_d+st_screw_d_tolerance,d2=bigd,
363 h=hf+epsilon, $fn=fnd*bigd); 364 h=hf+epsilon, $fn=fnd*bigd);
364 translate([0,-(st_thinshell+st_split_w_tolerance)/2,0]) 365 translate([0,-(st_split_w+st_split_w_tolerance)/2,0])
365 cube(size=[body_h-ls_z+1,st_thinshell+st_split_w_tolerance,fsw+1]); 366 cube(size=[body_h-ls_z+1,st_split_w+st_split_w_tolerance,fsw+1]);
366 }//translate 367 }//translate
367 translate([0,0,st_thickshell+st_nut_h+st_nut_h_tolerance+st_thinshell+hf-epsilon]) 368 translate([0,0,st_thickshell+st_nut_h+st_nut_h_tolerance+st_thinshell+hf-epsilon])
368 cylinder(d=bigd,h=fsw+1,$fn=fnd*bigd); 369 cylinder(d=bigd,h=fsw+1,$fn=fnd*bigd);
369 }//mirror 370 }//mirror
370 }//translate 371 }//translate
371 372
372 // label 373 // label
373 label_thickness = 2*layer_height; 374 label_thickness = 2*layer_height;
374 label_len = len(label); 375 label_len = len(label);
375 labelspace = [gearbox_d/2-mount_screwhead_d/2-min_xy_shell,longwing-(mount_screwhead_d-st_thinshell-st_split_w_tolerance)/2-2*min_xy_shell-mount_d/2]; 376 if(label_len) {
376 translate([0,0,body_h-label_thickness]) 377 labelspace = [gearbox_d/2-mount_screwhead_d/2-min_xy_shell,longwing-(mount_screwhead_d-st_split_w-st_split_w_tolerance)/2-2*min_xy_shell];
377 linear_extrude(height=label_thickness+epsilon,convexity=64) 378 translate([0,0,body_h-label_thickness])
378 translate([-mount_screwhead_d/2-min_xy_shell-labelspace.x/2,-longwing+(st_thinshell+st_split_w_tolerance)/2+min_xy_shell+labelspace.y/2]) 379 linear_extrude(height=label_thickness+epsilon,convexity=64)
379 mirror([left?0:1,0]) 380 translate([-mount_screwhead_d/2-min_xy_shell-labelspace.x/2,-longwing+(st_split_w+st_split_w_tolerance)/2+min_xy_shell+labelspace.y/2])
380 text(text=label,size=labelspace.x/label_len,halign="center",valign="center",font="Arial Black"); 381 mirror([left?0:1,0])
382 text(text=label,size=labelspace.x/label_len,halign="center",valign="center",font="Arial Black");
383 }//if(label_len)
381 384
382 }//difference 385 }//difference
383 386
384 }//body module 387 }//body module
385 388
386 module springpad() { 389 module springpad() {
@@ -394,17 +397,17 @@ module the_extruder(
394 cylinder(d1=smalld,d2=bigd,h=hf,$fn=fnd*bigd); 397 cylinder(d1=smalld,d2=bigd,h=hf,$fn=fnd*bigd);
395 translate([0,0,hf-epsilon]) 398 translate([0,0,hf-epsilon])
396 cylinder(d=bigd,h=h-hf,$fn=fnd*bigd); 399 cylinder(d=bigd,h=h-hf,$fn=fnd*bigd);
397 translate([0,0,h]) 400 translate([0,0,h])
398 sphere(d=spring_d*3/4,$fn=fnd*spring_d*3/4); 401 sphere(d=spring_d*3/4,$fn=fnd*spring_d*3/4);
399 l = body_h-ls_z; 402 l = body_h-ls_z;
400 w = st_thinshell; 403 w = st_split_w;
401 hull() translate([0,-st_thinshell/2,0]) mirror([1,0,0]) { 404 hull() translate([0,-st_split_w/2,0]) mirror([1,0,0]) {
402 translate([0,0,w]) 405 translate([0,0,w])
403 cube(size=[l,st_thinshell,w]); 406 cube(size=[l,st_split_w,w]);
404 cube(size=[l-w,st_thinshell,2*w]); 407 cube(size=[l-w,st_split_w,2*w]);
405 } 408 }
406 } 409 }
407 translate([0,0,-epsilon]) 410 translate([0,0,-epsilon])
408 cylinder(d=st_screw_d+st_screw_d_tolerance,h=2*hf+epsilon,$fn=fnd*(st_screw_d+st_screw_d_tolerance)); 411 cylinder(d=st_screw_d+st_screw_d_tolerance,h=2*hf+epsilon,$fn=fnd*(st_screw_d+st_screw_d_tolerance));
409 } 412 }
410 } 413 }