DIY_3D_Printer/Motorhalter.scad
2020-12-30 18:14:05 +01:00

63 lines
1.6 KiB
OpenSCAD

$fn=50;
motorheight=42;
motorwidth=40.5;
wanddickemotor=3;
wanddickelinks=5.5;
cylinderdiameter=22.2;
motorholedistance=(motorheight-31) /2;
leftholedist=7;
M3HoleDiam=3.4;
M3HeadDiam=5.8;
difference() {
mainbody();
translate([motorwidth,wanddickelinks,0]) motorholes();
leftholes();
}
//modules
module mainbody(){
cube([motorwidth + wanddickemotor, wanddickelinks ,motorheight]);
translate([motorwidth,wanddickelinks,0])cube([wanddickemotor, motorheight, motorheight]);
}
module motorholes(){
translate([0,motorheight/2,motorheight/2])rotate([0,90,0])cylinder(h=wanddickemotor, d=cylinderdiameter);
translate([0,motorheight - motorholedistance,motorheight - motorholedistance]) MotorM3Hole();
translate([0,motorheight - motorholedistance, motorholedistance]) MotorM3Hole();
translate([0,motorholedistance,motorheight - motorholedistance]) MotorM3Hole();
translate([0,motorholedistance, motorholedistance]) MotorM3Hole();
}
module leftholes() {
// bottom left
translate([leftholedist,0,leftholedist]) LeftM3Hole();
//bottom right
translate([motorwidth - leftholedist,0,leftholedist]) LeftM3Hole();
// upper left
translate([leftholedist,0,motorwidth - leftholedist]) LeftM3Hole();
// upper right
translate([motorwidth - leftholedist,0,motorwidth - leftholedist]) LeftM3Hole();
}
module MotorM3Hole() {
rotate([0,90,0])cylinder(h=wanddickemotor, d=M3HoleDiam);
}
module LeftM3Hole() {
rotate([270,0,0])cylinder(h=wanddickelinks, d=M3HoleDiam);
translate([0,wanddickelinks-3,0]) rotate([270,0,0])cylinder(h=3, d=M3HeadDiam);
}