Tool_in_spindle probleme with current_pocket
05 Feb 2024 19:27 #292552
by greg23_78
Tool_in_spindle probleme with current_pocket was created by greg23_78
I have a small problem with the programming and settings of my M6 remapping.
To start with, at the moment the carousel is working perfectly but my problem comes from the condition
o103 if [#<tool_in_spindle> NE #<current_pocket>]
(abort, tool changer in wrong position)
o103 endif
I have a little program called mdi_command, which when you press a physical button turns the carousel to tool 16 (No tool change). This mini program works.
on the other hand if I ask for tool number 2, the program does not abort, but executes the tool change. so the tool currently in the spindle is in pocket 16.
First tool change ( tool 3)
carousel.0.pocket-number - 3
carousel.0.current-position - 3
iocontrol.0.tool-number - 3
Mini program
carousel.0.pocket-number - 16
carousel.0.current-position - 16
iocontrol.0.tool-number - 3
second tool change ( Tool 5)
carousel.0.pocket-number - 5
carousel.0.current-position - 5
iocontrol.0.tool-number - 5
but the tool 3 is in the pocket 16
I have the impression that #<tool_in_spindle> is not working properly, how can I remedy this problem?
To start with, at the moment the carousel is working perfectly but my problem comes from the condition
o103 if [#<tool_in_spindle> NE #<current_pocket>]
(abort, tool changer in wrong position)
o103 endif
I have a little program called mdi_command, which when you press a physical button turns the carousel to tool 16 (No tool change). This mini program works.
on the other hand if I ask for tool number 2, the program does not abort, but executes the tool change. so the tool currently in the spindle is in pocket 16.
First tool change ( tool 3)
carousel.0.pocket-number - 3
carousel.0.current-position - 3
iocontrol.0.tool-number - 3
Mini program
carousel.0.pocket-number - 16
carousel.0.current-position - 16
iocontrol.0.tool-number - 3
second tool change ( Tool 5)
carousel.0.pocket-number - 5
carousel.0.current-position - 5
iocontrol.0.tool-number - 5
but the tool 3 is in the pocket 16
I have the impression that #<tool_in_spindle> is not working properly, how can I remedy this problem?
Please Log in or Create an account to join the conversation.
- smc.collins
- Offline
- Platinum Member
Less
More
- Posts: 676
- Thank you received: 117
15 Feb 2024 01:51 #293359
by smc.collins
Replied by smc.collins on topic Tool_in_spindle probleme with current_pocket
is it configured for a random tool changer ?
Please Log in or Create an account to join the conversation.
18 Feb 2024 16:28 #293687
by greg23_78
Replied by greg23_78 on topic Tool_in_spindle probleme with current_pocket
it's not for a random tool change, i have a carousel with 30 tools. my carousel is surrounded by safety casing except in 1 place, opposite the spindle.
when my button is pressed, the carousel shows tool 1 in front of the slot, so tool 16 in front of the spindle, to avoid having to press jog 15-16 times to be in front of tool number 1.
the mini-program (MDI_command) is as follows:
it shows tool number 1 in front of the slot, but if I call tool number 2 in the spindle using M6, it should display an error message.
(abort, tool changer in wrong position)
but as said before, it executes the tool change program, so the current tool in the spindle is inserted into pocket number 16 or the pocket immediately in front of it. Whereas in the M6 remapping I did insert the condition
when my button is pressed, the carousel shows tool 1 in front of the slot, so tool 16 in front of the spindle, to avoid having to press jog 15-16 times to be in front of tool number 1.
the mini-program (MDI_command) is as follows:
o<button_home_carousel> sub
; Move carousel section
;o900 IF [#<current_pocket> NE 16]
M68 E0 Q16 ;set the carousel to move to the right pocket
M64 P0 ;Enable Carousel
G4 P2 ; Wait 2 seconds
M66 P0 L3 Q120 ; wait for carousel-ready = true
o203 if [#5399 LT 0]
(abort, carousel not finished)
o203 endif
M65 P0 ;Disable carousel enable
;o900 ENDIF
o<button_home_carousel> endsub [1]
it shows tool number 1 in front of the slot, but if I call tool number 2 in the spindle using M6, it should display an error message.
(abort, tool changer in wrong position)
but as said before, it executes the tool change program, so the current tool in the spindle is inserted into pocket number 16 or the pocket immediately in front of it. Whereas in the M6 remapping I did insert the condition
o103 if [#<tool_in_spindle> NE #<current_pocket>]
(abort, tool changer in wrong position)
o103 endif
Please Log in or Create an account to join the conversation.
- smc.collins
- Offline
- Platinum Member
Less
More
- Posts: 676
- Thank you received: 117
19 Feb 2024 20:01 #293782
by smc.collins
Replied by smc.collins on topic Tool_in_spindle probleme with current_pocket
That's precisely how the random tool changer option behaves the system manages tools and pockets.
Please Log in or Create an account to join the conversation.
- polobear189
- Offline
- New Member
Less
More
- Posts: 15
- Thank you received: 0
23 Feb 2024 00:37 #294038
by polobear189
Replied by polobear189 on topic Tool_in_spindle probleme with current_pocket
Did you change it to random tool changer?
Please Log in or Create an account to join the conversation.
27 Feb 2024 22:17 #294648
by greg23_78
Replied by greg23_78 on topic Tool_in_spindle probleme with current_pocket
yes, sorry, I've just tried it out and it works perfectly!
But I have some questions to improve the M6 remap.
I tried to save tool number in var file and load on start like this link below but it doesn't work.
forum.linuxcnc.org/38-general-linuxcnc-q...le-and-load-on-start
during M6 at the end of my macro I inserted #4999=#5400
I get the information back when I restart linuxcnc and press home all because I integrated a mdi command to enable the carousel to do this homing procedure and at the end I insert the M61 Q#4999 command.
When I change tool, my variable is always 0 (the variable must not be implemented) and this causes me a lot of problems because I don't have tool number 0.
So my .var file never shows 4999 and 5400 after closing linuxcnc.
Finally, what variable can I use to make it understand that there was no tool in the spindle when linuxcnc was closed?
But I have some questions to improve the M6 remap.
I tried to save tool number in var file and load on start like this link below but it doesn't work.
forum.linuxcnc.org/38-general-linuxcnc-q...le-and-load-on-start
during M6 at the end of my macro I inserted #4999=#5400
I get the information back when I restart linuxcnc and press home all because I integrated a mdi command to enable the carousel to do this homing procedure and at the end I insert the M61 Q#4999 command.
o<home_carousel> sub
; Move carousel section
;M68 E0 Q1 ;set the carousel to move to the right pocket
M64 P0 ;Enable Carousel
G4 P2 ; Wait 2 seconds
M66 P0 L3 Q120 ; wait for carousel-ready = true
o203 if [#5399 LT 0]
(abort, carousel not finished)
o203 endif
M65 P0 ;Disable carousel enable
M61 Q#4999
o<home_carousel> endsub [1]
When I change tool, my variable is always 0 (the variable must not be implemented) and this causes me a lot of problems because I don't have tool number 0.
So my .var file never shows 4999 and 5400 after closing linuxcnc.
Finally, what variable can I use to make it understand that there was no tool in the spindle when linuxcnc was closed?
Please Log in or Create an account to join the conversation.
30 Mar 2024 15:45 #297216
by greg23_78
Replied by greg23_78 on topic Tool_in_spindle probleme with current_pocket
i'm reopening the post, after several attempts with the random tool change and having quite a few problems with the positioning of the tools, i've gone back to non-random toolchanger. however, i'm having the same problem as at the beginning of the post.
Is there a way to make this little program work in non-random toolchanger?
Is there a way to make this little program work in non-random toolchanger?
o110 if [#<tool_in_spindle> NE #<current_pocket>]
M68 E0 Q#<tool_in_spindle> ;set the carousel to move to the right pocket
M64 P0 ;Enable Carousel
G4 P2 ; Wait 2 seconds
M66 P0 L3 Q120 ; wait for carousel-ready = true
o111 if [#5399 LT 0]
(abort, carousel not finished)
o111 endif
M65 P0 ;Disable carousel enable
o110 endif
Please Log in or Create an account to join the conversation.
- smc.collins
- Offline
- Platinum Member
Less
More
- Posts: 676
- Thank you received: 117
30 Mar 2024 16:10 #297220
by smc.collins
Replied by smc.collins on topic Tool_in_spindle probleme with current_pocket
no idea, I gave up messing with carousel and just wrote a custom hal component to manage my tool changer and My machine is not set in random.
Please Log in or Create an account to join the conversation.
Time to create page: 0.099 seconds