Vector modulation (SVPWM): How a controller generates sine waves using six switches
La commande vectorielle calcule à chaque instant la tension qu'il faut appliquer au moteur. Reste à la produire avec un pont de six interrupteurs qui ne savent faire que deux choses : être ouverts ou fermés. C'est le rôle de la modulation, et la méthode la plus répandue s'appelle la modulation vectorielle, ou SVPWM (« Space Vector Pulse Width Modulation »).
The essentials
- A three-phase bridge has only eight possible configurations: six that send a voltage to the motor, and two that do not.
- The SVPWM technique achieves any desired voltage by rapidly switching between two closely related combinations and a zero combination.
- It draws approximately 15% more usable voltage from the battery compared to a simple sinusoidal modulation.
- More usable voltage means higher maximum speed, even with the same battery.
Eight states, no more
Each phase of the motor is connected to either the positive or negative terminal of the battery, depending on which of its two switches is closed (see the internal components of a motor controller). With three phases and two positions for each, there are 2 x 2 x 2 = 8 possible combinations.
- Six active combinations: At least one phase is at its maximum, and at least one is at its minimum. Each combination pushes the motor's magnetic field in a fixed direction. These six directions are spaced 60° apart and form a hexagon.
- Two null combinations: either the maximum of three phases, or the minimum of three phases. No voltage is applied between the phases.
Generate any voltage using averaging
Vector control requires a voltage with a specific magnitude and direction, which rotates along with the rotor. This direction almost always falls between two of the six available directions.
The SVPWM (Space Vector Pulse Width Modulation) concept is straightforward: during each switching period, the first neighboring vector is applied for a fraction of the time, the second for another fraction, and a zero vector is applied for the remaining time. On average, over the entire period, the motor "sees" exactly the requested voltage. The stronger the desired voltage, the less time is available for the zero vector.
The motor windings smooth out these pulses. Since the period repeats tens of thousands of times per second, the resulting current is a nearly perfect sine wave.
Why an additional 15% of voltage?
With simple sinusoidal modulation, each phase follows its own sine wave, centered around half of the battery voltage. Its amplitude cannot exceed this half: the voltage between two phases is then limited to below what the battery could potentially provide.
The motor, for its part, only senses the voltage differences between its phases. The SVPWM technique takes advantage of this: it constantly shifts the "center" point common to the three phases to utilize the full voltage of the battery. The usable voltage limit increases from half the battery voltage to approximately 58% (one divided by the square root of three), representing a gain of about 15%.
Specifically, with the same battery and the same motor, the maximum speed before field weakening is higher. The same result can be achieved by adding a component to each sine wave that is three times its frequency, which cancels out between the phases: it's the same trick, viewed differently.
Beyond that: overmodulation
When the requested voltage exceeds what the hexagon can continuously produce, the controller can still gain a little by distorting the sine wave, until it only applies the six active combinations, one per sixth of a rotation: this is the "six-step" waveform. This gains a few percentage points of voltage, but at the cost of a less sinusoidal current, increased losses, and more noise.
The details that matter in practice
- The dead time between opening one switch and closing the other slightly distorts the voltage produced. Good controllers compensate for this.
- Current measurement is performed during a zero-combination phase, where the current flows through the measurement resistors without being disturbed. At very high requested voltages, this measurement window becomes shorter.
- The symmetrical placement of the zero-voltage combinations at the beginning and end of each period reduces current ripple and noise.
Frequently Asked Questions
Does SVPWM make the motor more powerful?
It doesn't change the maximum torque, which is determined by the current. Instead, it allows you to utilize more of the battery's voltage, which helps maintain torque at higher speeds and achieve a higher maximum speed.
Do all FOC (Field-Oriented Control) controllers use SVPWM (Space Vector Pulse Width Modulation)?
Most modern controllers use Space Vector Pulse Width Modulation (SVPWM) or an equivalent method. Some simpler controllers still use classic sinusoidal modulation, which results in a slightly lower effective voltage.
Where does the name "vector" come from?
Each combination of motor windings is represented by an arrow, a vector, in the motor plane. The desired voltage is also represented as an arrow, which is constructed by adding the two neighboring vectors in the appropriate proportions.