Machsupport Forum

Mach Discussion => General Mach Discussion => Topic started by: Markiewicz55 on November 17, 2013, 02:07:40 PM

Title: Engine Cam Grinding
Post by: Markiewicz55 on November 17, 2013, 02:07:40 PM
Hi Guys,

I was looking for thoughts on a concept of a cnc cam grinder.  The purpose would be for small engines but the concept would be universal to cam grinding.

I would like to make a two axis machine.  One axis would be a rotary the other would be Y (I think) that would move in and out on a plane parallel to the base of the grinder.  I am picturing about an 8in wheel.  The cam would be held parallel to the ground by  a rotating collet driven by the rotary servo on one side and a live center on the other.

The rotary axis would be servo driven with an encoder and have high resolution.  The Y axis would be driven linear slide supported and ballscrew driven in and out with a servo also.  By design this would be made to be very accurate and rigid.

The rotary axis would turn like a 4th axis in degrees at a relatively slow speed.  The Y axis would then move in and out to replicate the cam profile.

This is the concept.  I am open for other ideas.  I have a cnc converted Bridgeport that I could put the cam in vertically and use a grinding wheel to go around the profile but my mill can only hold +/-.0005 and this would not be good enough for performance cams.

The problem I have is generating the code for the machine.  It would be easy if the cam was vertical and the table moved in both axis's around the cam like described with cutting it in a bridgeport.  I feel this way looses too much rigidity.  Though this way it could use x and y or polar cooridence.

In this case though I don't know how to generate the code to have the rotary axis in degree's and the Y axis in inches and then output the code to Mach.  This is virtually a cnc lathe that has the ability to cut eccentrics.  Don't know much about cnc lathes, maybe most do this??? Maybe none do.


Title: Re: Engine Cam Grinding
Post by: BR549 on November 17, 2013, 02:50:51 PM
Hiya Bobby,  Making the  hardware is simple you just create as you described. I have already did that years ago.

The problem is in generating the Gcode as you cannot simply translate the design . The problem lies in the contact point of the wheel and the lobe is a constantly changing point as the lobe rotates. It also changes with the wear and trueing of the wheel as the diameter changes.

I had this working fairly well in Sheetcam with Les's help on the post. The math is VERY complicated to do on the fly as you have to handle a LARGE number of points per rev and recalculate each rev to comp for the cut. Doing it in Sheetcam you create the path using an offset the diameter of the wheel. Then convert the path to Gcode. Scam does all the hard work that way.  Then I setup the Grinding as PAIRS of lobes and flip flop between the 2 each pass as to equalize wear and HEAT buildup as you grind. Ran the code as a sub and USE scaling the axis to grinded from a blank to the finish lobe.

The lobe will ONLY be accurate at the finished base circle as that was where the Geometry is calculated from.

I would consider at LEAST a 12"wheel minimum to lessen the wear effect of grinding .

The big boys on the block  Landis and okuma have the CPU Horsepower to do it on the fly.

Sherline used to have a CNC cam grinder for modelers. Can't say how accurate their math is but the process works.

Just a thought, (;-) TP
Title: Re: Engine Cam Grinding
Post by: BR549 on November 17, 2013, 07:13:01 PM
Here is a tool path generated to do a single cylinder 2 lobe cam in mach3. You can see the crossover moves between the lobes each pass.

(;-) TP
Title: Re: Engine Cam Grinding
Post by: Markiewicz55 on November 17, 2013, 10:09:23 PM
Hi Terry, I was hoping you would speak up on this.  I read some of your previous posts on what you had to say, figured the engine in the title would suck you in.....LOL.

I have to look closer at the wheel to cam interface and how much it changes with the angle of the lobe as it rotates.  Didn't really think of that.  I will lay it out it cad.  It seems the bigger the wheel the worse this would be.

What did you use to measure the cams?  I was hoping to use the stand to measure the cams with a linear sensor and at least dublicate lobes.

I could write the software myself but would much rather use Mach for its proven motion control.  So sheet cam was able to generate the code for you?  Including the rotary axis?  Did you generate the code off of a dxf?  Maybe you could PM me and we could discuss this.  Thanks.....
Title: Re: Engine Cam Grinding
Post by: BR549 on November 17, 2013, 11:38:29 PM
Here is a simple drawing that shows the relationship of contact around the lobe.

IF you are going to measure for duplication. You either have to use the follower shape or do a 3 part conversion to a grinding solution.

If you use a linear indicater with a point to measure the points then convert to a running contour based on follower type Then convert that to a grinding solution based on wheel diameter.

I have a the math solutions for each if you need to see it.

(;-) TP
Title: Re: Engine Cam Grinding
Post by: BR549 on November 17, 2013, 11:51:17 PM
What I did to make it simple was to probe the lobe in the 4th axis using a flat follower shape on the probe that is the same size as a lifter face then it directly translates it into a work profile. What the engine sees.

Then second idea was to probe the lobe directly with a radius shape the same radius as the grinder wheel. That gives a direct grinding solution as a point cloud. Then I converted the points into Gcode to run on the machine.

TO make it easy when grinding time I used axis scalling to start out bigger than the contour and grind down the blank until I get back to 1:1 .

To create the blank profile I just probed the lobe using a flat disc the same diameter as the end mill (1") then milled it into rough shape close to net size. then grind the finish profile. It saved a LOT of grinding

Later on after roughing to near net shape I cut slots in the lobe then slot welded with hardface then Ground to finish contour. Or you can just flame harden before grinding.

(;-) TP
Title: Re: Engine Cam Grinding
Post by: Markiewicz55 on November 18, 2013, 10:14:18 AM
Great information.  The measurement probe the same radius as the grinding wheel is what I also came up with for a easy solution also.  If you have the formula for the follower calculation I would love to see it.  I have some text books with the information but if you  had a formula that worked for you that would be great. 

I can write a program in Labview to use the encoder of the rotary axis to get my degree's and then measure with a very high resolution linear displacement sensor to get the lift at the given points.  So if I had a 2000pulse/rev or more output on my encoder (with gear reduction) and took a linear measurement at every point I could get a pretty accurate profile.

I could then use this program to replicate the profile but I worry about the smoothness of the servo control.  At 2000+ points I don't know if it matters as long as I hit the points the interpolation between them may not matter much.

Was sheet cam able to generate the G code for you? Do you have any details on that?
Title: Re: Engine Cam Grinding
Post by: BR549 on November 18, 2013, 11:23:54 AM
I will have to dig it all out again, If I can find it all. I take it your servo only has a 500 count encoder. You may want to consider gearing it to the 4th axis say 2:1 or maybe 3:1.

(;-) TP
Title: Re: Engine Cam Grinding
Post by: magicniner on November 19, 2013, 04:25:16 AM
I was interested by the issues raised in this thread so I've had a quick play in BobCad/Cam 4 Axis Standard using an elipse as a test shape and it appears possible to calculate the required path by defining a ball (lollipop) cutter of the required diameter, (I tested with 500mm) and selecting a small enough slice of the work to create just one path around it.
There are no X or Y moves in the generated code, just A and Z.

( (

Initially somewhat counter-intuitive to see a non-eliptical path generating an eliptical workpiece!
Presumably most 4 Axis Cam software will allow something similar provided ball end cutters of a large enough diameter are supported,