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.
||Cheaper then many other categories, rugged, and easy to control. Will often have 2 wires.
||Brushes can wear away.
||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
||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.
||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.
||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.
||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.
||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
||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:
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.
||Provides a cheap and easy single pulse for every revolution of the motor
||Poor resolution so you can not do position control
||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.
||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)
||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.
||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.
Brushed Motor – http://www.robotroom.com/Counter/MaxonMotor.jpg
Brushless Motor – http://www.elitektm.com/wp-content/uploads/2011/11/3351_velineon_3500_motor-cutaway.jpg
RC Servo – http://www.redrc.net/wp-content/uploads/2009/06/futababls151.jpg
Linear Actuator – http://www.servocity.com/assets/images/SD_Linear_Actuator_Side_View.jpg
Solenoid – http://mohacks.com/wp-content/uploads/2011/09/tubular-solenoid-L.jpg
Stepper motor – http://upload.wikimedia.org/wikipedia/commons/8/83/Nema_17_Stepper_Motor.jpg
Pancake motor – http://www.extremetech.com/wp-content/uploads/2013/06/HAYDONSWITCH-PLANETARY-PANCAKE-MOTOR-PLANETARY-PANCAKE-MOTOR.jpg
Component Set – http://www.alliedmotion.com/Products/Series.aspx?s=54
Quadrature Encoder – http://frontrangerobotics.org/Jan05/EncoderForRML.jpg
Resolver – http://www.nidec-avtron.com/encoders/images/knowledge-base/resolver1_small.jpg
String Pot – http://www.mmcompsys.com/uploads/mediacentre/20100816011621-String%20potentiometer.jpg
Absolute Encoder – http://www.parkermotion.com/dmxreadyv2/blogmanager/app_engine/assets/images/encoder-rot-large.jpg