DIY_3D_Printer/SliderLeft.scad

73 lines
2.0 KiB
OpenSCAD

use <Motorhalter.scad>;
M3HoleDiam = 3.4;
MountSize = 40;
BodyWidth = 55;
$fn = 100;
difference() {
MainBody();
M3MountHoles();
xcenter = 49;
ycenter = MountSize/2 - 10;
translate([xcenter, ycenter, -5]) #BottomZRodHoles();
YRodHoles();
translate([10, 45, 0]) rotate([0, 0, -90]) #motorholes(6);
}
module M3MountHoles(){
edgeDistance = (MountSize-20)/2;
translate([0, edgeDistance, edgeDistance]) #M3Hole(6);
translate([0, MountSize-edgeDistance, edgeDistance]) #M3Hole(6);
translate([0, edgeDistance, MountSize-edgeDistance]) #M3Hole(6);
translate([0, MountSize-edgeDistance, MountSize-edgeDistance]) #M3Hole(6);
}
module BottomZRodHoles(){
holedistance = 10.6;
translate([holedistance/2, holedistance/2, 0]) rotate([0,270,0]) M3Hole(6);
translate([-holedistance/2, holedistance/2, 0]) rotate([0,270,0]) M3Hole(6);
translate([holedistance/2, -holedistance/2, 0]) rotate([0,270,0]) M3Hole(6);
translate([-holedistance/2, -holedistance/2, 0]) rotate([0,270,0]) M3Hole(6);
// center hole
cylinder(h = 6, d = 10.3);
}
module YRodHoles(){
translate([55, 30, 52.5]) rotate([0, 90, 0]) #cylinder(h = 6, d = 8);
translate([55, 30, -12.5]) rotate([0, 90, 0]) #cylinder(h = 6, d = 8);
translate([55, 25, 10]) #union() {
cube([6,10,20]);
translate([0, 5, 0]) rotate([0, 90, 0]) cylinder(h = 6, d = 10);
translate([0, 5, 20]) rotate([0, 90, 0]) cylinder(h = 6, d = 10);
}
}
module M3Hole(thickness) {
rotate([0, 90, 0])cylinder(h = thickness, d = M3HoleDiam);
}
module MainBody() {
// left mount plate
translate([0,0,-5]) cube([5, MountSize, MountSize+10]);
// bottom frame plate
translate([5, 0,-5 ]) cube([BodyWidth, MountSize, 5]);
// up frame plate
translate([5, 20,40 ]) cube([BodyWidth, 20, 3]);
// motorholder plate
translate([0, MountSize,-5 ]) cube([40+20, 5, 50]);
// rod holder
translate([BodyWidth, 20,-20 ]) cube([5, 25, 80]);
}