use $fn = 50; gear_modul = 1; gear_tooth_number_small = 10; gear_tooth_number_large = 130; gear_large_full_diameter = 150; module brett () { color("white") difference () { cylinder(d=197, h=12); cylinder(d=15.5, h=12); } } module stepper_zahnrad () { difference () { union () { translate([0,0,10]) spur_gear(modul=gear_modul, tooth_number=gear_tooth_number_small, width=3, bore=0); cylinder(h=10+3, d=6.5+2); } stepper_welle(); } } module stepper_welle () { difference() { cylinder(d=6.5,h=71.5); translate([6,0,0]) cube([6.5,6.5,71.5 *2], center = true); } } module stepper () { union () { translate([-56.5 / 2, -56.5 / 2, 0]) union () { difference () { //Grundkörper cube([56.5,56.5,50.5]); //Einrundungen cylinder(h=45,r=9.5); translate([56.5, 0,0]) cylinder(45,9.5,9.5); translate([0, 56.5,0]) cylinder(45,9.5,9.5); translate([56.5, 56.5,0]) cylinder(45,9.5,9.5); //Schrauben translate([4,4,45]) cylinder(h=6,d=5.5); translate([56.5-4,4,45]) cylinder(h=6,d=5.5); translate([4,56.5-4,45]) cylinder(h=6,d=5.5); translate([56.5-4,56.5-4,45]) cylinder(h=6,d=5.5); } // Welle translate([56.5 / 2, 56.5 / 2, 0]) union () { stepper_welle(); translate([0,0,50.5]) cylinder(h=1.5, d=38); } } translate([0,0,71.5-(10+3)]) stepper_zahnrad(); } } module large_gear () { difference () { cylinder(h = 3, d=gear_large_full_diameter); spur_gear(modul=gear_modul, tooth_number=gear_tooth_number_large, width=3, bore=0); cylinder(h = 3, d=(gear_large_full_diameter - 30)); } } // Stepper *translate([60,0,0]) stepper(); //Brett unten *translate([0,0,-12]) brett (); // Top Gear *translate([0,0,71.5-3]) large_gear (); translate([0,10 /2,15/2]) rotate([90,0,0]) { union() { difference() { cylinder(h=10, d=15); cylinder(h=10, d=3); } translate([0,0,-3]) cylinder(h=16, d=3-0.2); } }