Start Points and order in face based toolpaths

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!
pauluzs
Posts: 27
Joined: Wed Feb 27, 2019 7:48 pm
Location: Netherlands

Start Points and order in face based toolpaths

Post by pauluzs »

To achieve a simple, fast and easy workflow for a toolpath to cut sheet material on laser/plasma/waterjet i'm trying to create the whole toolpath in one operation.

The screenshot below show the 2 toolpaths that support this:
1left: Profile based on Face or Faces (select face with process holes and circles enabled)
2right: The Deburr toolpath (select face)
Screenshot from 2019-03-03 00-24-00.png
Screenshot from 2019-03-03 00-24-00.png (194.49 KiB) Viewed 3003 times
Now i run into trouble with both of them, what i would like is a combination or a way to change the behavior of one of them.

The Faces toolpath on the left respects the rule to cut the perimeter last. Only the start of the cut is random and not in the corners or beginning of arcs.

The Deburr toolpath on the right works ok, only problem is the perimeter is cut before the holes and circles.

I know it's possible to tool each feature separate with start-points, only that's not the goal of a simple, fast and easy workflow.

Later a Dressup could be applied to change the start points of G1 from the start of line to center of the line with an optional lead in and out. This because you most likely don't want to start/stop cutting in a corner. For G2/G3 the startpoint is just the beginning of that arc.

Is there a way to select where the cut starts (begin arc, begin line or center line) in the Profile based on Faces?
Or can the deburr toolpath be set to cut perimeter outlines last?

The test file is attached
Attachments
test.fcstd
(59.31 KiB) Downloaded 82 times
pauluzs
Posts: 27
Joined: Wed Feb 27, 2019 7:48 pm
Location: Netherlands

Re: Start Points and order in face based toolpaths

Post by pauluzs »

Seems to be a Feature Request for 0.19
mlampert
Veteran
Posts: 1772
Joined: Fri Sep 16, 2016 9:28 pm

Re: Start Points and order in face based toolpaths

Post by mlampert »

I had a look at this and there seem to be 3 threads going on, this one, a PR thread, and the PR itself.

I think the topic of this thread is the right way to go and the new op is not the best approach. If I understand your issue correctly Profile does what you want except you also want control over the starting point. This is a feature that would help everybody, laser, plasma, waterjet and conventional milling. Implementing starting point selection would be awesome!

I understand the desire for the new op and that it is the shortest path for your immediate needs. For a regular user however this op is probably quite confusing. It does almost the same as Profile - in fact it's not clear (from an end user perspective) what problem it solves.

If the general ops are too generic for cutting purposes, then maybe we should introduce a new job type, with its own set of operations.

Personally I would very much appreciate a starting point implementation - I would use that a lot :)
pauluzs
Posts: 27
Joined: Wed Feb 27, 2019 7:48 pm
Location: Netherlands

Re: Start Points and order in face based toolpaths

Post by pauluzs »

e
PR thread, and the PR itself.
Both Closed

The Deburr toolpath creates the desired profile with some "magic" tool and deburr settings
Still haven't figured out why the face based on seems to start on a "random" point .

Also ability to delete a single cut , set a cut to be last and leadinout would be separate dressup topics.

So on to start points:

As for now i see 2 possible solutions for selecting,
  • pre split all elements (lines/cicles/arc) in n Pieces, and select one of these split points from the gui (right click)
Preferred:
  • get the current pre-selection point and G code line from gui (right click) and split only the first at this selection point
The actual dressup it self would either move or recalculate the current cut from the above selected point.

In my case, where the previous rapid followed by one or 2 move commands in the g code would probably do the trick for finding the current startpoint.
Not sure if that would also work out on different profiles.

Thing to remember: trying to achieve (re)setting multiple start points in 1 operation not just setting the startpoint for the operation itself.
This is why i refer to cuts, although this should be just the same for single cut operations.
mlampert
Veteran
Posts: 1772
Joined: Fri Sep 16, 2016 9:28 pm

Re: Start Points and order in face based toolpaths

Post by mlampert »

How about we call them engagement points or entry points? Something like that.

In the current Profile path generation, where would you want those to be? At and start/end of a straight/arc segment or in the middle of one?
Do you need manual control over the point selection or could they be algorithmically determined?
pauluzs
Posts: 27
Joined: Wed Feb 27, 2019 7:48 pm
Location: Netherlands

Re: Start Points and order in face based toolpaths

Post by pauluzs »

Not sure if there's a naming standard in FC.

Entry point would be the start of the engagement, and the engagement would be part between rapids then?

For the current deburr toolpath like to set them algorithmically, first for all entry points.
Having a select option between: start, center or end, for both linear as arced segments.
Especially in parts with many holes there is no sense in picking each entry point manually.

After this a optional manual assignment could be used to change a single entry point.

So going algorithmically assigning first, would implement splitting the segments at least once.
Are there any drawback's besides doubling the number of segments and essentially the lines of g-code when doing so for all segments?
Else we already got these points calculated for option manual entry point picking later also.
User avatar
sliptonic
Veteran
Posts: 3457
Joined: Tue Oct 25, 2011 10:46 pm
Location: Columbia, Missouri
Contact:

Re: Start Points and order in face based toolpaths

Post by sliptonic »

If we're looking for an improved dressup or feature for start points / engagement points, we should also consider the opposite (exit points) since it's the same problem.

In the old HeeksCNC profile operation, you could manually choose a start and/or end point and configure a roll radius. The selected point was only used as a rough guide. If it was with one radius of the wire, a roll-on G2 move was calculated near that spot. The same thing was done for roll-off exit.

I like this approach as it gave the user some control of placement but let the algorithm determine the rest. If a roll-on was configured without a startpoint, the whole thing was determined by algorithm.

The weakness of the Heeks implementation was that it didn't handle profiles with multiple disconnected wires where the user needs to configure multiple start points.
pauluzs
Posts: 27
Joined: Wed Feb 27, 2019 7:48 pm
Location: Netherlands

Re: Start Points and order in face based toolpaths

Post by pauluzs »

After getting my base toolpath figured out and wanted to create what i knew as microjoints > holding tabs something struck me while thinking how to get engagement points.

We're almost there including the Gui:
Try adding holding tags up to safe height ...
Hey, there's a G0 :D
Screenshot from 2019-03-12 23-58-38.png
Screenshot from 2019-03-12 23-58-38.png (166.94 KiB) Viewed 2768 times
Screenshot from 2019-03-12 23-58-38.png
Screenshot from 2019-03-12 23-58-38.png (166.94 KiB) Viewed 2768 times
Attachments
test.fcstd
(33.68 KiB) Downloaded 51 times
Screenshot from 2019-03-12 23-58-47.png
Screenshot from 2019-03-12 23-58-47.png (174 KiB) Viewed 2768 times
User avatar
pl7i92LCNC
Posts: 208
Joined: Tue Mar 12, 2019 3:03 pm
Location: RLP DE

Re: Start Points and order in face based toolpaths

Post by pl7i92LCNC »

for base Roll on roll of there is already a leadinand out dressup
that uses the Base operation
this coudt also be aproved by adding a flexible on the line INOut Tag
phpBB [video]
pauluzs
Posts: 27
Joined: Wed Feb 27, 2019 7:48 pm
Location: Netherlands

Re: Start Points and order in face based toolpaths

Post by pauluzs »

pl7i92LCNC wrote: Wed Mar 13, 2019 3:38 pm for base Roll on roll of there is already a leadinand out dressup
that uses the Base operation
this coudt also be aproved by adding a flexible on the line INOut Tag
Prefer if we would have the lead in/out discussion on a different topic
And have the "roll radius part" in there as well?
In the old HeeksCNC profile operation, you could manually choose a start and/or end point and configure a roll radius
About the
The weakness of the Heeks implementation was that it didn't handle profiles with multiple disconnected wires where the user needs to configure multiple start points.
can you give some more info on that? Do you mean rapid moves between engagement points in a connected toolpath or is there a toolpath that will produce disconnected wires?

How did it handle the start and stop points? as one point with overlaps (negative tag width) or 2 separate points for stop and start?

So meanwhile i've been playing with the Tag dressup some more,
It does split wires in n sections ( if anyone is interested in a path for turret punching add the tangent angle to G-code as tool index)
It lets you select 2 or more points from a gui.

If nobody is splitting atoms we could do a smallest unit 0,0001 (is there a var for this????) Tag up to save height and use it for the new start/end point calculation.
Then decide what we do with the part from old till new startpoint > discard or append to end.
For startpoint only, disable the second tag, for start and stop use both.
Post Reply