Yet another iteration of nothing
Random header image... Refresh for more!

Category — Stepper Motors

Driving a Ballscrew – Servo vs. Steppers

Excellent example of Servo vs. Stepper vs. Feed Speeds. This is by John Dammeyer, developer of the Electronic Lead Screw Project: Electronic Lead Screw Main Page

…now I did some experiments as a result of this posting subject. I found if I turned the handle for moving the carriage at what was a pretty normal speed it went 10” in about 4 seconds. That means 10 inches in 4 seconds is 2.5 ips or 150 ipm.

If your goal is to replace the lead screw with a ball screw and still be able to traverse as quickly as the rack and pinion while maintaining knowledge of the position to the nearest 0.0005” you need to consider how you drive this lead screw and the pitch of the screw.

Let’s look at a stepper based solution first.
1. Max RPM with a stepper and still decent torque is about 700 RPM.
a. Use 600 RPM to be conservative (10 RPS).
b. 10 uSteps per step results in 2000 steps per rev x 10 RPS is 20,000 steps per second. (Gecko Driver)
c. Resolution is 2000 steps per rev but accuracy is still only to the nearest ½ step so 400 steps per rev.
2. With 400 steps per rev and a target of 0.0005” accuracy a pitch of 0.2” or 5 TPI is required.
3. With 10 RPS we’re moving 0.2”/Rev x 10 Revs/Sec = 2”/second (2 IPS). However, your target is 2.5 IPS or better.
4. This system won’t move the carriage quite as fast as you normally would with the handle.

Now a Servo.
1. Max RPM is usually 3000 RPM and torque is good all the way to the top.
2. Aiming for 750 RPM means a 4:1 belt reduction.
a. 4:1 on the belt though results in 4x the encoder resolution.
b. With a 100 line encoder in quadrature you get 400 lines per rev x 4:1 or 16,000 steps per rev.
c. Accuracy is still 16,000 steps per rev.
3. Stay with a 4 TPI ball screw and 0.2” pitch we resolve (and position) down to 0.0000125” per step.
a. But at 20,000 steps per second from the ELS you can really only turn the lead screw 1.25 turns per second
b. That’s 0.2”/rev x 1.25 revs/sec = 0.25”/second (0.25 IPS). A factor of 10 too slow.
4. I think Gecko has a step multiplier that turns the servo 10 lines for every step in.
a. Now we’re at 2.5 IPS which was the goal.
So: A DC servo Motor with 100 line encoder on a 4 TPI ball screw results in a position resolution and accuracy of 0.000125” with a top speed of 2.5 IPS and a step rate input of 20,000 steps per second.

Please correct my math if I’ve made a mistake.

From: []
Sent: March-19-16 8:29 AM
Subject: [E-LeadScrew] Re: Ball screw question

Though I am not an engineer it looks to me that the stock design of the
leadscrew on this particular lathe looks to be at fault. The leadscrew has a
slot that runs down the entire length of the screw itself that is used to
power the cross feed. The screw was turned and then the slot was milled.
This left many “teeth” that in a relatively short amount of time “cut” away
the half nut. The half nut itself just pushes forward on a lever. There is
no “backing ” at all to support the half nut and in order for it to track a
considerable about of force is applied to keep the half nut engaged.

I doubt it is the design’s fault. Thousands of lathes use this exact
system to drive the carriage and cross slide without and wear issues. The
half nuts stay engage without any extra pressure also. I am wondering if
someone ground the bed and didn’t take the extra time to align the lead
screw with the carriage? I can assure you something else is going on with
your lathe other than the keyway down the center of the lead screw.
Rick in WA State

[Non-text portions of this message have been removed]


Posted by: “John Dammeyer” <>

Reply via web post Reply to sender Reply to group Start a New Topic Messages in this topic (12)

I use a 10.000 count encoder on the servo, and 1:2 belt drive, and 5 mm 
pitch screw.
=> 20.000 counts/rev at screw.
=> 4000 steps/mm.
= 0.25 microns.

This is pretty much the ideal setup.

3000 rpm = 50 revs/sec.
50 revs x 10.000 counts = 500.000 kHz.

So, I must have a hardware timing engine able to pulse at 500 kHz 
(Cslabs CSMIO-IP-S).

End result.
The servo will spin upto 3000 rpm in approx 0.03 secs (20 ms no-load, 
and 20-30 ms with the 100 kg carriage).
This is far too fast, huge wear on belts and screw and ways, and very 
much more than needed.
So, I limit it in sw to something same.

At 1500 rpm at screw, or 25 revs/sec
=> 25 x 5 = 125 mm (==5") per sec.
Movement on z axis is approx 400 mm max.
So, end to end is 3.2 secs.
This is far too fast, so I software limit it to something sane.

Generally, the tools are only about 100 mm from the workpiece, and in 
less than a second the lathe has the potential to crash.
Thats why I normally keep the speeds way down.

The 0.25 micron step size results in real-worl, actual, resolution of 
approx 1 micron, or a bit better.
Hope is to get 0.5 microns, and may (or may not) need ground ballscrews.

Engineering theory and lots of real world examples says 0.5 microns is 
routine, given a sufficiently rigid system.
Thats why I use a very think, 32 mm, ballscrew, because it has very high 
rigidity of 54 kgf/um.

(High precision optronics screws with 0.25 mm rise can position to 0.5 
micron accuracy and several manufacturers quote similar accuracies.
Available from thorlabs, about 70€ each.
Its the kind of thing I will be making).

Accuracy is not, at the moment, 0.5 microns, but in theory and practice 
I will probably get there.
Plan is to add glass scales, and secondary feedback to the CSMIO controller.

At the moment, its possible to do incremental movements to 1 micron.

This means I can make gages, with steps, of 1 micron.
By then measuring the gage, one of the steps will be 49.999 mm.

This will then be what I make bore for, to mount high precision bearings.
(7210AC-DUP-P2. Yes P2 or ABEC 9).

The z axis started working last tuesday, after 300 work hours (this time 
round), and 12 years of development and tries.
Alignment was really hard.

Last TS bracket (not really needed) will hopefully be finished today.

Very Big Grin.
Gonna go make bracket.

On 19/03/2016 17:18, 'John Dammeyer' 
[E-LeadScrew] wrote:
Now a Servo.
1. Max RPM is usually 3000 RPM and torque is good all the way to the
2. Aiming for 750 RPM means a 4:1 belt reduction.
a. 4:1 on the belt though results in 4x the encoder resolution.
b. With a 100 line encoder in quadrature you get 400 lines per rev x
4:1 or 16,000 steps per rev.
c. Accuracy is still 16,000 steps per rev.
3. Stay with a 4 TPI ball screw and 0.2” pitch we resolve (and
position) down to 0.0000125” per step.
a. But at 20,000 steps per second from the ELS you can really only
turn the lead screw 1.25 turns per second
b. That’s 0.2”/rev x 1.25 revs/sec = 0.25”/second (0.25 IPS). A
factor of 10 too slow.
4. I think Gecko has a step multiplier that turns the servo 10 lines
for every step in.
a. Now we’re at 2.5 IPS which was the goal.

So: A DC servo Motor with 100 line encoder on a 4 TPI ball screw 
results in
a position resolution and accuracy of 0.000125” with a top speed of 
2.5 IPS
and a step rate input of 20,000 steps per second.

Please correct my math if I’ve made a mistake.

John Dammeyer
— -hanermo (cnc designs) ———————————— ———————————— ————————————

I think its a fact that microstepping, where you are actually stopping at the microsteps (i.e. using them for resolution) definitely is less torque, simply because the motor cannot hold that position accurately against load. In a dynamic situation however, lots of factors come into play. For example, if the axis is in constant motion the only torque required is to overcome friction and cutting loads, there is little torque required to provide acceleration. Unless the motor is being operated close to its torque limit (at that speed/volt/current combo) then microstepping should have little impact. The general rule I have used is in the spreadsheet is that the motor should provide 3x required dynamic torque at the maximum speed.

Large motors have high inductance so the torque drops off very fast with speed – the corner speed of those motors is 240rpm. I don’t know how big your axis are, but I’m guessing its going to be around 1 – 1.2m? With your 10mm pitch screws 2.5m/min = 250rpm, so that is close to optimal (and 1/8 stepping = 6664steps/sec) and it looks OK at cutting speeds, but its very marginal at 10m/min rapids and that is where you may have lost steps (=27000steps/sec). You need to reduce rapids to 7m/min but it should be OK at 1/4 or 1/8 stepping.

March 19, 2016   Comments Off on Driving a Ballscrew – Servo vs. Steppers

More Stepper and Servo Wisdom

Again, from CNCZONE:

Q.) What are the advantages/disadvantages between steppers and servos?

A.) Step motors and servo motors service similar applications, ones where precise positioning and speed are required.

The biggest difference is that steppers are operated “open loop”. This means there is no feedback required from the motor. You send a step pulse to the drive and take on faith it will be executed. Seems like a problem but it’s not.

If you have a quartz watch with hour and minute hands, then you have a step motor on your wrist. The electronics generates 1 step pulse per second, driving a 60 step per revolution motor which turns at 1 RPM. It keeps nearly perfect time. Any errors are due entirely to the electronics timing accuracy (quartz crystal oscillator).

Top Ten Stepper Advantages:

1) Stable. Can drive a wide range of frictional and inertial loads.
2) Needs no feedback. The motor is also the position transducer.
3) Inexpensive relative to other motion control systems.
4) Standardized frame size and performance.
5) Plug and play. Easy to setup and use.
6) Safe. If anything breaks, the motor stops.
7) Long life. Bearings are the only wear-out mechanism.
8) Excellent low speed torque. Can drive many loads without gearing.
9) Excellent repeatability. Returns to the same location accurately.
10) Overload safe. Motor cannot be damaged by mechanical overload.

Top Ten DC Servo Advantages:

1) High output power relative to motor size and weight.
2) Encoder determines accuracy and resolution.
3) High efficiency. Can approach 90% at light loads.
4) High torque to inertia ratio. Can rapidly accelerate loads.
5) Has “reserve” power. 2-3 times continuous power for short periods.
6) Has “reserve” torque. 5-10 times rated torque for short periods.
7) Motor stays cool. Current draw proportional to load.
8) Usable high speed torque. Maintains rated torque to 90% of NL RPM
9) Audibly quiet at high speeds.
10) Resonance and vibration free operation.

Top Ten Stepper Disadvantages:

1) Low efficiency. Motor draws substantial power regardless of load.
2) Torque drops rapidly with speed (torque is the inverse of speed).
3) Low accuracy. 1:200 at full load, 1:2000 at light loads.
4) Prone to resonance. Requires micro-stepping to move smoothly.
5) No feedback to indicate missed steps.
6) Low torque to inertia ratio. Cannot accelerate loads very rapidly.
7) Motor gets very hot in high performance configurations.
8) Motor will not “pick up” after momentary overload.
9) Motor is audibly very noisy at moderate to high speeds.
10) Low output power for size and weight.

Top Ten DC Servo (brush type) Disadvantages (besides higher relative cost):

1) Requires “tuning” to stabilize feedback loop.
2) Motor “runs away” when something breaks. Safety circuits required.
3) Complex. Requires encoder.
4) Brush wear limits life to 2,000 hrs. Service is then required.
5) Peak torque is limited to a 1% duty cycle.
6) Motor can be damaged by sustained overload.
7) Bewildering choice of motors, encoders, servo drives.
8) Power supply current 10 times average to use peak torque. See (5).
9) Motor develops peak power at higher speeds. Gearing often required.
10) Poor motor cooling. Ventilated motors are easily contaminated.

Q.) Should I use servos or steppers in my machine?

A.) If you are designing a machine and you get to motors, the first thing you should do is calculate the power you need. Never buy a motor (stepper or servo) first and then figure out if it will fit what you need.

Motors are motors. They couple power to your mechanism and power is what makes things happen. The choice of a motor comes after you know what’s needed.

Power is velocity times force or torque times RPM. It doesn’t matter if the motors are steppers, servos or a gerbil in a spinning squirrel cage at the start.

To separate what motor need (neglect the gerbil), is the power your mechanism needs.

Rule #1: If you need 100 Watts or less, use a step motor. If you need 200 Watts or more, you must use a servo. In between, either will do.

So, how do you figure the power you need?

Method 1: You have a plasma table, wood router or some other low work-load mechanism. You have a clear idea of how many IPM you want but you’re not sure of what force you want at that speed.

Pick the weight of the heaviest item you are pushing around. If it weighs 40lbs, use 40lbs. multiply it by the IPM you want. Say that’s 1,000 IPM. Divide the result by the magic number “531”. The answer is 75.3 Watts so use a step motor.

Eq: Watts = IPM * Lbs / 531

Method 2: You have a Bridgeport CNC conversion you are doing. The machine has a 5 TPI screw and you need a work feed rate of 120 IPM. 120 IPM on a 5TPI screw 5 * 120 or 600 RPM.

How about force? Not a clue? Use your machinist’s experience on a manual machine. The hand crank is about 6″ inches in diameter. How much force would you place on the hand crank before you figure you’re not doing something right? I hear about 10 lbs.

10 lbs is 160 oz, 160 oz on the end of a 3″ moment-arm (6″ diameter, remember?) is 480 in-oz (3 times 160) of torque on the leadscrew.

The equation for rotary power is: Watts = in-oz * RPM / 1351

For this example, Watts = 480 in-oz * 600 RPM / 1351 or 213 Watts.

213 Watts is servo territory. You have to use a servo motor to get that, about a NEMA-34 one.



Something else to keep in mind with the stepper motors is that bigger isn’t always better. You have to look at the phase inductance. Higher induction results in a faster torque curve drop off (lower usable rpms). Generally the smallest motor that will work for the needed torque with the lowest phase inductance will perform better that larger overkill motors. The inductance that you should be looking for will be below 2.5mh ideally below 1.8mh. With inductance higher than this the usable rpm range drops drastically.

Don’t forget voltage. The higher voltage you run the higher the usable rpms. Ideally you should run your motors at: V=32 x sqrt(motor inductance). This usually ends up being higher than most drivers can handle, unless you get high voltage drivers. This allows the best motor performance without over heating. Stepper very rarely run at full amperage and only for very short period of time. Driver current is important but correct voltage will give much more noteworthy real world performance.

Watch out for high torque for size (ie. nema 23 motors with >400 in/oz), they generally have a very low torque drop off, rpm wise, due to high inductance. They are fine for slow speed operation but anything above about 150-200 rpm have almost no torque unless you run them at very high voltage. High voltage drivers can get pretty expensive. Also, larger motors have a larger rotor inertia. This means slower response to speed and direction changes: meaning higher voltage for the same performance.

IMHO, you should look at wattage needs of your machine. (Watts = IPM * Lbs / 531) Lbs is the weight of the heaviest thing you have to move, including cutting force. If your system needs 100 or less watts use a stepper motor. This usually falls in the nema 17 to mid sized nema 23’s. Watts between 100 and 200 can be a stepper motor or a servo. The usable motors would be mid to large nema 23’s. Higher than 200 watts USE SERVOS. Large steppers generally have very poor performance (for the reasons I said above).



Microstepping beyond 10X is of virtually no value. First, no benchtop machine is going to benefit from more than 10X micro-stepping, because it’s already far beyond the mechanical resolution of the machine itself. If you’re running direct drive steppers with 5-pitch screws, 10X microstepping gives a nominal (NOT actual) step size of 0.0001″. Flex and vibration in the machine will FAR exceed that. Second, micro-stepping does not produce equal-sized steps, and the higher the ratio, the greater the % error will be, so microstepping beyond a relatively low ratio does absolutely nothing to increase resolution or accuracy.



The primary function of microstepping is to provide smoother motion, NOT to increase resolution. The ultimate resolution, and accuracy, of any CNC machine is FAR more a function of the mechanical characteristics of the machine than it is the drive system. In the real world, it is quire difficult, and VERY expensive, to even get close to +/-0.001″ true accuracy and resolution. It is done on large commercial machine by FAR more expensive components, a FAR more massive (stiffer, with better damping) machine structure, and more complex software, which compensates for some of the many remaining sources of error and inaccuracy. Having a drive that is theoretically capable of high resolution will do nothing to improve the overall system accuracy or resolution, unless the many errors contributed by the many other parts of the machine are all already below the error contributed by that drive. On these machines, you typically have ballscrews with an accuracy of perhaps +/-0.003″ per foot. Flex of the machine itself can be several thousandths of an inch. Thermal expansion can contribute that much more. You always have stiction, and backlash, which can completely consume small movements. So what does reducing the step size from 0.0001″ to 0.00001″ actually accomplish? Now, you can try to address all these deficiencies, but a single high-precision ballscrew will cost more than you paid for the whole the machine, and the other parts you’d need to swap out won’t be much cheaper.


Microstepping is for smoothness of operation. Take a big ratchet and give it 8 notches per turn and turn it fast. It’s going to make a hell of a lot of noise and vibrate a ton. Take that same ratchet and give it 48 smaller notches and it will be much less noisy and feel smoother as it moves at the possible expense of the amount of torque it can hold against. It’s easy to hear and feel the difference in a microstep driven motor and a full or half-step driven motor. But they may not actually move the table until a couple of microsteps are taken because they lack the full torque to move the load.

I microstep at 8 so 1600 steps per rotation and 5 rotations per inch or 8000 steps per inch, but I only count on the machine being able to position within 0.001″. In most cases it *can* position to 0.0005″ but there is no way in hell it’s good to 0.000125″ as the microstepsper would have you think.


November 27, 2014   Comments Off on More Stepper and Servo Wisdom