-rw-r--r-- | another.scad | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/another.scad b/another.scad index 297c1fc..ed18874 100644 --- a/another.scad +++ b/another.scad | |||
@@ -32,16 +32,17 @@ module the_extruder( | |||
32 | knob_h = 10, | 32 | knob_h = 10, |
33 | knob_bore_l = 4, | 33 | knob_bore_l = 4, |
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, |
46 | 47 | ||
47 | pf = pushfit_embeddest, | 48 | pf = pushfit_embeddest, |
@@ -232,17 +233,17 @@ module the_extruder( | |||
232 | cylinder(d=gearbox_d,h=body_h,$fn=fnd*gearbox_d); | 233 | cylinder(d=gearbox_d,h=body_h,$fn=fnd*gearbox_d); |
233 | // spring tensioner part | 234 | // spring tensioner part |
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 |
247 | translate([0,0,filament_elevation]) | 248 | translate([0,0,filament_elevation]) |
248 | rotate([0,0,45]) translate([pulley_d/2+filament_offset,0,0]) | 249 | rotate([0,0,45]) translate([pulley_d/2+filament_offset,0,0]) |
@@ -356,33 +357,35 @@ module the_extruder( | |||
356 | rotate([0,0,30]) | 357 | rotate([0,0,30]) |
357 | cylinder(d=st_nut_d+st_nut_d_tolerance,h=st_nut_h+st_nut_h_tolerance,$fn=6); | 358 | cylinder(d=st_nut_d+st_nut_d_tolerance,h=st_nut_h+st_nut_h_tolerance,$fn=6); |
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) { |
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]; | ||
376 | translate([0,0,body_h-label_thickness]) | 378 | translate([0,0,body_h-label_thickness]) |
377 | linear_extrude(height=label_thickness+epsilon,convexity=64) | 379 | linear_extrude(height=label_thickness+epsilon,convexity=64) |
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]) | 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]) |
379 | mirror([left?0:1,0]) | 381 | mirror([left?0:1,0]) |
380 | text(text=label,size=labelspace.x/label_len,halign="center",valign="center",font="Arial Black"); | 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() { |
387 | smalld=st_screw_d+st_screw_d_tolerance+min_xy_shell; | 390 | smalld=st_screw_d+st_screw_d_tolerance+min_xy_shell; |
388 | bigd = spring_d+spring_d_clearance/2; | 391 | bigd = spring_d+spring_d_clearance/2; |
@@ -392,21 +395,21 @@ module the_extruder( | |||
392 | rotate([0,90,0]) difference() { | 395 | rotate([0,90,0]) difference() { |
393 | union() { | 396 | union() { |
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 | } |
411 | 414 | ||
412 | module knob() { | 415 | module knob() { |