2021-09-06 21:47:58 +00:00
|
|
|
use <Holes.scad>;
|
|
|
|
|
2021-01-04 18:08:21 +00:00
|
|
|
$fn = 50;
|
2020-12-30 17:14:05 +00:00
|
|
|
|
2021-01-04 18:08:21 +00:00
|
|
|
motorheight = 42.1;
|
|
|
|
motorwidth = 40.5;
|
|
|
|
wanddickemotor = 3;
|
|
|
|
wanddickelinks = 5.5;
|
2020-12-30 17:14:05 +00:00
|
|
|
|
|
|
|
|
2021-01-04 18:08:21 +00:00
|
|
|
cylinderdiameter = 22.2;
|
2020-12-30 17:14:05 +00:00
|
|
|
|
2021-01-04 18:08:21 +00:00
|
|
|
motorholedistance = (motorheight - 31) / 2;
|
|
|
|
leftholedist = 7;
|
|
|
|
M3HoleDiam = 3.4;
|
|
|
|
M3HeadDiam = 5.8;
|
2020-12-30 17:14:05 +00:00
|
|
|
|
2021-01-04 18:08:21 +00:00
|
|
|
Motorhalter();
|
|
|
|
|
|
|
|
module Motorhalter() {
|
2021-09-06 21:47:58 +00:00
|
|
|
difference() {
|
2021-01-04 18:08:21 +00:00
|
|
|
mainbody();
|
2021-08-27 20:32:05 +00:00
|
|
|
translate([motorwidth, wanddickelinks, 0]) motorholes(wanddickemotor);
|
2021-01-04 18:08:21 +00:00
|
|
|
leftholes();
|
|
|
|
}
|
2020-12-30 17:14:05 +00:00
|
|
|
}
|
|
|
|
|
2021-01-04 18:08:21 +00:00
|
|
|
|
2020-12-30 17:14:05 +00:00
|
|
|
//modules
|
|
|
|
|
2021-01-04 18:08:21 +00:00
|
|
|
module mainbody() {
|
|
|
|
cube([motorwidth + wanddickemotor, wanddickelinks, motorheight]);
|
2020-12-30 17:14:05 +00:00
|
|
|
|
2021-01-04 18:08:21 +00:00
|
|
|
translate([motorwidth, wanddickelinks, 0])cube([wanddickemotor, motorheight, motorheight]);
|
|
|
|
|
|
|
|
translate([motorwidth + wanddickemotor, motorheight * 2 / 3, motorheight]) rotate([0, 0, 180]) linear_extrude(3)
|
|
|
|
polygon([[0, 0], [0, motorheight * 2 / 3], [motorwidth * 2 / 3, motorheight * 2 / 3]]);
|
2020-12-30 17:14:05 +00:00
|
|
|
}
|
|
|
|
|
2021-08-27 20:32:05 +00:00
|
|
|
module motorholes(thickness) {
|
|
|
|
translate([0, motorheight / 2, motorheight / 2])rotate([0, 90, 0])cylinder(h = thickness, d = cylinderdiameter,
|
2021-01-04 18:08:21 +00:00
|
|
|
$fn = 130);
|
|
|
|
|
2021-09-06 21:47:58 +00:00
|
|
|
translate([0, motorheight - motorholedistance, motorheight - motorholedistance]) M3Hole(thickness);
|
2021-01-04 18:08:21 +00:00
|
|
|
|
2021-09-06 21:47:58 +00:00
|
|
|
translate([0, motorheight - motorholedistance, motorholedistance]) M3Hole(thickness);
|
2021-01-04 18:08:21 +00:00
|
|
|
|
2021-09-06 21:47:58 +00:00
|
|
|
translate([0, motorholedistance, motorheight - motorholedistance]) M3Hole(thickness);
|
2021-01-04 18:08:21 +00:00
|
|
|
|
2021-09-06 21:47:58 +00:00
|
|
|
translate([0, motorholedistance, motorholedistance]) M3Hole(thickness);
|
2020-12-30 17:14:05 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
module leftholes() {
|
|
|
|
// bottom left
|
2021-01-04 18:08:21 +00:00
|
|
|
translate([leftholedist, 0, leftholedist]) LeftM3Hole();
|
2020-12-30 17:14:05 +00:00
|
|
|
//bottom right
|
2021-01-04 18:08:21 +00:00
|
|
|
translate([motorwidth - leftholedist, 0, leftholedist]) LeftM3Hole();
|
2020-12-30 17:14:05 +00:00
|
|
|
// upper left
|
2021-01-04 18:08:21 +00:00
|
|
|
translate([leftholedist, 0, motorwidth - leftholedist]) LeftM3Hole();
|
2020-12-30 17:14:05 +00:00
|
|
|
// upper right
|
2021-01-04 18:08:21 +00:00
|
|
|
translate([motorwidth - leftholedist, 0, motorwidth - leftholedist]) LeftM3Hole();
|
2020-12-30 17:14:05 +00:00
|
|
|
}
|
|
|
|
|
2021-09-06 21:47:58 +00:00
|
|
|
// todo move this into Holes
|
2020-12-30 17:14:05 +00:00
|
|
|
module LeftM3Hole() {
|
2021-09-06 21:47:58 +00:00
|
|
|
// rotate([270, 0, 0])cylinder(h = wanddickelinks, d = M3HoleDiam);
|
|
|
|
rotate([270, 0, 90]) M3Hole(wanddickelinks);
|
2021-01-04 18:08:21 +00:00
|
|
|
translate([0, wanddickelinks - 3, 0]) rotate([270, 0, 0])cylinder(h = 3, d = M3HeadDiam);
|
2020-12-30 17:14:05 +00:00
|
|
|
}
|
|
|
|
|