Boost converter Controlling problem when transfer from light load to heavy load

Thread Starter

damith92

Joined Jun 6, 2022
3
I built a boost converter to boost voltage from 200V dc to 400V dc. Power rating is 5kw, I added a PID to regulate the voltage. The problem is, when going from light load to heavy load, output voltage causes overshoot. After going to heavy load, further load addition has no problems. For ex, lets say the converter is operating at 30w. Then if I added a 500w load, output overshoot happens. After that, even if i added a 2kw load, no problem occurs. If i reduced the PID gains to compensate this issue, then output voltage regulation at the 30w to 500w transfer become too slow that it takes about 1-2 seconds to come to the set point and the output voltage is dipped to input voltage at the start.

Duty cycle equation for CCM given by, D= 1-(Vin/Vout). PID output value is tally with this equation when there is heavy load. However at light load, there is a large difference between the PID output and this "D" value. If i hard coded this Duty cycle, output voltage go to a higher value than the calculated value. Once a heavy load, say 500w added to this, then voltage come back to the calculated value.

I think this is happening due to the boost converter going to continuous conduction mode from discontinuous conduction mode. Am i right? Is there any special way to deal with DCM?. How handle this DCM to CCM transfer properly?.

Duty cycle difference between light load and large load is about 0.3. This larger duty cycle jump creates overshoot. If i slowed down the PID to compensate this, it become too much slow.
 

Sensacell

Joined Jun 19, 2012
3,011
The "gain" of your system is non-linear, switching modes also changes the system gain, impossible to get the PID tuned for all these different conditions.

How about making the PID gains change depending on conditions? give the controller a bunch of inputs that can help it figure out what is happening and respond with the appropriate tuning.
 

Thread Starter

damith92

Joined Jun 6, 2022
3
Thank you for the suggestion.
I played around with different gains. Light load gains are very low and high load gains are comparatively high. I implemented a scheduled gains based on the current, as you mentioned. But it created worse transient conditions when transferring from light to high loads and fets got burned. At 400V dc, it is very sensitive to transients and fets get popped up for a slight change of the gains.

What about using a nonlinear PID. ?
 

Sensacell

Joined Jun 19, 2012
3,011
Thank you for the suggestion.
I played around with different gains. Light load gains are very low and high load gains are comparatively high. I implemented a scheduled gains based on the current, as you mentioned. But it created worse transient conditions when transferring from light to high loads and fets got burned. At 400V dc, it is very sensitive to transients and fets get popped up for a slight change of the gains.

What about using a nonlinear PID. ?
If you could predict what was happening, you might be able to switch tuning on the fly? But you would need good information about what is going on, almost instantly.

I built a mechanical contraption that used PID, gravity caused a preload that made the performance always sub-optimal, overshooting one way and overdamped the other. The solution was to switch PID parameters depending on which way it was moving.
 
Last edited:
Top