Hi,
The question that i have: Is Mach 4 the same, or are these problems fixed?
Overall Mach4 operates in very similar manner to Mach3, so no Mach4 has not, nor can it, solve that problem.
The issue is that Windows is not a realtime operating system and as a consequence all motion commands are buffered
by the controller, by sometimes as little as 50milliseconds but can be as much as 500milliseconds.
If a power outage occurs then the contents of the buffer are lost, and so Mach does not know exactly where the machine is,
which is also called 'loss of reference'. Thereafter you will have to Home the machine to re-establish reference, but that means real
trouble trying to pick up a job that you were part way through.
All Windows based CNC software solutions use the buffered motion model...in effect this is forced on them by the way Windows operates.
Industrial controllers however are realtime devices so that at any given instant the machine knows exactly where it is and there is no positional
loss at an unforeseen shutdown, excepting perhaps the axis motor deceleration due to inertia for which the motion controller can no longer track.
I can think of only one way that you could maintain reference across a power interrupted session would to be to use absolute encoders with
battery backup. This is more a hardware solution than it is about Mach or any other controller. Many servo manufacturers are offering absolute encoders,
sometimes so called multi-turn encoders and many with battery backup.
You will often see then advertised as 24bit, sometimes 27 bit and even 30 bit encoders.
Imagine you have a 24 bit multi-turn encoder, its possible to use 8 bits to record the number of complete revolutions from the home position and the
remaining 16 bits to record the angular position within that one revolution. Additionally should the power drop out the battery or supercap backup will hold
the data until power is restored, up to many months later. At repower the machine would know exactly where it is WITHOUT having to re-home.
I suspect that for the data to be accurate the power to the servo, or more importantly and correctly, the encoder assembly would need to remain
un-interrupted until the machine had decelerated or coasted to a stop, but within that exception the machine would retain accurate machine coordinates
across machine power cycles.
If I'm not mistaken Delta A3 series servos are of this type.
This is the only way to my knowledge that Mach4 can maintain accurate machine coordinates across different sessions, and I believe it is the exact same
method that pro controllers use also, but I'm not familiar enough with them to be 100% on that.
Craig