Share this

Applications of BLDC motor control and stepper motor control

2026-04-06 06:03:01 · · #1

BLDC motor control algorithm

Brushless motors are self-commutating (self-direction switching), making them more complex to control.

BLDC motor control requires understanding the rotor position and mechanism for rectification and direction of the motor. For closed-loop speed control, there are two additional requirements: measuring the rotor speed and/or motor current, as well as the PWM signal, to control the motor speed and power.

BLDC motors can use either edge-arranged or center-arranged PWM signals depending on the application requirements. Most applications only require speed-changing operation, which will use six independent edge-arranged PWM signals. This provides the highest resolution. If the application requires server positioning, regenerative braking, or power reversal, a supplementary center-arranged PWM signal is recommended.

To sense rotor position, BLDC motors use Hall effect sensors to provide absolute positioning. This results in more wiring and higher costs. Sensorless BLDC control eliminates the need for Hall sensors, instead using the motor's back electromotive force (EMF) to predict rotor position. Sensorless control is crucial for low-cost variable-speed applications like fans and pumps. Refrigerator and air conditioner compressors also require sensorless control when using BLDC motors.

Insertion and supplementation of idle time

Most BLDC motors do not require complementary PWM, idle time insertion, or idle time compensation. BLDC applications that may require these features are only high-performance BLDC servo motors, sinusoidally excited BLDC motors, brushless AC motors, or PC synchronous motors.

Control Algorithm

Many different control algorithms have been used to provide control for BLDC motors. Typically, power transistors are used as linear regulators to control the motor voltage. This approach is not practical when driving high-power motors. High-power motors must employ PWM control and require a microcontroller to provide both starting and control functions.

The control algorithm must provide the following three functions:

PWM voltage used to control motor speed

Mechanism used for rectifying and commutating motors

Methods for predicting rotor position using back electromotive force or Hall sensors

Pulse width modulation (PWM) is used only to apply variable voltage to the motor windings. The effective voltage is proportional to the PWM duty cycle. With proper rectification and commutation, the torque-speed characteristics of a BLDC motor are the same as those of a DC motor. Variable voltage can be used to control both the motor's speed and torque.

Commutation of power transistors enables the appropriate windings in the stator to generate optimal torque based on the rotor position. In a BLDC motor, the MCU must know the rotor position and be able to perform rectification and commutation at the right time.

Trapezoidal commutation of BLDC motor

One of the simplest methods for brushless DC motors is to use what is called trapezoidal commutation.


Figure 1: Simplified block diagram of a ladder controller for a BLDC motor

In this schematic diagram, the current is controlled by a pair of motor terminals each time, while the third motor terminal is always electronically disconnected from the power supply.

Three Hall effect devices embedded in the large motor are used to provide digital signals. They measure the rotor position within a 60-degree sector and provide this information to the motor controller. Because the current in two windings is equal each time, while the current in the third winding is zero, this method can only generate a current space vector with one of six common directions. As the motor rotates, the current at the motor terminals switches once every 60 degrees (rectification commutation), so the current space vector is always at the position closest to 30 degrees with a 90-degree phase shift.


Figure 2: Trapezoidal control: drive waveform and torque at the rectifier

Therefore, the current waveform of each winding is trapezoidal, starting from zero to positive current, then back to zero, and then to negative current.

This creates a current space vector that will approach equilibrium rotation as it steps in six different directions as the rotor rotates.

In motor applications such as air conditioners and refrigerators, using Hall effect sensors is not always the best choice. Back EMF sensors induced in non-connected windings can be used to obtain the same results.

Such trapezoidal drive systems are very common due to the simplicity of their control circuits, but they encounter torque ripple problems during rectification.

Sinusoidal commutation of BLDC motor

Trapezoidal commutation is insufficient for providing balanced and precise brushless DC motor control. This is primarily because the torque generated in a three-phase brushless motor (with a positive wave back EMF) is defined by the following equation:

Shaft torque = Kt [IRSin(o) + ISSin(o+120) +ITSin(o+240)]

in:

o is the electrical angle of the rotation axis.

Kt is the torque constant of the motor.

IR, IS, and IT are phase currents.

If the phase current is sinusoidal: IR = I0Sino; IS = I0Sin (+120°); IT = I0Sin (+240°)

We will obtain: Shaft torque = 1.5I0*Kt (a constant independent of the shaft angle)

The sinusoidal commutator brushless motor controller drives three motor windings, whose three currents smoothly change sinusoidally as the motor rotates. The relevant phases of these currents are chosen so that they produce a smooth rotor current space vector, orthogonal to the rotor and invariant. This eliminates torque ripple and steering pulses associated with north-south steering.

To generate a smooth sinusoidal modulation of the motor current as the motor rotates, a precise measurement of the rotor position is required. Hall effect devices only provide a rough calculation of the rotor position, which is insufficient to meet this requirement. For this reason, angular feedback from an encoder or similar device is necessary.


Figure 3: Simplified block diagram of BLDC motor sine wave controller

Since the winding currents must combine to produce a smooth, constant rotor current space vector, and each position of the stator winding is 120 degrees apart, the current in each winding must be sinusoidal with a 120-degree phase shift. Position information from the encoder is used to synthesize two sine waves with a 120-degree phase shift between them. These signals are then multiplied by the torque command, so the amplitude of the sine wave is proportional to the required torque. As a result, the two sinusoidal current commands are properly phased, thus generating a rotating stator current space vector in orthogonal directions.

A sinusoidal current command signal outputs a pair of PI controllers that modulate the current in two appropriate motor windings. The current in the third rotor winding is the negative sum of the currents in the controlled windings and therefore cannot be controlled separately. The output of each PI controller is fed to a PWM modulator, and then to the output bridge and the two motor terminals. The voltage applied to the third motor terminal is derived from the negative sum of the signals applied to the first two windings, appropriately used to generate three sinusoidal voltages spaced 120 degrees apart.

As a result, the actual output current waveform accurately tracks the sinusoidal current command signal, and the resulting current space vector rotates smoothly, thus stabilizing in quantity and positioning in the required direction.

Trapezoidal rectifiers, while efficient at low motor speeds, cannot achieve the stable control required for sinusoidal rectifiers. This is because, with increasing speed, the current return controller must track a sinusoidal signal with increasing frequency. Simultaneously, it must overcome the motor's back electromotive force, which increases in amplitude and frequency with increasing speed.

Because PI controllers have finite gain and frequency response, time-varying disturbances in the current control loop will cause phase lag and gain errors in the motor current; the higher the speed, the greater the error. This will disrupt the direction of the current space vector relative to the rotor, causing displacement in orthogonal directions.

When this occurs, a small amount of current can produce a small torque, so more current is needed to maintain the torque. Efficiency decreases.

This reduction will continue as speed increases. At some point, the phase shift of the current exceeds 90 degrees. When this occurs, the torque drops to zero. Due to the sinusoidal combination, the speed at this point results in negative torque, which is therefore impossible to achieve.

AC motor control algorithm

Scalar control

Scalar control (or V/Hz control) is a simple method for controlling the speed of a motor.

The steady-state model of the command motor is primarily used for obtaining technical specifications; therefore, transient performance is not achievable. The system lacks a current loop. To control the motor, the three-phase power supply only varies in amplitude and frequency.

Vector control or field-oriented control

The torque in an electric motor varies with the function of the stator and rotor magnetic fields, reaching its peak when the two magnetic fields are orthogonal. In scalar-based control, the angle between the two magnetic fields changes significantly.

Vector control attempts to recreate orthogonal relationships in AC motors. To control torque, current is generated from the magnetic flux to achieve the responsiveness of DC machines.

Vector control of an AC command motor is similar to the control of a standalone excitation DC motor. In a DC motor, the magnetic field energy ΦF generated by the excitation current IF is orthogonal to the armature flux ΦA generated by the armature current IA. These magnetic fields are decoupled and are well-stable with each other. Therefore, when the armature current is controlled to control the torque, the magnetic field energy remains unaffected, resulting in a faster transient response.

Field-oriented control (FOC) of a three-phase AC motor involves mimicking the operation of a DC motor. All controlled variables are mathematically transformed to DC rather than AC. The objective is independent control of torque and flux.

There are two methods for field-oriented control (FOC):

Direct FOC: The direction of the rotor magnetic field (rotor flux angle) is directly calculated using a flux observer.

Indirect FOC: The direction of the rotor magnetic field (rotor flux angle) is obtained indirectly by estimating or measuring the rotor speed and slip.

Vector control requires knowledge of the rotor flux position and can utilize knowledge of the terminal current and voltage (using a dynamic model of an AC induction motor) to calculate using advanced algorithms. However, from an implementation perspective, the demand for computational resources is critical.

Vector control algorithms can be implemented in different ways. Feedforward techniques, model estimation, and adaptive control techniques can all be used to enhance response and stability.

Vector Control of AC Motors: In-depth Understanding

The core of vector control algorithms lies in two important transformations: the Clark transformation, the Park transformation, and their inverse operations. The Clark and Park transformations allow for control of the rotor current in the rotor region. This enables a rotor control system to determine the voltage supplied to the rotor to maximize torque under dynamically changing loads.

Clark transformation: Clark mathematical transformation converts a three-phase system into two coordinate systems.


The components of the orthogonal datum planes Ia and Ib, and the unimportant homoplanar component Io.


Figure 4: Relationship between three-phase rotor current and rotating reference frame


Park Transformation: The Park mathematical transformation converts a two-way static system into a rotating vector system.

The two-phase α and β frames are calculated via Clarke transformation and then input into the vector rotation module, where it rotates by an angle θ to match the d and q frames attached to the rotor energy. The angle θ transformation is achieved according to the above formula.

Basic structure of field-oriented vector control for AC motors

The Clarke transform uses three-phase currents IA, IB, and IC, which are located in the stator phase at a fixed coordinate system. These currents are transformed into Isd and Isq, becoming elements in the Park transform d, q. The currents Isd and Isq, calculated using the motor flux model, along with the instantaneous flow angle θ, are used to calculate the electric torque of the AC induction motor.


Figure 2: Basic principle of vector control AC motor

These derived values ​​are compared with reference values ​​and updated by the PI controller.


One inherent advantage of vector-based motor control is that the same principle can be used to select appropriate mathematical models to control various types of AC, PM-AC, or BLDC motors respectively.

Vector control of BLDC motors

BLDC motors are the primary choice for field-oriented vector control. Brushless motors employing FOC (Field-Oriented Vector Control) achieve higher efficiency, reaching up to 95%, and are also highly efficient at high speeds.

Stepper motor control


Stepper motor control typically employs bidirectional drive current, and its stepping is achieved by sequentially switching windings. Typically, such stepper motors have three drive sequences:

1. Single-phase full-step drive:

In this mode, the windings are energized in the following order: AB/CD/BA/DC (BA indicates that the energization of winding AB is in the reverse direction). This sequence is called single-phase full-step mode, or wave-driven mode. At any given time, only one phase is energized.

2. Two-phase full-step drive:

In this mode, both phases are energized simultaneously, so the rotor is always between the two poles. This mode is called two-phase full-step, and it is the normal drive sequence for a two-pole motor, providing the maximum output torque.

3. Half-step mode:

This mode combines single-phase and two-phase stepping power: single-phase power on, then two-phase power on, then single-phase power on again… thus, the motor operates in half-step increments. This mode is called half-step mode, where the effective step angle of each excitation of the motor is reduced by half, and its output torque is also lower.

All three modes can be used for rotation in the opposite direction (counterclockwise), but not if the order is reversed.

Typically, stepper motors have multiple poles to reduce the step angle; however, the number of windings and the driving sequence remain constant.

General DC motor control algorithm

Speed ​​control for general-purpose motors, especially motors using two types of circuits:

Phase angle control

PWM chopper control

Phase angle control

Phase angle control is the simplest method for general-purpose motor speed control. Speed ​​is controlled by varying the arc angle of the TRIAC. Phase angle control is a very economical solution; however, it is not very efficient and is susceptible to electromagnetic interference (EMI).


Phase angle control of general-purpose motors

The above diagram illustrates the mechanism of phase angle control, a typical application of TRIAC speed control. The cyclic phase shift of the TRIAC gate pulse generates an efficient voltage, thus producing different motor speeds. Furthermore, a zero-crossing detection circuit is employed to establish a timing reference to delay the gate pulse.

PWM chopper control

PWM control is a more advanced solution for general motor speed control. In this solution, a power MOSFET or IGBT is connected to a high-frequency rectified AC line voltage, thereby generating a time-varying voltage for the motor.


PWM chopper control for general-purpose motors

Its switching frequency range is typically 10-20 kHz to eliminate noise. This general-purpose motor control method achieves better current control and better EMI performance, thus resulting in higher efficiency.

Read next

CATDOLL 150CM Sana Mini TPE Doll

Height: 150cm Weight: 36kg Shoulder Width: 36cm Bust/Waist/Hip: 73/64/85cm Oral Depth: 3-5cm Vaginal Depth: 3-15cm Anal...

Articles 2026-02-22