G43 tool length compensation

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!
herbk
Veteran
Posts: 2657
Joined: Mon Nov 03, 2014 3:45 pm
Location: Windsbach, Bavarya (Germany)

Re: G43 tool length compensation

Post by herbk »

rmu wrote: Wed May 02, 2018 7:28 pm 1) change tool with M6. LinuxCNC operates the toolchanger to get the requested tool in the spindle, or prompts the user to do a manual toolchange
I don't have a toolchanger so i get the prompt, - but not the possibility to move the tool manuel for a new touch off.
now you would issue G43, this adds/subtracts the tool offsets of the currently loaded tool as found in the tool table to your coordinate system
Like written above: i never was able to use a from FreeCAD (or any other software) compensated gcode AND the compensation of LinuxCNC.
Gruß Herbert
chrisb
Veteran
Posts: 53919
Joined: Tue Mar 17, 2015 9:14 am

Re: G43 tool length compensation

Post by chrisb »

If you don't have a tool changer or at least some exchange system assuring a well defined length after a tool change all that FreeCAD can do is to wait for you to perform the change.

Concerning radius compensation is there a use case where you want to use FreeCAD's and your machine's compensation?
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
User avatar
rmu
Posts: 61
Joined: Wed Aug 02, 2017 6:09 am

Re: G43 tool length compensation

Post by rmu »

chrisb wrote: Wed May 02, 2018 8:00 pm If you don't have a tool changer or at least some exchange system assuring a well defined length after a tool change all that FreeCAD can do is to wait for you to perform the change.
The toolchange is performed at machining time, has nothing to do with FreeCAD. When using manual toolchange, for non-critical tool length accuracies, a simple line on the tool that marks how far to insert into the collet will do. Should be good for +-0,1mm. When setting up a new tool, measure stickout with calipers, mark the tool with tape or a sharpie, and program measured stickout or offset to some zero-Z in the tool table.
Concerning radius compensation is there a use case where you want to use FreeCAD's and your machine's compensation?
For me, not in one program or with the same tool.

There already is a possibility to use radius compensation of the CNC controller (G41, G42), with the LeadInOutDressup, see https://www.youtube.com/watch?v=S7YADapFduk. For real production use, this has advantages, as the controller can track tool wear and compensate, you could use re-sharpened cutters (with a slightly smaller diameter) without reposting your programs etc...
herbk
Veteran
Posts: 2657
Joined: Mon Nov 03, 2014 3:45 pm
Location: Windsbach, Bavarya (Germany)

Re: G43 tool length compensation

Post by herbk »

chrisb wrote: Wed May 02, 2018 8:00 pm Concerning radius compensation is there a use case where you want to use FreeCAD's and your machine's compensation?
If the question is to me... No, if the path is compensated, why it do a secound time.
But if i not use the compensation of the machines tool controller, the machine can also not execut a tool lenght correctur in my mind, because it don't know a tool lenght. If there is a G43 command to recalculate the tool offset, FreeCAD needs to recalculate it if "use compensation" is active in FreeCAD... just my mind..

Something general...: im not able to change a tool manualy with a offset i know before the change. I always need a touch of to the bed (or adjust pad) to redefine the Z axis. ;)
Gruß Herbert
GeneFC
Veteran
Posts: 5373
Joined: Sat Mar 19, 2016 3:36 pm
Location: Punta Gorda, FL

Re: G43 tool length compensation

Post by GeneFC »

rmu wrote: Wed May 02, 2018 7:28 pm I see no use case of not using G43 in normal machining operation gcode.
I don't have a tool changer, and I don't use a tool table in linuxcnc. I believe adding a G43 to my gcode would cause an error, if I understand the linuxcnc documentation.

I don't have any use for a G43, but if it is added it should be easily turned off permanently.

Gene
chrisb
Veteran
Posts: 53919
Joined: Tue Mar 17, 2015 9:14 am

Re: G43 tool length compensation

Post by chrisb »

I would hope that radius compensation and length compensation are independent, but that has to be verified by someone using linux_cnc.
Radius of is G40 and according to the linux_cnc documentation G49 cancels tool length offset. I would give it a try with a G40 G43 combo.
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
User avatar
rmu
Posts: 61
Joined: Wed Aug 02, 2017 6:09 am

Re: G43 tool length compensation

Post by rmu »

GeneFC wrote: Wed May 02, 2018 9:02 pm
rmu wrote: Wed May 02, 2018 7:28 pm I see no use case of not using G43 in normal machining operation gcode.
I don't have a tool changer, and I don't use a tool table in linuxcnc. I believe adding a G43 to my gcode would cause an error, if I understand the linuxcnc documentation.
G43 should not cause an error, the documentation does not mention any error conditions for G43 (without H). If your tool offsets are zero, G43 won't change anything.

I'm curious, do you run any programs that require a toolchange and how do you manage different tool lengths?
User avatar
sliptonic
Veteran
Posts: 3457
Joined: Tue Oct 25, 2011 10:46 pm
Location: Columbia, Missouri
Contact:

Re: G43 tool length compensation

Post by sliptonic »

Let's try to keep discussion in this thread to tool length compensation. My brain can't switch fast enough to talk about both.

To summarize,
If the post ALWAYS sends a G43 after a tool change, it should work fine for everyone. Because, If the user actually uses TLO, there will be a value in the linuxcnc tooltable. If they don't use TLO there should be nothing in the tooltable or zero.

having an argument on the post processor to disable the TLO seems like a good idea.

BUT...

The linuxcnc post processor is widely copied and used as the basis for other posts. For this reason, perhaps the default behavior should be to NOT send a G43. If the user wants to use TLO, they add --useTLO and then always get one on tool change. This, of course, can be saved into the job template so it's always added to new jobs.

My concern is that new users and users with hobby-class controls will use the linuxcnc post, get TLO, get confused and we'll have an ongoing support issue.
GeneFC
Veteran
Posts: 5373
Joined: Sat Mar 19, 2016 3:36 pm
Location: Punta Gorda, FL

Re: G43 tool length compensation

Post by GeneFC »

sliptonic wrote: Wed May 02, 2018 9:24 pm The linuxcnc post processor is widely copied and used as the basis for other posts. For this reason, perhaps the default behavior should be to NOT send a G43. If the user wants to use TLO, they add --useTLO and then always get one on tool change. This, of course, can be saved into the job template so it's always added to new jobs.
+++++ :D

Gene
GeneFC
Veteran
Posts: 5373
Joined: Sat Mar 19, 2016 3:36 pm
Location: Punta Gorda, FL

Re: G43 tool length compensation

Post by GeneFC »

rmu wrote: Wed May 02, 2018 9:24 pm I'm curious, do you run any programs that require a toolchange and how do you manage different tool lengths?
No, I strip all tool changes from the gcode, and I split the gcode files into separate parts for each tool. All tools need to be touched off before use.

This is mostly off topic, so I will not add any more detail.

Gene
Post Reply