Automatically Deselecting Tools When Homing
-
On the Jubilee X and Z homing fails if a tool is currently selected for mechanical reasons. It would be convenient to be able to deposit the tool if the axes were sufficiently homed before issuing the command.
My question is, is it possible to issue a home#.g command without having the axes automatically forgotten.
-
I'm not sure if an axis is marked as not homed as soon as you call any home*.g file but I would suspect so.
However it's relatively easy to check if a tool is currently selected within any of the home*.g files and if so run a macro to drop the tool before carrying out the remainder of the macro, or cancel out.
The macro to drop the tool may need to search for an end stop and use relative moves to find the docking station (assuming the axis is no longer homed)
Naturally it would have to issue M564 H0 if it is no longer homed. -
@OwenD said in Automatically Deselecting Tools When Homing:
I'm not sure if an axis is marked as not homed as soon as you call any home*.g file but I would suspect so,,..........
Not quite. Axes get marked as homed when the relevant end stop triggers doing a G1 H move.
-
@deckingman said in Automatically Deselecting Tools When Homing:
@OwenD said in Automatically Deselecting Tools When Homing:
I'm not sure if an axis is marked as not homed as soon as you call any home*.g file but I would suspect so,,..........
Not quite. Axes get marked as homed when the relevant end stop triggers doing a G1 H move.
That's true, however you've misread my statement.
I was saying that even a previously homed axis will be marked as unhomed as soon as you call G28 X or Y.
Therefore to do what the OP wants he would need ensure all moves to unload the tool take that into account. -
on my tool changer I have the endstops for x and y positioned so I can home them with and without a tool fitted.
I then have a switch installed on each tool and as part of the start up of the machine, I check whether any of them are activated. If they are, the homes in x and y and then docks the appropriate tool. -
@OwenD You are quite right - I did misread your statement - apologies.
-
So the problem was fixable using meta commands. Specifically
if state.ccurrentTool != -1
G92 X{move.axes[0].userPosition}
T-1The userPosition doesn't get reset when G28 is called, so it can be used to restore position.