Implementing Embedded Speed Control for Brushless DC Motors: Part 1

Yashvant Jani, Renesas Technology America, Inc.

December 27, 2006

Yashvant Jani, Renesas Technology America, Inc. December 27, 2006

Brushless Direct Current (BLDC) motors, also known as permanent magnet motors, are used today in many applications. A new generation of microcontrollers and advanced electronics has overcome the challenge of implementing required control functions, making BLDC motors more practical for a wide range of uses.

In this series of articles we will discuss the basics of BLDC motors, including their construction and operation, fundamental equations for force and torque generation, along with basic control electronics necessary for proper deployment.

Also covered here is 120-degree modulation and a six-step method for operating the motor, as well as how the modulation can be implemented using Hall sensors and back-EMF signals. Included are implementation examples that make use of a microcontroller unit (MCU), as well as a discussion of the necessary features of on-chip timers and interrupt handling within the MCU.

BLDC fundamentals
A BLDC motor has two main components: a rotor made up of permanent magnets and a stator with a winding connected to the control electronics. The brushes and commutation ring that are essential parts of a universal motor have been eliminated from the BLDC motor design. Instead, control electronics are used to generate a proper sequence for commutation.

Because of its design, the BLDC motor is also known by other names: permanent magnet synchronous motor (PMSM), brushless permanent magnet motors, or permanent magnet AC (PMAC) motor. Sometimes it is simply called a PM motor.

The BLDC motor is based on a fundamental principle of magnetism, which tells us that similar poles repel each other, while opposite poles attract. As Figure 1a below illustrates, when a current is passed through two coils, it generates a magnetic field with a polarity that creates torque on the central magnet—in this case, the rotor.

When a current is passed in the direction shown, the central rotor rotates clockwise. When the rotor reaches a certain position, the direction of the current is changed so that the torque continues further in the same direction. When necessary, the current direction is changed again to continue generation of the torque.

Figure 1a. Magnetic filed due to current in stator coils creates torque on the rotor.

However, instead of two coils, actual BLDC motors typically use six coils positioned 60 degrees apart, as indicated by Figure 1b, below. Then, two coils at a time can be energized to create a torque sufficient to move the rotor to a desired position. When this position is reached, other coils are energized to continue producing the torque.

Figure 1b. Single pole pair 3-phase motor has six stator coils.

The total amount of torque created on the rotor is calculated using the Lorentz force formula in scalar form:

Here, r is the moment arm of the rotor, i is the current passing through stator coils, L is the length of coil, is the magnetic field of the rotor, and (theta) is the angle between the current direction and the magnetic field of the rotor. The larger the current, the larger the torque in the motor because the magnetic field and winding length remain the same once the motor has been constructed. Designers have only one quantity to change during motor operation: the current.

In vector form, this formula is T = r x F, where all three quantities are given in vector form with magnitude and direction. This formula is important because it allows designers to create an algorithm based on vector formulation when they want to control torque and the flux in the motor.

A BLDC motor offers many advantages over other types of motors. Its speed is not impeded by the stress limitations of brushes. Because it has no brushes to create sparks, the motor can be used in hazardous environments. It is efficient, reliable, and generally low maintenance. The torque-speed relationship is linear. Also, a high torque-to-volume ratio means that a BLDC motor requires less copper (metal) than do other motor types.

BLDC motors do have some drawbacks, though. Rotor position information is required for proper operation, so either Hall sensors or a back-EMF signal with intelligence must be used to obtain this information.

In general, the motor requires external power electronics, whereas an AC induction motor achieves constant-speed operation when started from and driven by an AC power supply. The BLDC motor is a 3-phase device. As such, it requires an inverter and, thus, a power switch. Its rotor requires magnetic (rare-earth) metal, so it may cost more. Finally, incorrect control of a BLDC motor, especially at high temperatures, can damage its permanent magnet, so careful design of the control electronics is essential.

Despite these drawbacks, use of BLDC motors abounds in the industry. Several examples are illustrated in the following figures. Figure 2  below shows the GE Electronically Commutated Motor (ECM), which has 12 poles (six pole-pairs) and comes in various horsepower ratings. Its electronics are mounted at the end of the motor in a case that is the same diameter as the motor itself. The GE ECM is a 3-phase motor that accepts a single-phase AC supply. Its stator has 18 coils and the rotor has surface-mounted magnets. Notice that the rotor is located inside the motor and stator is on the outside.

Figure 2. Electronically Commutated Motor (ECM) with control assembly

In contrast, the pancake motor shown in Figure 3 below  positions the rotor on the outside and the stator inside. The rotor has several surface-mounted magnets, and the stator has many coils. 

Figure 3 Pancake motor assembly shows stator and rotor

The small, low horsepower motor shown in Figure 4 below has external stators and internal rotors. All of these BLDC motors offer high torque and low volume, giving them an edge over universal or AC induction motors for applications in small spaces.

Figure 4. Small Brushless DC motor for appliance applications. BLDC motor control

In Figure 5a below we see that the stators in 3-phase BLDC motors are connected in a Y or a star formation. All three phases are connected in the center, which is called the neutral or ½ Vdc point. For this type of connection, the sum of the currents in all three phases is zero. Note that only two currents have to be measured; the third can be derived easily.

Isa + Isb + Isc = 0

Figure 5a. Star or Y-winding for the stator has sum of currents equal to zero

The stator-per-phase circuit shown in Figure 5b below has one inductive element and one resistive element. Its torque is proportional to the current as long as the magnetic field does not change.

Figure 5b
Figure 5b. Stator equivalent circuit.

In this case, torque is T = k is, where k is constant, (theta) is the magnetic field, and is is the stator current. If we combine k and theta we can write simply T = K *  is , where K is known as the torque constant.

The amount of current passing through the stator coils is based on the voltage applied and the back-EMF voltage generated. As the motor starts rotating, it generates more back-EMF voltage, which reduces the current and results in less torque. The diagram in Figure 5c below shows that as the current increases, speed increases up to a certain point and then becomes constant.

Torque increases up to a certain point and then decreases. This behavior is typical in a BLDC motor. Flux is pre-established by the magnetic field of the rotor. Therefore, torque is controlled simply by controlling the current in the stator. The commutation sequence ensures that the rotor rotates in synchronization with the stator excitation.

Figure 5c
Figure 5c. Torque and speed increases as current increases in the stator coils.

Typical hardware used to control a BLDC motor are the converter and inverter is shown in Figure 6a, below. Six power-MOSFET or insulated-gate bipolar transistor (IGBT) switches are used in the inverter. When AC to DC conversion is not required, a DC supply can be connected directly to the inverter board. A typical BLDC motor drive configuration is shown in Figure 6b, below. Notice that the power switches are labeled S1 - S6 in this figure. They have other common names, which can be used according to the author's preference, thus

Figure 6a. Typical hardware layout with converter and inverter modules.
Figure 6b. Typical representation with six switch configuration.

A BLDC motor also has sensors. For example, Hall sensors and an encoder may be used to provide information about the position of the rotor. These sensors are not connected with the commutation and control portion of the inverter and MCU.

However, because the MCU must process signals from these sensors, they must interface with the MCU. Hall sensors and the encoder are connected to the rotor, and rotation is necessary to create Hall signals.

Back-EMF signals are created from the high side of the phase voltage using a resistor ladder. Current can be measured using DC current transducers (DCCT) or AC current transducers (ACCT) with phase wires passing through the coils. Additionally, certain techniques allow single-phase currents to be measured using a shunt resistor. The back-EMF and DCCT/ACCT or shunt resistor are connected to the stator.

In motor terminology, control based on Hall sensors and an encoder is known as control with sensors, while control without these elements is known as sensorless control.

120-degree modulation and commutation sequence
As Figure 1b earlier  illustrates, a BLDC motor has six coils with phase settings generally denoted as Up, Un, Vp, Vn, Wp, and Wn. (Alternatively, we can use U+, U-, V+, V-, W+, and W- to indicate these settings.)

Three Hall sensors are located 120 degrees apart around the stator. Depending on which magnetic field passes over each sensor, the output may be high or low. When the north pole passes over a sensor, its output is high or state 1. When the south pole passes over a sensor, its output is low or state 0. Hall sensors thus provide information about polarity and position.

A six-step commutation sequence is used to steer the current and produce torque. The sequence starts with the initial position of the rotor aligned properly at 0 degrees. Power at the coils U+ and V- is turned on. This excitation creates a magnetic field so that the rotor turns in the intended direction—towards the 60 degree position. When this position is reached, V- is turned off and W- is turned on. Because U+ is still on, the U+ and W- coils are excited, and torque continues in the same direction.

When the rotor reaches the 120-degree position, U+ is switched off and V+ is switched on. W- is still on and so the V+ and W- excitation continues to produce torque in the same direction. At the 180-degree position, W- is turned off and U- is turned on, while V+ is kept on. At 240 degrees, V+ is turned off and W+ is turned on, with U-kept on. At 300 degrees, U- is turned off and V-is turned on, and W+ is kept on. Finally, when the rotor completes a 360-degree rotation, W+ is turned off and U+ is turned on, with V- kept on. Thus, we are back to the original state or step 1.

These six steps, depicted in Table 1, below, form the commutation sequence that produces correct rotation in one direction. For rotation in the reverse direction, the steps are executed in reverse order: 1, 6, 5, 4, 3, 2 and back to 1.

Table 1. Six steps for 120-degree modulation.

In our description, 'step' is synonymous with 'state'. Figure 7 below shows the complete six-step sequence with angles given in units of radians. Figure 7 also shows the current flow as it enters from one coil and exits a second coil.

This current flow corresponds exactly to the six steps of turning the switches on and off. Since each positive phase (U+, V+, and W+) is energized for 120-degree rotation, and each negative phase (U-, V-, and W-) is also energized for 120-degree rotation, this type of modulation is called 120-degree modulation.

Figure 7. Six step modulation for Brushless DC motor.
Figure 8. Six steps modulation with switch configuration

At each of six steps, one power-MOSFET or IGBT is switched on or off, hence the term 120degree six-step commutation. Figure 8 above illustrates these principles in a 120-degree drive system.

Figure 9. Six step commutation with phase currents behavior.

Control electronics - in particular the MCU - play an important role in this operation. Hall-effect signals are fed into MCU as external interrupts. With every interrupt signal, the MCU performs a state change; in other words, it turns off one switch device and turns on another one. The MCU performs its task by executing interrupt-based code and changing the state of the output pin. The MCU has three interrupt input pins, one for each Hall sensor, and six output pins, one for each switch driver.

The operation of a motor with 120-degree six-step commutation, along with the behavior of the phase currents, is shown in Figure 9, above.

Next, in Part 2: Brushless motor control using Hall sensor signal processing

Yashvant Jani is director of application engineering for the system LSI business unit at Renesas Technology America.

References
1. Power Electronics and Variable Frequency Drives Technology and Applications, Edited by Bimal K. Bose, IEEE Press, ISBN 0-7803-1084-5, 1997
2. Motor Control Electronics Handbook, By Richard Valentine, McGraw-Hill, ISBN 0-07-066810-8, 1998
3. FIRST Course On Power Electronics and Drives, By Ned Mohan, MNPERE, ISBN 0-9715292-2-1, 2003
4. Electric Drives, By Ned Mohan, MNPERE, ISBN 0-9715292-5-6, 2003
5. Advanced Electric Drives, Analysis, Control and Modeling using Simulink, By Ned Mohan, MNPERE, ISBN 0-9715292-0-5, 2001
6. DC Motors Speed Controls Servo Systems including Optical Encoders, The Electro-craft Engineering Handbook by Reliance Motion Control, Inc.
7. Modern Control System Theory and Application, By Stanley M. Shinners, Addison-Wesley, ISBN 0-201-07494-X, 1978
8. The Industrial Electronics Handbook, Editor-in-Chief J. David Irwin, CRC Press and IEEE Press, ISBN 0-8493-8343-9, 1997

This article is excerpted from a paper of the same name presented at the Embedded Systems Conference Boston 2006.

Loading comments...