ATC + TOOL_CHANGE_QUILL_UP
- HalaszAttila
- Away
- Premium Member
-
Less
More
- Posts: 143
- Thank you received: 5
04 May 2019 15:05 #132740
by HalaszAttila
ATC + TOOL_CHANGE_QUILL_UP was created by HalaszAttila
Hello,
a working on retrofit Emco VMC100 milling machine.
Before changing the tool (rotating the magazin), Z axis must move to top end position (Z machine coord = 0.0 mm) (restricted area).
I solved this whit setting the TOOL_CHANGE_QUILL_UP = 1 in INI file.
But, would be required to inhibit (motion.feed−inhibit) the axis motion when machine is not in tool change execution,
and Z axis enter in restricted area (halui.axis.N.pos−feedback > -85.0 - checked with comp.N. component)).
-My plan was to use iocontrol.0.tool−change signal to disable checking the position of Z axis and inhibit the motion when it goes above -85.0mm, but this signal is set after moving Z up.
-My second plan was to check the state of motion.motion−type signal (4: Tool change). But when moving Z axis during tool change the value of variable is 1: Traverse (like rapid move), not 4: Tool change (when would be this variable equal 4? )
-My third plan is to remap M6, but is seems complicated, because i do not find docs how to do it.
Can you help me how to solve this problem, easy?
Thanks.
a working on retrofit Emco VMC100 milling machine.
Before changing the tool (rotating the magazin), Z axis must move to top end position (Z machine coord = 0.0 mm) (restricted area).
I solved this whit setting the TOOL_CHANGE_QUILL_UP = 1 in INI file.
But, would be required to inhibit (motion.feed−inhibit) the axis motion when machine is not in tool change execution,
and Z axis enter in restricted area (halui.axis.N.pos−feedback > -85.0 - checked with comp.N. component)).
-My plan was to use iocontrol.0.tool−change signal to disable checking the position of Z axis and inhibit the motion when it goes above -85.0mm, but this signal is set after moving Z up.
-My second plan was to check the state of motion.motion−type signal (4: Tool change). But when moving Z axis during tool change the value of variable is 1: Traverse (like rapid move), not 4: Tool change (when would be this variable equal 4? )
-My third plan is to remap M6, but is seems complicated, because i do not find docs how to do it.
Can you help me how to solve this problem, easy?
Thanks.

Please Log in or Create an account to join the conversation.
- andypugh
-
- Offline
- Moderator
-
Less
More
- Posts: 23193
- Thank you received: 4871
04 May 2019 18:53 #132762
by andypugh
Replied by andypugh on topic ATC + TOOL_CHANGE_QUILL_UP
I would use M6 remap. Then the quill up is a g53 g0 move.
linuxcnc.org/docs/2.7/html/remap/remap.h...s_including_tt_m6_tt
This section explains the minimum way to do an M6 remap.
linuxcnc.org/docs/2.7/html/remap/remap.h...s_including_tt_m6_tt
This section explains the minimum way to do an M6 remap.
The following user(s) said Thank You: HalaszAttila
Please Log in or Create an account to join the conversation.
- HalaszAttila
- Away
- Premium Member
-
Less
More
- Posts: 143
- Thank you received: 5
08 May 2019 14:22 #133146
by HalaszAttila
Replied by HalaszAttila on topic ATC + TOOL_CHANGE_QUILL_UP
Thanks for suggestion.
I first time try to use M6 remap, and write a atc.ngc file, and it works - sometimes.
1-2 times out of 10 tool changing, the line after M6 in atc.ngc stops, and not executed to end.
The line after M6 (in remap) is G53 G0 Z-92 this moves Z axis back to safety zone (disconnect spindle from the magazin).
When executing the atc.ngc file (Called T1M6 from G code program), every time the M6 (in ngc file) is finished properly (the magazin rotated to desired position and in HAL file i set the iocontrol.0.tool−changed pin),
and after linuxcnc starts executing next line (G53 G0 Z-92) moving Z down but after few mm (not fix length!!! sometimes few tenth mm, sometimes 2-3mm) the moving stops and the tool changing is finished with no error, no message. It seems everything is finished properly, but unfortunately the magazin is stays in restricted area - connected with magazin, and if in the G code program after tool change T1M6 follow spindle start S5000 M3 it will rotate the magazin with high speed and something will brake. Ufffff.
I attached the ngc file.
Please can someone help me what i made wrong?
I use <on_abort> macro. But it not called, that means the atc.ngc finished properly by LinuxCNC.
INI section for remap:
ON_ABORT_COMMAND=O <on_abort> call
# REMAP:
REMAP= M6 modalgroup=6 ngc=atc
[PYTHON]
# where to find Python code
PATH_PREPEND=python
# import the following Python module
TOPLEVEL=python/toplevel.py
# the higher the more verbose tracing of the Python plugin
LOG_LEVEL = 8
I first time try to use M6 remap, and write a atc.ngc file, and it works - sometimes.
1-2 times out of 10 tool changing, the line after M6 in atc.ngc stops, and not executed to end.
The line after M6 (in remap) is G53 G0 Z-92 this moves Z axis back to safety zone (disconnect spindle from the magazin).
When executing the atc.ngc file (Called T1M6 from G code program), every time the M6 (in ngc file) is finished properly (the magazin rotated to desired position and in HAL file i set the iocontrol.0.tool−changed pin),
and after linuxcnc starts executing next line (G53 G0 Z-92) moving Z down but after few mm (not fix length!!! sometimes few tenth mm, sometimes 2-3mm) the moving stops and the tool changing is finished with no error, no message. It seems everything is finished properly, but unfortunately the magazin is stays in restricted area - connected with magazin, and if in the G code program after tool change T1M6 follow spindle start S5000 M3 it will rotate the magazin with high speed and something will brake. Ufffff.
I attached the ngc file.
Please can someone help me what i made wrong?
I use <on_abort> macro. But it not called, that means the atc.ngc finished properly by LinuxCNC.
INI section for remap:
ON_ABORT_COMMAND=O <on_abort> call
# REMAP:
REMAP= M6 modalgroup=6 ngc=atc
[PYTHON]
# where to find Python code
PATH_PREPEND=python
# import the following Python module
TOPLEVEL=python/toplevel.py
# the higher the more verbose tracing of the Python plugin
LOG_LEVEL = 8
Please Log in or Create an account to join the conversation.
- bevins
-
- Offline
- Platinum Member
-
Less
More
- Posts: 1941
- Thank you received: 335
08 May 2019 14:39 - 08 May 2019 14:39 #133148
by bevins
Replied by bevins on topic ATC + TOOL_CHANGE_QUILL_UP
Try a G4 P3 after the G0 -Z move.
Last edit: 08 May 2019 14:39 by bevins.
The following user(s) said Thank You: HalaszAttila
Please Log in or Create an account to join the conversation.
- andypugh
-
- Offline
- Moderator
-
Less
More
- Posts: 23193
- Thank you received: 4871
08 May 2019 15:09 #133151
by andypugh
Replied by andypugh on topic ATC + TOOL_CHANGE_QUILL_UP
I wonder if you are setting the "tool changed" pin too early and that (somehow) interrupts the sequence?
The following user(s) said Thank You: HalaszAttila
Please Log in or Create an account to join the conversation.
- HalaszAttila
- Away
- Premium Member
-
Less
More
- Posts: 143
- Thank you received: 5
08 May 2019 15:22 - 08 May 2019 15:33 #133153
by HalaszAttila
Replied by HalaszAttila on topic ATC + TOOL_CHANGE_QUILL_UP
I tried to delay the tool-changed signal with timedelay (on-time = 0.1 sec). But nothing changed.
I tried that comment out the tool changing section from HAL (carousel comp etc). And the tool-changed pin is simulated:
iocontrol.tool-change timedelay..in
timedelay..out iocontrol.tool-changed.
timedelay ON time: 2.0 sec.
But not solved the problem.
I will try to put G4 P3 before M6 based on previous Replay.
I tried that comment out the tool changing section from HAL (carousel comp etc). And the tool-changed pin is simulated:
iocontrol.tool-change timedelay..in
timedelay..out iocontrol.tool-changed.
timedelay ON time: 2.0 sec.
But not solved the problem.
I will try to put G4 P3 before M6 based on previous Replay.
Last edit: 08 May 2019 15:33 by HalaszAttila.
Please Log in or Create an account to join the conversation.
- bevins
-
- Offline
- Platinum Member
-
Less
More
- Posts: 1941
- Thank you received: 335
08 May 2019 15:45 #133157
by bevins
Replied by bevins on topic ATC + TOOL_CHANGE_QUILL_UP
I think it needs to be in the sub
Please Log in or Create an account to join the conversation.
- HalaszAttila
- Away
- Premium Member
-
Less
More
- Posts: 143
- Thank you received: 5
09 May 2019 11:04 #133234
by HalaszAttila
Replied by HalaszAttila on topic ATC + TOOL_CHANGE_QUILL_UP
Hmm it seems that problem is from turned on tool offset compensation (G43) during tool change.
When i put on the beginning of atc.ngc a G49 code to turn off compensations, the tool changing is gone without problem (dont stops G53 G0 Z-92 moving after M6).
When i put on the beginning of atc.ngc a G49 code to turn off compensations, the tool changing is gone without problem (dont stops G53 G0 Z-92 moving after M6).
Please Log in or Create an account to join the conversation.
- bevins
-
- Offline
- Platinum Member
-
Less
More
- Posts: 1941
- Thank you received: 335
09 May 2019 12:40 #133236
by bevins
That's weird because G53 should still work even with offsets.
Replied by bevins on topic ATC + TOOL_CHANGE_QUILL_UP
Hmm it seems that problem is from turned on tool offset compensation (G43) during tool change.
When i put on the beginning of atc.ngc a G49 code to turn off compensations, the tool changing is gone without problem (dont stops G53 G0 Z-92 moving after M6).
That's weird because G53 should still work even with offsets.
Please Log in or Create an account to join the conversation.
- HalaszAttila
- Away
- Premium Member
-
Less
More
- Posts: 143
- Thank you received: 5
09 May 2019 12:56 #133237
by HalaszAttila
Replied by HalaszAttila on topic ATC + TOOL_CHANGE_QUILL_UP
On the graphics seems that (in executing atc.ngc) after finished M6 the coordinate system moves according to Z offset, after that will move Z axis down with G53 G0Z-92 line. This line interrupted after a little time (but without error or message).
With G49 on the beginning of atc.ngc the problem solved.
What you think, can i use it in this form safety?
With G49 on the beginning of atc.ngc the problem solved.
What you think, can i use it in this form safety?
Please Log in or Create an account to join the conversation.
Time to create page: 0.073 seconds