Makergear M2 Z-axis Backlash Numbers

Clamping a long-stroke dial indicator to the M2’s X axis gantry:

Dial indicator - gantry to M2 Y rail
Dial indicator – gantry to M2 Y rail

Then stuffing manual G-Code into Pronterface produced some data on Z-axis accuracy, repeatability, and hysteresis:

M2 Z-axis positioning measurements
M2 Z-axis positioning measurements

Note that the commanded positions are in 0.001 mm units (25 = 0.025 mm) and the observed positions are in mils (1 = 0.001 inch). The arrows indicate which way the stage moved, with positive Z increments moving the stage down.

I summarized this as part of a discussion on the Makergear Google Group

The overall distance seems to be quantized at 0.0150 mm = 6 step intervals. You can command a motion between those steps (G0 Z0.0025, G0 Z0.0075, etc), but the motor doesn’t turn until the distance exceeds the next interval (G0 Z0.0150 causes motion). This isn’t stiction, because the firmware isn’t activating the motor.

Stepping up and down in 0.025 mm increments (10 steps, but not an even multiple of the 6 step quantization intervals) over a 0.100 mm range produces about 0.01 mm = 4 steps of backlash. Some of that definitely comes from the quantization interval, but it’s not consistent, so there’s also mechanical backlash.

Frankly, that’s better than I expected, but any motion less than about 4 steps probably won’t happen and the errors are on the same order. Whether the firmware itself can compute and apply a smaller motion isn’t clear.

The controller doesn’t know where the platform is, at least in an open-loop stepper system. That means when the commanded motion is on the same order as the backlash, the controller can’t make the proper adjustments. As long as the positioning error remains smaller than the tolerance, it’s all good; expecting 0.020 mm resolution and accuracy seems reasonable.

But it’s only a quick-and-dirty test, so I wouldn’t read too much into it.

6 thoughts on “Makergear M2 Z-axis Backlash Numbers

  1. I am looking forward to measuring and calibrating out the error in a delta printer… I am pretty sure that will involve a contact probe and a 123 block. I’ve seen the graphed error for a delta printer just based on mathematical ideal versus the integer actual an ideal stepper motor gives you and it is pretty interesting. The Deltamaker guys think they are clever using a little snap probe to level the bed. That doesn’t begin to take into account the effects of non-perpendicularity of the tower arms, the (non) precision of micro-stepping or unequal lengths of the connecting rods. I pointed this out to them but I guess they were unimpressed.

    And by “looking forward to”, I think I mean like I look forward to dental visits. Such that I just may pretend there is no problem…

    1. I pointed this out to them but I guess they were unimpressed.

      I feel your pain… [grin]

      A delta printer seems to have many moving parts, each introducing a wee bit of slack, that make it difficult hold the nozzle within (say) ±0.050 mm tolerance at operating speed. Doing a static compensation will get it pretty close and the rest is up to good design: the spherical bearings on the arms look pretty good; measure the end-to-end backlash!

      I want to know how well that Bowden-style extruder works in comparison with a direct drive extruder. The fact that the platform evidently can’t handle the weight of a geared stepper suggests the whole affair is under-powered or under-stiff; I’d love to be proven wrong.

      1. I am not actually certain the platform can’t handle a direct drive extruder, I see a lot of stiffness in the design. The primary limiter, I think will be that the the steppers are directly driving the belts that position the arms. That requires an immense amount of torque. Lead screws or a gearbox would probably provide the necessary torque multiplication. I suspect that backlash in the drive mechanism will not be a problem because the weight of the platform should take it up unless you move so fast that inertia causes the arm sleds to jump. Good trapezoidal moves should prevent that.

        1. steppers are directly driving the belts

          That’s what I meant: there’s not quite enough oomph in the drives to sling a heavier platform. Has anyone proposed putting counterweights on the columns to null the static downward force?

        2. But then I’d have to deal with backlash. :-) It had occurred to me. My mill has pressurized hydraulic pistons to provide some relief and I’ve seen to counterweight retrofits that are needed for CNC conversions. I’d actually prefer gearing down the steppers because I just don’t think there is enough available precision to calibrate out the inaccuracy in the machine, as it stands. Maybe both are called for.

          1. The Sherline Z-axis counterweight works wonderfully well, but the backlash isn’t anything to brag about. On that printer, you’d want guides to control the weights and it’d be seriously Steampunk by the time you were done…

Comments are closed.