-rw-r--r-- | another.scad | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/another.scad b/another.scad index 6afa9ef..6ef7299 100644 --- a/another.scad +++ b/another.scad | |||
@@ -11,6 +11,7 @@ module the_extruder( | |||
11 | gearbox_d = 36, | 11 | gearbox_d = 36, |
12 | mount_d = 28, // the distance between opposite mounting holes | 12 | mount_d = 28, // the distance between opposite mounting holes |
13 | mounthole_depth = 5, | 13 | mounthole_depth = 5, |
14 | mounthole_min_depth = 3, mounthole_max_depth = 4, | ||
14 | protrusion_d = 22, protrusion_h = 2.2, // the dimensions of the protrusion on top of gearbox | 15 | protrusion_d = 22, protrusion_h = 2.2, // the dimensions of the protrusion on top of gearbox |
15 | bore_d = 8, bore_l = 17.6, | 16 | bore_d = 8, bore_l = 17.6, |
16 | bore_dd = 7, | 17 | bore_dd = 7, |
@@ -62,6 +63,8 @@ module the_extruder( | |||
62 | 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 */ |
63 | st_screw_d_tolerance=.5, | 64 | st_screw_d_tolerance=.5, |
64 | 65 | ||
66 | min_z_shell = 4*layer_height, // the very minimal shell thickness along z-axis. | ||
67 | |||
65 | what="lever", // lever|body|knob|springpad|* | 68 | what="lever", // lever|body|knob|springpad|* |
66 | left=false, | 69 | left=false, |
67 | vitamins = true, | 70 | vitamins = true, |
@@ -80,10 +83,14 @@ module the_extruder( | |||
80 | ri = sqrt( pow(h_,2) + pow(mount_d/2-h_,2) ); | 83 | ri = sqrt( pow(h_,2) + pow(mount_d/2-h_,2) ); |
81 | spring_dl = idler_travel*longwing/ri; | 84 | spring_dl = idler_travel*longwing/ri; |
82 | 85 | ||
86 | mount_min_depth = mounthole_min_depth ? mounthole_min_depth : mounthole_depth-1; | ||
87 | mount_max_depth = mounthole_max_depth ? mounthole_max_depth : mounthole_depth+1; | ||
83 | filament_elevation=protrusion_h+pulley_elevation+teeth_elevation; | 88 | filament_elevation=protrusion_h+pulley_elevation+teeth_elevation; |
84 | ls_z = filament_elevation; // leverspace mid-z | 89 | ls_z = filament_elevation; // leverspace mid-z |
85 | body_h = max(protrusion_h+bore_l,mount_screw_l-mounthole_depth/2+mount_screwhead_h,ls_z*2); | ||
86 | ls_h = lever_thickness+lever_v_clearance; // leverspace height | 90 | ls_h = lever_thickness+lever_v_clearance; // leverspace height |
91 | mount_depth = mount_screw_l - (ls_z+ls_h/2+min_z_shell); | ||
92 | body_h = max(protrusion_h+bore_l,mount_screw_l-mount_depth+mount_screwhead_h+min_z_shell,ls_z*2); | ||
93 | echo("mount depth",mount_depth); | ||
87 | 94 | ||
88 | module mirrorleft() { | 95 | module mirrorleft() { |
89 | mirror([left?0:1,0,0]) children(); | 96 | mirror([left?0:1,0,0]) children(); |
@@ -288,12 +295,12 @@ module the_extruder( | |||
288 | cylinder(d=protrusion_d+protrusion_tolerance_h,h=protrusion_h+protrusion_tolerance_v+1,$fn=fnd*(protrusion_d+protrusion_tolerance_h)); | 295 | cylinder(d=protrusion_d+protrusion_tolerance_h,h=protrusion_h+protrusion_tolerance_v+1,$fn=fnd*(protrusion_d+protrusion_tolerance_h)); |
289 | // mount screw holes | 296 | // mount screw holes |
290 | for(zr=[0:90:359]) rotate([0,0,zr]) translate([mount_d/2,0,0]) { | 297 | for(zr=[0:90:359]) rotate([0,0,zr]) translate([mount_d/2,0,0]) { |
291 | translate([0,0,mount_screw_l-mounthole_depth/2-(bridges?layer_height:-epsilon)]) | 298 | translate([0,0,mount_screw_l-mount_depth-(bridges?layer_height:-epsilon)]) |
292 | mirror([0,0,1]) | 299 | mirror([0,0,1]) |
293 | cylinder(d=mount_screw_d+mount_screw_d_tolerance, | 300 | cylinder(d=mount_screw_d+mount_screw_d_tolerance, |
294 | h=mount_screw_l-mounthole_depth/2+1, | 301 | h=mount_screw_l-mount_depth+1, |
295 | $fn=fnd*(mount_screw_d+mount_screw_d_tolerance)); | 302 | $fn=fnd*(mount_screw_d+mount_screw_d_tolerance)); |
296 | translate([0,0,mount_screw_l-mounthole_depth/2]) | 303 | translate([0,0,mount_screw_l-mount_depth]) |
297 | cylinder(d=mount_screwhead_d,h=body_h+1,$fn=fnd*mount_screwhead_d); | 304 | cylinder(d=mount_screwhead_d,h=body_h+1,$fn=fnd*mount_screwhead_d); |
298 | }//for | 305 | }//for |
299 | // pushfit | 306 | // pushfit |