Cycloid Gear Library by mechadense 3d model
3dmdb logo
Thingiverse
Cycloid Gear Library by mechadense

Cycloid Gear Library by mechadense

by Thingiverse
Last crawled date: 3 years, 1 month ago
This is a minimal library for the generation of cycloidical gears.
Some demo functions are included.
required: OpenSCAD version >= 2015.03 !!MOST CURRENT VERSION HERE:https://github.com/mechadense/scad-lib-cyclogearprofiles
(old link) https://github.com/lsuess/scad-lib-cyclogearprofiles
usage: ...use // include would execute the demo modules
To get a crosssection of the desired gear invoke:cyclogearprofile(rtooth,nteeth,vpt,verbouse);
parameters:
rtooth ... radius of gear teeth
nteeth ... number of gear teeth
vtp ... optional parameter -- vertices per tooth -- if left 0 (this is default) OpenSCADs resolution parameters $fa $fs or $fn will be applied.
verbouse ... optional parameter -- If this is set bigger than zero then info about that gear will be reported under the choosen number.
To get a cross section of a rack invoke:cyclorackprofile(trackmin,rtooth,nteeth,teethshift0,vpt=0)
trackmin ... thickness of rack at the thinnest points
rtooth ... "radius" of gear teeth
nteeth ... numbers of teeth of rack (smallest allowed unit is a quater of a full tooth cycle)
teethshift0 ... at which quater to begin with the first tooth sensible are valued from the list: {-0.75,-0.5,0,+0.5,+0.75} all others have same effect
vpt ...same as for cyclogearprofile
Alignment helper functions:
There are two helper functions to align gears. One for normal meshing an one for the case that one gear has the teeth inside (a concave gear) such that both gears turn in the same direction.alpha2(n1,n2,alpha1,beta12) // for normal meshingalpha2inroll(n1,n2,alpha1,beta12) // for gears rolling inside concave gears
parameters:
_1 ... gear in origin; _2 ... meshed gear
beta12 ... angle at which the meshed gear is located
nX ... number of teeth of gear X
alphaX ... rotation angle of gear X around its own origin
Extrusion helper functions:
If you want to make herringbone gears use this helper function.twistextrudegear(rtooth,nteeth,slant,nteethtwist) your_modified_cyclogearprofile(...);
The generated extrusion height (for nteethtwist=1) can be obtained with this helper function:extrudeheight1tooth(r,n,slantangle)
To twist over the angle of multiple teeth use nteethtwist > 1 & multiply nteethtwist to the return value of extrudeheight1tooth.
Further notes:
The rolling radius of a cycloidical gear is two times the tooth number times the tooth radius. A helper function can be used to make code more self explanatory:rollingradius(rtooth,nteeth)
for cycloidical gears to mesh they need equal tooth radius
I'd recommend to make herringbone gears instead of straight ones since staight cycloidical gears have varying axial force due to an osillating attack angle which can lead to bad vibrations under load.

Tags