Last active
December 12, 2020 19:56
-
-
Save N3MIS15/692596797beeded41519 to your computer and use it in GitHub Desktop.
Shopvac/Laser mount for my shapeoko
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
$fn=120; | |
spindle = 53; | |
vacuum = 37.2; | |
//%color("orange") rotate([0, 0, 90]) import("adapter_1_v1_0.stl"); | |
translate([0, 0, 10]) color("red") { | |
%cylinder(r=spindle/2, h=90); | |
%translate([0, 0, -spindle]) cylinder(r=19/2, h=52); | |
%translate([0, 0, -72]) cylinder(r=3/2, h=20); | |
rotate([0, 0, -45]) { | |
%translate([-10.5, 0, -14.5]) rotate([0, 90]) cylinder(r=1, h=1); | |
%translate([-44, 0, -14.5]) rotate([0, 90]) cylinder(r=6, h=32); | |
} | |
} | |
rotate([0, 0, -45]) { | |
difference() { | |
union() { | |
translate([0, 0, 15]) cylinder(r=(spindle+4.8)/2, h=10); // spindle clamp | |
difference() { | |
hull() { // main body | |
rotate([0, 0, -90]) { // laser mount | |
translate([-(spindle+2.4)/2, 0, -4.5]) cube([2.4, 32, 30], center=true); | |
} | |
translate([-(spindle+2.4)/2, 0, -4.5]) rotate([0, 90]) cylinder(r=11, h=2.4, center=true); // hall effect mount | |
cylinder(r=(spindle+4.8)/2, h=15); // spindle mount | |
rotate([0, 0, 45]) translate([0, -65, 0]) cylinder(r=(vacuum/2)+2.4, h=15); //vacuum mount | |
} | |
cylinder(r=(spindle)/2, h=50, center=true); // spindle hole | |
translate([0, 0, 20]) cube([2, 60, 10], center=true); // clamp relief | |
translate([0, 0, 20]) cube([60, 2, 10], center=true); // clamp relief | |
// center cutout | |
translate([0, 0, -25]) difference() { | |
intersection() { | |
hull() { | |
cylinder(r=spindle/2, h=50); | |
rotate([0, 0, 45]) translate([0, -65, 0]) cylinder(r=(vacuum/2), h=50); | |
} | |
hull() { | |
cylinder(r=spindle/2-3.6, h=50); | |
rotate([0, 0, 45]) translate([0, -65, 0]) cylinder(r=(vacuum/2)-3.6, h=50); | |
} | |
} | |
cylinder(r=spindle/2+2.4, h=100, center=true); | |
rotate([0, 0, -135]) translate([0, 65, 0]) cylinder(r=(vacuum/2)+2.4, h=100, center=true); | |
} // end center cutout | |
// vacuum cutouts | |
rotate([0, 0, 45]) translate([0, -65, 0]) { | |
translate([0, 0, -50]) cylinder(r=(vacuum/2), h=100); | |
translate([0, (vacuum/2), 13]) cube([5, 5, 4], center=true); | |
} // end vacuum cutouts | |
} | |
translate([-(spindle-2.4)/2, 0, -4.5]) rotate([0, 90]) cylinder(r=11, h=2.4, center=true); //hall mount backing | |
// laser mount backing | |
rotate([0, 0, 90]) { | |
translate([(spindle-6)/2, 12.5, -4.5]) rotate([0, 90]) cylinder(r1=3.5, r2=5.65, h=4.8, center=true); | |
translate([(spindle-6)/2, -12.5, -4.5]) rotate([0, 90]) cylinder(r1=3.5, r2=5.65, h=4.8, center=true); | |
} // end laser mount backing | |
} | |
translate([-(spindle+2.4)/2, 0, -4.5]) rotate([0, 90]) cylinder(r=6.5, h=12, center=true); // hall effect mount cutout | |
rotate([0, 0, -90]) { | |
translate([-(spindle+2.4)/2, 12.5, -4.5]) rotate([0, 90]) cylinder(r=1.6, h=16, center=true); // laser mount cutout | |
translate([-(spindle+2.4)/2, -12.5, -4.5]) rotate([0, 90]) cylinder(r=1.6, h=16, center=true); // laser mount cutout | |
} | |
// clamp relief | |
translate([0, 0, 20]) { | |
cylinder(r=(spindle)/2, h=10, center=true); | |
cube([2, 60, 10], center=true); | |
cube([60, 2, 10], center=true); | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment