This chapter introduces several types of motors commonly used in robotic and related applications.
are inexpensive, small, and powerful motors that are widely used. Gear-train reductions are typically needed to reduce the speed and increase the torque output of the motor.
also called actuators, do not rotate continuously, but turn in fixed increments, and resist a change in their fixed positions. They require special driving circuits to apply the correct sequence of currents to their multiple coils. They are commonly used in robotics, particular in mechanisms that perform linear positioning, such as floppy and hard disk drive head motors and X-Y tables.
are used for angular positioning, such as in radio control airplanes to control the position of wing flaps, or in RC cars to turn the wheels. The output shaft of a servo does not rotate freely as do the shafts of DC motors, but rather is made to seek a particular angular position under electronic control. In effect, a servo motor is a combination of a DC motor, a shaft position sensor, and a feedback circuit. A servo motor also usually includes a built-in gear-train and is capable of delivering high torques directly. No servo motors are included in the 1999 ELEC 201 kit.
DC motors are widely used in robotics because of their small size and high energy output. They are excellent for powering the drive wheels of a mobile robot as well as powering other mechanical assemblies.
Several characteristics are important in selecting a DC motor. The first two are its input ratings that specify the electrical characteristics of the motor.
The next three ratings describe the motor's output characteristics:
A simple experiment can be performed to determine the torque rating of a motor. All that is needed is a motor to be measured, a power supply for the motor, a piece of thread, a mass of known weight, a table, and a ruler. The mass is attached to one end of the thread. The other end of the thread is attached to the motor shaft so that when the motor turns the thread will be wound around the motor shaft. The motor shaft must be long enough to wind the thread like a bobbin.
The motor is put near the edge of a table with the mass hanging over the edge, as illustrated in Figure 6.1. When the motor is powered it will begin winding up the thread and lifting the mass. At first this will be an easy task because the moment arm required to lift the mass is small--the radius of the motor shaft. But soon, the thread will wind around the shaft, increasing the radius at which the force is applied to lift the mass. Eventually, the motor will stall. At this point, the radius of the thread bobbin should be measured. The torque rating of the motor is this radius times amount of mass that caused the stall.
Alternatively, a LEGO gear and long beam can be mounted on the motor shaft, and a small scale (such as a postage scale) calibrated in grams can be used to measure the force produced by the stalled motor at the end of the lever resting on the scale. The torque in mN-m is given by (force in grams) x (lever length in cm) x (0.09807). The stall current can be measured at the same time. The measurement must be made quickly (1 second) because the large current will heat the motor winding, increasing its resistance, and significantly lowering the current and torque.
It was mentioned earlier that the power delivered by a motor is the product of its speed and the torque at which the speed is applied. If one measures this power over the full range of operating speeds -- from unloaded full speed to stall -- one gets a bell-shaped curve of motor power output.
When unloaded, the motor is running at full speed, but at zero torque, thus producing zero power. Conversely, when stalled, the motor is producing its maximum torque output, but at zero speed -- also producing zero power! Hence the maximum power output must lie somewhere in between, at about one-half of the maximum speed and of the maximum torque.
A typical DC motor operates at speeds that are far too high to be useful, and at torques that are far too low. Gear reduction is the standard method by which a motor is made useful.
The motor shaft is fitted with a gear of small radius that meshes with a gear of large radius. The motor's gear must revolve several times into order to cause the large gear to revolve once (see Figure 8.7). The speed of rotation is thus decreased, but overall power is preserved (except for losses due to friction) and therefore the torque must increase. By ganging together several stages of this gear reduction, a strong torque can be produced at the final stage.
The challenge when designing a high-performance gear reduction for a competitive robot is to determine the amount of reduction that will allow the motor to operate at highest efficiency. If the normal operating speed of a motor/gear-train assembly is faster than the peak efficiency point, the gear-train will be able to accelerate quickly, but will not be operating at peak efficiency once it has reached the maximum velocity. Remember that the wheel is part of the drive train and gearing, and its size, the velocity desired, the motor characteristics, and other factors all effect the optimum gear ratio. While calculations can provide a guide (see the Quick Links page on gear ratios), experimentation is necessary to determine the best gear-train.
Pulse width modulation is a technique for reducing the amount of power delivered to a DC motor. Instead of reducing the voltage operating the motor (which would reduce its power), the motor's power supply is rapidly switched on and off. The percentage of time that the power is on determines the percentage of full operating power that is accomplished. This type of motor speed control is easier to implement with digital circuitry. It is typically used in mechanical systems that will not need to be operated at full power all of the time. For an ELEC 201 robot, this would often be a system other than the main drivetrain or when the main drivetrain is steered.
Figure 6.3 illustrates this concept, showing pulse width modulation signals to operate a motor at 75%, 50%, and 25% of the full power potential.
A wide range of frequencies could be used for the pulse width modulation signal. The ELEC 201 system software used to control the motors operates at 1000 Hertz.
A PWM waveform consisting of eight bits, each of which may be on or off, is used to control the motor. Every of second the waveform is repeated. Therefore, the control bit make 8 checks per cycle, meaning the PWM waveform may be adjusted to eight power levels between off and full on. This provides the RoboBoard with eight motor speeds.
The shaft of a stepper motor moves between discrete rotary positions typically separated by a few degrees. Because of this precise position controllability, stepper motors are excellent for applications that require high positioning accuracy. Stepper motors are used in X-Y scanners, plotters, and machine tools, floppy and hard disk drive head positioning, computer printer head positioning, and numerous other applications.
Stepper motors have several electromagnetic coils that must be powered sequentially to make the motor turn, or step, from one position, to the next. By reversing the order that the coils are powered, a stepper motor can be made to reverse direction. The rate at which the coils are respectively energized determines the velocity of the motor up to a physical limit. Typical stepper motors have two or four coils.
The stepper motors user in ELEC 201 have two sets of three wires: power, and two control/ground lines. The power wire is simply connected to a power supply.
The two control/ground signals are alternately grounded for a brief period. This series of pulses thus steps the motor to the desired position of the shaft. Each pulse pair represents one step command. The length of a pulse in time does not correspond to any angular position. The pulses must simply be long enough to cause the motor coil to actuate. Special circuitry or software must be used to drive the stepper motors. On the RoboBoard, two motor ports are required to drive a single stepper motor.
Servo motors incorporate several components into one device package:
The output shaft of a servo motor does not rotate freely, but rather is commanded to move to a particular angular position. The electronic sensing and control circuitry -- the servo feedback control loop -- drives the motor to move the shaft to the commanded position. If the position is outside the range of movement of the shaft, or if the resisting torque on the shaft is too great, the motor will continue trying to attain the commanded position.
Servo motors are used in model radio control airplanes and helicopters to control the position of wing flaps and other flight control mechanisms.
A servo motor has three wires: power, ground, and control. The power and ground wires are simply connected to a power supply. Most servo motors operate from five volts.
The control signal consists of a series of pulses that indicate the desired position of the shaft. Each pulse represents one position command. The length of a pulse in time corresponds to the angular position. Typical pulse times range from 0.7 to 2.0 milliseconds for the full range of travel of a servo shaft. Most servo shafts have a 180 degree range of rotation. The control pulse must repeat every 20 milliseconds. There are no servo motors in the present ELEC 201 kit.