DC Motor

Electrical Motors

Small DC MotorElectrical Motors are continuous actuators that convert electrical energy into mechanical energy in the form of a continuous angular
rotation that can be used to rotate pumps, fans, compressors, wheels, etc. As well as rotary motors, linear motors are also available. There are basically three types of conventional electrical motor available: AC type Motors, DC type Motors and Stepper Motors.

A Typical Small DC Motor
AC Motors are generally used in high power single or multi-phase industrial applications were a constant rotational torque and speed is required to control large loads. In this tutorial on motors we will look only at simple light duty DC Motors and Stepper Motors which are used in many electronics, positional control, microprocessor, PIC and robotic circuits.

The DC Motor

The DC Motor or Direct Current Motor to give it its full title, is the most commonly used actuator for producing continuous movement and whose speed of rotation can easily be controlled, making them ideal for use in applications were speed control, servo type control, and/or positioning is required. A DC motor consists of two parts, a "Stator" which is the stationary part and a "Rotor" which is the rotating part. The result is that there are basically three types of DC Motor available.
  • Brushed Motor - This type of motor produces a magnetic field in a wound rotor (the part that rotates) by passing an electrical current through a commutator and carbon brush assembly, hence the term "Brushed". The stators (the stationary part) magnetic field is produced by using either a wound stator field winding or by permanent magnets. Generally brushed DC motors are cheap, small and easily controlled.
  • Brushless Motor - This type of motor produce a magnetic field in the rotor by using permanent magnets attached to it and commutation is achieved electronically. They are generally smaller but more expensive than conventional brushed type DC motors because they use "Hall effect" switches in the stator to produce the required stator field rotational sequence but they have better torque/speed characteristics, are more efficient and have a longer operating life than equivalent brushed types.
  • Servo Motor - This type of motor is basically a brushed DC motor with some form of positional feedback control connected to the rotor shaft. They are connected to and controlled by a PWM type controller and are mainly used in positional control systems and radio controlled models.
Normal DC motors have almost linear characteristics with their speed of rotation being determined by the applied DC voltage and their output torque being determined by the current flowing through the motor windings. The speed of rotation of any DC motor can be varied from a few revolutions per minute (rpm) to many thousands of revolutions per minute making them suitable for electronic, automotive or robotic applications. By connecting them to gearboxes or gear-trains their output speed can be decreased while at the same time increasing the torque output of the motor at a high speed.

The "Brushed" DC Motor

A conventional brushed DC Motor consist basically of two parts, the stationary body of the motor called the Stator and the inner part which rotates producing the movement called the Rotor or "Armature" for DC machines.
The motors wound stator is an electromagnet circuit which consists of electrical coils connected together in a circular configuration to produce the required North-pole then a South-pole then a North-pole etc, type stationary magnetic field system for rotation, unlike AC machines whose stator field continually rotates with the applied frequency. The current which flows within these field coils is known as the motor field current.
These electromagnetic coils which form the stator field can be electrically connected in series, parallel or both together (compound) with the motors armature. A series wound DC motor has its stator field windings connected in series with the armature. Likewise, a shunt wound DC motor has its stator field windings connected in parallel with the armature as shown.

Series and Shunt Connected DC Motor

Series and Shunt DC Motor

The rotor or armature of a DC machine consists of current carrying conductors connected together at one end to electrically isolated copper segments called the commutator. The commutator allows an electrical connection to be made via carbon brushes (hence the name "Brushed" motor) to an external power supply as the armature rotates.
The magnetic field setup by the rotor tries to align itself with the stationary stator field causing the rotor to rotate on its axis, but can not align itself due to commutation delays. The rotational speed of the motor is dependent on the strength of the rotors magnetic field and the more voltage that is applied to the motor the faster the rotor will rotate. By varying this applied DC voltage the rotational speed of the motor can also be varied.

Conventional (Brushed) DC Motor

Brushed DC Motor

Permanent magnet (PMDC) brushed motors are generally much smaller and cheaper than their equivalent wound stator type DC motor cousins as they have no field winding. In permanent magnet DC (PMDC) motors these field coils are replaced with strong rare earth (i.e. Samarium Cobolt, or Neodymium Iron Boron) type magnets which have very high magnetic energy fields. This gives them a much better linear speed/torque characteristic than the equivalent wound motors because of the permanent and sometimes very strong magnetic field, making them more suitable for use in models, robotics and servos.
Although DC brushed motors are very efficient and cheap, problems associated with the brushed DC motor is that sparking occurs under heavy load conditions between the two surfaces of the commutator and carbon brushes resulting in self generating heat, short life span and electrical noise due to sparking, which can damage any semiconductor switching device such as a MOSFET or transistor. To overcome these disadvantages, Brushless DC Motors were developed.

The "Brushless" DC Motor

The brushless DC motor (BDCM) is very similar to a permanent magnet DC motor, but does not have any brushes to replace or wear out due to commutator sparking. Therefore, little heat is generated in the rotor increasing the motors life. The design of the brushless motor eliminates the need for brushes by using a more complex drive circuit were the rotor magnetic field is a permanent magnet which is always in synchronisation with the stator field allows for a more precise speed and torque control. Then the construction of a brushless DC motor is very similar to the AC motor making it a true synchronous motor but one disadvantage is that it is more expensive than an equivalent "brushed" motor design.
The control of the brushless DC motors is very different from the normal brushed DC motor, in that it this type of motor incorporates some means to detect the rotors angular position (or magnetic poles) required to produce the feedback signals required to control the semiconductor switching devices. The most common position/pole sensor is the "Hall Effect Sensor", but some motors also use optical sensors.
Using Hall effect sensors, the polarity of the electromagnets is switched by the motor control drive circuitry. Then the motor can be easily synchronized to a digital clock signal, providing precise speed control. Brushless DC motors can be constructed to have, an external permanent magnet rotor and an internal electromagnet stator or an internal permanent magnet rotor and an external electromagnet stator.
Advantages of the Brushless DC Motor compared to its "brushed" cousin is higher efficiencies, high reliability, low electrical noise, good speed control and more importantly, no brushes or commutator to wear out producing a much higher speed. However their disadvantage is that they are more expensive and more complicated to control.

The DC Servo Motor

DC Servo motors are used in closed loop type applications were the position of the output motor shaft is fed back to the motor control circuit. Typical positional "Feedback" devices include Resolvers, Encoders and Potentiometers as used in radio control models such as airplanes and boats etc. A servo motor generally includes a built-in gearbox for speed reduction and is capable of delivering high torques directly. The output shaft of a servo motor does not rotate freely as do the shafts of DC motors because of the gearbox and feedback devices attached.

DC Servo Motor Block Diagram

DC Servo Motor

A servo motor consists of a DC motor, reduction gearbox, positional feedback device and some form of error correction. The speed or position is controlled in relation to a positional input signal or reference signal applied to the device.
RC Servo Motor
RC Servo Motor
The error detection amplifier looks at this input signal and compares it with the feedback signal from the motors output shaft and determines if the motor output shaft is in an error condition and, if so, the controller makes appropriate corrections either speeding up the motor or slowing it down. This response to the positional feedback device means that the servo motor operates within a "Closed Loop System".
As well as large industrial applications, servo motors are also used in small remote control models and robotics, with most servo motors being able to rotate up to about 180 degrees in both directions making them ideal for accurate angular positioning. However, these RC type servos are unable to continually rotate at high speed like conventional DC motors unless specially modified.
A servo motor consist of several devices in one package, the motor, gearbox, feedback device and error correction for controlling position, direction or speed. They are widley used in robotics and models as they are easily controlled using just three wires, PowerGround and Signal Control.

DC Motor Switching and Control

Small DC motors can be switched "On" or "Off" by means of switches, relays, transistors or mosfet circuits with the simplest form of motor control being "Linear" control. This type of circuit uses a bipolarTransistor as a Switch (A Darlington transistor may also be used were a higher current rating is required) to control the motor from a single power supply.
By varying the amount of base current flowing into the transistor the speed of the motor can be controlled for example, if the transistor is turned on "half way", then only half of the supply voltage goes to the motor. If the transistor is turned "fully ON" (saturated), then all of the supply voltage goes to the motor and it rotates faster. Then for this linear type of control, power is delivered constantly to the motor as shown below.

Unipolar Transistor Switch

Unipolar Transistor Switch
The simple switching circuit on the left, shows the circuit for a Uni-directional (one direction only) motor control circuit. A continuous logic "1" or logic "0" is applied to the input of the circuit to turn the motor "ON" (saturation) or "OFF" (cut-off) respectively.
A flywheel diode is connected across the motor terminals to protect the switching transistor or MOSFET from any back emf generated by the motor when the transistor turns the supply "OFF".
As well as the basic "ON/OFF" control the same circuit can also be used to control the motors rotational speed. By repeatedly switching the motor current "ON" and "OFF" at a high enough frequency, the speed of the motor can be varied between stand still (0 rpm) and full speed (100%). This is achieved by varying the proportion of "ON" time (tON) to the "OFF" time (tOFF) and this can be achieved using a process known as Pulse Width Modulation.

Pulse Width Speed Control

The rotational speed of a DC motor is directly proportional to the mean (average) value of its supply voltage and the higher this value, up to maximum allowed motor volts, the faster the motor will rotate. In other words more voltage more speed. By varying the ratio between the "ON" (tON) time and the "OFF" (tOFF) time durations, called the "Duty Ratio", "Mark/Space Ratio" or "Duty Cycle", the average value of the motor voltage and hence its rotational speed can be varied. For simple unipolar drives the duty ratioβ is given as:
Duty Cycle
and the mean DC output voltage fed to the motor is given as: Vmean = β x Vsupply. Then by varying the width of pulse a, the motor voltage and hence the power applied to the motor can be controlled and this type of control is called Pulse Width Modulation or PWM.
Another way of controlling the rotational speed of the motor is to vary the frequency (and hence the time period of the controlling voltage) while the "ON" and "OFF" duty ratio times are kept constant. This type of control is called Pulse Frequency Modulation or PFM. With pulse frequency modulation, the motor voltage is controlled by applying pulses of variable frequency for example, at a low frequency or with very few pulses the average voltage applied to the motor is low, and therefore the motor speed is slow. At a higher frequency or with many pulses, the average motor terminal voltage is increased and the motor speed will also increase.
Then, Transistors can be used to control the amount of power applied to a DC motor with the mode of operation being either "Linear" (varying motor voltage), "Pulse Width Modulation" (varying the width of the pulse) or "Pulse Frequency Modulation" (varying the frequency of the pulse).

H-bridge Motor Control

While controlling the speed of a DC motor with a single transistor has many advantages it also has one main disadvantage, the direction of rotation is always the same, its a "Uni-directional" circuit. In many applications we need to operate the motor in both directions forward and back. One very good way of achieving this is to connect the motor into a Transistor H-bridge circuit arrangement and this type of circuit will give us "Bi-directional" DC motor control as shown below.

Basic Bi-directional H-bridge Circuit

H-Bridge Circuit

The H-bridge circuit above, is so named because the basic configuration of the four switches, either electro-mechanical relays or transistors resembles that of the letter "H" with the motor positioned on the centre bar. The Transistor or MOSFET H-bridge is probably one of the most commonly used type of bi-directional DC motor control circuits. It uses "complementary transistor pairs" both NPN and PNP in each branch with the transistors being switched together in pairs to control the motor.
Control input A operates the motor in one direction ie, Forward rotation while input B operates the motor in the other direction ie, Reverse rotation. Then by switching the transistors "ON" or "OFF" in their "diagonal pairs" results in directional control of the motor.
For example, when transistor TR1 is "ON" and transistor TR2 is "OFF", point A is connected to the supply voltage (+Vcc) and if transistor TR3 is "OFF" and transistor TR4 is "ON" point B is connected to 0 volts (GND). Then the motor will rotate in one direction corresponding to motor terminal A being positive and motor terminal B being negative. If the switching states are reversed so that TR1 is "OFF", TR2 is "ON", TR3 is "ON" and TR4 is "OFF", the motor current will now flow in the opposite direction causing the motor to rotate in the opposite direction.
Then, by applying opposite logic levels "1" or "0" to the inputs A and B the motors rotational direction can be controlled as follows.

H-bridge Truth Table

Input AInput BMotor Function
TR1 and TR4TR2 and TR3
00Motor Stopped (OFF)
10Motor Rotates Forward
01Motor Rotates Reverse
It is important that no other combination of inputs are allowed as this may cause the power supply to be shorted out, ie both transistors, TR1 and TR2 switched "ON" at the same time, (fuse = bang!).
As with uni-directional DC motor control as seen above, the rotational speed of the motor can also be controlled using Pulse Width Modulation or PWM. Then by combining H-bridge switching with PWM control, both the direction and the speed of the motor can be accurately controlled. Commercial off the shelf decoder IC's such as the SN754410 Quad Half H-Bridge IC or the L298N which has 2 H-Bridges are available with all the necessary control and safety logic built in are specially designed for H-bridge bi-directional motor control circuits.

The Stepper Motor

Like the DC motor above, Stepper Motors are also electromechanical actuators that convert a pulsed digital input signal into a discrete (incremental) mechanical movement are used widely in industrial control applications. A stepper motor is a type of synchronous brushless motor in that it does not have an armature with a commutator and carbon brushes but has a rotor made up of many, some types have hundreds of permanent magnetic teeth and a stator with individual windings.
Stepper Motor
Stepper Motor
As it name implies, a stepper motor does not rotate in a continuous fashion like a conventional DC motor but moves in discrete "Steps" or "Increments", with the angle of each rotational movement or step dependant upon the number of stator poles and rotor teeth the stepper motor has.
Because of their discrete step operation, stepper motors can easily be rotated a finite fraction of a rotation at a time, such as 1.8, 3.6, 7.5 degrees etc. So for example, lets assume that a stepper motor completes one full revolution (360o in exactly 100 steps. Then the step angle for the motor is given as 360 degrees/100 steps = 3.6 degrees per step. This value is commonly known as the stepper motors Step Angle.
There are three basic types of stepper motor, Variable Reluctance,Permanent Magnet and Hybrid (a sort of combination of both). A Stepper Motor is particularly well suited to applications that require accurate positioning and repeatability with a fast response to starting, stopping, reversing and speed control and another key feature of the stepper motor, is its ability to hold the load steady once the require position is achieved.
Generally, stepper motors have an internal rotor with a large number of permanent magnet "teeth" with a number of electromagnet "teeth" mounted on to the stator. The stators electromagnets are polarized and depolarized sequentially, causing the rotor to rotate one "step" at a time.
Modern multi-pole, multi-teeth stepper motors are capable of accuracies of less than 0.9 degs per step (400 Pulses per Revolution) and are mainly used for highly accurate positioning systems like those used for magnetic-heads in floppy/hard disc drives, printers/plotters or robotic applications. The most commonly used stepper motor being the 200 step per revolution stepper motor. It has a 50 teeth rotor, 4-phase stator and a step angle of 1.8 degrees (360 degs/(50x4)).

Stepper Motor Construction and Control

Variable Reluctance Stepper Motor

In our simple example of a variable reluctance stepper motor above, the motor consists of a central rotor surrounded by four electromagnetic field coils labelled ABC and D. All the coils with the same letter are connected together so that energising, say coils marked A will cause the magnetic rotor to align itself with that set of coils. By applying power to each set of coils in turn the rotor can be made to rotate or "step" from one position to the next by an angle determined by its step angle construction, and by energising the coils in sequence the rotor will produce a rotary motion.
The stepper motor driver controls both the step angle and speed of the motor by energising the field coils in a set sequence for example, "ADCB, ADCB, ADCB, A..." etc, the rotor will rotate in one direction (forward) and by reversing the pulse sequence to "ABCD, ABCD, ABCD, A..." etc, the rotor will rotate in the opposite direction (reverse).
So in our simple example above, the stepper motor has four coils, making it a 4-phase motor, with the number of poles on the stator being eight (2 x 4) which are spaced at 45 degree intervals. The number of teeth on the rotor is six which are spaced 60 degrees apart. Then there are 24 (6 teeth x 4 coils) possible positions or "steps" for the rotor to complete one full revolution. Therefore, the step angle above is given as:   360o/24 = 15o.
Obviously, the more rotor teeth and or stator coils would result in more control and a finer step angle. Also by connecting the electrical coils of the motor in different configurations, Full, Half and micro-step angles are possible. However, to achieve micro-stepping, the stepper motor must be driven by a (quasi) sinusoidal current that is expensive to implement.
It is also possible to control the speed of rotation of a stepper motor by altering the time delay between the digital pulses applied to the coils (the frequency), the longer the delay the slower the speed for one complete revolution. By applying a fixed number of pulses to the motor, the motor shaft will rotate through a given angle and so there would be no need for any form of additional feedback because by counting the number of pulses given to the motor the final position of the rotor will be exactly known. This response to a set number of digital input pulses allows the stepper motor to operate in an "Open Loop System" making it both easier and cheaper to control.
For example, lets assume that our stepper motor above has a step angle of 3.6 degs per step. To rotate the motor through an angle of say 216 degrees and then stop again at the require position would only need a total of: 216 degrees/(3.6 degs/step) = 80 pulses applied to the stator coils.
There are many stepper motor controller IC's available which can control the step speed, speed of rotation and motors direction. One such controller IC is the SAA1027 which has all the necessary counter and code conversion built-in, and can automatically drive the 4 fully controlled bridge outputs to the motor in the correct sequence. The direction of rotation can also be selected along with single step mode or continuous (stepless) rotation in the selected direction, but this puts some burden on the controller. When using an 8-bit digital controller, 256 microsteps per step are also possible

SAA1027 Stepper Motor Control Chip

saa1027 stepper motor control chip