jnweiger / inkscape-gears-dev

Enhanced version of the well known gears extension, allows spokes, center cross, metric module, best evolute shape ...
52 stars 15 forks source link

The rack #6

Closed Neon22 closed 10 years ago

Neon22 commented 10 years ago

The rack plugin was a simple linear ramp and not involutes on an infinite radius sphere. Also calc is not right for tooth width. Seems like the math would simplify with an infinite radius sphere...? [later] Haha - it does simplify to a linear ramp :) Found a gear theory pd here: http://www.micro-machine-shop.com/gear_theory.pdf and it says that involute racks have straight sides. So if we can just get the pitch calc right and make teeth the right size - we're done.

[later] Well almost done the bottom of the tooth should be curved - stronger I guess. Any ideas on that ? Should we add as an option to have curve or straight bottom ?

jnweiger commented 10 years ago

Curved bottoms also apply to other gear. We currently have sharp corners where the involute intersects the bottom radius. Mechanical robustness could actually increase, if we cut away some more material to create rounded corners instead of sharp corners. I'd file all this under cosmetic enhancements.

Boston gear don't show a flat bottom with small radii on their rack gears, they rather show one radius connecting neighbouring teeth. That is quite common.

All in all this is now two options. One for makeing a completely curved bottom, one to add small radii.

Neon22 commented 10 years ago

check the link in profile shifting issue. I think it has equations for this to do with sweeping. Its especially noticeable that the curved section is different when the teeth undercut.

Neon22 commented 10 years ago

I now have the rack gear code making teeth the right width but the height is wrong...

jnweiger commented 10 years ago

Height should be twice the addendum+ some safety margin.

I've added a meshing guide with commit 0e2b585. Proper tooth geometry still tbd.

Neon22 commented 10 years ago

What I wasn't sure about was my use of the tooth distance. I assume this is the width of the tooth on the pitch circle.

I'm not certain I'm using it at that correct pitch circle (as projected to inifinite diameter). So the height thing seems to me to be critical (above and below this pitch diameter height) to get proper meshing of gears. It might 'look' OK but will the teeth mesh properly...

In this image - I have copied the rack and inverted it - which shows pitch circle is exactly in middle of teeth. Image also shows the meshed gear interesecting - which isn't exact. (I should probably make lines very thin). But leads me to believe clearance should be on bottom of rack teeth and that pitch circle is not in right place (or teeth not right width ?) Ideas ?? new document 1 - inkscape_000016 I used 34 teeth module=1.0 (and yes pitch circle diameter is now correct :) )

jnweiger commented 10 years ago

Your drawing does not look so good to me. The rack's teeth hit the gear quite hard in the circled areas. 69bbb47e-b88c-11e3-83e4-9266fc410e9e_jw

Neon22 commented 10 years ago

That's exactly what I mean. Note that the two pitch circle lines aren't yet touching. If they did touch then the interpenetration would be worse. So I suspect that - the rack's pitch circle line is not in right place, and/or there should be more clearance at the bottom of the rack teeth, or ...?

jnweiger commented 10 years ago

Mystery solved: The rack gear ist not entirely trapezoid. The lower half of the teeth, below the meshing line is trapezoid, the upper half of the teeth should be an evolute. An evolute that depends on the meshing gear. That is ugly. Maybe we should cut away everything above the meshing line? The 5-teeth spur gear below shows the issue quite well.

rack_gears_meshing

Neon22 commented 10 years ago

Hmmm. so we need to draw the rack tooth as an involute proper then.. no shortcuts :) so is it easy to calculate that curve - now that it's on a circle of infinite radius?

jnweiger commented 10 years ago

I am short on good references on this issue. The ones I found workaround the issue

We should at least offer an option to cut back the teeth. Correction: Above I assumed "the upper half of the teeth should be an evolute" -- Not so sure about that any more:

It scares me to special case the rack. Running a 7-teeth pinion against a 1000-teeth wheel both with proper involute profile for sure shows the same issues as running the 7-teeth pinion against a rack. extreme_gears_meshing

This reference indicates, that we indeed have an issue with undercut on the small gears: http://hessmer.org/gears/InvoluteSpurGearBuilder.html rack_gear_undercut

Neon22 commented 10 years ago

Yes. Undercut on low teeth count gears seems very much a problem. Mathias refers to it in his video.

also maths for undercut (and rack) to be found in this doc IIRC.

All references I can find suggest the rack is correct as a ramp. This suggests problem is really to do with undercuts. see the pdf above. pgs 602 to 613 covers all this. It notes that doing the profile shift is the simple wayto eliminate undercutting. Its good to have a choice though and calc the undercut - although the gears are weaker they look more interesting :)

Neon22 commented 10 years ago

The reference on Hessmer's page is very good also. http://lcamtuf.coredump.cx/gcnc/ch6/#6.2

jnweiger commented 10 years ago

Same conclusion here. I also believe the correct is a straight ramp. The issue is Undercut, which can be perfectly eliminated by keeping pitch-angle, tooth-count (and profile-shift) well balanced. Any one of the three can be used to avoid undercut while the other two remain fixed. That is nice. I'll add a warning popup with proper instructions.

jnweiger commented 10 years ago

Thanks for putting this on the rails!