How can I remove the few peaks before the overshoot, so I only have the overshoot peak and then it directly transition into steady state?
Mostrar comentarios más antiguos
I built a buck converter ( circuit will be below):
The parameters are:
Vi = 12V, L = 33e-3, the R next to L =0.5, C = 680e-6 , R next to C= 5e-3, R = 10

This is the output voltage graph i got:

Currently I'm manually tuning the PI to achieve an overshoot of between 10% to 20% and a settling time of 0.01 to 0.1 these are no problem but I just can't remove the oscillations following the overshoot. Also when I change the value of D it mess up the whole graph. Is it possible to remove the oscillations so the overshoot follows directly into the steady state because no matter what I change p and I to it never removes the oscillation before the overshoot and changing d mess up everything
5 comentarios
Kevin Rogers
el 26 de Feb. de 2022
The first commentator gave you the open loop transfer function. You can re-express the transfer function such that the denominator is (s^2 + 2*Delta*wn*s +wn^2). Adjust L&C such that:
Wn << Ws to give you the require attenuation, where Ws is the switching frequency. You have a 2nd order filter so the filter gain drops away at 40 db/decade.
Delta = 1 to give you critical damping.
This will remove the osciallations in the open loop response such that you are not depending on the PI controller to remove the oscillations but just to control the rise time and settling time.
Kevin Rogers
el 26 de Feb. de 2022
The PI filter will adjust the duty cycle to give you the required voltage output. D will be slightly higher than 2/3 to acount for source/series voltage drop.
Samuel Pappalardo
el 26 de Feb. de 2022
Samuel Pappalardo
el 26 de Feb. de 2022
Kevin Rogers
el 1 de Mzo. de 2022
wn = 1/sqrt(LC)
2*delta * wn = 1/(RC)
For critical damping delta = 1
Therefor C = 1 / (2*wn * R).
Substitute C inot 1st equation to get L.
Respuesta aceptada
Más respuestas (6)
Dr Narayanaswamy P R Iyer
el 25 de Feb. de 2022
0 votos
You have NOT mentioned anything about triangle carrier frequency. First obtain output voltage response without PI controller. Then apply Ziegler-Nicholas chart to tune PI controller. Refine this kp and ki value for desired response.
1 comentario
Samuel Pappalardo
el 25 de Feb. de 2022
Dr Narayanaswamy P R Iyer
el 26 de Feb. de 2022
0 votos
TF is one method. You know the desired output voltage and duty-ratio D. Use this in the model to get open loop voltage response. Then apply Ziegler-Nicholas chart to obtain kp and ki. Then refine this PI controller parameters for desired output voltage closed loop response.
1 comentario
Samuel Pappalardo
el 26 de Feb. de 2022
Dr Narayanaswamy P R Iyer
el 26 de Feb. de 2022
0 votos
For 8 V output, your duty-ratio should be 2/3 (0.67) for given input voltage.
1 comentario
Samuel Pappalardo
el 26 de Feb. de 2022
Zhao Wang
el 26 de Feb. de 2022
0 votos
Since you have built a Simulink model for the buck converter, you may want to consider tune the PID controller based on the actual model behavior. For a switching buck converter, you will need to conduct frequency response estimation to identify a linear system description at the desired operating point. Using the linear plant model, you can use the PID Tuner App (can be opened from the PID controller block) to tune PID controller gains to achieve the performance you want.
Here is an example about the workflow above: https://www.mathworks.com/help/slcontrol/ug/design-controller-for-power-electronics-model-using-frequency-response-data.html
2 comentarios
Samuel Pappalardo
el 26 de Feb. de 2022
Zhao Wang
el 26 de Feb. de 2022
I totally understand that the linearization error message will very likely appear in a switching circuit model. This linearization error is because of the discontinuities intrinsic in such power electronics models. There is an alternative way of tuning PID controllers automatically using the Closed-Loop PID Autotuner, as shown in the example: https://www.mathworks.com/help/slcontrol/ug/tune-pid-controller-in-real-time-using-closed-loop-pid-autotuner-block.html
Pat Gipper
el 26 de Feb. de 2022
0 votos
My bad. Change I to 300.
4 comentarios
Pat Gipper
el 26 de Feb. de 2022
Editada: Pat Gipper
el 26 de Feb. de 2022
But there are a few other things. I saturate the PID at +/-10Volts. And for the triangle wave I am using time values=[0 2e-4], output values=[0 10]. That will impact the overall gain.
Samuel Pappalardo
el 26 de Feb. de 2022
Samuel Pappalardo
el 26 de Feb. de 2022
Pat Gipper
el 28 de Feb. de 2022
This is the model that was sent. It is using version R2021b Update 1. The gain constants are in the Model Workspace. Use Model Explorer to modify the constants.
Antonino Riccobono
el 28 de Feb. de 2022
0 votos
Dear Samuel,
The difficulties you are encountering are understandable since when you tune a specific gain of your PID controller this will affect the other two. Therefore, manually tuning is not practical.
If you want to learn a systematic tuning workflow so that your feebback performance meets specific dynamic requirements, I invite you to consider the following training course:
Good luck,
Antonino
Comunidades de usuarios
Más respuestas en Power Electronics Control
Categorías
Más información sobre PID Controller Tuning en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!



