Here is a GREAT video from CNC router parts!
Solved! Go to Solution.
Solved by xander.luciano. Go to Solution.
Nice find Al! That's a great example where smoothing can make a dramatic improvement!
Some things to note about smoothing:
Smoothing works best when the Tolerance is equal or greater than the Smoothing tolerance.
The more accurate the data sent to the Smoothing "filter" the better job it does – up to a point.
A good rule is to set the cut Tolerance between 1 to 4 times greater than the Smoothing tolerance.
Here's a table showing how sometimes a tighter tolerance can actually be better than too loose of a tolerance. The video recommends setting the tolerance to 0.001" which is probably a good starting point for routers and large parts.
Another thing to note about smoothing is that it doesn't work on non planar movements. So using smoothing on a scalloping operation won't make much difference because the 3D surface will have few linear movements on the XY/XZ/YZ planes.
3D parallel and 3D contour, however, usually create toolpaths that can be smoothed because they will have linear movements that are on the XY/XZ/YZ planes. If you find a control suffering from "data starvation" using scallop, spiral, radial, a better option would be to remove as much material as you can with parallel and contour + smoothing.
NexGenCAM has a good writeup on tolerances and smoothing - and is where I shamelessly stole that table from.
https://www.nexgencam.com/hsm-tips-tricks/item/understanding-cut-and-smoothing-tolerances
Best,
Xander Luciano
@xander.luciano @al.whatmough When I started using Fusion something I found odd about the smoothing tolerance is it defaults to 10x smaller than the op tolerance. I've used several CAM programs before Fusion and they all recommended the smoothing to be set similar to Xande's chart.
If you right click the smoothing input field and select Edit Expression the default is tolerance * 0.1, this seems a bit odd, is there a reason. I've change mine to tolerance * 1.5 and just adjust the op tolerance depending on the size of part and accuracy required.
Mark
Mark Hughes
Owner, Hughes Tooling
Did you find this post helpful? Feel free to Like this post.
Did your question get successfully answered? Then click on the ACCEPT SOLUTION button.
On a related note; Is there ever a time you DON'T want smoothing? I understand that there are times where it simply does nothing, due to the toolpath choice, but is it at all harmful or inappropriate to simply have it active all the time? I suppose if you were actually looking for the faceted face, would be one example...
@HughesTooling
Well that is a very good question and just led me to discover a few interesting things about the default settings! So check this out, the expression for smoothing for 2D contour is just tolerance
So scratched my head for a little bit trying to figure out why ours were different when I realized that you were looking at adaptive. Ad adaptive is in fact 0.1 * tolerance
Which then led me to realize, that for 2D adaptive and pocketing, the tolerance is .004, while the tolerance for 2D contour is .0004 - 10 times smaller than adaptive or pocketing.
In order for these operations to all have the same default smoothing value, the expression for adaptive and pocketing needed to be reduced by 10. Which directly contradicts what the above information says about being 1 to 4 times greater. For 2D adaptive and pocketing, the tolerance is 10 times greater than the smoothing value.
Question now is, why is the adaptive and pocketing tolerance so loose? Quickly looking through a few other operations, the rest of them seem to be .0004" tolerance by default except for 2D and 3D adaptive and pocketing. This could be because they are considered roughing operations and having a tighter tolerance would cause longer toolpath generation times?
@LibertyMachine I'm trying to think of a reason not to use smoothing and all I can think of is that you'll have .0004" more tolerance? Can't really think of another reason right now though.
At any rate, it's super late in my timezone - I may be missing something obvious right now so I'll come back to this tomorrow.
Thanks guys!
Xander Luciano
I did come across a problem the other day, I was using the waterjet op to produce a program for my wire eroder and found smoothing messed up the toolpath. 2D ops made from just lines and arcs will produce lines and arc and don't need smoothing, the exception would be adaptive. If any errors creep in with an adaptive cut it shouldn't matter as it's not a finishing op.
Here's the smoothing problem path, with smoothing off the path was perfect.
Mark
Mark Hughes
Owner, Hughes Tooling
Did you find this post helpful? Feel free to Like this post.
Did your question get successfully answered? Then click on the ACCEPT SOLUTION button.
@xander.luciano wrote:
@HughesTooling
Question now is, why is the adaptive and pocketing tolerance so loose? Quickly looking through a few other operations, the rest of them seem to be .0004" tolerance by default except for 2D and 3D adaptive and pocketing. This could be because they are considered roughing operations and having a tighter tolerance would cause longer toolpath generation times?
Thanks guys!
Xander Luciano
The reason for the loose tolerance is calculation time, it will be a lot faster set to 0.1 rather than 0.01 but one advantage of the longer calculation time is with a tolerance of 0.01 and smoothing of .015 you get a smaller program and because the toolpath's smoother you'll get better feed rates as well.
I see now it's only the pocketing op set to Tolerance * 0.1, not sure if more ops had the same in the past. It does look like the settings are aiming for 0.01mm in all the ops using the default op tolerance.
Mark
Mark Hughes
Owner, Hughes Tooling
Did you find this post helpful? Feel free to Like this post.
Did your question get successfully answered? Then click on the ACCEPT SOLUTION button.
Hey guys! This has turned into a really interesting topic and discussion!
So just a quick data drop, I'll let you guys tell me what you think of it all.
This data set shows a comparison of tolerance to smoothing ratios. Everything from smoothing = 4 * tolerance to smoothing = 0.25 * tolerance
You can see a noticeable change below 50/50 with the .500" ball endmill (diminishing returns).
Here are a few of the toolpath generation times, practically identical:
3D Adaptive with identical settings on this model - the extruded cut is made with a spline and then fillets added:
Let me know what your thoughts are on this data and if you'd like to see anything else!
Best,
Xander Luciano
how about some metric
@Steinwerks I know I was just fishing for a American bite.
but @xander.luciano chart showing metric as well would be good
Hello all, I'm back with even more data!
This time I recorded the generation time with the Task Manager inside Fusion so we could see how our changes affect the generation time. Now the Task Manager doesn't really respect the "manual start" or "1 consecutive task" options. So to be accurate, I generated each of the 13 operations 1 by 1, twice, so that each operation would have the same resources available to it. Overall, the results were consistent.
I also upgraded my excel graph making abilities to make the graphs look a little nicer, and added data labels to help compare everything a little better.
I also ran both these tests with the same exact part from the last post, so the file sizes between the last post and this one can be compared to each other.
Lastly, since I figured I might be doing more of these tests I created a CAM setup that uses the "Feed Per Tooth" value as the Total Tolerance for each operation. Each of the 13 operations uses expressions to instantly calculate new tolerance and smoothing values from the Total Tolerance value.
Here is how I currently have the CAM setup for this:
Editing 17 operations was a long process before
Ok enough of the boring stuff, let's get to the data!
0.0015" Total Tolerance | 0.500" Ball Endmill
The Results:
Raw Data:
Even with the tighter tolerance, we are still seeing a very clear decrease in file size - all the way until the 50/50 ratio! We also don't have any noticeable difference in toolpath generation time until then either! Compared to the toolpath without smoothing, there is very little noticeable difference.
Onto the next data set!
0.0015" Total Tolerance | 0.250" Ball Endmill
Is that not a perfect graph? With the .250" requiring more passes we starting seeing some really nice smoothed out data. Once again we see noticeable reductions in file size all the way to the 50/50 ratio, where we start getting diminishing returns, and increased toolpath generation time.
Again, we see a steady generation time up to the 50/50 ratio, where it then starts increasing.
Raw Data:
Let's just look at the size of that file without smoothing. Yep. 711.3kb, that is 4 times the size of the 80/20 toolpath! We're seeing a massive increase between not using smoothing and using smoothing.
Conclusion
From the original article I linked, they recommended that you have your tolerance be 1 to 4 times greater than your smoothing value. Well 1 times is the 50/50 ratio, and 4 times is the 80/20 ratio.
So my recommendation now, start with the total acceptable tolerance.
Consider the accuracy of your machine, and the tolerance requirements on your parts, and how fast your machine can process data.
Strategically create your toolpaths to take advantage of smoothing. Smoothing only works on the XY/XZ/YZ planes so do as much roughing as you can along those planes.
- Use Adaptive clearing with stock to leave. This way you can increase your Total Tolerance and use a low smoothing ratio (ex: 50/50 to 65/35 smoothing ratio)
- Use Parallel and Contour finishing strategies - they move along the XY/XZ/YZ planes by default and can take advantage of smoothing
When in doubt, using even the largest smoothing ratio will make a noticeable difference in large toolpaths such as adaptive clearing.
Lastly, I still need to look into that contouring issue, I wanted to nail down as much hard data as I could.
Thoughts on the new findings guys? What do you think of smoothing now? I'm definitely starting to understand it's effect now and getting a better feel for the cause/effect of the settings.
What else would you guys like to see now?
@Steinwerks @daniel_lyall @HughesTooling @LibertyMachine <- Hey, you changed usernames
And I'm gunna call a few other guys into this thread who I think might appreciate the info.
@RandyKopf @bmxjeff @Steven.Shaw
Also, don't be afraid to fact check me on this stuff. There is a lot of data to input and sort with these.
Thanks for the input guys!
- Xander Luciano
Good stuff @xander.luciano!
I'm curious on the findings of the 2D Contour. The only reason I've ever turned it on; At my last job, I made a quick program for someone on the Proto-Trak. It was a simple part with a male hex on one side of it. 3 of the legs of the hex was generating 2 XY moves to complete the feature. The other three legs were completing it in one XY move. Turning on smoothing made it a one-line move. The Proto was having an issue with the break in the line
see what morph spiral does I use it a lot. I don't like parallel
Smoothing doesn't work so well with 3d toolpaths like scallop and morphed spiral. I have an old Heidenhain control and can't get decent feed rates with either of those toolpaths, I stick to parallel and contour. In the past using other CAM programs there would always be a noticeable edge between the 2 toolpaths, I figured it was down to the 2 different strategies calculating slightly different data. With Fusion I can barely see the join, hardly need to polish my copper and graphite electrodes now.
Mark
Mark Hughes
Owner, Hughes Tooling
Did you find this post helpful? Feel free to Like this post.
Did your question get successfully answered? Then click on the ACCEPT SOLUTION button.
Routing is a bit different I suppose.
The reason i don't like useing parallel is when mach3 does a direction change greater than 90 it goes a bit wonkey, a 3D toolpath can have noticeable edges where it is meant to be smooth when doing a 180 direction change, if I have it going around in a arc it is noticeable how much better it is.
I have to use parallel sometimes.
but over all the fusion toolpaths useing smoothing and feed optimization makes a massive differences to the quality of a cut, even just doing a contour with smoothing and feed optimization where there is a 90 degree corner it just works well, and the cut time is less with more lines of code than the old cam program I use.
A mill useing Mach3 would have the same improvements as well.
if I can get a smoothing setting where it still works well and reduces the amount of code that will be good as well.
@xander.luciano go play with the router at per9 see what you can come up with.
Machine both ways doesn't give good finishes on copper or graphite, doesn't help that my max spindle speed is 4000 rpm. On the part below I used 3d contour using slope set to 30°-90° then climb mill with parallel, slope set to 0°-40°. The parallel has vertical lead rads and the join between the toolpaths was barely visible. The feed rates with scallop were down to 150mm per min because smoothing doesn't help much when all three axis are moving at the same time.
Mark
Mark Hughes
Owner, Hughes Tooling
Did you find this post helpful? Feel free to Like this post.
Did your question get successfully answered? Then click on the ACCEPT SOLUTION button.
@xander.luciano Thank you for the inclusion on this thread. Clearly the smart people on this forum are in this mix, not counting me, I'm just complimenting the others I see here that engage the CAM forum here daily. Xander the work you've done here to input and analyze data is impressive and if you worked at my company in continuous improvement it would be expected haha! But the data is intriguing. To me the big take away is to create operations as templates that have optimal settings already defined.
For those that don't know me I've been in the CAD/CAM/CNC scene since 1986 selling and using the tech. And a journeyman mold maker and machinist it's not a boast it's just a way to say I have seen so much change over the years. And I greatly respect technology and more importantly those of you here that are exploiting the emerging Fusion 360 knowledge. And this is a fantastic place to be for CAD/CAM/CNC Solutions. Sincerely kudos to all of you.
To me there are 2 distinct times to consider using smoothing.
And there is one other factor of a type of smoothing that is related but not mentioned in this dialog.
Control limitations
A few reasons why you might want to use smoothing is on a control like the Pocket NC. It has a limit on how big a file can be. While it is a cool 5 Axis mill the file size is limited due to Beagle Bone Blank to 25mgs. So the work you've shown here likely will make a difference in more complex parts on the Pocket NC thank you!
Smoothing mostly benefits a finish profile.
It takes time to setup optimal smoothing. And using it with a roughing strategy may only be worth it for a high production based program.
Over many years the meta of what is considered optimal tool path has changed. High speed machining with constant load tool paths are typical now with morphed spiral etc. Yet these are still roughing strategies. They don't alter the final shape. As a rough tool path they create tons of point to point code. If you have no limits on memory on a control who cares unless the control can't read ahead fast enough aka code starving. And a finish profile is already defined as it was authored in CAD. Consider the PACMAN example would not benefited from smoothing of the large circular contour already was a true circle.
Variable feed rate optimization.
The other area that has potential equally beneficial with respect to optimization... is not just smoothing but "feed optimization". Programs like Vericut have modules like Optipath that post process the G-Code that is recalculate the feed rates based on change in profiles from constant feed to a variable feed rate optimization aka constant load. That module looks ahead are considers change in load on a contour as an opportunity accelerate feeds when possible and slow down when it makes sense. Yet constant feed output has been the meta. So this is an area that deserves equal attention just saying.
One immediate reason not to use this is for most basic parts prismatic parts you won't see any benefit. That is if the part is already made up of square pockets and radius smoothing can't improve what is already simple. But if you already had it set up in a template and used morph spiral as @daniel_lyall suggest then it's automatic. If it applies you reap the benefit and don't even need to consider it.
You make some great points having a few of older machines myself and I cut many electrodes Like on your copper graphite example it makes perfect sense to make the 2D cuts where possible and do only 3D contouring where needed. That is especially true on older machines.
Well that is my 2 cents.
Randy Kopf
http://desktopartisan.blogspot.com/
Can't find what you're looking for? Ask the community or share your knowledge.