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.

You are viewing a single thread.
View all comments
53 points

In addition to the other points made… steppers maintain full torque even when it’s not moving, so it’s better at braking tool heads.

Also? Steppers have a higher precision to a servos higher speed and torque (but torque that’s not constant.)

Finally they have a better response time. This isn’t the speed, so much as the speed that control inputs are reflected. Imagine all the tiny wibbles a printer makes during infill, the changes in direction would be sloppier with a servo.

permalink
report
reply
6 points

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.

permalink
report
parent
reply
4 points
*

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.

permalink
report
parent
reply
1 point

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.

permalink
report
parent
reply
4 points

Closed loop steppers exist with the benefits of both worlds.

permalink
report
parent
reply
2 points

But steppers can also be servo driven if encoder is providing feedback. Right?

Im not expert, but afaik servo driven DC motor is more expensive and more complex to drive compared to stepper motor approch. I think we also need open source firmware that supports servo control (maybe it exists already Im not sure)

permalink
report
parent
reply
2 points

back in the day before BLtouch existed, my printer used a servo to deploy a bed probe. Marlin definitely can control a servo. (That was on a ramps board with no extra shields, too)

permalink
report
parent
reply
1 point

That’s a big difference between deploying a probe and handing the dynamic deceleration required for a high speed gantry move.

permalink
report
parent
reply
1 point

I think you’re talking about those RC servos, no?

permalink
report
parent
reply
6 points

Steppers have a higher precision to a servos higher speed and torque (but torque that’s not constant.)

Just trying to understand this. Then how come all CNC precision machines use a servo instead of a stepper? I mean there are some ridiculously accurate machines that can position itself over and over varying under a micron (<.001mm) but the manufacturers choose servo over stepper. Is it for the sake of holding torque that servos have to be used over steppers?

permalink
report
parent
reply
11 points

All the DIY CNC machines I’ve seen use larger stepper motors. The commercial CNC machines I’ve seen can cost $10,000 to hundreds of thousands.

permalink
report
parent
reply
6 points
*

It seems like the argument is that at the lower price bracket, stepper motors offer higher performance than what a equivalently priced servo+encoder+controller combo can perform.

I felt like what I was reading in this thread wasn’t matching up with that I see out in industry… concerns about ‘price’ didn’t come up until your post.

Diamond turning machines are inherently low torque, low speed, AND nanoscale operations which uses servos for driving its respective axis. See precitech -youtube and in stark comparison Roeder’s 5axis optical mold machining. Wire EDM’s were all driven by servo motors until linear motors became popular. Even those famous JingDiao test samples are made on machines driven by servos.

permalink
report
parent
reply
-2 points
*

That’s actually exactly my point, steppers are objectively inferior to servos when it comes to dynamic positioning (which is what 3D printing is), but servos are too expensive compared to performance gains for hobbyists.

permalink
report
parent
reply
3 points
*

I mean, 3-axis robots move at 2000mm/s with 0.01mm accuracy with payloads weighing considerably more than 3D printer toolheads, using servos.

permalink
report
parent
reply
2 points

What’s the cost difference between the two?

permalink
report
parent
reply
4 points

2 km/s? That’s almost Mach 6.

permalink
report
parent
reply
4 points

Yea that’s why you have to wear hearing protection in factories.

permalink
report
parent
reply
1 point

Yeah that was a typo, obviously that was supposed to say mm/s

permalink
report
parent
reply
24 points
*

Yes. 2000m/s and 0.01mm accuracy unfortunately means nothing about acceleration and control.

Knowing your system, you can achieve that with motors that can only accelerate at 0.01m/s² and that cannot brake.

The 2000m/s and 0.01mm accuracy say nothing about the capability of the hardware in the case of multiple sudden direction changes.

That’s like saying “this car has a top speed of 200mph, and can reach any GPS coordinates precisely, so of course it can zigzag from side to side using 160° turns in a one way street at high speeds.”

permalink
report
parent
reply
9 points

The bottleneck is the extrusion and the cooling of the extrusion. Not the transport system.

permalink
report
parent
reply

3DPrinting

!3dprinting@lemmy.world

Create post

3DPrinting is a place where makers of all skill levels and walks of life can learn about and discuss 3D printing and development of 3D printed parts and devices.

The r/functionalprint community is now located at: !functionalprint@kbin.social or !functionalprint@fedia.io

There are CAD communities available at: !cad@lemmy.world or !freecad@lemmy.ml

Rules

  • No bigotry - including racism, sexism, ableism, homophobia, transphobia, or xenophobia. Code of Conduct.

  • Be respectful, especially when disagreeing. Everyone should feel welcome here.

  • No porn (NSFW prints are acceptable but must be marked NSFW)

  • No Ads / Spamming / Guerrilla Marketing

  • Do not create links to reddit

  • If you see an issue please flag it

  • No guns

  • No injury gore posts

If you need an easy way to host pictures, https://catbox.moe may be an option. Be ethical about what you post and donate if you are able or use this a lot. It is just an individual hosting content, not a company. The image embedding syntax for Lemmy is ![](URL)

Moderation policy: Light, mostly invisible

Community stats

  • 2K

    Monthly active users

  • 1.3K

    Posts

  • 17K

    Comments