DIY_3D_Printer/SliderLeft.scad
2021-02-27 18:05:26 +01:00

56 lines
1.5 KiB
OpenSCAD

M3HoleDiam = 3.4;
MountSize = 40;
BodyWidth = 60;
$fn = 100;
difference() {
MainBody();
M3MountHoles();
BottomZRodHoles();
}
module M3MountHoles(){
edgeDistance = (MountSize-20)/2;
translate([0, edgeDistance, edgeDistance]) M3Hole(40);
translate([0, MountSize-edgeDistance, edgeDistance]) M3Hole(40);
translate([0, edgeDistance, MountSize-edgeDistance]) M3Hole(40);
translate([0, MountSize-edgeDistance, MountSize-edgeDistance]) M3Hole(40);
}
module BottomZRodHoles(){
xcenter = 49;
ycenter = MountSize/2 - 10;
holedistance = 10.6;
translate([xcenter + holedistance/2, ycenter + holedistance/2, 0]) rotate([0,270,0]) M3Hole(5);
translate([xcenter - holedistance/2, ycenter + holedistance/2, 0]) rotate([0,270,0]) M3Hole(5);
translate([xcenter + holedistance/2, ycenter - holedistance/2, 0]) rotate([0,270,0]) M3Hole(5);
translate([xcenter - holedistance/2, ycenter - holedistance/2, 0]) rotate([0,270,0]) M3Hole(5);
// center hole
translate([xcenter, ycenter, 0]) rotate([0,0,0]) cylinder(h = 5, d = 10.1);
}
module M3Hole(thickness) {
rotate([0, 90, 0])cylinder(h = thickness, d = M3HoleDiam);
}
module MainBody() {
// left mount plate
cube([5, MountSize, MountSize]);
// bottom frame plate
translate([5, 0,0 ]) cube([BodyWidth, MountSize, 5]);
// motorholder plate
translate([0, MountSize,0 ]) cube([40+5, 5, 40]);
// top rod holde
translate([BodyWidth, 10,5 ]) cube([5, 20, 30]);
translate([BodyWidth, 10, -35 ]) cube([5, 20, 35]);
}