I am using an uni polar BLDC motor. For speed control I am using PI closed loop.

During acceleration I am able to get speed as expected. Once I am crossing set point, I need to slowdown motor. If I am removing PWM (0% duty cycle) or applying less PWM as calculated by PI loop, speed is decreasing as if natural run down.

How I can bring speed down to get similar acceleration and deceleration slope.

Please help to understand what scheme usually adapted to decelerate in BLDC motor.

Update: My BLDC motor configuration is diagrammatically shown below.

enter image description here


To actively decelerate you require a 4-quadrant power-stage (H-bridge or 3phase inverter) but you also need the appropriate control. You mention "uni-polar" which would imply single-quadrant powerstage, this will need to be reviewed and corrected. Likewise your output voltage-loop/PWM stage needs to be adapted

Next you mention "Similar acceleration and deceleration" this requires a speed controller (which you have) and with appropriate powercore and voltage control loop stage you will naturally gain 4quadrant with rate of change control inherited from the main control loop (assuming your PI gains are appropriately set).

The issue then comes down to the recovered energy. When you decelerate you are transferring energy from the rotor and it will charge up your DClink. The rate of change of DClink voltage will be related to:

  1. DClink capacitance
  2. Rotor stored energy (0.5Jw^2)
  3. Control loop bandwidth with regards to deceleration.

The DClink voltage will rise, by how much depends on the 3 points above. You maybe able to mitigate the rise by increasing the capacitance value otherwise you will need to incorporate a DClink chopper circuit to discharge the DCLink

| improve this answer | |
  • \$\begingroup\$ Thanks @JonRB for your useful reply. I have updated my motor configuration with a block diagram. With this configuration can motor's deceleration be configured ? My confusion is when PI loop tells to reduce speed (negative output), how to covert it into PWM duty cycle. I am reducing proportionally or making it zero speed is decreasing freely. If I am trying to do a reverse commutation, motor is taking high current and system became unstable. Please help me in this regard. Do you have any reference/software for similar BLD configuration ? \$\endgroup\$ – Pradeep Das Nov 3 '16 at 11:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.