BLDC efficiency: damping, braking etc.

Upd 01/07/20, thanks to joelucid, I’ve corrected part about regeneration

There is significance difference between brushed and BLDS drones:

1. Brushed motor drones: rpm nonlinearly changes with the throttle position, thrust changes relatively slow (graph). DC brushed motor rotates on its own, more current, more magnetic field, more speed.
2. BLDC works different. Commutation of BLDC phases is made in such a way that the commutation intervals follow the desired rotation speed set by the throttle position. In other words, BLDC motor is always in a closed loop control to keep rpm. So, the rotation speed is proportional to the throttle position and thrust changes as square of the throttle position. Motor equations are the same, but all plots should be plotted against rotation speed (graph)

More sharp thrust dependence makes feeling that BLDC copters are more responsive, besides, the throttle position at hovering does not depend on the battery voltage much until the battery is over. The price is a complex closed loop system with many parameters.

Experimentally measured parameters of tiny whoop BLDC motors correspond well to the theory with the only very significant exception: efficiency is significantly lower than expected. Almost an year ago I raised myself a question on low BLDC efficiency based on the experimental data on the hovering times. No answer was found, since then I have a feeling that something is going wrong.

To answer this and some other questions I built a test stand. Many other findings were already discussed, in this post I’ll discuss results on low efficiency and its possible explanation.

This plot shows experimentally measured voltage and current at one of the motors’s coils.

Fig. 1 Voltages and currents at one of the phases of 19kV 0603 BLDC motor loaded with 31mm 4 blade propeller at 30%, 70% and 100% throttle positions. Negative means opposite (for previous and next stages it is positive). Here and below we use negative to show direction opposite to normal for simplicity.

The waveforms are expected, with the exception that there are moments when current is negative (means opposite, compared to direction of positive torque phase) (when it should relax to zero). It does not correspond to normal BLDC motor operation, and I even thought that something is wrong with my self-designed sensor board. To simulate electric behavior of BLDC I built Matlab simulation model.

Fig.2. Matlab Simulink model that emulates electrical behavior of BLDC motor. The inductors on the plot are motor coils, they also include resistor in series. Back emf is simulated with 3 sine-wave generators. Most of the results below are obtained at PWM duty cycle=0.3, Vbat=4V, R bat=0.2 Ohm, L coil= 5uH, R coil =0.5 Ohm, F pwm= 24 kHz. These are parameters typical for BHeli_S ESC and 0603 motor. MOSFET parameters and parameters of the body diodes are varied in dependence on the goal of the specific simulation.

Here are typical phases of the ESC and BLDC motor operation, the pwm MOSFETs are at the low side, this corresponds to the FC used in the experiment (red Crazybee F3 1S FC from UR65) (next post).

Fig.3 Typical cycles of the MOSFETs at high side (com (commutation)) and low side (pwm). There are 6 steps of commutation sequence, details can be found elsewhere.

I’ll concentrate on what happens at the each PWM period. The operation reminds work of  buck-converter, with the difference that we use pwm at the low side.


Fig.4. One period of the PWM cycle. It corresponds to 1 pwm cycle at the step 1 in Fig. 3.

When Acom MOSFET is opened, the current from battery goes through the coils A and B and opened Bpwm  to the ground, as shown with red line at the left picture. It produces magnetic field in the coil, and if inductance is high enough the additional voltage at the inductance V=L(dI/dt). Initial positive step of the current produces positive voltage at the Acoil.

When Bpwm MOSFET gets closed, dI/dt is negative, and commutation occurs via opened Apwm and a body diode of the Bcom MOSFET.

Here is simulation result, assuming that the body diode has voltage drop of 0.4V and resistance of 0.1 ohm.

Fig.5 Current and voltage at the Acoil. Red area corresponds to the current from the battery and blue area is a discharge of the inductance via body diode as shown in Fig. 4.

Note, current direction through the coil is still the same, so both phases create useful magnetic field. There is no current back into the battery, the circuit is on its own when Bpwm is closed. How much current (actually how long we can use current while off-period of PWM) depends on the parameters of the Bcom body diode. Longer time is better, it means we utilize most of the energy stored in the coil’s magnetic field.

Here are 2 ultimate cases: left picture shows situation when there are no any body diodes, and picture at right shows the simulation when body diode is perfect, R~0 and Vdrop~0.

Fig.6. Voltages and currents at the A coil and current at the battery. At left: no any body diodes; at right: perfect body diodes.

Note, as expected there is no negative current and there is no current coming into the battery (recuperation or regeneration),

The importance of the body diode parameters is well known in the word of buck converters, to increase efficiency, the Bcom MOSFET is being opened at the moments when Bpwm is closed. Opened Bcom MOSFET has lower voltage drop and lower resistance compared to the body diode and therefore the efficiency increases, typical enhancement is about few percents. This process is sometimes called synchronous rectification, or just shunt of the body diode with opened MOSFET (working in the 3rd quadrant).

Similar technique is used since outstanding SimonK ESC firmware. It was called something like COMP_PWM (complementary PWM), later by the author of famous BHeli and BHeli_S ESC firmware similar technique was called “damped light mode”. There is no much info about that; the only what I found is what Steffen Skaug (BLHeli’s author) says in the description:

“All codes use damped light mode. Damped light does regenerative braking, causing very fast motor retardation, and inherently also does active freewheeling”

OK, we learned already that this technology (active freewheeling (or shunt with MOSFET)) is common and useful for buck converters, let us see what will happen if there is back emf:

Fig. 7 Back emf at the AB and AC coil.

While step 1 and step 2 the coils A and B, (or A and C) are connected in series in the opposite direction. Fig. 7 shows these 2 voltages, Active voltage while Acom period (step 1 or step 2) is shown in orange. Note, the amplitude of the Bemf is almost doubled, compared to the Bemf at a single coil. Note the polarity: + is at the A coil.

Here is what happens:


Fig.8. Opened MOSFETs are replaced with the wires. Current pathways with (left) and without (right) body diodes. Right picture corresponds to the shunt of the body diode with the perfect MOSFET opened at the moments when Bpwm is closed. Fig.8b at right corresponds to the Fig.3b (right), but current direction is opposite because source is Bemf.

With the given Bemf polarity presence of the body diode (does not matter if the diode is perfect or not) does not allow Bemf current pass through the circuit. But when the diode is being shunt with the MOSFET both polarities are allowed and what we have is just short circuit of the coil, as before (see Fig.3). When current stored at the coil relaxes to zero, Bemf becomes a current source, so current start flowing in the opposite direction producing retarding torque.

Fig.9 a) Current direction changed (compare to Fig.3b), the source now is Bemf. b) when Bcom gets OFF at the next stage, interruption of current leads to negative voltage formed at the A.

At the next stage Bcom gets OFF (and Bpwm gets ON) and current gets interrupted, it leads to voltage formed at the coil with the polarity opposite to the current change rate (-LdI/dt). If sum of this voltage and Bemf is higher than battery voltage, current can go into the battery, providing some regeneration.

Here are MOSFET voltages in synchronous rectification mode (compare to Fig. 3)

Fig.10 Voltages at Com and Pwm MOSFETS while synchronous rectification (body diode shunt with MOSFET)

And the result of this simulation

Fig. 10. Simulation result when synchronous rectification is used. Compare to the upper plot of Fig.1 (experimental data). UPD: “lost-forever” is not quite correct, actually we have some loses due to Joule heat, but rest of the current returns to the battery via process in Fig.9b.

Fig.11 Zoomed. Positive current creates acceleration, while negative current produces braking (positive-negative is for stage 1-2, for 4-5 is opposite. At the end of this PWM cycle, the rest of the current utilizes via charging the battery when Bcom switches to OFF again.

Simulation results show very good match to the experimentally measured current and voltages. This makes me believe that the model is correct.

Remember ESC holds BLDC motor in a sort of closed loop control, from the closed-loop control theory it is known that well damped system can be controlled easier. BHeli_S works with a great number of motors of different size. And there are almost no adjustable parameters. Strong braking at every PWM cycle looks unavoidable if we are going to keep well-known performance of BLHeli_S, but unfortunately at the price of efficiency. Upd: 01/09/10 Damping (even at full regeneration) makes average current lower together with elevated Joule’s heat, see. These 2 effects are responsible for low efficiency.

Looks like almost every drone is affected by low efficiency naturally involved to the ESC firmware. For tiny whoops this is especially critical, because their flight time typically do not exceed 3 minutes.

In my next post I will turn the braking off by modification of BLHeli_S firmware and will see what happens in real life.



  1. Pingback: Drug Rehab Centers

Comments are closed.