This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

BOOSTXL-DRV8320H: Speed loop / active brake

Part Number: BOOSTXL-DRV8320H
Other Parts Discussed in Thread: MSP430F5529, BOOSTXL-DRV8320S

Hi all, 

A year ago I asked for advice to implement BLDC sensored control that meets the following characteristics:

* Nominal voltage of 24 Vdc.

* 10 amp rated current.

* Closed loop control (Hall sensors).

* External or internal speed control (not relevant).

* If the speed increases above the setting due to external conditions, the activated brake is reduced at the set point.

They advised me:
I was told that this solution has no speed loop and no active brake, but: "With that said, those features can be added into your system easily."

The system is working properly, except that I cannot maintain speed if the motor is revving from external causes.
Any suggestions on how to add those two functions to my system?

Many thanks


  • Hi Gonzalo,

    Thank you for your question! To create a speed loop in your system, you can use the signal from one of the hall sensors back to the MSP430 to calculate the speed of the motor based on the frequency of the hall sensor switching. Each period of a hall sensor switching is 1 full rotation of the motor. If the MSP430 detects that the motor speed is too fast, then the motor can reduce the PWM duty cycle going to the DRV to reduce the speed.

    To implement active braking,  there are several different methods. One method is to turn off all the high side FETs and turn on all the low side FETs to allow the current to circulate through the low side FETs. This rapidly reduces the speed of the motor since you are shorting the back-EMF. One consideration with this method is that it is important make sure that the FETs can handle the energy that will be dissipated. One other method used to slow down a motor is called coasting. This is where all the FETs are turned off and the current decays through the body diodes of the FETs and back through the power supply. This will rapidly reduce the torque of the motor since the current will rapidly decay. A few things to be mindful of when using this method is that the voltage of the power supply will be pumped up due to the current recirculating back into the battery. Therefore it is important to monitor to make sure that the voltage and current ratings of the battery does not get violated, as well as the voltage of the supply doesn't violate any abs max specs of the DRV due to the voltage increase from braking. 

    If braking is used to slow down the motor when it is going too fast, then the MCU will need to monitor the frequency of the hall sensor switching and turn off braking and resume normal operation once the speed of the motor reaches the desired speed.  

    Hope that helps,