79 lines
2.3 KiB
OpenSCAD
79 lines
2.3 KiB
OpenSCAD
// 62.5 x 100, r 7.5
|
|
$fn=50;
|
|
|
|
module frame(width, length, radius, height){
|
|
x_offset = (width-radius)/2;
|
|
y_offset = (length-radius)/2;
|
|
z_offset = radius;
|
|
hull(){
|
|
translate ([x_offset,y_offset,0]) cylinder(r=radius, h=height);
|
|
translate ([-x_offset,y_offset,0]) cylinder(r=radius, h=height);
|
|
translate ([x_offset,-y_offset,0]) cylinder(r=radius, h=height);
|
|
translate ([-x_offset,-y_offset,0]) cylinder(r=radius, h=height);
|
|
|
|
|
|
translate ([x_offset,y_offset,z_offset]) sphere(r=radius);
|
|
translate ([-x_offset,y_offset,z_offset]) sphere(r=radius);
|
|
translate ([x_offset,-y_offset,z_offset]) sphere(r=radius);
|
|
translate ([-x_offset,-y_offset,z_offset]) sphere(r=radius);
|
|
}
|
|
}
|
|
|
|
module loch(height){
|
|
translate([0,0,0-3.4]) cylinder (h=height, d=4.4);
|
|
translate([0,0,height-3.4]) cylinder (h=3.5, d1=4.4, d2=11);
|
|
}
|
|
|
|
|
|
//
|
|
// beweglicher Arm
|
|
|
|
difference(){
|
|
union(){
|
|
translate([-breite/2,100+120+11,dicke]) rotate([0,90,0]) cylinder(r=dicke, h=breite);
|
|
|
|
|
|
translate([-breite/2,11,0]) cube([breite,120 +100,10]);
|
|
translate([0,0,2]) minkowski(){
|
|
cylinder(d=30, h=4);
|
|
sphere(2);
|
|
}
|
|
}
|
|
// kabelkanal
|
|
translate([-4,-8,2]) cube([8,120 +120,7]);
|
|
translate([-11/2,-15/2,0.8]) cube([11,15,8]);
|
|
translate([-5,215,2]) cube([10,20,40]);
|
|
// Seitenscheiben
|
|
scheibendicke = (breite - innerebreite)/2 +.1;
|
|
|
|
translate([-breite/2,100+120+11,dicke]) rotate([0,90,0]) cylinder(r=dicke+.1, h=scheibendicke);
|
|
translate([breite/2-scheibendicke,100+120+11,dicke]) rotate([0,90,0]) cylinder(r=dicke+.1, h=scheibendicke);
|
|
#translate([-breite/2,100+120+11,dicke]) rotate([0,90,0]) cylinder(d=achsendurchmesser, h=breite);
|
|
}
|
|
|
|
|
|
// Halter nach oben
|
|
dicke= 5.7+7.5;
|
|
breite = 20;
|
|
innerebreite = 17;
|
|
achsendurchmesser = 8;
|
|
#cube([62.5, 100,30], center=true);
|
|
difference(){
|
|
union(){
|
|
frame(62.5, 100, 6.6, 4);
|
|
translate([0,0,-3.2])frame(58.5, 96, 3.5, 3.2);
|
|
|
|
|
|
|
|
translate([-breite/2,45,0]) cube([breite,120, dicke]);
|
|
translate([-breite/2,45+120-dicke,dicke]) rotate([0,90,0]) cylinder(r=dicke, h=breite);
|
|
}
|
|
translate([-innerebreite/2,45+120-dicke,dicke]) rotate([0,90,0]) cylinder(r=dicke+0.5, h=innerebreite);
|
|
// die Achse
|
|
translate([-breite/2,45+120-dicke,dicke]) rotate([0,90,0]) cylinder(d=achsendurchmesser+0.1, h=breite);
|
|
// oberes und unteres Befestigungsloch
|
|
//x:11,8 y:6.5, d=4.4
|
|
|
|
#translate([-62.5/2,45,0]) loch(dicke);
|
|
}
|