summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--another.scad28
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])