DC motor selection for robotic applications

This post was mainly contributed by members of electrical team of ARES.

For designing a rover prototype we have to select motors for applications like Robotic arm, wheels etc.  This post aims to be a single guide containing all the information required for someone to select a motor for his application. I’ll try not to cover motor constructional details, but rather their types, advantages and application areas.


Type of DC electric motors used in robotic :

  • Servo
  • Stepper
  • Brush-less DC
  • Brushed DC
  • Geared DC
  • DC linear actuators

Servo motors

It is a self contained electrical device, that rotate parts of a machine with high efficiency and great precision. The output shaft of this motor can be moved to a particular angle. Following are the type servos:

  • AC servo -:

    • They offer more torque per weight, efficiency, reliability and reduced radio frequency noise.
    •  Applications of an AC motor mainly involve in automation, robotics, CNC machinery, and other applications a high level of precision and needful versatility.
    • Brushes are not within the motor thus need less maintenance.
    • A feedback system controls and alerts the engine to the location of the rotor to initiate the sequence of current through the coils.
    • Feedback alignment is used within most AC servo motors to function properly with a controller or amplifier.
    • Inertia is lower on rotors
    • Sophisticated control system
      • Stator current magnitudes, frequencies, and their phases require a coordinated control process.
      • Closed-loop communication system located with the controller/amplifier
      • Motor speed operates by a sinusoidal PWM, where the speed control is in the frequency of the PWM
    • Higher RPM with the ability to reach 6000 RPM on many servo motors
  • DC servo-:

    Image courtesy: electronics-tutorials
    •  DC servo motor generally have a separate DC source in the field of winding & armature winding.
    • Application areas include: Air craft control systems, robotics, Machine tool, process control etc.
    • Brushes are within the motor
      • Brushes wear and need replacement
      • Preventive maintenance recommended
    • Current moves through coils which sequences by the brushes and the commutator
    • Control is much simpler than AC
      • Field or current armature magnitudes are the only requirements for motor control
      • A duty-cycle-controlled PWM operates motor speed
    • Torque is controlled independently by a control flux, which allows the torque to maintain consistency while in operation.
    • Inertia may reach a higher level in some situations
  • Positional rotation servo

    • Can turn only 180 degrees. Has barriers in gear to prevent motion beyond these limits.
    • Application includes: RC car, toys, RC ships etc.
  • Continuous rotation servo

    • Can turn full 360 degrees in either direction.
    • they offer open-loop speed control instead of their usual closed-loop position control
    • They can be thought like normal dc motor but with position feedback.
    • A continuous rotation servo cannot be commanded to go to a specific position and stop, there is no way your controller can tell what position it is at at any specific time.
    • (Personally, i don’t feel it should even be called a servo, it’s more of a variable speed bi-directional geared motor drive)
  • Linear servo motor

    • Linear servo motor is also similar the positional rotation servo motor is discussed above, but with an extra gears to alter the o/p from circular to back-and-forth.

Selection criteria of servo?

Does your application works on AC or DC, most robotics application works on DC? Does your application needs fast/medium output response? How much torque/power you want from the servo? Mostly, servos with quick response has very less torque. How much degree of rotation is required, 150-180 or 360 degree? How much accuracy in position is needed, allowable tolerance etc. Any upper limit on Cost/Controller complexity?

Stepper motors

The stepper motor uses the theory of operation for magnets to make the motor shaft turn a precise distance when a pulse of electricity is provided. Every revolution of the stepper motor is divided into a discrete number of steps.

Image courtesy: sparksfun
  • The rotation angle of the motor is proportional to the input pulse.
  • The motor has full torque at standstill (if the windings are energized).
  • Precise positioning and repeatability of movement since good stepper motors have an accuracy of 3 to 5% of a step and this error is non-cumulative from one step to the next.
  • Excellent response to starting/stopping/reversing.
  • Very reliable since there are no contact brushes in the motor. Therefore the life of the step motor is simply dependent on the life of the bearing.
  • The stepper motors response to digital input pulses provides open-loop control, making the motor simpler and less costly to control.
  • It is possible to achieve very low speed synchronous rotation with a load that is directly coupled to the shaft.
  • A wide range of rotational speeds can be realized as the speed is proportional to the frequency of the input pulses.
  • Resonances can occur if not properly controlled.
  • Not easy to operate at extremely high speeds.

Types of stepper motors on basis of their working:

  • variable reluctance

    • Rotor teeths are electromagnets with alternative coil windings. Rotation occurs when stator and rotor coils are energized.
  • permanent magnet

    • Rotor has no teeths, rather alternating south and north poles. Rotation occurs when stator coil is energized.
    • It has low resolution but better torque characteristics.
    • Usually the most commonly used motor type.
  • hybrid

    • It has magnetized rotor teeths. Having teeths on rotor increases and redirects magnetic flux flow from stator to rotor.
    • A bit more expensive then permanent magnetic type
    • Has better resolution + high torque.

Types of stepper on basis of their step size:

  • Full step

    • Single phase – Only one rotor teeth coil is energized at a time.
    • Two phase – Two adjacent rotor teeth coils are energized. Thus has better torque characteristic, but needs more current from driver.
    • Full phase operation means if there are N number of rotor teeths, motor completes one revolution after N pulses, in other words, motor resolution is 360/N
Image courtesy: https://www.rs-online.com
  • Half step

    • It’s a combination of one phase and two phase working. Thus, If there are N rotor teeths, motor needs 2N pulses to complete a revolution, or resolution is 180/N.
    • Better resolution, but usually have less torque
  • Micro step

    • Uses two 90-degree phase shifted sine waves (produced via a DAC with M resolution) in adjacent rotor teeths, so that now each full step is broken down into M different steps. Thus, Now for completing one revolution, M*N pulses are needed! i.e resolution is 360/(M*N). Usually, M is 256 i.e. 8-bit DAC is used.
    • Used where very high resolution is needed, but again at the compensation of torque.
Image courtesy: www.rs-online.com

Type of different stepper configurations:

  • Open loop

    • No feedback is available. Thus, In order to keep a track of rotor current position, number of pulses needs to be counted.
  • Closed loop

    • Has additional circuitry for positional feedback. No need to count!!

Selection criteria of stepper motor?

How much accuracy do you want? If there is no specific need of accuracy, i’d say go for Permanent magnet , full step stepper motor. Then, if you want positional accuracy, better go for closed loop configuration. It’s used widely for robotic arms(High torque + more resolution), electric cars (where more torque is needed then speed).

Brushless-DC(BLDC) Motor

Image courtesy: digikey

Coils are not located on the rotor. Instead, the rotor is a permanent magnet; the coils do not rotate, but are instead fixed in place on the stator. Because the coils do not move, there is no need for brushes and a commutator. Typically three Hall sensors are used to detect the rotor position and commutation is performed based on Hall sensor inputs.

Stepper motor is a type of BLDC motor with discrete steps. Here, i’m more concerned with it’s continuous operation.


  • Moderate torque, high speed, high durability, now operation noise (Best choice for drones, which needs high speed, low torque)


  • Expensive + needs an external specialized controller

Brushed DC motors

Image courtesy: Mouser electronics

It does not require a controller to reverse the polarity of current in the rotor windings, rather it has mechanical split sleeves(commutator).

  • Very cheap construction + no need of external controller, just  a constant dc source.
  • Ideal for extreme operating environments
  • More operation noise, less efficient, less durability, low torque, moderate speed.
  • Mainly used in toys and other less demanding applications.

Geared DC motors

An attempt to increase torque at the expense of speed, involves the use of gear assembly with any standard DC motor. Speed can be reduced to theoretically any desired value, that too in a very economical way without any external closed loop system.

  • Due to gear assembly, it usually weighs more then other non-geared motors.
  • Gear assembly sometimes can significantly decrease the life of the motor. If not handled properly, gear assembly might break.
  • Proper oiling is needed for gears to operate smoothly.
  • Attaching very high load to the shaft might cause the gears to break down.

DC linear actuators

DC Linear actuator is an electrically operated device which help push or pull objec

image courtesy: ultramotion

ts. they usually have high power, good reliability and but no position control without external feedback closed loop.






There are three main factors other then budget while selecting motors: Speed, Torque, Positional accuracy. One usually have to figure out the balance between above factors that satisfies the application.

Todo: Add Survey results for different motor types with their application.



Tagged , , , ,

About Udit kumar agarwal

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.