summaryrefslogtreecommitdiff
path: root/another.scad
authorMichael Krelin <hacker@klever.net>2018-09-01 15:04:55 (UTC)
committer Michael Krelin <hacker@klever.net>2018-09-01 15:04:55 (UTC)
commitfc5c22aeb877892c1caabf628d2bc675de681ff3 (patch) (unidiff)
tree74a3d550b292a8b0894813b205f928d7a2f90cca /another.scad
parent2f6d5390149d351d131e294946ba2b948bfd7aca (diff)
downloadextrudery-fc5c22aeb877892c1caabf628d2bc675de681ff3.zip
extrudery-fc5c22aeb877892c1caabf628d2bc675de681ff3.tar.gz
extrudery-fc5c22aeb877892c1caabf628d2bc675de681ff3.tar.bz2
cap springpad calculations for longer screws
Diffstat (limited to 'another.scad') (more/less context) (ignore whitespace changes)
-rw-r--r--another.scad5
1 files changed, 3 insertions, 2 deletions
diff --git a/another.scad b/another.scad
index 8ba0d58..6bb0664 100644
--- a/another.scad
+++ b/another.scad
@@ -386,43 +386,44 @@ module the_extruder(
386 translate([0,0,body_h-label_thickness]) 386 translate([0,0,body_h-label_thickness])
387 linear_extrude(height=label_thickness+epsilon,convexity=64) 387 linear_extrude(height=label_thickness+epsilon,convexity=64)
388 translate([-mount_screwhead_d/2-min_xy_shell-labelspace.x/2,-longwing+(st_split_w+st_split_w_tolerance)/2+min_xy_shell+labelspace.y/2]) 388 translate([-mount_screwhead_d/2-min_xy_shell-labelspace.x/2,-longwing+(st_split_w+st_split_w_tolerance)/2+min_xy_shell+labelspace.y/2])
389 mirror([left?0:1,0]) 389 mirror([left?0:1,0])
390 text(text=label,size=labelspace.x/label_len,halign="center",valign="center",font="Arial Black"); 390 text(text=label,size=labelspace.x/label_len,halign="center",valign="center",font="Arial Black");
391 }else sphere(d=epsilon); // to avoid makefile breakage 391 }else sphere(d=epsilon); // to avoid makefile breakage
392 } 392 }
393 393
394 module springpad() { 394 module springpad() {
395 smalld=st_screw_d+st_screw_d_tolerance+min_xy_shell; 395 smalld=st_screw_d+st_screw_d_tolerance+min_xy_shell;
396 bigd = spring_d+spring_d_clearance/2; 396 bigd = spring_d+spring_d_clearance/2;
397 hf = (bigd-smalld)/2; 397 hf = (bigd-smalld)/2;
398 h = max(hf,fsw-st_screw_l+hf); 398 h = max(hf*2,fsw-st_screw_l+hf);
399 translate([-gearbox_d/2+fsw-h,-longwing,filament_elevation]) 399 translate([-gearbox_d/2+fsw-h,-longwing,filament_elevation])
400 rotate([0,90,0]) difference() { 400 rotate([0,90,0]) difference() {
401 union() { 401 union() {
402 cylinder(d1=smalld,d2=bigd,h=hf,$fn=fnd*bigd); 402 cylinder(d1=smalld,d2=bigd,h=hf,$fn=fnd*bigd);
403 translate([0,0,hf-epsilon]) 403 translate([0,0,hf-epsilon])
404 cylinder(d=bigd,h=h-hf,$fn=fnd*bigd); 404 cylinder(d=bigd,h=h-hf,$fn=fnd*bigd);
405 translate([0,0,h]) 405 translate([0,0,h])
406 sphere(d=spring_d*3/4,$fn=fnd*spring_d*3/4); 406 sphere(d=spring_d*3/4,$fn=fnd*spring_d*3/4);
407 l = body_h-ls_z; 407 l = body_h-ls_z;
408 w = sp_ch; 408 w = sp_ch;
409 hull() translate([0,-st_split_w/2,0]) mirror([1,0,0]) { 409 hull() translate([0,-st_split_w/2,0]) mirror([1,0,0]) {
410 translate([0,0,w]) 410 translate([0,0,w])
411 cube(size=[l,st_split_w,w]); 411 cube(size=[l,st_split_w,w]);
412 cube(size=[l-w,st_split_w,2*w]); 412 cube(size=[l-w,st_split_w,2*w]);
413 } 413 }
414 } 414 }
415 translate([0,0,-epsilon]) 415 translate([0,0,-epsilon])
416 cylinder(d=st_screw_d+st_screw_d_tolerance,h=st_screw_l-fsw+h+2*epsilon,$fn=fnd*(st_screw_d+st_screw_d_tolerance)); 416 cylinder(d=st_screw_d+st_screw_d_tolerance,
417 h=min(st_screw_l,fsw-hf)-fsw+h+2*epsilon,$fn=fnd*(st_screw_d+st_screw_d_tolerance));
417 } 418 }
418 } 419 }
419 420
420 module knob() { 421 module knob() {
421 ch = knob_indent_d/2; 422 ch = knob_indent_d/2;
422 knob_bore_l = body_h-protrusion_h-pulley_elevation-pulley_h-knob_v_clearance; 423 knob_bore_l = body_h-protrusion_h-pulley_elevation-pulley_h-knob_v_clearance;
423 translate([0,0,body_h+epsilon]) { 424 translate([0,0,body_h+epsilon]) {
424 mirror([0,0,1]) translate([0,0,-epsilon]) { 425 mirror([0,0,1]) translate([0,0,-epsilon]) {
425 difference() { 426 difference() {
426 cylinder(d=pulley_d,h=knob_bore_l,$fn=fnd*pulley_d); 427 cylinder(d=pulley_d,h=knob_bore_l,$fn=fnd*pulley_d);
427 translate([0,0,-1]) difference() { 428 translate([0,0,-1]) difference() {
428 cylinder(d=bore_d+knob_bore_d_tolerance,h=knob_bore_l+2); 429 cylinder(d=bore_d+knob_bore_d_tolerance,h=knob_bore_l+2);