BLDC motor control algorithm and vector control

Publisher:MysticalEssenceLatest update time:2023-03-23 Source: elecfansKeywords:BLDC Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere

BLDC Motor Control Algorithm

Brushless motors are self-commutated (self-direction converting) and therefore more complex to control.


BLDC motor control requires knowledge of the rotor position and the mechanism by which the motor is commutated. For closed-loop speed control, there are two additional requirements, namely the measurement of the rotor speed and/or motor current and the PWM signal to control the motor speed and power.


BLDC motors can use either edge-aligned or center-aligned PWM signals depending on the application requirements. Most applications require only variable speed operation and will use 6 independent edge-aligned PWM signals. This provides the highest resolution. If the application requires server positioning, dynamic braking, or power reversal, it is recommended to use supplemental center-aligned PWM signals.


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


Insertion and supplementation of dead time:

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


Control Algorithm

Many different control algorithms are used to provide control of 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 be PWM controlled and require a microcontroller to provide starting and control functions.


The control algorithm must provide the following three functions:

  • PWM voltage for controlling motor speed

  • Mechanism for rectifying and commutating the motor

  • Methods for predicting rotor position using back EMF or Hall sensors

Pulse width modulation is used only to apply a variable voltage to the motor windings. The effective voltage is proportional to the PWM duty cycle. When properly commutated, the torque-speed characteristics of the BLDC are the same as those of the following DC motors. The speed and variable torque of the motor can be controlled with a variable voltage.


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


Trapezoidal commutation of BLDC motor

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

picture

Figure 2: Simplified block diagram of a trapezoidal controller for a BLDC motor

In FIG. 2 , the current is controlled through one pair of motor terminals at a time, while the third motor terminal is always electrically disconnected from the power supply.


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

picture

Figure 3: Trapezoidal control: drive waveform and torque at commutation

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

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


In motor applications like air conditioners and refrigerators, using Hall sensors is not always an option. Back EMF sensors sensed in the non-coupled windings can be used to achieve the same result.


Such trapezoidal drive systems are very common due to the simplicity of their control circuits, but they suffer from the problem of torque ripple during the rectification process.


Sinusoidal commutation of BLDC motors

Trapezoidal commutation is not sufficient to provide balanced, accurate BLDC motor control. This is primarily because the torque produced in a three-phase BLDC motor (with a sine 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 shaft

  • 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(+120o); IT=I0Sin(+240o)

You will get: shaft torque = 1.5I0*Kt (a constant independent of the shaft angle)

Sinusoidally commutated brushless motor controllers strive to drive three motor windings with three currents that vary sinusoidally as the motor turns. The relative phases of these currents are chosen so that they will produce a smooth rotor current space vector that is orthogonal to the rotor and has an invariant value. This eliminates torque ripple and steering pulses associated with steering.


In order to generate a smooth sinusoidal modulation of the motor current as the motor rotates, an accurate measurement of the rotor position is required. Hall devices only provide a rough calculation of the rotor position, which is not sufficient for this purpose. For this reason, angular feedback from an encoder or similar device is required.

picture

Figure 4: Simplified block diagram of a 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 wire group must be sinusoidal and phase-shifted by 120 degrees. The position information from the encoder is used to synthesize two sine waves, which are 120 degrees phase-shifted between them. These signals are then multiplied by the torque value, so the amplitude of the sine wave is proportional to the required torque. As a result, the two sine wave current commands are properly phased to produce a rotating stator current space vector in orthogonal directions.


The sinusoidal current command signals output a pair of PI controllers that modulate the current in the two appropriate motor windings. The current in the third rotor winding is the negative sum of the controlled winding currents 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 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 wire groups, for 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, is stabilized in quantity and is positioned in the desired direction.


Normally, the sinusoidal commutation commutation results in a stable control that cannot be achieved with trapezoidal commutation commutation. However, since it is very efficient at low motor speeds, it will break down at high motor speeds. This is because as speed increases, the current return controllers must track a sinusoidal signal of increasing frequency. At the same time, they must overcome the motor's back EMF, which increases in amplitude and frequency as speed increases.


Since the PI controller has finite gain and frequency response, a time-varying disturbance to the current control loop will cause a phase lag and gain error in the motor current, which increases at higher speeds. This will disturb the direction of the current space vector relative to the rotor, causing a displacement from the orthogonal direction.


When this happens, less torque can be produced by a given amount of current, so more current is required to maintain torque, and efficiency decreases.


As speed increases, this reduction continues. At some point, the current phase shift exceeds 90 degrees. When this occurs, the torque decreases to zero. Speeds above this point result in negative torque through sinusoidal combination, so this cannot be achieved.


AC Motor Control Algorithms

** 1. Scalar control **

Scalar control (or V/Hz control) is a simple method of controlling the commanded motor speed. The steady-state model of the commanded motor is mainly used to obtain the technology, so transient performance is not possible. The system does not have a current loop. To control the motor, the three-phase power supply is varied only in amplitude and frequency.

** 2. Vector control or field oriented control**

The torque in an electric motor varies as a function of the stator and rotor magnetic fields and reaches its peak when the two fields are orthogonal to each other. In scalar-based control, the angle between the two fields varies significantly.


Vector control seeks to recreate the quadrature relationship in an AC motor. To control torque, each generates current from the magnetic flux produced to achieve the responsiveness of a DC machine.


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

[1] [2]
Keywords:BLDC Reference address:BLDC motor control algorithm and vector control

Previous article:What is a stepper motor? How does a stepper motor work?
Next article:Brief Analysis of Motor Principles and Several Important Formulas

Recommended ReadingLatest update time:2024-11-16 09:29

What is a brushless DC motor (BLDC)? What are the advantages of a brushless DC motor?
Brushless DC motors (BLDC) have been an area of ​​focus for many motor manufacturers as these motors are increasingly becoming the preferred choice for many applications, especially in the field of motor control technology. BLDC motors are superior to brushed DC motors in many aspects, such as high-speed operation,
[Embedded]
What is a brushless DC motor (BLDC)? What are the advantages of a brushless DC motor?
Brief Introduction of FOC of BLDC Motor Control Algorithm
I recently completed a brushless DC motor speed control project. I consulted various blogs and papers written by experts. Here I will just make a small summary: (PS I recently encountered a related topic and found that the previous description was not complete, so I added some more.) FOC (Field Oriented Control
[Embedded]
Brief Introduction of FOC of BLDC Motor Control Algorithm
Latest Embedded Articles
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号