Updated gears, work in the X gear cover
parent
1b34070e5b
commit
801dee704d
|
@ -164,7 +164,7 @@ render_2D_or_3D() {
|
||||||
// Draw right Y smooth rod
|
// Draw right Y smooth rod
|
||||||
rotate([0,0,180]) standard_rod(diam=axes_Ysmooth_rodD, length=axes_Ysmooth_rodLen, threaded=false, echoPart=true);
|
rotate([0,0,180]) standard_rod(diam=axes_Ysmooth_rodD, length=axes_Ysmooth_rodLen, threaded=false, echoPart=true);
|
||||||
|
|
||||||
!Cyclone_X_leftFrame();
|
Cyclone_X_leftFrame();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -17,6 +17,7 @@ module Cyclone_X_rightFrame() {
|
||||||
scale([-1,1,1]) Cyclone_X_leftFrame(isLeft=false);
|
scale([-1,1,1]) Cyclone_X_leftFrame(isLeft=false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
include <MCAD/stepper.scad>
|
||||||
module Cyclone_X_leftFrame(isLeft=true) {
|
module Cyclone_X_leftFrame(isLeft=true) {
|
||||||
|
|
||||||
screwSize = 3; // M3, M4, etc (integers only)
|
screwSize = 3; // M3, M4, etc (integers only)
|
||||||
|
@ -40,39 +41,42 @@ module Cyclone_X_leftFrame(isLeft=true) {
|
||||||
|
|
||||||
corner_radius = 10;
|
corner_radius = 10;
|
||||||
|
|
||||||
module Cyclone_XsubPart_gearsAndMotor(renderGears=false, echoPart=false, drawMotor=false, gearMargin=0) {
|
|
||||||
translate([gearWallSeparation,0,0]) rotate([0,90,0])
|
|
||||||
rodGear(r=axes_XgearSeparation/(1+1/axes_XgearRatio)+gearMargin, h=axes_XgearThickness+gearMargin, echoPart=echoPart, renderPart=renderGears);
|
|
||||||
// Translate to motor position
|
|
||||||
rotate([motorRotatedOffset,0,0]) {
|
|
||||||
translate([0,axes_XgearSeparation,0])
|
|
||||||
rotate([-motorRotatedOffset,0,0]) {
|
|
||||||
if(drawMotor)
|
|
||||||
translate([-motorWallSeparation,0,0]) rotate([0,90,0]) stepperMotor(screwHeight=motorWallSeparation, echoPart=echoPart);
|
|
||||||
translate([gearWallSeparation,0,0]) rotate([0,90,0]) motorGear(r=axes_XgearSeparation/(1+axes_XgearRatio)+gearMargin, h=axes_XgearThickness+gearMargin, echoPart=echoPart, renderPart=renderGears);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
module Cyclone_XsubPart_gearCover() {
|
module Cyclone_XsubPart_gearCover() {
|
||||||
margin = 4;
|
margin = 4;
|
||||||
wallThickness = 2;
|
wallThickness = 2;
|
||||||
|
nema_screw_separation = lookup(NemaDistanceBetweenMountingHoles, Nema17);
|
||||||
difference() {
|
difference() {
|
||||||
union() {
|
union() {
|
||||||
translate([gearWallSeparation,0,0]) rotate([0,90,0])
|
rotate([0,90,0])
|
||||||
cylinder(r=axes_XgearSeparation/(1+1/axes_XgearRatio)+wallThickness+margin, h=axes_XgearThickness+wallThickness+margin);
|
cylinder(r=axes_XgearSeparation/(1+1/axes_XgearRatio)+wallThickness+margin, h=gearWallSeparation+axes_XgearThickness+wallThickness+margin);
|
||||||
// Translate to motor position
|
// Translate to motor position
|
||||||
rotate([motorRotatedOffset,0,0]) {
|
rotate([motorRotatedOffset,0,0]) {
|
||||||
translate([0,axes_XgearSeparation,0])
|
translate([0,axes_XgearSeparation,0])
|
||||||
rotate([-motorRotatedOffset,0,0]) {
|
rotate([-motorRotatedOffset,0,0]) {
|
||||||
translate([gearWallSeparation,0,0]) rotate([0,90,0]) cylinder(r=axes_XgearSeparation/(1+axes_XgearRatio)+wallThickness+margin, h=axes_XgearThickness+wallThickness+margin);
|
rotate([0,90,0]) cylinder(r=axes_XgearSeparation/(1+axes_XgearRatio)+wallThickness+margin, h=gearWallSeparation+axes_XgearThickness+wallThickness+margin);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} //Cyclone_XsubPart_gearsAndMotor(renderGears=true, gearMargin=margin+wallThickness);
|
}
|
||||||
translate([-0.01,0,0])
|
translate([-0.01,0,0])
|
||||||
union()
|
union() {
|
||||||
Cyclone_XsubPart_gearsAndMotor(renderGears=true, gearMargin=margin);
|
rotate([0,90,0])
|
||||||
rotate([0,90,0]) cylinder(r=20/2-1.5, h=30);
|
cylinder(r=axes_XgearSeparation/(1+1/axes_XgearRatio)+margin, h=gearWallSeparation+axes_XgearThickness+margin);
|
||||||
|
rotate([0,90,0]) cylinder(r=20/2-1.5, h=30);
|
||||||
|
// Translate to motor position
|
||||||
|
rotate([motorRotatedOffset,0,0]) {
|
||||||
|
translate([0,axes_XgearSeparation,0])
|
||||||
|
rotate([-motorRotatedOffset,0,0]) {
|
||||||
|
rotate([0,90,0]) cylinder(r=axes_XgearSeparation/(1+axes_XgearRatio)+margin, h=gearWallSeparation+axes_XgearThickness+margin);
|
||||||
|
rotate([0,90,0]) cylinder(r=7/2, h=30);
|
||||||
|
translate([0,nema_screw_separation/2,-nema_screw_separation/2])
|
||||||
|
rotate([0,90,0]) cylinder(r=10/2, h=10);
|
||||||
|
translate([0,-nema_screw_separation/2,nema_screw_separation/2])
|
||||||
|
rotate([0,90,0]) cylinder(r=10/2, h=10);
|
||||||
|
translate([0,-nema_screw_separation/2,-nema_screw_separation/2])
|
||||||
|
rotate([0,90,0]) cylinder(r=10/2, h=10);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -50,14 +50,14 @@ $fs = 0.5; // Minimum fragment size [mm]
|
||||||
|
|
||||||
/* Herringbone gear module, adapted from MCAD/involute_gears */
|
/* Herringbone gear module, adapted from MCAD/involute_gears */
|
||||||
module herringbone_gear( teeth=12, circles=0, shaft=5 ) {
|
module herringbone_gear( teeth=12, circles=0, shaft=5 ) {
|
||||||
twist=100;
|
twist=0;//100;
|
||||||
height=10;
|
height=10;
|
||||||
pressure_angle=30;
|
pressure_angle=30;
|
||||||
|
|
||||||
diam = teeth*2;
|
diam = teeth*2;
|
||||||
|
|
||||||
truncation_length = 3;
|
truncation_length = 2.8;
|
||||||
truncation_height = height/3;
|
truncation_height = height/2.5;
|
||||||
|
|
||||||
module myGear() {
|
module myGear() {
|
||||||
difference() {
|
difference() {
|
||||||
|
@ -79,7 +79,7 @@ module herringbone_gear( teeth=12, circles=0, shaft=5 ) {
|
||||||
difference() {
|
difference() {
|
||||||
cylinder(r=diam/2, h=truncation_height);
|
cylinder(r=diam/2, h=truncation_height);
|
||||||
translate([0,0,-0.01])
|
translate([0,0,-0.01])
|
||||||
cylinder(r1=diam/2-truncation_length, r2=diam/2, h=truncation_height+0.02);
|
cylinder(r1=diam/2-truncation_length, r2=diam/2+1, h=truncation_height+0.02);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -109,7 +109,7 @@ union() difference() {
|
||||||
translate( [0, 0, 14.5] ) rotate( [0, 0, 30] )
|
translate( [0, 0, 14.5] ) rotate( [0, 0, 30] )
|
||||||
cylinder( r=6/2+0.5, h=2.8, $fn=6, center=true);
|
cylinder( r=6/2+0.5, h=2.8, $fn=6, center=true);
|
||||||
//grub hole
|
//grub hole
|
||||||
translate( [0, 0, 9] ) cylinder( r=3.2/2, h=10);
|
translate( [0, 0, 9] ) cylinder( r=3.3/2, h=10);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -44,14 +44,14 @@ $fs = 0.5; // Minimum fragment size [mm]
|
||||||
|
|
||||||
/* Herringbone gear module, adapted from MCAD/involute_gears */
|
/* Herringbone gear module, adapted from MCAD/involute_gears */
|
||||||
module herringbone_gear( teeth=12, circles=0, shaft=5 ) {
|
module herringbone_gear( teeth=12, circles=0, shaft=5 ) {
|
||||||
twist=100;
|
twist=0;//100;
|
||||||
height=10;
|
height=10;
|
||||||
pressure_angle=30;
|
pressure_angle=30;
|
||||||
|
|
||||||
diam = teeth*2;
|
diam = teeth*2;
|
||||||
|
|
||||||
truncation_length = 3;
|
truncation_length = 2.8;
|
||||||
truncation_height = height/3;
|
truncation_height = height/2.5;
|
||||||
|
|
||||||
module myGear() {
|
module myGear() {
|
||||||
difference() {
|
difference() {
|
||||||
|
@ -73,7 +73,7 @@ module herringbone_gear( teeth=12, circles=0, shaft=5 ) {
|
||||||
difference() {
|
difference() {
|
||||||
cylinder(r=diam/2+1, h=truncation_height);
|
cylinder(r=diam/2+1, h=truncation_height);
|
||||||
translate([0,0,-0.01])
|
translate([0,0,-0.01])
|
||||||
cylinder(r1=diam/2-truncation_length, r2=diam/2, h=truncation_height+0.02);
|
cylinder(r1=diam/2-truncation_length, r2=diam/2+1, h=truncation_height+0.02);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -49,7 +49,7 @@ $fs = 0.5; // Minimum fragment size [mm]
|
||||||
|
|
||||||
/* Herringbone gear module, adapted from MCAD/involute_gears */
|
/* Herringbone gear module, adapted from MCAD/involute_gears */
|
||||||
module herringbone_gear( teeth=12, circles=0, shaft=5 ) {
|
module herringbone_gear( teeth=12, circles=0, shaft=5 ) {
|
||||||
twist=100;
|
twist=0;//100;
|
||||||
height=10;
|
height=10;
|
||||||
pressure_angle=30;
|
pressure_angle=30;
|
||||||
|
|
||||||
|
@ -94,7 +94,7 @@ rotate([180,0,0]) union() difference() {
|
||||||
translate( [0, 0, 14.5] ) rotate( [0, 0, 30] )
|
translate( [0, 0, 14.5] ) rotate( [0, 0, 30] )
|
||||||
cylinder( r=6/2+0.5, h=2.8, $fn=6, center=true);
|
cylinder( r=6/2+0.5, h=2.8, $fn=6, center=true);
|
||||||
//grub hole
|
//grub hole
|
||||||
translate( [0, 0, 9] ) cylinder( r=3.2/2, h=10);
|
translate( [0, 0, 9] ) cylinder( r=3.3/2, h=10);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -44,14 +44,14 @@ $fs = 0.5; // Minimum fragment size [mm]
|
||||||
|
|
||||||
/* Herringbone gear module, adapted from MCAD/involute_gears */
|
/* Herringbone gear module, adapted from MCAD/involute_gears */
|
||||||
module herringbone_gear( teeth=12, circles=0, shaft=5 ) {
|
module herringbone_gear( teeth=12, circles=0, shaft=5 ) {
|
||||||
twist=100;
|
twist=0;//100;
|
||||||
height=10;
|
height=10;
|
||||||
pressure_angle=30;
|
pressure_angle=30;
|
||||||
|
|
||||||
diam = teeth*2;
|
diam = teeth*2;
|
||||||
|
|
||||||
truncation_length = 3;
|
truncation_length = 2.8;
|
||||||
truncation_height = height/3;
|
truncation_height = height/2.5;
|
||||||
|
|
||||||
module myGear() {
|
module myGear() {
|
||||||
difference() {
|
difference() {
|
||||||
|
@ -73,7 +73,7 @@ module herringbone_gear( teeth=12, circles=0, shaft=5 ) {
|
||||||
difference() {
|
difference() {
|
||||||
cylinder(r=diam/2+1, h=truncation_height);
|
cylinder(r=diam/2+1, h=truncation_height);
|
||||||
translate([0,0,-0.01])
|
translate([0,0,-0.01])
|
||||||
cylinder(r1=diam/2-truncation_length, r2=diam/2, h=truncation_height+0.02);
|
cylinder(r1=diam/2-truncation_length, r2=diam/2+1, h=truncation_height+0.02);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue