FCGear: a gear generator using Bezier curves

Info about new community or project announcements, implemented features, classes, modules or APIs. Might get technical!
PLEASE DO NOT POST HELP REQUESTS OR OTHER DISCUSSIONS HERE!
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
douardda
Posts: 25
Joined: Sat Feb 15, 2014 11:22 am

Re: FCGear: a gear generator using Bezier curves

Post by douardda »

normandc wrote: Since Shaft design wizard is under a separator, shouldn't the Involute gear entry be with it rather than with the standard tools?
I agree it would make sense.

David
User avatar
NormandC
Veteran
Posts: 18589
Joined: Sat Feb 06, 2010 9:52 pm
Location: Québec, Canada

Re: FCGear: a gear generator using Bezier curves

Post by NormandC »

I would see as a big plus a gear generator in FreeCAD able to output the same kind of gears that OpenSCAD can do with some scripts. Like bevel gears, or herringbone gears used on 3D printing extruders.
User avatar
looo
Veteran
Posts: 3941
Joined: Mon Nov 11, 2013 5:29 pm

Re: FCGear: a gear generator using Bezier curves

Post by looo »

douardda
I've implemented a simple FreeCAD macro that allow to generate gears which tooth profile is an apprixmation of an involute curve using Bezier curves
I've done this too :D. At first I also took a self written Bezier-Interpolation, but then found the BSplineCurve.interpolate function which isn't so different from the bezierinterpolation...

logari
Gear teeth deform elastically. Even if a gear flanc is manufactured according to a perfect involute, when the gear operates under load, its teeth will anyway deviate from the theoretical form. Ideally one can design a gear with a flank profile originally deviating from the involute curve in unloaded state but approaching the involute curve under a certain load.
Thats a cool topic. But I also think that there should be an implementation of the standart tooth profiles for normal gears and bevelgears before the development of a tool like this starts.

jriegel
The other gear code uses a kind of cuting simulation and generate thousends of small surfaces, there fore not very usable at the moment. Your code is exactly what was needed. Good job!
The gearworkbench I was working on does only have analytic functions...
It can allready do the stuff this macro do. (+ profileshiftin + undercut + helical involute).

Maybe we can work together for further gearings...:-)

looo
User avatar
jriegel
Founder
Posts: 3369
Joined: Sun Feb 15, 2009 5:29 pm
Location: Ulm, Germany
Contact:

Re: FCGear: a gear generator using Bezier curves

Post by jriegel »

looo wrote: The gearworkbench I was working on does only have analytic functions...
It can allready do the stuff this macro do. (+ profileshiftin + undercut + helical involute).

Maybe we can work together for further gearings...:-)
That would be cool! Analytic surfaces are sure a must for a CAD system.
This is just the first inclusion, if there is more coming - great! See it as an example how a gear feature could look like ;). I also think a own workbench is a good idea if the number of features and gears is raising.

So please go ahead guys!
Stop whining - start coding!
logari81
Posts: 658
Joined: Mon Jun 14, 2010 6:00 pm

Re: FCGear: a gear generator using Bezier curves

Post by logari81 »

looo wrote: logari
Gear teeth deform elastically. Even if a gear flanc is manufactured according to a perfect involute, when the gear operates under load, its teeth will anyway deviate from the theoretical form. Ideally one can design a gear with a flank profile originally deviating from the involute curve in unloaded state but approaching the involute curve under a certain load.
Thats a cool topic. But I also think that there should be an implementation of the standart tooth profiles for normal gears and bevelgears before the development of a tool like this starts.
I totally agree. I had also created such a gear generator for ProE back in 2003. My objection is that in FC I would prefer to split this tool in too parts:

1. A function that generates a point-wise description of a halftooth profile with the required resolution as an input parameter.
2. A function that uses this pointwise description to create a full gear 2d or 3d.

Then different versions of the first function, based on either analytical curves or gear cutting simulation can be used.

Btw. cool that your module supports bevel gears.

Another observation is that the recommended in DIN 867 height parameters 1*modul and 1.25*modul are often overritten. In practice in gear design, the outer diameter is provided add an input instead of being calculated. What I consider a praxis relevant set of input paramaters for cylidrical gears is what I used in http://gggears.sourceforge.net/.
wmayer
Founder
Posts: 20300
Joined: Thu Feb 19, 2009 10:32 am
Contact:

Re: FCGear: a gear generator using Bezier curves

Post by wmayer »

But doing so crashes FreeCAD. All I get in a terminal is this:
Can you run it in the debugger so we can see where it crashes?
User avatar
looo
Veteran
Posts: 3941
Joined: Mon Nov 11, 2013 5:29 pm

Re: FCGear: a gear generator using Bezier curves

Post by looo »

logari81
I totally agree. I had also created such a gear generator for ProE back in 2003. My objection is that in FC I would prefer to split this tool in too parts:

1. A function that generates a point-wise description of a halftooth profile with the required resolution as an input parameter.
2. A function that uses this pointwise description to create a full gear 2d or 3d.
Thats a good way. I've also tried to do so, but got a bit lost in the gearjungle... Maybe a short documentation what parameters every gear needs and what can be done with analytic functions and where a cutting-tool is needed would be usefull for the programming and also for the user...
User avatar
jriegel
Founder
Posts: 3369
Joined: Sun Feb 15, 2009 5:29 pm
Location: Ulm, Germany
Contact:

Re: FCGear: a gear generator using Bezier curves

Post by jriegel »

Gear and FEM module at work:
Attachments
GearFem.png
GearFem.png (150.48 KiB) Viewed 6180 times
Stop whining - start coding!
jmaustpc
Veteran
Posts: 11207
Joined: Tue Jul 26, 2011 6:28 am
Location: Australia

Re: FCGear: a gear generator using Bezier curves

Post by jmaustpc »

Hi everyone
here are some quick ideas for gear icons.

This is the gear from the FreeCAD icon scaled and coloured.

Firstly the standard create new solid colours look like this
16px
PartDesign_Gear_1_16px.png
PartDesign_Gear_1_16px.png (826 Bytes) Viewed 6181 times
at 32px
PartDesign_Gear_1_32px.png
PartDesign_Gear_1_32px.png (1.84 KiB) Viewed 6181 times
these are the same except the stroke is black, representing a wire
at16px
PartDesign_Gear_2_16px.png
PartDesign_Gear_2_16px.png (776 Bytes) Viewed 6181 times
at 32
PartDesign_Gear_2_32px.png
PartDesign_Gear_2_32px.png (1.59 KiB) Viewed 6181 times
same as last except a thicker path (i.e. thicker black outline)
at16px
PartDesign_Gear_3_16px.png
PartDesign_Gear_3_16px.png (768 Bytes) Viewed 6181 times
at 32px
PartDesign_Gear_3_32px.png
PartDesign_Gear_3_32px.png (1.53 KiB) Viewed 6181 times
same again except even thicker
at 16px
PartDesign_Gear_4_16px.png
PartDesign_Gear_4_16px.png (702 Bytes) Viewed 6181 times

at 32px
PartDesign_Gear_4_32px.png
PartDesign_Gear_4_32px.png (1.43 KiB) Viewed 6181 times

this is the same as the last except the "fill" yellow's transparency is set to 60%
at16px
PartDesign_Gear_5_16px.png
PartDesign_Gear_5_16px.png (754 Bytes) Viewed 6181 times
at32px
PartDesign_Gear_5_32px.png
PartDesign_Gear_5_32px.png (1.74 KiB) Viewed 6181 times

all the above in SVG format, zipped up together
PartDesign_Gear_1.svg.zip
(12.82 KiB) Downloaded 193 times
I take of for a bit, so I thought I would post where I was up to above, I will be back in a few hours.

Jim
jmaustpc
Veteran
Posts: 11207
Joined: Tue Jul 26, 2011 6:28 am
Location: Australia

Re: FCGear: a gear generator using Bezier curves

Post by jmaustpc »

If the above was to be a 2d item then perhaps the 3d equivalent tool, if it were to eventuate, could have an icon more like this

This is a quick demo file, would need more work if it was to be used but you will get the idea.

at 16px
PartDesign_Gear_6_16px.png
PartDesign_Gear_6_16px.png (757 Bytes) Viewed 6173 times
at 32px
PartDesign_Gear_6_32px.png
PartDesign_Gear_6_32px.png (1.85 KiB) Viewed 6173 times
and the SVG
PartDesign_Gear_6.svg
(15.52 KiB) Downloaded 205 times
Jim
Post Reply