cam groove

Post here for help on using FreeCAD's graphical user interface (GUI).
Forum rules
and Helpful information
IMPORTANT: Please click here and read this first, before asking for help

Also, be nice to others! Read the FreeCAD code of conduct!
UR_
Veteran
Posts: 1355
Joined: Tue Jan 03, 2017 8:42 pm

Re: cam groove

Post by UR_ »

emills2 wrote: Tue Jul 17, 2018 4:40 am ... do you have any reason to believe it isn't? ...
Sorry for the late reply!

And yes i have a reason to believe it's only half the truth :(

I'm pretty sure, using PartWB:2D-Offset to get groove's width is the right way.
But PartWB:3D-Offset to make groove's depth is not correct :( ,because groove's width get smaller and smaller the deeper you make it.
This can be easily seen on veritcal or near vertical portions of cam roller path.

Now i'm thinking about a script, using PartWB:sweep with many profiles.
Every profile is adjusted to roller path tangent and against to Frenet not to roller path normal, but to cylinder's face normal.
Hopefully, we get a correct torsion.
oldmachine
Posts: 243
Joined: Wed May 31, 2017 11:49 pm

Re: cam groove

Post by oldmachine »

Printed my Cam_3Da model (split into halves to print without using supports in the groove’s overhang). Tweaked the groove curve for a straight line.

Made a Follower/Holder and put it on the lathe…
MAC OSX Sierra
3D Parts & Links (made using FreeCad and Solidworks): https://www.thingiverse.com/Still_Breathing/designs
Android App & Links: https://play.google.com/store/apps/deta ... .bestknots
freedman
Veteran
Posts: 3465
Joined: Thu Mar 22, 2018 3:02 am
Location: Washington State, USA

Re: cam groove

Post by freedman »

Put a broach cutter on there and you can cut slots. :P
TheMarkster
Veteran
Posts: 5512
Joined: Thu Apr 05, 2018 1:53 am

Re: cam groove

Post by TheMarkster »

New version of FC Cam Groover (v2018.07.18) using a new strategy for creating the 2nd bspline. Should result in more uniformly sized grooves.

The new strategy is to:

Create the original bspline as before, using the parametric curve macro.

Create a draft circle object of radius equal to desired groove width.

Create a draft path array object based the circle, using the bspline as the path, with align=true. (This puts the center of each circle in the array on the bspline.

The circle is rotated 90 degrees about the x axis such that the selectable point is more or less directly above (in the z direction) the original bspline.

Then a python loop is used to select all of these points and place them into a list of points, which is then used to create a new bspline. Since all the points used are precisely the circle's radius distance from the original bspline, this should result in a groove that is uniformly sized. (The former technique was to simply move a copy of the original bspline up in the z direction, but this was problematic as it led to non-uniformly sized grooves, as emills2 pointed out.)

Next draft scale (x=1.05,y=1.05,z=1.0) is used to produce the other 2 bsplines needed to form ruled surfaces, which later become the groove, at the appropriate radii (there is an intentional overlap to avoid tangential errors during the boolean cut operation).

Another change (in an attempt to make this more robust) is to slightly rotate the cylinder so that the line on the edge doesn't line up with the line in the shape used as the cutting tool.

A new parameter has been added: precision. Default is .01, which should work for most cases, but if you have a problematic groove you can try lowering that number to increase the precision. It will require more processing time, but might produce a better output.

One happy consequence of having a precision parameter is we can now get the file size under the 1mb forum limit without removing the ruled surfaces or bsplines. The attached model was created with precision = 0.05. The circles were resized (after the fact) and positioned along the groove as a means of eyeballing the groove uniformity.
cam-groover-screenshot.png
cam-groover-screenshot.png (130.83 KiB) Viewed 817 times
Attachments
cam-groover-test.FCStd
(326.25 KiB) Downloaded 38 times
FCCamGroover.FCMacro.py
(17.81 KiB) Downloaded 40 times
User avatar
Joan
Posts: 49
Joined: Tue Nov 24, 2015 3:25 am
Location: Oz

Re: cam groove

Post by Joan »

Sorry for resurrecting such an old thread, but as the theme of roller cam gears currently appeared on my radar (and making those in A-Inventor 2019 not working as I assumed it would - the newer versions got a solid-sweep I can't use) I was wondering if there had been any (publicly available) progress on this?

I ask because I stumbled over this Youtube video from a year ago:
phpBB [video]


And then there is this, which is even more complicated to achieve from 2 years ago:
phpBB [video]


Is there a workbench/macro/workflow to make those roller cams in FC?
"Innovation makes enemies of all those who prospered under the old regime, and only lukewarm support is forthcoming from those who would prosper under the new." Nicolo Machiavelli
User avatar
Willem
Veteran
Posts: 1854
Joined: Fri Aug 12, 2016 3:27 pm
Location: Lisse, The Netherlands

Re: cam groove

Post by Willem »

For making the animation you can take also the Assembly4 workbench. Here a basis tutorial
phpBB [video]
Post Reply