Change Tool Offsets after editing the Tool Table

More
1 year 5 months ago #327733 by hermann1976
Hello everyone,

I have a problem where, after changing the diameter or Z offset in the tool table for an active and loaded tool, the values ​​aren't immediately applied. Even if I click the "Apply" button.

I have to explicitly unload the tool and reload it with M6.

Unfortunately, I can't figure out how the Apply button works.



Maybe someone here can help me. Thank you very much.

Please Log in to join the conversation.

More
1 year 5 months ago #327759 by Todd Zuercher
I'm pretty sure you must issue a G43 command to reload and make the tool offset after changing the offset in the tool table.

I believe the "Apply" merely saves changes you've made so that Linuxcnc is aware of the change, but the new offset isn't actually put into effect until either a new G43 command is issued to actually apply the new offset, or the tool is changed while G43 is in effect. (At which point the new offset is loaded automatically).

Personally I feel that G43 should not be automatically applied with a tool change. I don't think most other cnc controls do this, and it leads to poor g-coding practices. (My opinion is that always explicitly issuing G43 Hn to set your tool offset after tool changes or an offset change is best G-coding practice.)

Please Log in to join the conversation.

More
1 year 5 months ago #327831 by hermann1976
Thank you for your answer.

The tool length transfer also works with G43 and is also applied to the loaded tool after a change in the tool table. However, the tool diameter is not transferred. The data is only transferred when explicitly unloading or when switching to another tool and then back to the changed tool using the M61 Q? button. Unfortunately, only M61 Q? doesn't work because I get a message saying the tool is already in the spindle.
Can I somehow initiate the diameter change?

I think I have a different understanding of tool length. Fundamentally, machining can only be performed with a measured tool with a specific length. Therefore, tool length compensation should always be active. Which is why I can't understand why there is a G49 in the "on_abort" subroutine. If I have to abort the program, the tool length is set to 0, which leads to errors when calling the program again if there is no explicit G43 in the program. I removed the G49 from the "on_abort" macro program.
So, for me, the tool length should always be active.

Please Log in to join the conversation.

More
1 year 5 months ago #327844 by Todd Zuercher
I've always felt it was best to always explicitly set G43 Hn in the g-code program, but I came from a back round of programming primarily for Fanuc controlled machines before using Linuxcnc. Never assume the state of the machine. Inserting a handful of g-codes at the start (preamble) or every tool change is cheap insurance.

Are you using the diameter offsets (G41/G42)? If not, I'm not sure that the tool diameters are really used for much of anything unless G41 or G42 is active. If you are using the diameter offsets, generally you would be turning them on and off in your code for different situations and the new offset would be activated at the next G41/G42 call. Myself I almost never use them, and program from the tool center with the CAM program. About the only time I use them is for compensating for resharpened tools (which I rarely use.)

Please Log in to join the conversation.

More
1 year 5 months ago #327847 by hermann1976
Basically, I agree with you. Specifying some basic settings at the start of the program makes sense and is done that way. However, it's confusing when the machine is always in different states during different phases, such as after the control system starts, during program execution, after a program abort, after a tool change, and so on. For me it's not clear why the tool length should disappear when a program is aborted? I can't see the reason or the rationale for this.

But I have a solution for this.

However, we're getting away from the actual question:

How can I ensure that the radius is updated in the tool info window when applying the tool table after editing? Are incorrect half pins connected here, or where are the functions triggered by the "Apply" button controlled? When milling with radius compensation, the value from the info field is used. G41/42 accesses this value.
When programming, I use radius compensation (finishing, fits, etc.) whenever possible and sensible. This allows for easy adjustment of the dimensions without having to change with the CAD program.

Please Log in to join the conversation.

More
1 year 5 months ago #327861 by andypugh
If you edit the tool table, save the changes, re-load the tool table in the GUI and then issue a G43 in MDI then the tool diameter really should change.

Maybe it's the "reload tool table" step that is missing?

Please Log in to join the conversation.

More
1 year 5 months ago #327871 by hermann1976
I've tried all your suggestions. Unfortunately, none of them work.

The tool is in the spindle - no program is running --> Tool changed in the tool table --> Confirmed with Enter --> Clicked Apply --> Clicked Reload --> Then tried in MDI G43 - the diameter doesn't change in the tool info box.
 

Please Log in to join the conversation.

More
1 year 5 months ago #327875 by MaHa
Can you enter in MDI

(debug,#5410)

to see what diameter linuxcnc use in gcode

Please Log in to join the conversation.

More
1 year 5 months ago #327952 by hermann1976
Thanks for your answer. Attached the result.Linuxcnc works with the changed value. But the GUI doesn't recognize the change.

Please Log in to join the conversation.

More
1 year 5 months ago #327961 by MaHa
Did you try, if the GUI updates changes in tooldata this way? Be aware it uses toolradius

G10 L1 P#5400 R


linuxcnc.org/docs/2.9/html/gcode/g-code.html#gcode:g10-l1


otherwise i have no idea

Please Log in to join the conversation.

Time to create page: 0.179 seconds
Powered by Kunena Forum