-rw-r--r-- | another.scad | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/another.scad b/another.scad index a93d21a..50b3a84 100644 --- a/another.scad +++ b/another.scad @@ -68,12 +68,13 @@ module the_extruder( supports = false, 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; longwing=gearbox_d/2+spring_d/2+lsd/2; h_ = (pulley_d+idler_d)/(2*sqrt(2)); ri = sqrt( pow(h_,2) + pow(mount_d/2-h_,2) ); @@ -119,18 +120,22 @@ module the_extruder( translate([0,0,teeth_elevation]) { place_idler() { cylinder(d=idler_d,h=idler_h,center=true,$fn=30); cylinder(d=idler_screw_d,h=lever_thickness+2,center=true,$fn=30); }//place idler // filament path - rotate([0,0,45]) translate([pulley_d/2+filament_offset,0,0]) { - rotate([90,0,0]) cylinder(d=filament_d,h=gearbox_d*2,center=true,$fn=15); - rotate([-90,0,0]) - translate([0,0,mount_d/sqrt(2)/2+mount_screw_d]) - pushfit(pf); - } + rotate([0,0,45]) { + translate([pulley_d/2-idler_filament_offset,0,0]) rotate([90,0,0]) { + cylinder(d=filament_d,h=gearbox_d,center=false,$fn=15); + }//rotate translate + translate([pulley_d/2+filament_offset,0,0]) rotate([-90,0,0]) { + cylinder(d=filament_d,h=gearbox_d,center=false,$fn=15); + translate([0,0,mount_d/sqrt(2)/2+mount_screw_d]) + pushfit(pf); + }//rotate translate + }//rotate }//translate teeth }//translate pulley }//translate protrusion }//vitamins module lever() { @@ -150,18 +155,18 @@ module the_extruder( cylinder(d=lever_thickness,h=lsd,center=true,$fn=60); }//hull }//union // filament path place_idler() { - translate([-idler_d/2+filament_offset,0,0]) rotate([90,0,0]) { + translate([-idler_d/2-idler_filament_offset,0,0]) rotate([90,0,0]) { cylinder(d=filament_path_d,h=3*gearbox_d,center=true,$fn=30); translate([0,-filament_path_d/2/sqrt(2),0]) rotate([0,0,45]) cube(size=[filament_path_d/2,filament_path_d/2,3*gearbox_d],center=true); }//rotate translate - translate([-idler_d/2+filament_offset,0,0]) + translate([-idler_d/2-idler_filament_offset,0,0]) rotate([90,0,0]) 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); |