Electronic – What does changing the throttle to a BLDC ESC actually do

brushless-dc-motormotor controllerpmsmpwm

Background: I understand how the standard 50 Hz PWM protocol for hobby electronics works: varying the on-time from about 0.5 ms to 2.5 ms will throttle an actuator from roughly 0% to 100% thanks to embedded controllers inside the servos or electronic speed controllers (ESC) connected in series to a motor.

In the context of a BLDC motor, I understand that the ESC generates a trapezoidal voltage to 2/3 phases of the motor. The ESC looks for the zero-crossing point of the back EMF on the third phase to energize the next pair of phases with a built-in lead (30 degrees IIRC).

I don't understand how the electronic speed controller (ESC) acts upon these throttle commands.


My questions:

  1. Does changing the throttle change the duration of the trapezoids? Using a standard multimeter, I measured the RMS voltage and current between an ESC/motor running at ~50% and ~75% throttle. I know the meter probably isn't rated for such high frequencies, but I trust the fact that RMS readings increased from 50% to 75% throttle. This suggests the ESC is modulating the duration of the input voltage trapezoid to the motor since the peak voltage value is fixed by the battery (unless the ESC also somehow modulates that?). Note, I just realized I can test for this with an oscilloscope. I will do this tomorrow!

  2. How does the ESC maintain unity power factor? Does/how does it also control current? I'm assuming it aims for PF = 1 since this maximizes torque.

  3. Does changing the throttle setting below a certain point change the \$k_{t}\$ of a motor? The second plot linked below compares changing input voltage at 100% throttle to changing throttle at constant voltage. I understand that decreasing input voltage (input RMS voltage would be correct, yes?) shifts the torque-speed curve down and to the left, but why does the torque-speed response also start "drooping" at lower throttle settings? Re-arranging the DC-equivalent model for torque as a function of speed, \$T = [Vk_{t} – {k_{t}}^2\omega]/R\$, the only way slope can change is if \$k_{t}\$ or R change.

  4. Slightly unrelated to hobby BLDC motors, but do the similar sinusoidally-driven BLACs (aka PMSM?) energize all 3 phases at once? If so, then one cannot not sinusoidally drive a BLAC motor with sensorless control based on back-EMF measurements, correct?

voltage vs throttle effects

Plots from ARL technical report 6389.

Best Answer

Does changing the throttle change the duration of the trapezoids?

Not directly. The duration of the 'trapezoids' is determined by commutation, which is synchronized to the rotor position. The motor will rotate at the speed it wants to, determined by the applied voltage and torque load. The controller must respond to this by commutating at the same speed and phase.

The throttle controls effective motor voltage by applying high frequency 0-100% PWM, so you could say that it indirectly affects commutation timing because motor speed is proportional to applied voltage. However motor speed is also affected by loading, which may vary independently of throttle level.

How does the ESC maintain unity power factor?

The ESC may adjust commutation timing to compensate for the lagging current caused by winding inductance. Some ESCs do it automatically, others have fixed timing advance settings. With fixed timing unity power factor is rarely achieved, and the best setting is usually a compromise between power and efficiency.

Does changing the throttle setting below a certain point change the kt of a motor?

The controller relies on winding inductance to smooth out the current. However in most ESCs the PWM frequency is barely high enough to maintain continuous current flow. As the throttle is lowered (and PWM ratio reduced) current ripple increases until the current waveform becomes a discontinuous sawtooth. Since torque is proportional to average current this lowers the effective torque constant. At higher loading the current becomes smoother so the effective torque constant increases, causing the torque/rpm curve to become nonlinear.

do the similar sinusoidally-driven BLACs (aka PMSM?) energize all 3 phases at once?

Yes, or no - depending on the controller. There is no fundamental difference between BLDC and PMSM. It is possible to power a BLDC motor with 3 phase AC, but with all 3 phases continuously powered you can't extract back-emf for zero-crossing detection. However the PWM can be modulated to shape the trapezoid waveforms into a 'saddle' profile, which becomes a sine wave when the two driven phases are combined.

How to Sinusoidally Control Three-Phase Brushless DC Motors