1997 Fadal VMC 6030 (AC servo motors)
When running a large program via DNC, its programmed for a rapid Z axis move up to clear the piece, and then X and Y move to another location.
However about once a month during the Z axis rapid move, it does not go up high enough to clear the piece, short by 1-2" and then it crashes badly and breaks off the tool. The program has been checked, no iussues. If the rapid knob is turned down to 50% from 100%, its seems ok.
The operator confirmed that it only does this on Z axis during a rapid move, when rapid it set to 100%.
I assume you have Z box ways. If this is the case, check the Turcite on the Z axis head. It might be getting very thin and you could be running metal to metal or close to it. I ran into a similar problem with a local machine a few months back and it turned out to be excessive stiction (sticky, friction). This creates a small lag in getting to the exact physical position commanded before processing the next block of code.
Here are some suggestions: Have a trained Fadal technician re-adjust your Z axis gibs and straps properly. If the top is loose, the weight of the head creates excessive pressure on the lower level turcite, gibs and straps and will cause excessive stiction and thus mispositioning. With everything adjusted properly, the load is evenly distributed on the Z axis gibs and will likely fix your problem if that was the problem.
Another thought: Check the Z axis motor coupler for any loss motion and properly adjust your Z axis backlash. Maybe there is excessive backlash in the Z axis and when reversing from the commanded minus position, it's not getting to the commanded position to clear your parts. Replace the coupler with a bellows style if you have a coupler problem. They are a zero backlash coupler and much better than the Fadal OEM couplers over the long run. FadalCNC.com has them in stock.
Ok, one more idea: If all else fails, command an exact stop in the block of code that you use to move your Z up and clear your part. This will keep your machine from processing the next block of code until the Z axis has absolutely reached it's commanded (or at least thinks it's reached) position.
These ideas will either fix your problem or give you the tools to figure out what it is anyway.