From 4c13c54815432a85338a579841ef996cee74ee85 Mon Sep 17 00:00:00 2001 From: mattmcw Date: Mon, 20 Jun 2022 13:00:40 -0400 Subject: [PATCH] Updates to endstop mount design. Had incorrectly positioned voids for SMD chips on the endstop --- scad/capper.scad | 12 ++++++------ stl/capper_opto_endstop_mount.stl | Bin 17684 -> 30584 bytes 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/scad/capper.scad b/scad/capper.scad index 86c279f..6d08096 100644 --- a/scad/capper.scad +++ b/scad/capper.scad @@ -193,11 +193,11 @@ module OptoEndstopMount () { translate([2,-5,-13.25+OptoEndstopAdjustZ]) rotate([90, 0, 0]) cylinder(r=R(2.9),h=20,center=true, $fn=40); translate([2,-5,15+OptoEndstopAdjustZ]) rotate([90, 0, 0]) cylinder(r=R(2.9),h=20,center=true, $fn=40); //main void - translate([1,1,-3]) cube([8,20,15],center=true); + translate([-0.5,1,-3]) cube([8,20,15],center=true); //pathway void - translate([0,6,-2]) cylinder(r=R(22), h=4, center=true); + translate([0,6,-2]) cylinder(r=R(22), h=6, center=true); //smd voids - translate([-5, -6.5, -3]) cube([3.6, 1, 18], center=true); + translate([5, -6.5, -3]) cube([3.6, 1, 18], center=true); } } } @@ -207,11 +207,11 @@ module Debug () { //translate([-CapOffsetX,-CapOffsetY,5.71]) rotate([0,0,currentAngle]) Cap(); //color("green") RailMount(); //translate([5, -38, -11.8+OptoEndstopAdjustZ]) rotate([0, -90, 0]) opto_endstop(); - //color("green") translate([5, -38, -11.8]) OptoEndstopMount(); - //translate([2, -38 + 2, -11.8 + 11 + 2 +.75]) rotate([90, 0, 0]) OptoEndstop(); + color("green") translate([5, -38, -11.8]) OptoEndstopMount(); + translate([1.5, -38 + 2 -10, -11.8 + 11 + 2 +.75]) rotate([90, 0, 0]) OptoEndstop(); } -Render="Debug"; +Render="OptoEndstopMount"; if (Render=="Debug") { Debug(); diff --git a/stl/capper_opto_endstop_mount.stl b/stl/capper_opto_endstop_mount.stl index af7a271cfada766295e83e79765fb3be2f7777c9..744959b0fba90040caf8c5d0753b476ce06103ba 100644 GIT binary patch literal 30584 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 literal 17684 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 Fe*wZC6OI4?