This article applies to:
Assume X axis, could be any axis, the procedure will work for any axis with suitable modification.
1. Set up a fixed point. Can be the edge of a vise jaw or a pin or block attached to the table.
2. Set up a dial indicator (“.0001” preferable). Use a magnetic base to head / spindle assembly.
3. Set up part zero same as you would for a part program.
4. Set indicator to read 0.0000” against the fixed point.
5. Jog X away from part zero.
6. Program the control to position away from part zero then to return to zero (Auto Run Mode).
7. Program a stop block at part zero to read the indicator. Record the indicator reading.
8. Modify the program to do multiples passes (10 or more) before stopping.
If the error continues to grow in the same direction, you most likely have a bad encoder.
If the error remains in a fixed range, say (+/- .0150”); Visually inspect the mechanical set up of the axis thrust bearings.
Check the endplay on the ball screw, at the motor end if possible. This can done by setting an indicator against the end of the ball screw and jogging the axis back & forth. You should have 0.0003 to 0.0005” in most cases.
Using grease to stick Ball Bearing to the screw end will give a better reading.
Also check for play in the ball nut assembly. This can be Done by jogging the axis up to an indicator affixed to the spindle / head, load the indicator to 0.010” to 0.015”. Record the displayed axis position. Slowly jog away from the indicator until the indicator just shows a change in axis position. Calculate the change in displayed position (subtract the two readings.)
How far does the control indicate the axis has moved before the indicator reports change?.
This is the amount of error in the ballscrew & nut assembly. Less than 0.0003” to 0.0005” is normal.
The control can compensate for a small amount of error, as long as the error is stable. If the error varies from move to move replace the ball screw & nut assembly.