Why are 3D printers still stuck on stepper motors? Why haven’t we transitioned to servo motors with encoder feedback for positioning?

Is it just too cost prohibitive for the consumer-level? We would be able to print a lot faster and more accurately if we had position feedback on the axes. Instead we just rely blindly on the stepper not skipping any steps when we tell it to move, hoping for the best.

  • Eranziel@lemmy.world
    link
    fedilink
    English
    arrow-up
    7
    ·
    10 months ago

    I disagree with all your points. What kind of servos are you talking about?

    BLDC and AC servos maintain full torque at stop too, and have about 2-3× the torque of a stepper of similar size.

    The only way a stepper can rival a servo for precision is with a high degree of microstepping, which is far from guaranteed positioning with open loop control.

    I haven’t directly compared response time between steppers and servos, but I would be extremely surprised if there’s a significant enough difference to worry about. Most servo-controlled machines are larger and so are designed to accelerate slower than a printer, if that’s what you mean. This is intentional because inertia is a thing you have to worry about, not because the servo reacts to command changes slowly.

    There are valid reasons steppers are used on printers, but it’s not because they have superior performance.

    • KingRandomGuy@lemmy.world
      link
      fedilink
      English
      arrow-up
      4
      ·
      edit-2
      10 months ago

      BLDC and AC servos maintain full torque at stop too, and have about 2-3× the torque of a stepper of similar size.

      Huh, this is true about BLDCs as well? I remember seeing in a video that BLDCs tend to have very poor torque output when stopped and especially when at low speeds (due to very low efficiency requiring too high currents for drivers to supply), whereas AC motors have a pretty much flat torque curve until they get fairly fast. I’d be interested to know if this is true.

      • Eranziel@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        10 months ago

        That sounds like a problem from using too small of a drive. Every torque curve I’ve seen for brushless DC or AC servos is constant torque from 0 to about 75% rated RPM, and then starts to drop off.

        • KingRandomGuy@lemmy.world
          link
          fedilink
          English
          arrow-up
          1
          ·
          edit-2
          10 months ago

          That sounds about right. You can technically achieve full torque at 0 RPM, but the current required for that might be very high (and may not be practical for the small size, power limits, and cost of a 3D printer). I know this is a problem in Asian import mini-lathes - if you run the spindle too slow you won’t get much torque out because the driver can’t supply enough current.