Commit 6cbcc3a9 by hubert

cleanup of gear parts

renamed planetary gear parts
distributed modules, variables, and assembled gears to different files
1 parent c6d833a9
include <modules.scad>
// projection(cut = false) extractorachse();
translate([55,55,0]) extractorachse();
translate([50,140,0]) Body();
translate([15,15,0]) Sun();
translate([55,55,0]) Annulus();
//extractorachsekombiniert();
//projection(cut = false) stdrad();
//stdrad();
include <modules.scad>
rotate([90,90,0]) {
translate([-29,29,0.5]) Tensioner();
translate([-29,-29,0.5]) Tensioner();
translate([8,17,-8.5]) Tensioner();
translate([8,-17,-8.5]) Tensioner();
Body();
Sun();
Annulus();
extractorachsekombiniert();
}
include <MCAD/gears.scad>
// geschwindigkeit
TIME = $t*50;
// rotationsrichtung
ROTATESMALL = (-TIME);
ROTATEBIG = (TIME);
// x-bewegung
//ROTATESMALL = (-TIME);
//ROTATEBIG = (TIME);
// extractormotor rotiert
//ROTATESMALL = (TIME);
//ROTATEBIG = (TIME);
SMALLROTATION = (ROTATESMALL*18);
BIGROTATION = (ROTATEBIG*6);
// haeh? das macht keinen sinn: (reicht aber fuer eine demo)
MEDIUMROTATION = ((BIGROTATION/2)+(-SMALLROTATION/2))*1.5;
FINALROTATION = (TIME - ((ROTATEBIG/2)+(-ROTATESMALL/2)))*9;
include <variables.scad>
module achse(spiel=0){
translate([0,0,-15]) cylinder(h=30,d=7+spiel,center=0);
}
module stdrad(){
module Planet(){
difference() {
linear_extrude(height = 2, center = false, convexity = 5,twist = 0)
gear(number_of_teeth=20,circular_pitch=200, diametral_pitch=10,pressure_angle=85, clearance = 0.1);
......@@ -55,7 +29,7 @@ module kranz(teeth=25, height=5){
}}
}
module bandspanner(){
module Tensioner(){
color("Gray") union() {
translate([0,0,3]) cylinder(h=1,d=5,center=true);
translate([0,0,0]) cylinder(h=5,d=4,center=true);
......@@ -63,15 +37,10 @@ module bandspanner(){
}
}
rotate([90,90,0]) {
translate([-29,29,0.5]) bandspanner();
translate([-29,-29,0.5]) bandspanner();
translate([8,17,-8.5]) bandspanner();
translate([8,-17,-8.5]) bandspanner();
module Body(){
// gehaeuse
render(convexity=1) {
translate([0,0,-4.5]) union() {
difference() {
union() {
......@@ -94,14 +63,16 @@ rotate([90,90,0]) {
translate([0,0,-5]) cylinder(h=8,d=25,center=0);
translate([0,0,5]) cylinder(h=8,d=8,center=0);
}
}
}
}
// antrieb inneres standardrad, muss in zwei teilen gedruckt werden !!(?)
module Sun() {
// antrieb inneres standardrad, muss in zwei teilen gedruckt werden !!(?)
color("CadetBlue") rotate([0,0,SMALLROTATION]) difference() {
union() {
stdrad();
Planet();
translate([0,0,-5]) cylinder(h=6,d=19,center=0);
translate([0,0,-5])
difference() {
......@@ -111,8 +82,11 @@ rotate([90,90,0]) {
}
achse(spiel=0.5);
}
}
// antrieb auesseres stdrad
module Annulus() {
render(convexity=1) {
// antrieb auesseres Planetrad
color("CadetBlue") rotate([0,0,BIGROTATION]) difference() {
difference() {
// aeusserer kranz
......@@ -128,37 +102,48 @@ rotate([90,90,0]) {
pressure_angle=85, clearance = 0.1);
}}
}
}
// zahnriemen auf aeusserem kranz
translate([0,0,-2]) kranz(teeth=64, height=5);
}
// innerer leerraum
translate([0,0,-3.5]) cylinder(h=8,d=64,center=0);
}
}
}
// aufhängung mit extraktorachse
rotate([0,0,FINALROTATION]){
module extractorachse() {
color("RosyBrown") union() {
translate([0,0,2.5]) {
achse(spiel=0);
difference() {
cylinder(h=1.5,d=60,center=0);
achse(spiel=0.1);
for ( aussparung = [0 : 3] ) {
rotate([0,0,120*aussparung]) translate([0,15,-0.5]) cylinder(h=5,d=20,center=0);
}
}
for ( achse = [0 : 3] ) {
rotate([0,0,120*achse]) translate([20,10,-2.6]) cylinder(h=3,d=6.7,center=0);
rotate([0,0,120*achse]) translate([20,10,-1]) cylinder(h=3,d=6.7,center=0);
}
}
}
}
}
module extractorachsekombiniert() {
// aufhängung mit extraktorachse
rotate([0,0,FINALROTATION]){
color("RosyBrown") union() {
extractorachse();
achse(spiel=0);
}
// drei mittlere raeder
for ( radnummer = [0 : 3] ) {
rotate([0,0,120*radnummer]) translate([20,10]) rotate([0,0,9+MEDIUMROTATION]) {
stdrad();
// drei mittlere zapfen
cylinder(h=4,d=6.6,center=0);
Planet();
}
}
}
......
// geschwindigkeit
TIME = $t*50;
// rotationsrichtung
ROTATESMALL = (TIME);
ROTATEBIG = (TIME);
// x-bewegung
//ROTATESMALL = (-TIME);
//ROTATEBIG = (TIME);
// extractormotor rotiert
//ROTATESMALL = (TIME);
//ROTATEBIG = (TIME);
SMALLROTATION = (ROTATESMALL*18);
BIGROTATION = (ROTATEBIG*6);
// haeh? das macht keinen sinn: (reicht aber fuer eine demo)
MEDIUMROTATION = ((BIGROTATION/2)+(-SMALLROTATION/2))*1.5;
FINALROTATION = (TIME - ((ROTATEBIG/2)+(-ROTATESMALL/2)))*9;
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!