-rw-r--r-- | another.scad | 28 |
1 files changed, 2 insertions, 26 deletions
diff --git a/another.scad b/another.scad index 2331003..9ff7f6a 100644 --- a/another.scad +++ b/another.scad @@ -62,25 +62,25 @@ module the_extruder( knob_bore_d_tolerance=.6, st_nut_h_tolerance=.2, st_nut_d_tolerance=.2,/* TODO: make it st_nut_w_tolerance */ st_screw_d_tolerance=.5, st_split_w_tolerance = .3, min_z_shell = 4*layer_height, // the very minimal shell thickness along z-axis. min_xy_shell = 2*extrusion_width, what="lever", // lever|body|knob|springpad|* left=false, vitamins = true, - supports = false, bridges = true, + bridges = true, tensioner = true, debug = false ) { fnd = 2*PI; fnr = 2*fnd; idler_filament_offset = filament_path_d/2; // -filament_offset; lever_shell = mount_screwhead_h+0.5; lever_thickness=max(spring_d+spring_d_clearance+layer_height*8,idler_h+idler_v_tolerance+2*lever_shell); lsd = idler_d-idler_clearance*2; // the diameter of lever thingie longwing=(mount_d+mount_screw_d+mount_screw_d_tolerance+spring_d+spring_d_clearance)/2+min_xy_shell; shortwing = let(a=mount_d/2,c=(pulley_d+idler_d)/2/sqrt(2)) sqrt(c*c+pow(a-c,2)); @@ -189,30 +189,25 @@ module the_extruder( translate([0,0, sqrt(2)*(mount_d-pulley_d+lsd)/2 ]) { cylinder(d1=filament_path_d,d2=2*filament_path_d, h=filament_path_d,$fn=2*filament_path_d*fnd); translate([0,0,filament_path_d-epsilon]) cylinder(d=2*filament_path_d,h=lsd*sqrt(2),$fn=2*filament_path_d*fnd); }//translate }//rotate translate place_idler // idler space and mounting hole place_idler() { - difference() { - cylinder(d=idler_d+idler_clearance*2,h=idler_h+idler_v_tolerance,center=true,$fn=60); - if(supports) for(y=[-lsd/2+extrusion_width:(lsd-2*extrusion_width)/3:lsd/2-extrusion_width]) - translate([-lsd/2-1,y-extrusion_width/2,-idler_h/2-idler_v_tolerance/2-1]) - cube(size=[lsd+2,extrusion_width,idler_h+idler_v_tolerance+2]); - } + cylinder(d=idler_d+idler_clearance*2,h=idler_h+idler_v_tolerance,center=true,$fn=60); cylinder(d=idler_screw_d,h=lever_thickness+2,center=true,$fn=30); translate([0,0,lever_thickness/2-idler_screwhead_h]) cylinder(d=idler_screwhead_d,h=idler_screwhead_h+1,$fn=fnd*idler_screwhead_d); } // mounting screw hole translate([mount_d/2,0,0]) cylinder(d=mount_screw_d+mount_screw_d_tolerance,h=lever_thickness+2,center=true,$fn=fnd*mount_screw_d); // lever end translate([mount_d/2,0,0]) rotate([0,90,0]) { translate([0,-longwing,lsd/2]) finger_indent(d=lever_thickness-1,r=15); translate([0,-longwing,0]) @@ -377,43 +372,24 @@ module the_extruder( h=hf+epsilon, $fn=fnd*bigd); translate([0,-(st_thinshell+st_split_w_tolerance)/2,0]) cube(size=[body_h-ls_z+1,st_thinshell+st_split_w_tolerance,fsw+1]); } translate([0,0,st_thickshell+st_nut_h+st_nut_h_tolerance+st_thinshell+hf-epsilon]) cylinder(d=bigd,h=fsw+1,$fn=fnd*bigd); } } } }//difference - if(supports) intersection() { - difference() { - translate([0,0,ls_z-ls_h/2-epsilon]) - cylinder(d=gearbox_d,h=ls_h+2*epsilon,$fn=fnd*gearbox_d); - cylinder(d=pulley_d+pulley_d_clearance,h=body_h+1,$fn=fnd*(pulley_d+pulley_d_clearance)); - } - // supports - // TODO: hardcoded stuff below… - if(false) { // parallel - for(y=[-gearbox_d:4:gearbox_d]) - translate([0,y-extrusion_width/2,0]) - cube(size=[gearbox_d,extrusion_width,body_h]); - }else{ // radial - for(zr=[-65:(65+50)/7:50]) - rotate([0,0,zr]) translate([0,-extrusion_width/2,0]) - cube(size=[gearbox_d,extrusion_width,body_h]); - } - } - }//body module module springpad() { smalld=st_screw_d+st_screw_d_tolerance+min_xy_shell; bigd = spring_d+spring_d_clearance/2; hf = (bigd-smalld)/2; h = hf*3.5; translate([-gearbox_d/2+st_thickshell+st_nut_h+st_nut_h_tolerance+st_thinshell+1,-longwing,filament_elevation]) rotate([0,90,0]) difference() { union() { cylinder(d1=smalld,d2=bigd,h=hf,$fn=fnd*bigd); translate([0,0,hf-epsilon]) |