Motors and Feedback (encoders)

by on December 31, 2013

brushless motor

Hi all
There are many types of motors and feedback methods to choose from. Which do you need? Keep reading to find out more about selecting your motor stackup. Since most field robots are DC powered I am skipping the many types of AC motors that are out there.

In addition to this post you can find out all about how to size your motors and gearboxes and how to control these motors in the linked posts.


Type Image Pros Cons
DC Brushed brushless motor Cheaper then many other categories, rugged, and easy to control. Will often have 2 wires. Brushes can wear away.
DC Brushless brushless motor Higher efficiency then brushed motors (better power and mass ratios). Can be sealed to minimize dirt getting into the motor. Reduced sparking and electrical noise so good for hazardous environments. Will often have 3 wires. More complex to control and can be more expensive
Stepper Motor stepper motor Has similar characteristics to a brushless motor (because it is one) however you can command it in “steps” so you can do position control with no external feedback. The primary advantage is also the disadvantage. In many high torque and operations where things change (like in a robot) it can skip steps leading to position error. Whenever possible you should still have position feedback.Also since a stepper motor needs to use power to hold its position (even with minimal load) the standby power consumption can be similar to the full load power before it starts skipping.
RC Servo rc servo Small easy to control motors that can be given position commands. By default they have about 100 degrees of movement (every brand if different). They need to be modified (you can purchase them modified) for continuous rotation. Only for small torque operations.
Linear Actuators linear actuator Gives you linear motion by coupling a rotary motor (usually) and ball-screw/chain. Less reliable than a rotary motor since it is more parts.
Solenoid solenoid A small coil lets you trigger different things with a small linear motion. These are often used for valves and come in latching and non-latching versions. Usually not much motion. Used for triggering other things.
Pancake motor thin pancake motor They come in different types but are thin and should be considered when you prefer a wide motor over a long motor Lower selection of motors and can cost more.
Component Set / Frameless frameless motor components set These let you build your motor into the design. They can be very good for a tight integration where there is not a lot of space. The large downside is that they must be assembled perfectly (which is not easy) to make sure that it works. If the rotor is slightly of center you can get weird effects or it might not work at all.

Remember when you are selecting motors that current is proportional to torque, and speed is proportional to voltage.
Many times you will find a motor with the correct torque and rated for some high speed. But if you are running it from some low voltage robot you will get a lower maximum speed.

In another blog post I will discuss gearing which can be used to modify the output torque/speed from you motor stackup. Many of the vendors below will also sell you gearboxes so that you have a complete solution.

Here are a couple of vendors that I have used:
Allied Motion
Danaher Motion – They have most of the motor types above
Futaba – Good source of RC Servos
Kollmorgen – They have most of the motor types above
Maxon Motors – Large selection of small DC motors

Having position feedback that can also be used for velocity/speed control) is important for precise motion as well as for using position for dead reckoning your current position. For brushless motors you will also want feedback in order to get better commutation (ie. spin better and gain efficiency). There are back EMF methods for commutating a brushless motor but for good sinusoidal commutation you want the feedback.

In many position systems you might want to have two feedback methods. A primary one for the motor shaft, and an auxiliary one on the final output. This can give you excellent precision and removed mechanical slop from the desired position. The reason for two encoders is that you can use the primary one for velocity commands/control and the auxiliary one for the position commands.

Type Image Pros Cons
Tachometer (tach) Provides a cheap and easy single pulse for every revolution of the motor Poor resolution so you can not do position control
Quadrature Encoder encoder Provides precise position by looking at an optical rotary disk. Low mass Can be sensitive to contamination and shock/vibration. Does not provide absolute position.
Resolver resolver signal Very high precision (limited by ADC) by looking at the magnetic fields of the coils. These are more robust than quadrature encoders and can withstand harsh environments, higher temperatures, shock, and vibration. Weighs more than a quadrature encoder, has a higher inertia, can be sensitive to noise, and can cost more. Does not provide absolute position.
Analog Potentiometer (pot or string pot) string pot This is a resistor that can be used for both rotary or linear (with a string pot) applications. They provide an absolute position of the devices location. Often they can not be used by commercial motor controllers for the position feedback and you need to monitor it in your own control loop. Can be subject to wear and tear from continuous use.
Analog Hall Sensor Similar to the analog pot. However since it uses a hall sensor it has a longer life time. This also provides an absolute position. Can sometimes have a small non linearity to the output.
Absolute encoders absolute encoder wheel There are many protocols for using an encoder with absolute position feedback. Many used custom encoding wheels. Every device supports slightly different versions and are often not compatible between vendors. Many of these protocols are proprietary. Often only absolute position of the motor and not the output like the string pots.

Another item that you can often get in your stackup is a brake. A motor brake is useful to prevent back-driving and to hold the last motor position (usually even if the robot gets powered down). Just remember most brakes are designed to be engaged when the motor is not moving. They are NOT designed to stop the motor or reduce its speed. Also watch out on some motors you can not have an encoder and break at the same time.

With all of these options you can often buy them on your own and assemble the full motor stack, however it is often easier and more reliable to have the motor manufacturer do it.

There are some good motor and gearing tutorials at MICROMO.

Image Credits
Brushed Motor –
Brushless Motor –
RC Servo –
Linear Actuator –
Solenoid –
Stepper motor –
Pancake motor –
Component Set –
Quadrature Encoder –
Resolver –
String Pot –
Absolute Encoder –


Is there a pancake motor that would fit inside of a circular device with dimensions: 3.35(85mm) x 2.36(60mm) ???????????????

I do not know off hand. You can try calling some of the vendors. There are links to several motor vendors at I think Maxon has some pretty small flat motors. But it will all depend on your torque requirement and budget.

You might be able to get a component set so you can “build” the motor your self. This will often save volume but increases the difficulty of assembly and requires tight manufacturing tolerances. I have seem many people mess up with component sets.

Leave a Reply