RampEntry Dressup

Here's the place for discussion related to CAM/CNC and the development of the Path module.
roivai
Posts: 117
Joined: Thu Feb 02, 2017 5:29 pm
Location: Oulu, Finland

RampEntry Dressup

Postby roivai » Sat May 06, 2017 7:53 am

Hi,

I've spent few nights trying to implement a Dressup operation for ramp entry to profile and pocket operations. I think it is now in a shape I can show it so someone.

First some "theory". First of all, the basic idea of the Dressup is that is goes through the given path and searches for vertical downward movements that are not rapids, i.e plunges and replaces them with something. I came up with two different approaches which I try to explain in this picture:
path4368.png
path4368.png (101.06 KiB) Viewed 1309 times
The Dressup is able able to generate either of those. If the first path segment which follows the plunge is not long enough to implement the ramp with the desired angle, more segments are added to the ramp until the length is satisfied or a new Z movement is detected. If Z move is detected before the ramp length is covered, the ramp will be done at tighter angle than requested.

Some screenshots:
Method1:
2017-05-06-101758_3840x1200_scrot.png
2017-05-06-101758_3840x1200_scrot.png (61.37 KiB) Viewed 1309 times
Method2:
2017-05-06-101818_3840x1200_scrot.png
2017-05-06-101818_3840x1200_scrot.png (71.71 KiB) Viewed 1309 times
The Dressup supports arcs as well:
2017-05-06-101909_3840x1200_scrot.png
2017-05-06-101909_3840x1200_scrot.png (75.31 KiB) Viewed 1309 times
Comments? Thoughts about better methods? The dressup is available here:
https://github.com/pekkaroi/FreeCAD/tre ... -rampentry

I would really appreciate any feedback and if/when you face problems, I'd be happy to see the problematic files. Please be careful simulate the path before crashing your tools with this!! :D
chrisb
Posts: 18793
Joined: Tue Mar 17, 2015 9:14 am

Re: RampEntry Dressup

Postby chrisb » Sat May 06, 2017 9:29 am

Didn't test it yet, but it looks very promising. I will have to check if my 2.5D mill can handle the curved ramp entry. It has a helix function which I remember to be something special. So there will probably be some work necessary on the post processor.

Since 0.17 is a development version anyway I would like to see this in master soon.

Just an idea: instead of changing the angle if the height isn't sufficient, you could go the path backwards, resulting in a zigzag plunge. Since there are endmills which cannot plunge arbitrarily steep it might be an additional option.
herbk
Posts: 1532
Joined: Mon Nov 03, 2014 3:45 pm
Location: Windsbach, Bavarya (Germany)

Re: RampEntry Dressup

Postby herbk » Sat May 06, 2017 2:54 pm

Hi roivai,
both variants wouldn't be my favorite, becouse they prodcing to much not needed "milling way" (= milling time).

My Favorite would be like this:
ramp.png
ramp.png (48.03 KiB) Viewed 1285 times
You don't need to go back to the "start corner" after each ramped step down, it is sufficient if the way of the ramp is getting milled without step down to complete.

Changing the angle of the ramp i see critical if the ramp is getting steeper, if the ramp is getting more flat, it's no problem.
Attachments
ramp.fcstd
(7.06 KiB) Downloaded 22 times
Gruß Herbert
roivai
Posts: 117
Joined: Thu Feb 02, 2017 5:29 pm
Location: Oulu, Finland

Re: RampEntry Dressup

Postby roivai » Sat May 06, 2017 5:42 pm

Thanks for the comments!
chrisb wrote: Just an idea: instead of changing the angle if the height isn't sufficient, you could go the path backwards, resulting in a zigzag plunge. Since there are endmills which cannot plunge arbitrarily steep it might be an additional option.
I was thinking about that and it is probably not too hard to implement. I'll check if I can do that.
herbk wrote:Hi roivai,
both variants wouldn't be my favorite, becouse they prodcing to much not needed "milling way" (= milling time).
.
I agree that helix is the best option for Profile/Contour operations in most cases. In pockets it might not be that useful. However, I have a bit hard time figuring out how to implement that in a way that it works in all situations. But I'll give it a thought.
herbk
Posts: 1532
Joined: Mon Nov 03, 2014 3:45 pm
Location: Windsbach, Bavarya (Germany)

Re: RampEntry Dressup

Postby herbk » Sun May 07, 2017 7:22 am

God Morning roivai,
roivai wrote:I agree that helix is the best option for Profile/Contour operations in most cases. In pockets it might not be that useful.
Why should be there a different? OK, i'm thinking about touch in with the whole tool diameter in both situations...

If you want to avoid touching in with whole tool diameter, a little helix circel (less tool diameter) for stepp down is a usefull option.
Gruß Herbert
roivai
Posts: 117
Joined: Thu Feb 02, 2017 5:29 pm
Location: Oulu, Finland

Re: RampEntry Dressup

Postby roivai » Sun May 07, 2017 10:07 am

Hello herbk,
herbk wrote:God Morning roivai,

Why should be there a different? OK, i'm thinking about touch in with the whole tool diameter in both situations...
I played a bit with helixes and I think I managed to get it working. It works so that when it finds a plunge move from the original path, it tries to look for a closed loop, and if it does, it changes that loop to helix. So helical movement cannot be made when the tool plunges at one point and goes back up at another. And I think it would not make any sense in that kind of operation? Also, the Angle parameter is not used with Helix, it simply uses all the available distance to ramp down. Here's a screenshot:
2017-05-07-113828_3840x1200_scrot.png
2017-05-07-113828_3840x1200_scrot.png (50.22 KiB) Viewed 1227 times
I also implemented the ZigZag-method for Ramp Method1. For Method2 it doesn't feel very useful (and it was not as easy to implement so got lazy..):
2017-05-07-114252_3840x1200_scrot.png
2017-05-07-114252_3840x1200_scrot.png (49.61 KiB) Viewed 1227 times
I uploaded the new code to my branch
https://github.com/pekkaroi/FreeCAD/tre ... -rampentry
chrisb
Posts: 18793
Joined: Tue Mar 17, 2015 9:14 am

Re: RampEntry Dressup

Postby chrisb » Sun May 07, 2017 12:13 pm

It looks very promising!
herbk
Posts: 1532
Joined: Mon Nov 03, 2014 3:45 pm
Location: Windsbach, Bavarya (Germany)

Re: RampEntry Dressup

Postby herbk » Mon May 08, 2017 6:34 am

Good Morning roivai,

jep, that looks good.

But is it much more difficult to make the ramp only to a part of the path?

The reason of the question: On little Objects, with short pathes, it's OK to use the whole round for the ramp.
But for bigger and more difficult objets it's also wasting machine time, because the the machine has to go a full last round to remove the ramp.
See as example a part wich i milled out:
magsch.png
magsch.png (22.79 KiB) Viewed 1175 times
Its about 300mm in diameter, for a whole round the machine needs about 5 min. If i have to go a aditional round to remove the ramp, that means the machine needs 5 minutes more time.
If the ramp is only as long as the way which is signd with the green line, odditional time will be only a few secounds...

Of course, for privat use it's not a big problem to spend a few minutes more, but if you think about professional use... there it counts. ;) ;)
Attachments
magnetscheibe_34_magnete.fcstd
(106.19 KiB) Downloaded 18 times
Gruß Herbert
roivai
Posts: 117
Joined: Thu Feb 02, 2017 5:29 pm
Location: Oulu, Finland

Re: RampEntry Dressup

Postby roivai » Mon May 08, 2017 3:43 pm

herbk wrote:Good Morning roivai,


But is it much more difficult to make the ramp only to a part of the path?

The reason of the question: On little Objects, with short pathes, it's OK to use the whole round for the ramp.
But for bigger and more difficult objets it's also wasting machine time, because the the machine has to go a full last round to remove the ramp.
That is actually a very good point, did not think that you can do it like that as well. In the implementation I see one possible problem.. If the last round is not complete, but ends when the end of the ramp is reached, the end point of the machining operation is different than in the original path. Is it safe to assume that we can go upwards in this position and then continue to next operation like nothing happened?

I'll check how easily I could add an option to do that.
mlampert
Posts: 1326
Joined: Fri Sep 16, 2016 9:28 pm

Re: RampEntry Dressup

Postby mlampert » Mon May 08, 2017 4:46 pm

roivai wrote:
herbk wrote:Good Morning roivai,


But is it much more difficult to make the ramp only to a part of the path?

The reason of the question: On little Objects, with short pathes, it's OK to use the whole round for the ramp.
But for bigger and more difficult objets it's also wasting machine time, because the the machine has to go a full last round to remove the ramp.
That is actually a very good point, did not think that you can do it like that as well. In the implementation I see one possible problem.. If the last round is not complete, but ends when the end of the ramp is reached, the end point of the machining operation is different than in the original path. Is it safe to assume that we can go upwards in this position and then continue to next operation like nothing happened?

I'll check how easily I could add an option to do that.
I would not add an option like that - you *have to* do the bottom round, otherwise the operation is corrupted. Such is the nature of helix machining, it's rarely more efficient than step machining. OTOH, it leaves a nicer surface and is easier on most bits.