Manual tool change problem
- derekmac
- Offline
- New Member
- Posts: 16
- Thank you received: 1
Oops - seems I was clicking on the wrong bit of the attachment button when trying to look at it.
Please Log in or Create an account to join the conversation.
- MaHa
- Offline
- Platinum Member
- Posts: 390
- Thank you received: 155
Please Log in or Create an account to join the conversation.
- curtisa
- Offline
- Premium Member
- Posts: 88
- Thank you received: 15
If I have two tools set up in Axis with their lengths defined in the tool table as T1 = 20mm and T2 = 15mm, and then switch between two different tools in Axis (M6 T1 and M6 T2) the display of the tool changes to match each tool length, but the lowest Z- extremity of each tool remains at the same position. Axis assumes that each tool reaches the same amount from the collet, but the cutting length itself is what changes. That probably also explains why Axis does not attempt to physically move the Z axis on the machine when the tool changes to compensate for any apparent differences in tool length.
If you have room on your machine to add a touchoff plate, have a closer look at the post I linked to earlier for manual toolchange. You could probably even rig the subroutines to use a portable touchplate that you place on top of the work piece prior to each toolchange, and move out of the way after each touchoff has finished. The mentioned subroutines and remapping of the M6 toolchange command should allow you to perform multiple manual tool runs within the same G-code file without worrying about setting a precise tool height every time you insert a new tool in the collet.
Please Log in or Create an account to join the conversation.
- JohnnyCNC
- Offline
- Platinum Member
- Posts: 543
- Thank you received: 100
You could probably even rig the subroutines to use a portable touch-plate that you place on top of the work piece prior to each tool change, and move out of the way after each touch-off has finished.
My portable touch-plate has a button on it that when pressed started the subroutine. The subroutine probes the Z slowly down until contact then moves one inch up. But, I still need to got the tool to when I am placing the touch-plate and that is what I have heard that you can't do while the program is paused for the tool change. I have not tried to do it myself. I actually find the separate files convenient when the operation doesn't yield the expected result like a chamfer that is too small. I just tweak it in Fusion 360 and run the new post.
John
Please Log in or Create an account to join the conversation.
- curtisa
- Offline
- Premium Member
- Posts: 88
- Thank you received: 15
I can't remember the exact sequence, but when called the manual toolchange sub is something along the lines of:
1. the current X/Y/Z position of the G-code is stored
2. the Z-axis retreats to a safe height (specified by the user)
3. the user is requested to insert the new tool in the collet, after which you press the 'play' button in Axis.
4. the cutter is then moved to a new position to begin the probing operation, where your touchplate is positioned (absolute X/Y co-ordinates user-specified relative to the machine's home position, feedrate user-specified).
5. the Z-axis moves down towards the touchplate until contact is made (feedrate user-specified). It retreats by a fixed amount (user-specified) and advances again at a slower feedrate (user-specified) to measure a second time.
6. The Z value obtained from the probing operation is stored and used to offset every subsequent Z move in the G-code.
7. The tool returns to the stored position from when the G-code was halted after issuing the M6 command, minus/plus the difference in tool length as appropriate and the original code continues.
Issuing another M6 later on in the G-code does the same process again.
Please Log in or Create an account to join the conversation.
- derekmac
- Offline
- New Member
- Posts: 16
- Thank you received: 1
With this version the mill Z-axis appears to be moving to the correct position for the positive tool length offset in the tool table.
My only problem is that the tool change move is going the wrong way - below the material rather than to the top of the Z column.
I have tried a lot of the suggestions with no effect. All tool change commands are preceded by a G0G53X0Y0Z0 line - the Gcode file is generated by my Dolphin PartMaster software.
Edited out the G53 to see if it made any difference - no effect except at the end of the file where a similar line now edited to G0X0Y0Z0 now returns to Z0
Ran the MDI command G0G53Z0 and it lowered the Z-axis to minus the TLO
Is there an M code to pause the program that returns control to the user? I cannot find one and AXIS stubbornly greys out the control buttons during an M6
My mill does not have switches or probes (though I guess I could rig up a probe) so it would be easier (possibly) if the Touch off button was available during an M6 replacement, maybe I could then bypass the M6 action?
I am running out of time on this as I need the mill to make some parts for a Gauge 1 (1/32 scale) real steam locomotive I am building - I need to take the prototype to an exhibition on 22nd October and it would be nice if it was actually working by then.
Please Log in or Create an account to join the conversation.
- MaHa
- Offline
- Platinum Member
- Posts: 390
- Thank you received: 155
You didn't mention how you home Z axis.Toolchange Position is related to machine home/G53.
Do you touch off Z with the home button? It could help to edit TOOL_CHANGE_POSITION = 0 0 3 (x y z) Z to a value, greater than the longest tool used. Take care to avoid hit hard Limit (MIN_LIMIT = -99 MAX_LIMIT = 99 for all axis is far outside your machine).
Please Log in or Create an account to join the conversation.
- JohnnyCNC
- Offline
- Platinum Member
- Posts: 543
- Thank you received: 100
Please Log in or Create an account to join the conversation.
- curtisa
- Offline
- Premium Member
- Posts: 88
- Thank you received: 15
Ran the MDI command G0G53Z0 and it lowered the Z-axis to minus the TLO
My reading of that is that you have a mixup of touchoff and home position.
G53 should instruct Axis to make the following move (Z0) in absolute coordinates, ie return the Z axis to the position you defined as Z=0 when you homed the machine. I'm not at my milling PC at the moment to confirm the behavior, but I suspect you've subsequently touched off to at Z= +somethingoranother, hence when issuing G53 Z0 the DRO then appears to go negative instead of to zero.
Is there an M code to pause the program that returns control to the user? I cannot find one and AXIS stubbornly greys out the control buttons during an M6
No, unfortunately, and inserting a code that allows a user to manually and arbitrarily change the position of the axes in the middle of a program seems a little counter-intuitive.
M6 is a command that waits for the user to do something before proceeding any further, so it makes sense to prevent anything else from happening until the user gives the OK (short of stopping the G-code outright).
My mill does not have switches or probes (though I guess I could rig up a probe) so it would be easier (possibly) if the Touch off button was available during an M6 replacement, maybe I could then bypass the M6 action?
Without homing switches and/or a probe and a collet that offers tool height indexing it's going to be difficult to get this to work without resorting to splitting the job into multiple G-codes per tool. I'm not sure I can see another way around it.
Please Log in or Create an account to join the conversation.
- derekmac
- Offline
- New Member
- Posts: 16
- Thank you received: 1
I got into bad habits with the Taig software + non-repeatable tool lengths - a lot of manual shifting of Z axis with the controller turned off to get the tool into the right position. Never did really try to use the mill with Mach3.
Thanks for all the attempts at help so far. Maybe if someone can try the files I attached earlier - that could perhaps eliminate some potential sources of error.
Cheers
Please Log in or Create an account to join the conversation.