Exporting CAD-Drawn Curves to CNC Software

Considerations on the problem of getting CNC software to understand curved paths (ellipses, splines, arcs, and so forth). July 29, 2007

Question
The work we do involves having parts or templates run on CNC with many curved segments that are off-sets from ellipses or splines. I send out DXF files to a shop using Artcam. The odd curves are a challenge for them to consolidate into a functional toolpath configuration. Sometimes their import of one of my files generates wild combinations of circles, etc. As a result they have to spend quite a bit of time clipping, editing, etc. This increases the likelihood of an error in the machining. Does anyone have any suggestions for simplifying the process? Are there any utilities that I might run to simplify their set-up?

Forum Responses
(CAD Forum)
From contributor A:
My experience:
1. Don’t use splines. CNC equipment likes "clearly definable geometry". Read: lines and arcs.
2. Don’t use true ellipses. Instead set PELLIPSE=1. It will approximate an ellipse with arcs. (I'm assuming you are autocad based)



From contributor B:
I agree with contributor A, that is what I do. Splines and the true ellipses are a pain to deal with. I end up redrawing everything that has them that needs to go to the CNC. I do have some Signlab software that will convert splines and ellipses to lines and arcs but the results are inconsistent. I usually end up with a lot of lines on top lines when I convert and still have to edit the drawing.

It seems to me that you should be asking this question to the shop you send the files to. They should know what they can work with the best. Maybe someone else knows of another program that will translate the files better or has some that will handle the splines but I have never used one that does.



From contributor C:
Why don't you use the post table in Art Cam to send them the nc file ready to go? If you are not versed in CNC function it would not hurt to learn a little to help bridge the gap. If this is not possible find someone who has Art Cam, and a machine on the list of posts to take in your Art Cam file and they can Cam path the data themselves. I do this every day, no problems ever. I also have had problems taking DWG into Art Cam from other programs and getting clean geometry. I believe it to be a very similar issue to what you describe. The complexity of splines causes problems going between programs.


From the original questioner:
Thanks everyone for your responses. The pellipse=1 will likely prove very helpful.

To contributor C: I'm saying this prior to speaking with my CNC provider - what is the post table? Is this a free utility program?



From contributor B:
A post is the file that will translate a drawing into (G & M code) machine specific code - no help to you. That is what all cam programs use. I looked at your website and now understand why you use splines and ellipses (you do nice work) and it looks like fun. The pellipse=1 will definitely help them out.


From contributor C:
Since you have a Cam package I am using the assumption you would like to use it as it was intended. The post table is a list of +/-150 machine controllers your Art Cam software will write a post to. It is already there for you, not an extra charge like the others sold specifically to one machine.

With what you currently have I am giving you the best direction to begin with. I can both write code by hand and Cam post. The second being the best and easiest for complex parts especially with splines and curves. While contributor B is not incorrect, he is giving you the long way around the mountain. He is more than likely going off old experience with Cam packages that did not perform as billed. The newer packages have gotten much better and I think Art Cam leads the crowd. I very seldom need to edit a post to get better optimization. The only way I would suggest the old school method would be if you are producing 5000 of the same rail over and over, and even then I would personally not hand write any more. I encourage you to get properly trained with the fantastic tool you have and see what it can do.

By the way, the reason I know the posts are good is I have done it over and over without issue. The post does not necessarily write a spline as a spline in nc. The software has settings to "approximate" the complex geometric shapes within X - X being as small as 1 thousandth.



From contributor C:
You may need to draw in Art Cam or another program that sends out good DXF info. ACad does not as I have the same problems. DXF tends to be better than DWG but still not great from Acad. There may exist a better utility program to take DWG to DXF first then send out for CAM pathing. If this exists please let us all know. About 1/3 of my business involves dealing with this same issue.


From contributor B:
I just learned a new trick. Save your files as a R12 DXF and it will convert all splines and ellipses into polylines. I haven’t tried to make a program with the geometry so I’m not sure how well it will work for you but it looks promising.


From contributor D:
I have done like you mention and yes, it did turn my spline into a polyline but Microvellum still could not add machining to it.


From contributor E:
Saving as an r12 DXF may have changed the spline to a 3d polyline. Instead of saving as an r12 DXF use the flatten command on the spline - this should give you a polyline or a 2d polyline.


From contributor B:
Saving as an r12 DXF did turn the splines into 3d polylines but my cam software has no problems with it. I did try the flatten command and it turns the splines into hundreds of polyline segments that are not connected.


From contributor E:
I tried it here and the flatten command worked fine, and Microvellum would add machining to it, but would not if it was a 3d poly. The only thing I can think of with the unconnected splines is possibly the version of Acad. I think the flatten command is an express tool, and you may be able to update it without updating ACAD (if that is the problem).


From contributor F:

Try the flatten objects command - it will convert splines and ellipse into polylines, under express tools.