Continue to Site

Welcome to

Welcome to our site! is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

[SOLVED] BLDC 4 quadrant control

Not open for further replies.


Newbie level 2
Feb 7, 2013
Reaction score
Trophy points
Activity points
Hi, I have a 3 ph BLDC motor using 6 step commutaion with trapezoidal bemf. I need to be able to control it in the 4th quadrant. It will have a load that will cause it to accelerate and deccelerate at the same frequency that it is spinning, hence the need for 4 quadrant control. The problem is I cannot return energy to the supply as it is supplied with non rechargable batteries.

Using bipolar drive will return the energy to the batteries, can't do that.

Is there any way of dumping the energy into a resistor whilst still maintaining good speed control?

Any ideas are helpful.

First of all protect your battery against regeneration using a diode (if low forward voltage schottky better :)).

Regarding deceleration energy management there are many approaches to solve this issue, the most common:
1) Increase DC bus capacitance so deceleration energy is stored in the capacitor increasing bus voltage... if system kinetic energy is big you would need HUGE capacitors.

2) Use a shunt braking resistor that is activated when the DC bus voltage exceeds a certain value. Use a low side switch, such as a power MOSFET and activate it when DC bus voltage increases some percentage above the nominal voltage. This can be implemented using a simple analog comparator that activates the MOSFET gate when voltage exceed the trigger voltage.

I suggest having a look to the following links:
**broken link removed**
Hi Emontllo, I am facing quite a same problem. I am trying your first option but after increasing DC bus capacitance my capacitor is not working.

If bus capacitance is increased note that the available energy will be:
If your nominal voltage is 12 V and you allow a maximum voltage of 20 V and you want to store 1 J of deceleration energy you would need 7812 uF!

The second option is recommended then.

By the way, it is a good practice to add a high power transient voltage suppressor (TVS) parallel to DC bus voltage to absorb short braking peaks.

Hi Emontlo,
thanks for the suggestions. The situation is the load in unbalanced. Gravity accelerates the rotor/load each half revolution, then for the other half it fights against gravity. I was using unipolar drive so this resulted in a speed ripple, the loop let go when the motor accelerated. I'm changing to complementary switching, 4 quadrant control, so now the loop will be able to brake the rotor when gravity wants to accelerate it. This energy will be dumped into large, not giant, bus cap. the battery will have a reverse diode. When active deceleration is needed I'll pwm the three low side fets effectively shorting out the windings, this energy will then just be dissipated in the winding and fet resistances.
The reverse diode will have to be 0.7V as schottkys have high reverse bias leakage. The battery will be 6 strings of 3 cells in series, should one string go down, the reverse leakage in the diode will eventually discharge the whole battery. Life span is 10 years. Will also be adding TVS across the bus.


Not open for further replies.

Part and Inventory Search

Welcome to