2021-09-07 20:48:07 +00:00
|
|
|
use <Holes.scad>;
|
|
|
|
|
2021-09-07 11:22:31 +00:00
|
|
|
$fn=75;
|
2021-09-06 21:47:58 +00:00
|
|
|
|
2021-09-07 11:22:31 +00:00
|
|
|
// distance between two rods
|
|
|
|
holeDist=65;
|
|
|
|
|
|
|
|
// diameter of rod sticks
|
|
|
|
rodDiameter=8;
|
|
|
|
|
|
|
|
// overall height
|
|
|
|
heightMain=90;
|
|
|
|
|
|
|
|
width=60;
|
|
|
|
depth=10;
|
|
|
|
|
|
|
|
bearingLength=24;
|
|
|
|
bearingDiam=15;
|
|
|
|
|
|
|
|
twoRodSize=2.2;
|
|
|
|
middleCylinderRad=2.5;
|
|
|
|
middleCylinderOuterRad=4;
|
|
|
|
|
|
|
|
rollWithRodDist=13.6; // rolle mit rod drauf
|
|
|
|
|
|
|
|
difference() {
|
|
|
|
body();
|
|
|
|
|
|
|
|
dist=(heightMain-holeDist)/2;
|
|
|
|
translate([0,0,dist]) bearingHalfHole();
|
|
|
|
translate([0,0,dist+holeDist]) bearingHalfHole();
|
|
|
|
|
|
|
|
cubecenter=heightMain/2-rollWithRodDist/2;
|
|
|
|
translate([0, 0, heightMain/2]) cube([width, 5, rollWithRodDist]);
|
|
|
|
|
|
|
|
translate([0, -5, cubecenter]) beltHolder();
|
|
|
|
translate([width, -5, cubecenter]) rotate([0, 180, 0]) beltHolder();
|
2021-09-07 20:48:07 +00:00
|
|
|
|
|
|
|
// add the 4 mountholes
|
|
|
|
MountHoles();
|
2021-09-07 11:22:31 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
module body() {
|
|
|
|
edgeRound=1.5;
|
|
|
|
|
|
|
|
translate([edgeRound, 0, edgeRound]) minkowski() {
|
|
|
|
cube([width-edgeRound*2, depth/2, heightMain-edgeRound*2]);
|
|
|
|
rotate([-90, 0, 0]) cylinder(r=edgeRound,h=depth/2);
|
|
|
|
}
|
|
|
|
|
|
|
|
cubez=heightMain/2-rollWithRodDist;
|
|
|
|
translate([0, -5, cubez]) cube([width, 5, rollWithRodDist]);
|
|
|
|
|
|
|
|
// the bottom triangle
|
|
|
|
translate([0, 0, cubez]) rotate([-90,0,-90]) linear_extrude(width) #polygon([[0,0],[5,0],[0,5]]);
|
|
|
|
}
|
|
|
|
|
|
|
|
module bearingHalfHole() {
|
|
|
|
sideDist=3;
|
|
|
|
|
2021-09-07 20:48:07 +00:00
|
|
|
rotate([0, 90, 0]) cylinder(h = width, d = 8+2); // we are defining +1mm to fit the rod in the hole...
|
2021-09-07 11:22:31 +00:00
|
|
|
translate([sideDist,0,0]) rotate([0, 90, 0]) cylinder(h = bearingLength, d = bearingDiam);
|
|
|
|
translate([width-bearingLength-sideDist,0,0]) rotate([0, 90, 0]) cylinder(h = bearingLength, d = bearingDiam);
|
|
|
|
}
|
|
|
|
|
|
|
|
module beltHolder() {
|
|
|
|
translate([0, 0, -twoRodSize/2]) {
|
|
|
|
cube([17, 10, twoRodSize]);
|
|
|
|
translate([20, 0, twoRodSize/2]) rotate([-90, 0, 0]) difference() {
|
|
|
|
hull() {
|
|
|
|
cylinder(r=middleCylinderOuterRad, h=10);
|
|
|
|
#translate([-5, 0, 0]) #cylinder(r=1, h=10);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
cylinder(r=middleCylinderRad, h=10);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
2021-09-07 20:48:07 +00:00
|
|
|
|
|
|
|
module MountHoles() {
|
|
|
|
translate([10,0,65]) {
|
|
|
|
rotate([0,0,90]) #M3Hole(10);
|
|
|
|
translate([0,5,0]) rotate([0,0,90]) M3Nut(5);
|
|
|
|
}
|
|
|
|
translate([width-10,0,65]) {
|
|
|
|
rotate([0,0,90]) #M3Hole(10);
|
|
|
|
translate([0,5,0]) rotate([0,0,90]) M3Nut(5);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
translate([10,0,30]) {
|
|
|
|
translate([0,-5,0]) rotate([0,0,90]) #M3Hole(15);
|
|
|
|
translate([0,5,0]) rotate([0,0,90]) M3Nut(10);
|
|
|
|
}
|
|
|
|
|
|
|
|
translate([width-10,0,30]) {
|
|
|
|
translate([0,-5,0]) rotate([0,0,90]) #M3Hole(15);
|
|
|
|
translate([0,5,0]) rotate([0,0,90]) M3Nut(10);
|
|
|
|
}
|
|
|
|
}
|