Improved gears
parent
334c100e6a
commit
328887ce95
|
@ -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();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -9,6 +9,7 @@ Xmotor_sideLen = 42.20;
|
||||||
|
|
||||||
axes_XgearSeparation = 37;
|
axes_XgearSeparation = 37;
|
||||||
axes_XgearRatio = 21/21; // Number of tooth (motor/rod)
|
axes_XgearRatio = 21/21; // Number of tooth (motor/rod)
|
||||||
|
axes_XgearThickness = 10;
|
||||||
|
|
||||||
X_frames_additional_thickness = 5;
|
X_frames_additional_thickness = 5;
|
||||||
|
|
||||||
|
@ -39,6 +40,34 @@ 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() {
|
||||||
|
margin = 4;
|
||||||
|
wallThickness = 2;
|
||||||
|
color("grey")
|
||||||
|
difference() {
|
||||||
|
union()
|
||||||
|
Cyclone_XsubPart_gearsAndMotor(renderGears=true, gearMargin=margin+wallThickness);
|
||||||
|
translate([-0.01,0,0])
|
||||||
|
union()
|
||||||
|
Cyclone_XsubPart_gearsAndMotor(renderGears=true, gearMargin=margin);
|
||||||
|
rotate([0,90,0]) cylinder(r=20/2-1.5, h=30);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
difference() {
|
difference() {
|
||||||
// Main block
|
// Main block
|
||||||
|
@ -115,16 +144,8 @@ module Cyclone_X_leftFrame(isLeft=true) {
|
||||||
translate([-bearingDepth,0,0]) rotate([0,90,0])
|
translate([-bearingDepth,0,0]) rotate([0,90,0])
|
||||||
radialBearing(echoPart=true);
|
radialBearing(echoPart=true);
|
||||||
if(isLeft) {
|
if(isLeft) {
|
||||||
translate([gearWallSeparation,0,0]) rotate([0,90,0])
|
Cyclone_XsubPart_gearsAndMotor(echoPart=true, drawMotor=true);
|
||||||
rodGear(r=axes_XgearSeparation/(1+1/axes_XgearRatio), echoPart=true);
|
Cyclone_XsubPart_gearCover();
|
||||||
// Translate to motor position
|
|
||||||
rotate([motorRotatedOffset,0,0]) {
|
|
||||||
translate([0,axes_XgearSeparation,0])
|
|
||||||
rotate([-motorRotatedOffset,0,0]) {
|
|
||||||
translate([-motorWallSeparation,0,0]) rotate([0,90,0]) stepperMotor(screwHeight=motorWallSeparation, echoPart=true);
|
|
||||||
translate([gearWallSeparation,0,0]) rotate([0,90,0]) motorGear(r=axes_XgearSeparation/(1+axes_XgearRatio), echoPart=true);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
translate([0,0,axes_Xsmooth_separation])
|
translate([0,0,axes_Xsmooth_separation])
|
||||||
rotate([0,0,-90])
|
rotate([0,0,-90])
|
||||||
|
|
|
@ -37,7 +37,7 @@ include <MCAD/materials.scad>
|
||||||
include <MCAD/teardrop.scad>
|
include <MCAD/teardrop.scad>
|
||||||
include <MCAD/involute_gears.scad>
|
include <MCAD/involute_gears.scad>
|
||||||
|
|
||||||
motor_shaft_diameter=5.3;
|
motor_shaft_diameter=5.6;
|
||||||
BigGear_N_Teeth = 21; // 24
|
BigGear_N_Teeth = 21; // 24
|
||||||
|
|
||||||
nholes = 9; // 7
|
nholes = 9; // 7
|
||||||
|
@ -73,8 +73,7 @@ module herringbone_gear( teeth=12, circles=0, shaft=5 ) {
|
||||||
hub_diameter=1,
|
hub_diameter=1,
|
||||||
bore_diameter=shaft,
|
bore_diameter=shaft,
|
||||||
circles=circles,
|
circles=circles,
|
||||||
twist=twist/teeth,
|
twist=twist/teeth
|
||||||
$fn=15*2
|
|
||||||
);
|
);
|
||||||
mirror([0,0,1]) translate([0,0,-height/2-0.01]) {
|
mirror([0,0,1]) translate([0,0,-height/2-0.01]) {
|
||||||
difference() {
|
difference() {
|
||||||
|
@ -101,32 +100,28 @@ union() difference() {
|
||||||
|
|
||||||
translate( [0, 0, 12] ) mirror( [0, 0, 1] ) difference() {
|
translate( [0, 0, 12] ) mirror( [0, 0, 1] ) difference() {
|
||||||
//shaft
|
//shaft
|
||||||
cylinder( r=9, h=15, $fn=40 );
|
cylinder( r=9, h=15);
|
||||||
//adapted to include 3 captive nuts for symmetrical positioning
|
|
||||||
//adpted bij HJ Binnema on August 26 2013.
|
|
||||||
for (i= [0:2]){
|
|
||||||
rotate([0,0,i*120]){
|
|
||||||
//captive nut and grub holes
|
//captive nut and grub holes
|
||||||
translate( [0, 20, 3.5] ) rotate( [90, 0, 0] ) union() {
|
translate( [0, 19.5, 3.5] ) rotate( [90, 0, 0] ) union() {
|
||||||
//enterance
|
//enterance
|
||||||
translate( [0, -3, 14.5] ) cube( [6, 6, 2.6], center=true );
|
translate( [0, -3, 14.5] ) cube( [6, 6, 2.8], center=true );
|
||||||
//nut
|
//nut
|
||||||
translate( [0, 0, 13.3] ) rotate( [0, 0, 30] )
|
translate( [0, 0, 14.5] ) rotate( [0, 0, 30] )
|
||||||
cylinder( r=6/2+0.5, h=2.6, $fn=6 );
|
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, $fn=6 );
|
translate( [0, 0, 9] ) cylinder( r=3.2/2, h=10);
|
||||||
}}}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//holes to save plastic
|
//holes to save plastic
|
||||||
for(i=[0:nholes-1])
|
//for(i=[0:nholes-1])
|
||||||
rotate( [0, 0, i*360/(nholes)+45], $fn=20 )
|
// rotate( [0, 0, i*360/(nholes)+45])
|
||||||
translate( [hole_distance_from_center, 0] )
|
// translate( [hole_distance_from_center, 0] )
|
||||||
cylinder( r=holes_diam/2, h=11, center=true, $fn=30 );
|
// cylinder( r=holes_diam/2, h=11, center=true);
|
||||||
|
|
||||||
//shaft hole
|
//shaft hole
|
||||||
translate( [0, 0, -6] ) cylinder( r=motor_shaft_diameter/2, h=20, $fn=30 );
|
translate( [0, 0, -6] ) cylinder( r=motor_shaft_diameter/2, h=20);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -30,39 +30,31 @@
|
||||||
* --
|
* --
|
||||||
* DeuxVis - device@ymail.com */
|
* DeuxVis - device@ymail.com */
|
||||||
|
|
||||||
include <MCAD/metric_fastners.scad>
|
|
||||||
include <MCAD/materials.scad>
|
|
||||||
include <MCAD/teardrop.scad>
|
|
||||||
include <MCAD/involute_gears.scad>
|
include <MCAD/involute_gears.scad>
|
||||||
|
|
||||||
M8_nut_diameter = 15.3;
|
M8_nut_diameter = 15.3;
|
||||||
nut_separation = 3;
|
nut_separation = 5;
|
||||||
|
|
||||||
SmallGear_N_Teeth = 21;//17; // 12
|
SmallGear_N_Teeth = 21;
|
||||||
M8_rod_diam = 8.4;
|
M8_rod_diam = 8.4;
|
||||||
|
|
||||||
|
// Increase the resolution of default shapes
|
||||||
|
$fa = 5; // Minimum angle for fragments [degrees]
|
||||||
|
$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=200;
|
twist=100;
|
||||||
height=10;
|
height=10;
|
||||||
pressure_angle=30;
|
pressure_angle=30;
|
||||||
|
|
||||||
gear(
|
diam = teeth*2;
|
||||||
number_of_teeth=teeth,
|
|
||||||
circular_pitch=320,
|
|
||||||
pressure_angle=pressure_angle,
|
|
||||||
clearance = 0.2,
|
|
||||||
gear_thickness = height/2,
|
|
||||||
rim_thickness = height/2,
|
|
||||||
rim_width = 1,
|
|
||||||
hub_thickness = height/2,
|
|
||||||
hub_diameter=1,
|
|
||||||
bore_diameter=shaft,
|
|
||||||
circles=circles,
|
|
||||||
twist=twist/teeth
|
|
||||||
);
|
|
||||||
|
|
||||||
mirror( [0,0,1] )
|
truncation_length = 3;
|
||||||
|
truncation_height = height/3;
|
||||||
|
|
||||||
|
module myGear() {
|
||||||
|
difference() {
|
||||||
gear(
|
gear(
|
||||||
number_of_teeth=teeth,
|
number_of_teeth=teeth,
|
||||||
circular_pitch=320,
|
circular_pitch=320,
|
||||||
|
@ -77,6 +69,19 @@ module herringbone_gear( teeth=12, circles=0, shaft=5 ) {
|
||||||
circles=circles,
|
circles=circles,
|
||||||
twist=twist/teeth
|
twist=twist/teeth
|
||||||
);
|
);
|
||||||
|
mirror([0,0,1]) translate([0,0,-height/2-0.01]) {
|
||||||
|
difference() {
|
||||||
|
cylinder(r=diam/2+1, h=truncation_height);
|
||||||
|
translate([0,0,-0.01])
|
||||||
|
cylinder(r1=diam/2-truncation_length, r2=diam/2, h=truncation_height+0.02);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
myGear();
|
||||||
|
mirror( [0,0,1] )
|
||||||
|
myGear();
|
||||||
}
|
}
|
||||||
|
|
||||||
module cyclone_rod_gear(with_extra_parts=false, exploded=false) {
|
module cyclone_rod_gear(with_extra_parts=false, exploded=false) {
|
||||||
|
@ -84,31 +89,11 @@ module cyclone_rod_gear(with_extra_parts=false, exploded=false) {
|
||||||
difference() {
|
difference() {
|
||||||
union() {
|
union() {
|
||||||
//gear
|
//gear
|
||||||
rotate([180,0,0]) herringbone_gear( teeth=SmallGear_N_Teeth, circles=0, shaft=M8_rod_diam, $fn=40 );
|
rotate([180,0,0]) herringbone_gear( teeth=SmallGear_N_Teeth, circles=0, shaft=M8_rod_diam);
|
||||||
|
|
||||||
//M8 hobbed bolt head fit washer
|
|
||||||
/*difference() {
|
|
||||||
translate( [0, 0, 5] ) cylinder( r=8, h=3, $fn=60 );
|
|
||||||
translate( [0, 0, 5-0.01] ) cylinder( r=M8_nut_diameter/2, h=7, $fn=6 );
|
|
||||||
}*/
|
|
||||||
/*rotate([180,0,0]) difference() {
|
|
||||||
translate( [0, 0, 5] ) cylinder( r=13, h=3, $fn=60 );
|
|
||||||
translate( [0, 0, 5+0.4] ) cylinder( r=M8_nut_diameter/2, h=7, $fn=6 );
|
|
||||||
}*/
|
|
||||||
}
|
}
|
||||||
|
|
||||||
translate( [0, 0, (nut_separation/2)] ) cylinder( r=M8_nut_diameter/2, h=7, $fn=6 );
|
translate( [0, 0, (nut_separation/2)] ) cylinder( r=M8_nut_diameter/2, h=7, $fn=6 );
|
||||||
}
|
}
|
||||||
|
|
||||||
if(with_extra_parts)
|
|
||||||
cyclone_rod_gear_extras(exploded_distance=(exploded?12:0));
|
|
||||||
|
|
||||||
module cyclone_rod_gear_extras(exploded_distance=0) {
|
|
||||||
echo("Non-Plastic Parts, 2, Nut M8 to attach rod_gear on threaded rod");
|
|
||||||
translate([0,0,-10/2-0.8*8-1.0*exploded_distance]) color(Steel) flat_nut(8);
|
|
||||||
translate([0,0,nut_separation/2+0.8*8+1.0*exploded_distance]) rotate([180,0,0]) color(Steel) flat_nut(8);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
cyclone_rod_gear();
|
cyclone_rod_gear();
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -37,18 +37,23 @@ include <MCAD/materials.scad>
|
||||||
include <MCAD/teardrop.scad>
|
include <MCAD/teardrop.scad>
|
||||||
include <MCAD/involute_gears.scad>
|
include <MCAD/involute_gears.scad>
|
||||||
|
|
||||||
motor_shaft_diameter=5.4;
|
motor_shaft_diameter=5.6;
|
||||||
pos=15.4-1; //position hole for grubnut
|
pos=15.4-1; //position hole for grubnut
|
||||||
nholes = 7;
|
nholes = 7;
|
||||||
shaft_diam=10;
|
shaft_diam=9;
|
||||||
shaft_height=7;
|
shaft_height=7;
|
||||||
|
|
||||||
|
// Increase the resolution of default shapes
|
||||||
|
$fa = 5; // Minimum angle for fragments [degrees]
|
||||||
|
$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=200;
|
twist=100;
|
||||||
height=10;
|
height=10;
|
||||||
pressure_angle=30;
|
pressure_angle=30;
|
||||||
|
|
||||||
|
module myGear() {
|
||||||
gear(
|
gear(
|
||||||
number_of_teeth=teeth,
|
number_of_teeth=teeth,
|
||||||
circular_pitch=320,
|
circular_pitch=320,
|
||||||
|
@ -63,22 +68,11 @@ module herringbone_gear( teeth=12, circles=0, shaft=5 ) {
|
||||||
circles=circles,
|
circles=circles,
|
||||||
twist=twist/teeth
|
twist=twist/teeth
|
||||||
);
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
myGear();
|
||||||
mirror( [0,0,1] )
|
mirror( [0,0,1] )
|
||||||
gear(
|
myGear();
|
||||||
number_of_teeth=teeth,
|
|
||||||
circular_pitch=320,
|
|
||||||
pressure_angle=pressure_angle,
|
|
||||||
clearance = 0.2,
|
|
||||||
gear_thickness = height/2,
|
|
||||||
rim_thickness = height/2,
|
|
||||||
rim_width = 1,
|
|
||||||
hub_thickness = height/2,
|
|
||||||
hub_diameter=1,
|
|
||||||
bore_diameter=shaft,
|
|
||||||
circles=circles,
|
|
||||||
twist=twist/teeth
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
module cyclone_motor_z_gear(with_extra_parts=false, exploded=false) {
|
module cyclone_motor_z_gear(with_extra_parts=false, exploded=false) {
|
||||||
|
@ -91,37 +85,23 @@ rotate([180,0,0]) union() difference() {
|
||||||
|
|
||||||
translate( [0, 0, 12] ) mirror( [0, 0, 1] ) difference() {
|
translate( [0, 0, 12] ) mirror( [0, 0, 1] ) difference() {
|
||||||
//shaft
|
//shaft
|
||||||
cylinder( r=shaft_diam, h=shaft_height, $fn=40 );
|
cylinder( r=shaft_diam, h=shaft_height);
|
||||||
|
|
||||||
//captive nut and grub holes
|
//captive nut and grub holes
|
||||||
for (i=[0:2]){ //3 symmetric grubscrews
|
translate( [0, 19.5, 3.5] ) rotate( [90, 0, 0] ) union() {
|
||||||
|
//enterance
|
||||||
rotate([0,0,i*120]){
|
translate( [0, -3, 14.5] ) cube( [6, 6, 2.8], center=true );
|
||||||
translate( [0, 20, 3.5] ) rotate( [90, 0, 0] ) union() {
|
//nut
|
||||||
//entrance for nut
|
translate( [0, 0, 14.5] ) rotate( [0, 0, 30] )
|
||||||
translate( [0, -4.4, pos] ) cube( [5.9, 5.8, 2.45], center=true );
|
cylinder( r=6/2+0.5, h=2.8, $fn=6, center=true);
|
||||||
//nut hole
|
//grub hole
|
||||||
translate( [0, 0, pos-1.2] ) rotate( [0, 0, 30] )
|
translate( [0, 0, 9] ) cylinder( r=3.2/2, h=10);
|
||||||
cylinder( r=6/2+0.2, h=2.6, $fn=6 );
|
|
||||||
//grub screw hole
|
|
||||||
translate( [0, 0, 9] ) cylinder( r=1.5, h=10, $fn=20 );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//shaft hole
|
//shaft hole
|
||||||
translate( [0, 0, -6] ) cylinder( r=motor_shaft_diameter/2, h=20, $fn=30 );
|
translate( [0, 0, -6] ) cylinder( r=motor_shaft_diameter/2, h=20);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(with_extra_parts)
|
|
||||||
cyclone_motor_z_gear_extras(exploded_distance = (exploded?24:0));
|
|
||||||
|
|
||||||
module cyclone_motor_z_gear_extras(exploded_distance=0) {
|
|
||||||
echo("Non-Plastic Parts, 1, Grub Screw M3 x 8 mm to attach Z motor gear to motor shaft");
|
|
||||||
translate([0,-2.5-exploded_distance,-(12-3.5)]) rotate([90, 0, 0]) color(Steel) cylinder(r=1.5, h=8, $fn=30);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
cyclone_motor_z_gear();
|
cyclone_motor_z_gear();
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -30,39 +30,31 @@
|
||||||
* --
|
* --
|
||||||
* DeuxVis - device@ymail.com */
|
* DeuxVis - device@ymail.com */
|
||||||
|
|
||||||
include <MCAD/metric_fastners.scad>
|
|
||||||
include <MCAD/nuts_and_bolts.scad>
|
|
||||||
include <MCAD/materials.scad>
|
|
||||||
include <MCAD/teardrop.scad>
|
|
||||||
include <MCAD/involute_gears.scad>
|
include <MCAD/involute_gears.scad>
|
||||||
|
|
||||||
module cyclone_rod_z_gear(with_extra_parts=false, exploded=false) {
|
|
||||||
|
|
||||||
M8_nut_diameter = 15.3;
|
M8_nut_diameter = 15.3;
|
||||||
nut_separation = 3;
|
nut_separation = 5;
|
||||||
|
|
||||||
|
SmallGear_N_Teeth = 15;
|
||||||
|
M8_rod_diam = 8.4;
|
||||||
|
|
||||||
|
// Increase the resolution of default shapes
|
||||||
|
$fa = 5; // Minimum angle for fragments [degrees]
|
||||||
|
$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=200;
|
twist=100;
|
||||||
height=10;
|
height=10;
|
||||||
pressure_angle=30;
|
pressure_angle=30;
|
||||||
|
|
||||||
gear(
|
diam = teeth*2;
|
||||||
number_of_teeth=teeth,
|
|
||||||
circular_pitch=320,
|
|
||||||
pressure_angle=pressure_angle,
|
|
||||||
clearance = 0.2,
|
|
||||||
gear_thickness = height/2,
|
|
||||||
rim_thickness = height/2,
|
|
||||||
rim_width = 1,
|
|
||||||
hub_thickness = height/2,
|
|
||||||
hub_diameter=1,
|
|
||||||
bore_diameter=shaft,
|
|
||||||
circles=circles,
|
|
||||||
twist=twist/teeth
|
|
||||||
);
|
|
||||||
|
|
||||||
mirror( [0,0,1] )
|
truncation_length = 3;
|
||||||
|
truncation_height = height/3;
|
||||||
|
|
||||||
|
module myGear() {
|
||||||
|
difference() {
|
||||||
gear(
|
gear(
|
||||||
number_of_teeth=teeth,
|
number_of_teeth=teeth,
|
||||||
circular_pitch=320,
|
circular_pitch=320,
|
||||||
|
@ -77,37 +69,31 @@ module herringbone_gear( teeth=12, circles=0, shaft=5 ) {
|
||||||
circles=circles,
|
circles=circles,
|
||||||
twist=twist/teeth
|
twist=twist/teeth
|
||||||
);
|
);
|
||||||
|
mirror([0,0,1]) translate([0,0,-height/2-0.01]) {
|
||||||
|
difference() {
|
||||||
|
cylinder(r=diam/2+1, h=truncation_height);
|
||||||
|
translate([0,0,-0.01])
|
||||||
|
cylinder(r1=diam/2-truncation_length, r2=diam/2, h=truncation_height+0.02);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
myGear();
|
||||||
|
mirror( [0,0,1] )
|
||||||
|
myGear();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
module cyclone_rod_gear(with_extra_parts=false, exploded=false) {
|
||||||
// Extruder Gear
|
// Extruder Gear
|
||||||
difference() {
|
difference() {
|
||||||
union() {
|
union() {
|
||||||
//gear
|
//gear
|
||||||
rotate([180,0,0]) herringbone_gear( teeth=15, circles=0, shaft=8.5, $fn=40 );
|
rotate([180,0,0]) herringbone_gear( teeth=SmallGear_N_Teeth, circles=0, shaft=M8_rod_diam);
|
||||||
|
|
||||||
//M8 hobbed bolt head fit washer
|
|
||||||
/*difference() {
|
|
||||||
translate( [0, 0, 5] ) cylinder( r=8, h=3, $fn=60 );
|
|
||||||
translate( [0, 0, 5-0.01] ) cylinder( r=M8_nut_diameter/2, h=7, $fn=6 );
|
|
||||||
}*/
|
|
||||||
/*rotate([180,0,0]) difference() {
|
|
||||||
translate( [0, 0, 5] ) cylinder( r=13, h=3, $fn=60 );
|
|
||||||
translate( [0, 0, 5+0.4] ) cylinder( r=M8_nut_diameter/2, h=7, $fn=6 );
|
|
||||||
}*/
|
|
||||||
}
|
}
|
||||||
|
|
||||||
translate( [0, 0, (nut_separation/2)] ) cylinder( r=M8_nut_diameter/2, h=7, $fn=6 );
|
translate( [0, 0, (nut_separation/2)] ) cylinder( r=M8_nut_diameter/2, h=7, $fn=6 );
|
||||||
}
|
}
|
||||||
|
|
||||||
if(with_extra_parts)
|
|
||||||
cyclone_rod_z_gear_extras(exploded_distance = (exploded ?8:0));
|
|
||||||
|
|
||||||
module cyclone_rod_z_gear_extras(exploded_distance=false) {
|
|
||||||
echo("Non-Plastic Parts, 2, Nut M8 for rod_gear");
|
|
||||||
translate([0,0,0.8*8+nut_separation/2+exploded_distance]) rotate([180,0,0]) color(Steel) flat_nut(8);
|
|
||||||
translate([0,0,-0.8*8-10/2-exploded_distance]) rotate([0,0,0]) color(Steel) flat_nut(8);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
cyclone_rod_z_gear();
|
cyclone_rod_gear();
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -178,15 +178,15 @@ module stepperMotor(screwHeight=10, renderPart=false, echoPart=false) {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
module motorGear(r=30,renderPart=false, echoPart=false) {
|
module motorGear(r=30,h=10,renderPart=false, echoPart=false) {
|
||||||
renderStandardPart(renderPart)
|
renderStandardPart(renderPart)
|
||||||
color("lightgreen") cylinder(r=r,h=10)
|
color("lightgreen") cylinder(r=r,h=h)
|
||||||
if(echoPart) echo(str("BOM: Gear. Motor."));
|
if(echoPart) echo(str("BOM: Gear. Motor."));
|
||||||
}
|
}
|
||||||
|
|
||||||
module rodGear(r=30,renderPart=false, echoPart=false) {
|
module rodGear(r=30,h=10,renderPart=false, echoPart=false) {
|
||||||
renderStandardPart(renderPart)
|
renderStandardPart(renderPart)
|
||||||
color("lightgreen") cylinder(r=r,h=10)
|
color("lightgreen") cylinder(r=r,h=h)
|
||||||
if(echoPart) echo(str("BOM: Gear. Rod."));
|
if(echoPart) echo(str("BOM: Gear. Rod."));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue