G71
09 Sep 2017 23:48 #98751
by Patrik T
I am very glad there is a G71 cycle in LinuxCNC. Thanks to Andy I believe (thumbs up icon).
Cool that it also does pockets.
May I ask a couple of questions about the G71 cycle.
1) I implemented this
github.com/LinuxCNC/linuxcnc/blob/andypu.../g71/python/remap.py
as REMAP=G71 modalgroup=1 argspec=PDrjlikfst python=g71.
Is a remap the intended way to use this?
2) How much of it is supposed to work at this stage? Because arguments R, L, I and K does not seem to do anything. It leaves nothing axially for finishing.
I attach a screenshot of the program I tested with. It is visible in the tool path that it sometimes leaves 2 mm for finishing and sometimes 3 mm. It also does the roughing cuts at S400 F400, but the finishing cut seems good at S200 F400.
3) What the intended difference between the J, L and the I, K values?
Best regards
Patrik
Cool that it also does pockets.
May I ask a couple of questions about the G71 cycle.
1) I implemented this
github.com/LinuxCNC/linuxcnc/blob/andypu.../g71/python/remap.py
as REMAP=G71 modalgroup=1 argspec=PDrjlikfst python=g71.
Is a remap the intended way to use this?
2) How much of it is supposed to work at this stage? Because arguments R, L, I and K does not seem to do anything. It leaves nothing axially for finishing.
I attach a screenshot of the program I tested with. It is visible in the tool path that it sometimes leaves 2 mm for finishing and sometimes 3 mm. It also does the roughing cuts at S400 F400, but the finishing cut seems good at S200 F400.
3) What the intended difference between the J, L and the I, K values?
Best regards
Patrik
Please Log in or Create an account to join the conversation.
14 Sep 2017 07:09 #98933
by andypugh
Currently the remap version is a proof of concept, intended as an improvement on the ben potter G71 branch that you can also find in the git repository,
Currently G71 with pockets is indeed remap-only and suffers from that in that it lacks some important info that a fully integrated cycle would have. You should find that the other patch works better, but does not do pockets.
Because of a limitation in the current interpreter one of the roughing offsets is an integer, so has to be given in terms of thousandths of the current program units. (I have forgotten which, but might remember to look tomorrow. (I am grabbing a few minutes late at night on a work trip to the US to look at the forums))
So, yes, remap only, and not ready for release, but can make parts. Calling the profile as a sub should give an exact profile, despite any slight flaws in the code of either version, but cut depth may be erratic on that cut.
Currently G71 with pockets is indeed remap-only and suffers from that in that it lacks some important info that a fully integrated cycle would have. You should find that the other patch works better, but does not do pockets.
Because of a limitation in the current interpreter one of the roughing offsets is an integer, so has to be given in terms of thousandths of the current program units. (I have forgotten which, but might remember to look tomorrow. (I am grabbing a few minutes late at night on a work trip to the US to look at the forums))
So, yes, remap only, and not ready for release, but can make parts. Calling the profile as a sub should give an exact profile, despite any slight flaws in the code of either version, but cut depth may be erratic on that cut.
Please Log in or Create an account to join the conversation.
28 Sep 2017 11:54 #99546
by Patrik T
No version, I made it from scratch (except for stealing your regex).
G71 P71 D4 R1 I2 K.5 J.5 L4
P = Sub number
D = Stock removal cut depth
R = Stock removal retract height
I = X-allowance
K = Z-allowance
J = Constant surface feed factor
L = Number of decimals
The Q-word in the G-code tells the lathe to connect to the next programmed surface with a fillet radius of that size.
G71 P71 D4 R1 I2 K.5 J.5 L4
P = Sub number
D = Stock removal cut depth
R = Stock removal retract height
I = X-allowance
K = Z-allowance
J = Constant surface feed factor
L = Number of decimals
The Q-word in the G-code tells the lathe to connect to the next programmed surface with a fillet radius of that size.
Please Log in or Create an account to join the conversation.
- skunkworks
- Offline
- Moderator
Less
More
- Posts: 361
- Thank you received: 150
28 Sep 2017 13:48 #99549
by skunkworks
Replied by skunkworks on topic G71
Could you share?
Please Log in or Create an account to join the conversation.
29 Sep 2017 12:13 - 29 Sep 2017 21:15 #99608
by Patrik T
I tried to convince myself that I could use CAM or ngcgui, but in the end I just did the work. I did the G71 I had wished for, with pockets and fully compensated all the time. I also threw in fillet radii between all types of moves. At first I thought getting the most efficient retract between pockets would be arduous, but I found a brilliant way to do pockets easily, inside, outside or backwards. I'd share, at a fee.
The Python remap feature is great, thanks Michael.
The Python remap feature is great, thanks Michael.
Last edit: 29 Sep 2017 21:15 by Patrik T. Reason: A bad mood was showing through.
Please Log in or Create an account to join the conversation.
03 Oct 2017 21:31 #99857
by andypugh
I do hope that we will get G71 as an actual G-code at some point. I was hoping Ben was going to do it, but he seems to have found other things to do.
It's on my list. Along with multiple spindles, but I have a bunch of bugfixes that are higher priority, and only just got a working dev machine back.
It's on my list. Along with multiple spindles, but I have a bunch of bugfixes that are higher priority, and only just got a working dev machine back.
Please Log in or Create an account to join the conversation.
Time to create page: 0.092 seconds