Question about setting the Z=0 datum
-
@o_lampe said in Question about setting the Z=0 datum:
@fcwilt If you want to safe time, you can use G1 X0 Y0 Z{dive-height + safety margin} and then do a short G30
It wasn't time I was thinking of.
Rather that when using a G1 and then a G30 the G1 has to take into account the X and Y probe offsets.
A G30 with P, X, Y and Z allows you to specify the desired probe position directly - making things a little bit cleaner and simpler.
I have asked on more than one occasion to allow for G30 Xn Yn syntax (without the P or Z) to obtain the same simplicity.
Thanks.
Frederick
-
@fcwilt me too. Would be Nice that G30 without the P Parameter Takes the Offset Into Account
-
@pcr said in Question about setting the Z=0 datum:
@fcwilt me too. Would be Nice that G30 without the P Parameter Takes the Offset Into Account
I just got the notion tonight just to see what a single G30 P0 Xn Yn Z-99999 would do.
As I mentioned it seemed to work but I need to verify it is actually setting the logical Z position as a "normal" G30 does.
And doesn't have some horrible side-effects ready to cause havoc.
Frederick
-
@fcwilt I'm missing something here but that's probably because I don't use G30 when I probe the bed. What problem does G30 give you?
-
@deckingman said in Question about setting the Z=0 datum:
@fcwilt I'm missing something here but that's probably because I don't use G30 when I probe the bed. What problem does G30 give you?
It's not a problem really - more of an inconsistency.
When you use G30 in the G30 Pn Xnnn Ynnn Z-99999 form the X and Y parameters specify the point to be probed. The firmware does the math taking into account the X and Y offsets of the Z probe.
But to do a single G30 as used when setting the Z=0 Datum there is no G30 Xnnn Ynnn form, just G30.
So you have to use a G1 Xnnn Ynnn before the G30. But the X and Y parameters of the G1, of course, are specifying the location of the nozzle, not the probe. So you have to do the math yourself to account for the X and Y offsets of the probe.
With the meta commands and object model of v3.3 and later firmware you can compute the values and use something like this to position the probe - in this example the position is the center of the bed.
G1 X{((move.axis[0].max + move.axis[0].min) / 2) - sensors.probes[0].offsets[0]}, Y{((move.axis[1].max + move.axis[1].min) / 2) - sensors.probes[0].offsets[1]}, Fnnnn
But that is not exactly simple and clean.
So my "wish" is to have the ability to use the form G30 Xnnn Ynnn to do the single probe where the math is done for you and the X and Y parameters specify the position of the probe.
Not a huge issue to be sure but it would seem to be a simple enhancement given that the form G30 Pn Xnnn Ynnn Z-99999 already does the math and positions the probe at the specified XY point.
Thanks.
Frederick
-
@fcwilt Ahh, I see - thanks.
(Using the nozzle as a probe makes life so much easier as there are no offsets to worry about..................
)
-
@deckingman said in Question about setting the Z=0 datum:
(Using the nozzle as a probe makes life so much easier as there are no offsets to worry about..................
)
Use the nozzle as a probe? How is that done?
Thanks.
Frederick
-
@fcwilt said in Question about setting the Z=0 datum:
Use the nozzle as a probe? How is that done?
Thanks.
Frederick
Probably the easiest way to explain it is this recent YouTube video of mine. The "t=118s" time stamp at the end of the link should take you straight to the relevant part.
-
@deckingman said in Question about setting the Z=0 datum:
Probably the easiest way to explain it is this recent YouTube video of mine. The "t=118s" time stamp at the end of the link should take you straight to the relevant part.
Thanks. That was very interesting.
It seems to be well thought out and well made.
Are you a machinist by trade?
Did you consider using some sort of optical sensor for detecting the hotend movement?
Thanks.
Frederick
-
@fcwilt said in Question about setting the Z=0 datum:
Thanks. That was very interesting.
It seems to be well thought out and well made.
Are you a machinist by trade?
Unless you count 2 years in a machine shop as part of my apprenticeship from 1969 to 1971, then no.
Did you consider using some sort of optical sensor for detecting the hotend movement?
No. Because I had to make a physical stop for the hot end, then it was easier to make that physical stop also be the electrical switch. That way, there are no issues with alignment, offsets, hysteresis or anything else. Two metal plates either being in contact or not, makes arguably the simplest and most reliable switch known to mankind.
As soon as the bed start to lift the hot end, that is truly Z=0. I just have to always heat the hot end to around 140 deg C to soften any plastic which may have oozed because that would otherwise give a false zero.