Hi,hello and thank you very much for the reply!!
that won't really help much with the loss of reference however.
That's what happens if Mach crashes, you Estop or the power gets turned off. When you turn Mach back on it does not know where it is, really the numbers
from the last session are of dubious value, what happens if the machine has shifted between sessions? Also if Mach crashes or the power gets turned off what are the
chances that Mach can record it current position BEFORE it crashes/stops completely?
Loss of reference is a fact of life with Mach....and in fact MOST CNC machines. Any CNC machine that is either open loop, like Mach3/open loop steppers, OR, incremental encoder, like many servos,
when the machine is powered up it has no way to know where it is. You need to 'Reference' or 'Home' the machine to some defined and exactly repeatable position at the start of every session.
If you are lucky/wealthy enough to have servos with multi-turn absolute encoders, then when the machine powers up it knows exactly where it is. But the if you're wealthy enough to have servos
like that why are you pissing about with Mach3?
Craig
but rather assume it is at zero on startup
yes, <Ref All> and in the homing page set all three axes to Home In PLace.
Hi,awe snap... shame on me for making you repeat... that went over my head. You are saying that if I set home in place is an option somewhere and it will default to zero on startup if I'm reading that right. thank you very much.Quotebut rather assume it is at zero on startup
Then the procedure is:Quoteyes, <Ref All> and in the homing page set all three axes to Home In PLace.
As I posted earlier, then set your work coords via a G54 or <Zero All>. If you have not previously recorded your G54 then you may be in trouble.
Craig
You are saying that if I set home in place is an option somewhere and it will default to zero on startup if I'm reading that right
Hi,roger that. sorry if I am thick... but just to be clear... if we have <ref in place> set for each axis... and we drive to the center of our workpiece and set all axis to zero... then we hit <ref all>... shutdown mach3, restart mach3... it should come up with mach3 displaying zero for all 3 axis?QuoteYou are saying that if I set home in place is an option somewhere and it will default to zero on startup if I'm reading that right
Not quite, but close. If you set Home in Place for all three axes then as the name suggests the if you <Ref All> the machine coordinates will all zero themselves
at the machines current location rather than driving all around looking for Home switches.
So the procedure is:
1) Power the machine up and Enable
2) <Ref All>
So this will mean that the machine coordinates are all now at zero at the machines current location. You now have to set the Work Coordinates, either using a previously saved G54
or by <Zero> for each axis. This last method assumes that the location at which you <Ref All>, ie machine coordinate zero, IS ALSO THE WORK COORDINATE ZERO.
Craig
. and we drive to the center of our workpiece and set all axis to zero... then we hit <ref all>... shutdown mach3, restart mach3... it should come up with mach3 displaying zero for all 3 axis?
Hi,well thank you very much for the detailed info. at the least you've clarified a lot of things there and I appreciate you taking the time. Honestly, hearing all that... finding my zero, returning to it... and remembering to zero all 3 on startup seems like fewer steps. I hope I don't offend with that comment, because I really do appreciate the info and it will likely be even more valueable in the long run. It does detail for me... that the only automated way to really return to a point is setting up limit switches.Quote. and we drive to the center of our workpiece and set all axis to zero... then we hit <ref all>... shutdown mach3, restart mach3... it should come up with mach3 displaying zero for all 3 axis?
No, as I said earlier Mach cannot save its position between sessions, or at least not directly.
For users who have a defined and repeatable home position, it works. If you have home switches then at each and every start-up you <Ref All> and that would drive to the home
switches and set the MACHINE COORDINATES to zero. You would now jog to the centre of the part and <Zero> each axis . Now the WORK COORDINATES would display zero and the G54 data
would reflect where the Work Zero is relative to the Machine zero. If you shut down properly the G54 should be saved on exit.
At the next session you power up and <Ref All> per normal, ie your machine drives to its exactly and repeatably defined Home location. Now you can MDI, using G54, to the Work Zero.
That would put the machine exactly back at the workpiece zero position. But note this requires the the machine be able to UNIQUELY and REPEATABLY go to its home position
You can see that all this absolutely requires that you can drive the machine, either manually by jogging or by using Home switches, to a defined location. If you can't do that you're screwed.
There are a couple of workarounds that will do what you want, but they are a distinct procedure. I used to do it myself years ago, and if you followed the procedure perfectly it worked,
forget even one step and it fails.
Then I fitted good Home switches and I've never had a problem since. Also with a good homing procedure, ie Home switches, then Soft Limits work properly and they have saved my ass countless times before,
and still do.
The procedure is:
1) Drive to the Work Zero point of the part in the vice.
2) <Ref All>, with Home in Place set on each axis
3) <Zero> each axis in turn. This should set G54 as 0,0,0. That is to say that prior to shutdown the Machine Zero is exactly coincident with the Work Zero, and therefore G54=0,0,0
4) Depower the machine.
At the next session:
1) Power up and Enable
2) WITHOUT JOGGING OR ANY OTHER MOTION <Ref All>. This, provided the machine has not moved at all since the last session, will put the Machine Zero exactly where you left off last time.
3) Either <Zero> each axis, this will put the Machine Zero coincident with the Work Zero. You could use G54, but if you followed the shut-down procedure then G54 should be 0,0,0, the two methods should
result in the exact same thing.
Craig
that the only automated way to really return to a point is setting up limit switches.
Hi,thanks again for the thoughtful reply. I actually have switches setup at the ends of x and y and the top of z. just haven't bothered to wire them up. In the year I've been running cnc I had a lot of issues early on that caused a few months of downtime, so right now admittedly a bit gun shy of any changes near my controller! I know I will eventually set them up... but not quite there yet. again, very much appreciate you taking the time!Quotethat the only automated way to really return to a point is setting up limit switches.
Correct. However I would not call them Limit switches, these switches set the HOME position, they don't have to be at the limits. It is common to put them at the end or nearly the end of an axis but you don't have to.
For many years I ran my mini-mill without limit switches, but I did have Home switches, which were indeed a few mm from the ends of the axes. They were the best single addition I've ever made to my
machine. It meant that I could reliably start my machine and pick up from where I left off yesterday and also that Soft Limits worked properly. Given that I didn't have Limit switches having reliable
Soft Limits saved my bacon many many times.
My new build mill has six limit switches, one for each end of the three axes, and another three Home switches, close to the ends but not at the ends. They all have separate inputs, so if a switch activates
I know exactly which switch.
I can live without Limits but you really need Home switches.
Craig
If you don't have homing switches or a unique and repeatable machine home position, it can indeed be challenging to ensure that the machine is always in the same starting position between sessions.thanks for the reply. this was quite a while ago, but literally in the last week finally got my home switches setup... and setup G59 offset.
In such cases, one workaround is to use a fixture or a physical reference point on the machine table that you can reliably return to at the start of each session. This reference point can serve as a pseudo-machine zero, allowing you to maintain the relative position for your work zero coordinates.wordle (https://wordle2.io/)