Merging modern software development with electrons and metal
Random header image... Refresh for more!

Category — Motion Control

Updated Information On Electro-Craft E-Series Motors

I’ve updated my trac page on the Electro-Craft E-3618 with a scanned datasheet with information on the E-3618, E-3622, E-3626, E-3629, and E-3633, and the BDC MINI-Series servo amplifier.  Since I only own E-3618’s, I didn’t add a new page for the other motors.

By the way, the end of Electro-Craft catalog contains a nice little overview of servo motor theory and operation.

October 21, 2014   No Comments

Stepper Vs Servo Motor Torque Curves Part IV

NEMA17 Torque CurvesNEMA17 Torque Curves

My final look is at NEMA17 motors.  Today’s contestants are:

  • In yellow, the IMS (now Schneider) MDI1PRL17C4x triple stack NEMA stepper motor with integrated driver and controller.  I’ve used these cute little motors before; they are a great fit for the right application.  As normal, the programming language sucks, but a CANOpen version is available.
  • In red and blue, a Panasonic MUMS011A1 NEMA 17 servo motor.  These motors have unfortunately been out of production for years; I loved their performance, encoder (10000 cpr), good looks, and price (about $250).
  • In green, a Quicksilver Controls QCI-A17H3 stepper motor with encoder that’s driven like a servo.  I’m including it to show how much improvement you can get from closed loop stepper control.


  1. The MDI1PRL17C4 shows typical stepper characteristics, with torque rapidly dropping off; it can’t even reach 2500 RPM.
  2. The MUMS011A1 shows typical servo performance, with a pretty flat torque curve, 3:1 peak to continuous torque, and compared to the steppers:  higher speeds, less continuous torque at low speeds, more continuous torque at high speeds, and much higher maximum torque.
  3. The QCI-A17H3 doesn’t turn the stepper into a servo, but compared to an open loop stepper, it has substantially higher maximum speed (4000 RPM – the highest of any stepper I’ve looked at), and offers significantly higher torque at higher speeds — in exchange for a higher price, of course.

Some General Stepper & Servo Notes

  1. Steppers are much simpler to drive: you can easily build a low cost drive using an integrated chip (e.g. from Allegro Microsystems, ST, or TI) or buy a commercial driver for $100-$150 (from Automation Direct, Gecko Drive, etc).  Many low cost PLC’s such as Panasonic’s FP0/FPG have built-in step/direction outputs.
  2. But open loop steppers are very annoying, because you have to figure out your needs before start: you have to specify fixed currents for holding and running torque.  If your current is too low, the motor will miss steps.  If your current and duty cycle are too high, the motor will get hot – and if a bit of extra torque is needed to overcome something unexpected, you’re out of luck.
  3. Closed loop steppers still aren’t servo motors.  However, I’m looking forward to affordable sensorless closed loop control (available or coming from Trinamic, TI, and probably others), which will improve stepper performance and minimize stepper heat generation.
  4. I think servo motors’ torque curve fits well with many applications: a lot of time you just need maximum torque for a short time period.  Servo motor system prices are also coming down (OK, not the basic motor, but there are affordable encoder, drive, and controller choices).


April 26, 2013   No Comments

Stepper Vs Servo Motor Torque Curves Part III

NEMA23 Single Stack Motors

In this post, I’m going to look at some fun NEMA23 single stack servo motors and a single stack stepper motor.  The entrants are:

  • In brown, the PacSci M21 with Sigmax technology.  The M21 has a lot more torque than many (most?) NEMA23 single stack steppers.
  • In blue and red, one of my favorite motors: the BH02300 servo motor.  I’ve spun one of mine at 20,000 RPM.  Like the Emoteq QB series, the BH series has great peak torque.
  • In yellow and green, the MCG (now Ametek) I2351014NC servo motor.  After all the high end motors, I decided it was time to feature a non-exotic and affordable (if you can get it) motor.


  1. The difference between the I2351014NC and the BH02300 is the peak torque (the BH02300 has much more) and maximum speed (20,000 RPM vs 12,000) and, of course, price; continuous torque is about the same.
  2. Both servos are can go much, much faster than the M21 stepper (although at 3000RPM, it’s pretty fast for a stepper motor).
  3. The M21’s continuous torque looks pretty good; it always has more continuous torque than either servo, and below about 2000 RPM has more continuous torque than the I2351014NC has peak torque.
  4. OK, it’s not really far to compare these motors — they obviously have their own areas (low end torque and low cost for the M21, high speed and moderate cost for the I2351014NC, and high speed, high peak torque, and high cost for the BH02300) but it’s fun to see big differences between motors that are all about the same size.


April 25, 2013   No Comments

Stepper Vs Servo Motor Torque Curves Part II

NEMA34 Torque Curves

NEMA34 Torque Curves

Today I am examining some interesting NEMA34 motors’ torque curves.  The graph is a bit complex because I want to show a variety of motors on one graph; to make it a bit simpler, I am using dashed lines for servo continuous torque, and solid lines for servo motor peak torque.

I chose motors that are all roughly the same size.

The motors and their colors are:

  • Burgandy Red – PacSci N32 PowerPac double stack NEMA34 stepper motor at 75V.  I choose this motor because it’s a high end stepper, and I own a couple.
  • Red – PacSci K32 PowerPac double stack NEMA34 stepper motor with Sigmax technology, also at 75V.
  • Yellow – Emoteq QB03402 double stack NEMA34 servo motor.  I own a similar motor (QB03403), plus the peak torque is very high.
  • Green – Parker Compumotor BE342H double stack NEMA34 servo motor at 170V.  Parker makes some really nice servo motors; the BE series has a lot of torque, and I want to look at the effects of voltage on torque curves.  The BE342H and BE342K have different windings.
  • Brown – Parker BE342H at 340V.
  • Dark Blue – Parker BE342K at 170V
  • Light Blue – Parker BE324K at 340V.


  1. The NEMA34 stepper curves are similar to the NEMA23 stepper curves; torque still drops off rapidly with increasing speed.  One quirk: maximum torque is around 120 RPM, not 0 RPM.
  2. PacSci’s Sigmax technology does provide significantly higher torque at all speeds, but does not change the shape of the torque curve.
  3. Overall stepper vs servo comparison is similar: the steppers have much more continuous torque at low speeds, less continuous torque at moderate speeds, less peak torque at all speeds, can’t handle high speeds, and cost significantly less than servos.
  4. The Emoteq BH03402 has exceptional peak torque, but you’ll have to provide a lot of current (e.g. 50A for the 130V C windings).
  5. The Parker BE342 shows the impact of voltage and winding.  When the servo motor does not get enough voltage, its torque can decrease like a stepper, but for a different reason: back EMF.
  6. The BE342K might seem better than the BE342H, since it has the “best” torque curve, but that comes at price: the same torque requires double the current of the BE342H.
  7. Stepper currents are much lower; the maximum current of any N32/K32 model is 10A.
  8. As always, it comes down to knowing your requirements: torque, speed, size, current, budget, etc.



April 24, 2013   No Comments

Stepper Vs Servo Motor Torque Curves Part I

While I was working on my upcoming project, I got sidetracked by the issue of servo motors versus stepper motors.  Since I’ve never seen direct stepper and servo torque curve comparisons, I created four comparison charts using a variety of interesting motors.

Disclaimer:  I graphed all the torque curves myself, and their shapes should be pretty accurate; however, I didn’t have very good data for some motors (e.g. Emoteq peak torque).  Motor pricing can very quite a  bit, depending on the exact model and quantity ordered, so any pricing is a rough guide.

If you click on the images, you will get a much bigger version.  To avoid a megapost, I’ve split this topic into multiple posts.

Now that the preliminaries are out of the way, let’s start with the first contestants.

NEMA23 Motors

NEMA23 Torque Curves

First up is a pair of motors: the Kollmorgen AKM21G single stack NEMA23 servo motor with 75V winding and the Pacific Scientific P22 double stack NEMA23 stepper motor.

I picked these motors because 1) they are both from the same company (Danaher), 2) I’ve used both, 3) they’re about the same size, 4) are designed for similar voltages, and 5) both are high end motors, so they should show off the best of their technologies.

The colors are as follows:

  • Red – AKM21G peak torque
  • Blue – AKM21G  continuous torque
  • Green – P22 at 72V
  • Yellow – P22 at 24V


  1. Notice how quickly the P22’s torque falls off at 24v – at slow speeds, torque is about 150 oz-in, but it’s  <50 oz-in by 1000 RPM (substantially less than the AKM21’s continuous torque).
  2. The P22 is considerably better at 72V – the torque curve is much flatter, and it has more continuous torque than the AKM21G up to about 2100 RPM.  The higher drive voltages reduces the effects of the stepper motor’s inductance.
  3. Servo drives are the only option for higher speeds.  The AKM21G is rated at 7800 RPM max, while the P22 torque curve only goes to 3000 RPM.
  4. The AKM21G has a much flatter torque curve, especially continuous torque.
  5. The servo’s peak torque is a big advantage: the peak torque available from the single stack AKM21G is ~50% greater than the maximum P22 stepper torque.  The peak torque advantages gets much bigger as the speed increases.
  6. On the other hand, the servo is much more expensive: an AKM21G will run $400 or more, while the P22 is around $100.

March 30, 2013   No Comments

Analog Servo Amps Versus Digital Servo Drives

The traditional analog servo amplifier receives ±10V analog commands from a motion controller, translating the command into  current to the motor.  Most servo amps have potentiometers for setting gain, offset, and such.  Brushless servo amps typically add hall sensors inputs for commutation.

I use the term digital servo drive for a servo amplifier combined with digital control.  A typical servo drive that supports the CiA 402 motion profile receives commands from a fieldbus such as CANOpen, Ethernet PowerLink, or EtherCAT.  It provides power to the motor and receives the motor’s feedback, typically including hall sensors, encoder, and/or resolver inputs.  Typically these drives can run in torque mode, velocity mode, position mode, or PVT (position-velocity-time) mode.

Some models support alternate modes, including mimicking an analog servo amp (±10V command), a stepper drive (step/direction commands), or encoder (follow a master encoder input).

If your needs are simple, you can use CiA 402 drives directly connected to a computer with your control logic creating and sending the motion commands to the drives.  For complex motion profiles, it may make sense to put a dedicated soft (on PC) or hard (embedded CPU) motion controller between control logic and the drives.

I really like using digital servo drives on a fieldbus.  The biggest reason: the wiring is much simpler.  For example, PC to CAN interface to servo drives to motors instead of PC to PCI board to breakout boards to analog servo amp to motors.  Another big improvement: it’s much easier to add motors later, unlike with a typically motion controller which is setup for a fixed number of axes.

Even using digital servo drives in analog mode has some advantages:

  • Setup is much easier:
    •  Typically no DIP switches or pots to worry about.
    • With many digital drives, phasing the motor is so much easier: connect the motor’s power wires in any order, connect the hall sensors in any order, spin the motor in the direction you want to be positive, and let the drive figure out the correct order.  With analog drives: keep swapping wires until you get the right setup, for the desired direction of motion and hall phasing.
    • With many digital drives, you can run motors in sinusoidal mode, with encoder feedback but without hall sensors.  I’ve found that a significant number of my older motors have one or more faulty hall sensors, but they’re still usable on my digital drives.
    • With many digital drives, you can watch the hall sensors inputs so if the hall sensors are flaky, you can quickly identify which ones are the problem.
  • Because all the settings are stored in the drive, not controlled by pots, it’s easier to replicate the setup, and harder to screw up.
  • On the negative side, digital drives are often more expensive than analog servo amps, and may require encoder feedback to the drive, which complicates the wiring when they’re used as analog servo amp replacements.

I’ve been setting up a variety of motors for both a AMC BE15 analog brushless servo amp and a Copley Accelnet digital drive:  motor setup is so much easier on the Accelnet.

Sometimes the digital drive might add complications:  the first digital drive I used was an IDC B8000 analog input digital drive.  I was using a pair of them for some extra axes on a Adept robot system, and I could not get the whole system tuned to perfection.  The tuning was OK, but I think the B8000’s feedback loops were interfering with the Adept’s feedback loops.

Note: post expanded 7/31/2012


July 28, 2012   3 Comments

Mixing Industrial Ethernet Protocols

Standard Ethernet is inherently not capable of real time communications, and thus industrial Ethernet protocols that can run on stock Ethernet hardware cannot be real time.  The best they can do is provide synchronization (for example, using hardware or software implementations of the IEEE-1588 Precise Time Protocol).

Of course, coordinated multi-axis motion using distributed Ethernet servo drives need real time communications, but the problem with real time industrial Ethernet networks is that they cannot use commercial switches and maintain good real time behavior.

One solution I’ve seen from several manufacturers is to put a motion controller in the middle.  Instead of directly connecting the Ethernet servo drives to the main industrial network, the drives are connected to a multi-axis motion controller, which then connects to the main industrial network using a different protocol.  The controller receives higher level motion commands, and sends out lower level motion commands over its own, private real time network to the distributed drives.

Similar motion controllers exist for CANOpen (Ethernet or other network in, coordinated CANOpen motion out), but I find the use of multiple Ethernet protocols interesting.  The result is potentially very good: appropriately using the strengths of the different protocols to make the overall automation system better.

I haven’t needed to use of any these yet, since I don’t have a requirement for Ethernet speed or advanced coordinated motion.  However, here are the controllers I’ve come across:

  • Parker ACR9000-EPL series motion controllers.  They can communicate with Ethernet/IP networks, and talk to servo drives using Ethernet PowerLink.
  • Omron NJ series controllers.  They can communicate with Ethernet/IP networks, and communicate with servo drives using EtherCAT.
  • Elmo Gold Maestro motion controllers.  They can communicate with Modbus/TCP networks, and communicate with servo drives using EtherCAT.
  • ACS SpiiPlus controllers (including the soft controller, I believe).  They can communicate with Ethernet/IP networks and talk with servo drives using EtherCAT.


July 25, 2012   No Comments

Learning Servo Motion Control

Although I use commercial motion control equipment, I enjoy learning about the fundamentals of servo motor control.  I’m currently going through the posts in TI’s Motor Control blog; they have a high signal to marketing ratio, and include a lot of non-obvious tips, like the best time to measure current.

The posts include a number of simulations which are helpful in understanding the different control topologies.  However, there is still no substitute for spinning actual motors.

Commercial controllers are great at getting you up and running quickly, but don’t let you play with different control techniques.  For learning, motion control development kits are the way to go.

My dev kit is TI’s DRV8312-C2 kit with a F28035 DSP, DRV8312 brushless DC driver chip, and servo motor (unfortunately TI didn’t include a dual shaft model, but I have plenty of servo motors with encoders).  TI’s ControlSuite software provides a variety of control methods.

May 3, 2012   No Comments