Determining best stepover for 3D surface

Here's the place for discussion related to CAM/CNC and the development of the Path module.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
tigermm
Posts: 49
Joined: Thu Jul 15, 2021 3:25 am

Determining best stepover for 3D surface

Post by tigermm »

Is there a way to calculate the Stepover so that all material is removed?

I'm having an issue where it's difficult to get a path that cuts right up to the vertical wall in this model.
overall.JPG
overall.JPG (39.43 KiB) Viewed 1930 times
.
I had to try a lot of different values (and wait the required calculation time) to get to this path at 12% SO, view from top.
finish.JPG
finish.JPG (41.4 KiB) Viewed 1930 times
.
Changing the SO to 13% gives a hugely different result where the part would be well and truly undersized (other path is at the 3.06 measurement, for reference)
finish 13pc SO.JPG
finish 13pc SO.JPG (37.16 KiB) Viewed 1930 times
.
My roughing pass can't quite get to that wall no matter what SO value I use, as far as I can see. This is the best I can do. Normally leaving a bit to cut with the finish pass would be fine, but the wall is 40mm high at the end and my cutter has a 25mm flute, so it can't be cut in one go.
roughing.JPG
roughing.JPG (25.17 KiB) Viewed 1930 times
.
I even made a stepover calculator (attached) to try and simplify the process, but it seems the both of my methods are incorrect.
One calculates the number of paths in the given cut width for each %SO and ranks results on how close they are to an integer value.
The other takes in a value of the number of paths, calculates %SO, and compares it to an integer value for stepover, ranking again by difference.

Both ways say 12% should be a rubbish number to use (it's ranked 90 out of 100 in the first method!) but it seems to be the best.

So how is the total path width calculated?

Is there some reason we can't use decimal values for stepover? Our machines are certainly capable of it and this would allow us to always remove all material.
Or conversely, why doesn't 3D surface add a tiny extra path to take up the difference, like Pocket does?
It could even change the value slightly to get a full width cut if required.

Many thanks,
Mike.

OS: Windows 10 Version 2009
Word size of FreeCAD: 64-bit
Version: 0.20.27428 (Git)
Build type: Release
Branch: master
Hash: 27460358508a2057e0ec57a418641435f12628dd
Python version: 3.8.6+
Qt version: 5.15.2
Coin version: 4.0.1
OCC version: 7.5.3
Locale: English/New Zealand (en_NZ)
Attachments
Stepover calculator.xlsx
(48.41 KiB) Downloaded 40 times
chrisb
Veteran
Posts: 53930
Joined: Tue Mar 17, 2015 9:14 am

Re: Determining best stepover for 3D surface

Post by chrisb »

The FreeCAD file will sure be helpful for the experts.
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
CoderMusashi
Posts: 92
Joined: Mon Nov 19, 2018 8:26 pm

Re: Determining best stepover for 3D surface

Post by CoderMusashi »

To be clear the step over amount has to do with your surface finish and nothing to do with not going to the edge. I created a video for you to show what I mean. Your tool is basically stopping half your tool diameter away from the edge of your part which it considers the boundary. There is at present no way to create boundary area with freecad path workbench other than to create a boundary that extends past the actual surface you wish to cut in the first place. Here is the link to the video to show you how to get around your issues. https://youtu.be/FKzvTArttQs

If you are in a pocket your tool will go to the edge but the tool path you are seeing shows the center of the tool and not the actual edge.
spanner888
Posts: 326
Joined: Tue May 28, 2019 10:51 am

Re: Determining best stepover for 3D surface

Post by spanner888 »

CoderMusashi wrote: Thu Apr 28, 2022 11:36 am the tool path you are seeing shows the center of the tool and not the actual edge.
...and you can see this, ie each tool path being cut and the actual stock left after cutting, using the FreeCAD CAM simulator, or Camotics etc gcode simulators.
tigermm
Posts: 49
Joined: Thu Jul 15, 2021 3:25 am

Re: Determining best stepover for 3D surface

Post by tigermm »

chrisb wrote: Thu Apr 28, 2022 8:15 am The FreeCAD file will sure be helpful for the experts.
Correct, it probably would be helpful. I got so caught up in the question that I forgot about that :oops:
Attachments
140mm Intake shoe using surfaces good paths V3.FCStd
(255.48 KiB) Downloaded 39 times
tigermm
Posts: 49
Joined: Thu Jul 15, 2021 3:25 am

Re: Determining best stepover for 3D surface

Post by tigermm »

CoderMusashi wrote: Thu Apr 28, 2022 11:36 am To be clear the step over amount has to do with your surface finish and nothing to do with not going to the edge. I created a video for you to show what I mean. Your tool is basically stopping half your tool diameter away from the edge of your part which it considers the boundary. There is at present no way to create boundary area with freecad path workbench other than to create a boundary that extends past the actual surface you wish to cut in the first place. Here is the link to the video to show you how to get around your issues. https://youtu.be/FKzvTArttQs

If you are in a pocket your tool will go to the edge but the tool path you are seeing shows the center of the tool and not the actual edge.
Thanks for the help and video. That's another good way to skin this cat but a little more difficult in my case as I can't just cut way outside that boundary due to the wall.

The thing is it doesn't stop bang on half a tool diameter away from the wall but further, or even worse closer, depending on the stepover specified.
You can see in the 13% stepover pic that the right most path is way more than half a tool from the wall (I should have said I'm using a 6mm ball end mill).
In fact I've just measured and it's 3.7mm from the wall, so the cut will be 1.4mm undersize..... quite noticeable (see pic below).
Yes the stepover value is primarily for finish but in this case I have to change it to get better paths, and just use a value close to what I wanted which was 10%.
.
Capture.JPG
Capture.JPG (42.08 KiB) Viewed 1750 times
.
I just made another example using the path/pocket tool (attached) and you can see at the top that it adds a path at the top with less SO than specified in order to get right up to the wall.
Pocket 3D doesn't seem to do this so fiddling with the SO is necessary to get it as close as possible.
I'm just wondering if there is a way to calculate the best SO value to minimise fiddling time i.e. how does the software do this so we can mimic it?
.
Capture2.JPG
Capture2.JPG (51.81 KiB) Viewed 1750 times
Attachments
pockettest.FCStd
(37.83 KiB) Downloaded 37 times
tigermm
Posts: 49
Joined: Thu Jul 15, 2021 3:25 am

Re: Determining best stepover for 3D surface

Post by tigermm »

There is a way to adjust the boundary in the data tab but increasing it only adds another path at the full stepover width, meaning the cut will be oversize and trying to cut into the 40mm high wall in one go.
Half tool dia measurement for reference.
.
Capture3.JPG
Capture3.JPG (83.74 KiB) Viewed 1737 times
bmsaus4ax
Posts: 255
Joined: Sat Nov 14, 2020 9:16 pm
Location: Bargara, Queensland, Australia UTC+10

Re: Determining best stepover for 3D surface

Post by bmsaus4ax »

tigermm wrote: Thu Apr 28, 2022 10:33 pm

chrisb wrote: ↑Apr 28th, '22, 18:15
The FreeCAD file will sure be helpful for the experts.

Correct, it probably would be helpful. I got so caught up in the question that I forgot about that :oops:
.
I just made another example using the path/pocket tool (attached) and you can see at the top that it adds a path at the top with less SO than specified in order to get right up to the wall.
Pocket 3D doesn't seem to do this so fiddling with the SO is necessary to get it as close as possible.
I'm just wondering if there is a way to calculate the best SO value to minimise fiddling time i.e. how does the software do this so we can mimic it?
.
Capture2.JPG
In both of your files I downloaded (combined the quotes from both above) the Inspect Path Commands and post-processor output give accurate g-code.

The first model less so, as the Y coordinate is Y13.04 instead of Y13.00

The second model gives exact values for contact with the shape. The path graphics for this second one is showing a false line Y142.0 which is strange but it is not in the Inspect Path Commands or the post-processor output.
User avatar
pathfinder
Posts: 315
Joined: Mon Oct 04, 2021 10:27 am

Re: Determining best stepover for 3D surface

Post by pathfinder »

I think I'm having the same issue. If I understand it correctly, it's because 3D surface is very differently generated than 3D pocket is. 3D surface essentially projects the cutting pattern on top of the object and adjusts the z height every sample intervall length by checking for the earliest collision of the toolbit with the object, I don't think it has a concept of the underlying geometry beyond that.

My current solution is to change the angle of the line pattern to a degree where there's as little parallel lines between it and walls as possible. If that doesn't work, I'll run another pass with different parameters and angle, depending on material as a single pass. I tend to run multiple different finishing passes anyway, so I usually get all the spots eventually.
tigermm
Posts: 49
Joined: Thu Jul 15, 2021 3:25 am

Re: Determining best stepover for 3D surface

Post by tigermm »

bmsaus4ax wrote: Fri Apr 29, 2022 5:51 am
In both of your files I downloaded (combined the quotes from both above) the Inspect Path Commands and post-processor output give accurate g-code.

The first model less so, as the Y coordinate is Y13.04 instead of Y13.00

The second model gives exact values for contact with the shape. The path graphics for this second one is showing a false line Y142.0 which is strange but it is not in the Inspect Path Commands or the post-processor output.
The first model is pretty accurate because I've fiddled to make it so.
Try changing the stepover for the roughing pass to 50%..... I get the first cut at 14mm and the last at 146mm meaning it's 1mm short each side.

The second model gives exact values because the path/pocket tool does this automatically, and my point was that this tool does it how come path/3D surface doesn't?
And if that tool can't be made to add that little extra path to complete the cut fully, how can I calculate the correct stepover to use to get as close as possible?
Post Reply