summaryrefslogtreecommitdiff
path: root/another.scad
Side-by-side diff
Diffstat (limited to 'another.scad') (more/less context) (ignore whitespace changes)
-rw-r--r--another.scad14
1 files changed, 9 insertions, 5 deletions
diff --git a/another.scad b/another.scad
index 8d9d22c..b1cbdeb 100644
--- a/another.scad
+++ b/another.scad
@@ -53,24 +53,25 @@ module the_extruder(
idler_clearance=1,
pulley_d_clearance=2,
lever_v_clearance=.7, // vertical clearance for the lever
spring_d_clearance=1,
protrusion_tolerance_h=.5, // horizontal tolerance for the motor protrusion
protrusion_tolerance_v=.5, // vertical tolerance for the motor protrusion
mount_screw_d_tolerance=.4,
idler_v_tolerance=.5,
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,
tensioner = true,
debug = false
) {
fnd = 2*PI; fnr = 2*fnd;
@@ -228,44 +229,47 @@ module the_extruder(
difference() {
union() {
cylinder(d=gearbox_d,h=body_h,$fn=fnd*gearbox_d);
// finger and spring support
fsw = gearbox_d-(gearbox_d-mount_d)/2-spring_lc;
translate([-gearbox_d/2,0,0]) difference() {
union() {
hull() {
translate([0,-longwing,ls_z])
rotate([0,90,0])
cylinder(d=lever_thickness,h=fsw,$fn=fnd*lever_thickness);
hh=body_h-ls_z;
- translate([0,0,ls_z-lever_thickness/2])
- mirror([0,1,0]) cube(size=[fsw,longwing-hh+lever_thickness/sqrt(2),hh+lever_thickness/2]);
+ translate([0,0,ls_z])
+ mirror([0,1,0]) cube(size=[fsw,longwing+(st_thinshell+st_split_w_tolerance)/2+st_thickshell,body_h-ls_z]);
hhh=ls_z;
translate([0,0,0])
mirror([0,1,0]) cube(size=[fsw,longwing-hhh+lever_thickness/sqrt(2),hhh+lever_thickness/2]);
}
}
translate([0,-longwing,ls_z]) rotate([0,-90,0]) {
if(!tensioner) finger_indent(d=lever_thickness-1,r=15); else {
mirror([0,0,1]) {
translate([0,0,st_thickshell])
hull() for(o=[0,spring_d]) translate([0,-o,0])
rotate([0,0,30])
cylinder(d=st_nut_d+st_nut_d_tolerance,h=st_nut_h+st_nut_h_tolerance,$fn=6);
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));
bigd = spring_d+spring_d_clearance;
hf = (bigd-st_screw_d-st_screw_d_tolerance)/2;
- translate([0,0,st_thickshell+st_nut_h+st_nut_h_tolerance+st_thinshell-epsilon])
- cylinder(d1=st_screw_d+st_screw_d_tolerance,d2=bigd,
- h=hf+epsilon, $fn=fnd*bigd);
+ translate([0,0,st_thickshell+st_nut_h+st_nut_h_tolerance+st_thinshell-epsilon]) {
+ cylinder(d1=st_screw_d+st_screw_d_tolerance,d2=bigd,
+ 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);
}
}
}
} // translate
// pushfit bracket
translate([0,0,filament_elevation])
rotate([0,0,45]) translate([pulley_d/2+filament_offset,0,0])
rotate([-90,0,0])
translate([0,0,mount_d/sqrt(2)/2+mount_screw_d-gearbox_d/2/*TODO:*/]) {