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?

5 ビュー (過去 30 日間)
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 件のコメント
Samuel Pappalardo
Samuel Pappalardo 2022 年 2 月 26 日
How will i know what to adjust L and c in order to get wn<<ws
Kevin Rogers
Kevin Rogers 2022 年 3 月 1 日
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.

サインインしてコメントする。

採用された回答

Pat Gipper
Pat Gipper 2022 年 2 月 26 日
Hi Samuel. I found tuning the derivative to be difficult too. Eventually I settled in on P=3.5, I=850, D=0.01 and N=850. The default value of N was way too small. Here is the result.

その他の回答 (6 件)

Dr Narayanaswamy P R Iyer
Dr Narayanaswamy P R Iyer 2022 年 2 月 25 日
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 件のコメント
Samuel Pappalardo
Samuel Pappalardo 2022 年 2 月 25 日
Thanks but to apply the zieglar- Nicholas i need to know the TF. The carrier frequency would be 1Khz
would it be correct to say the Tf of my circuit would be:
If is correct i will just sub my values for R L C and Vi

サインインしてコメントする。


Dr Narayanaswamy P R Iyer
Dr Narayanaswamy P R Iyer 2022 年 2 月 26 日
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 件のコメント
Samuel Pappalardo
Samuel Pappalardo 2022 年 2 月 26 日
How do i obtain open loop voltage reponse
My dersired output voltage is 8v and duty cycle should be 50%

サインインしてコメントする。


Dr Narayanaswamy P R Iyer
Dr Narayanaswamy P R Iyer 2022 年 2 月 26 日
For 8 V output, your duty-ratio should be 2/3 (0.67) for given input voltage.
  1 件のコメント
Samuel Pappalardo
Samuel Pappalardo 2022 年 2 月 26 日
Yes you arre correct
how can i use these two values to obtain the open loop voltage
I'm unawre of the formula if there is one

サインインしてコメントする。


Zhao Wang
Zhao Wang 2022 年 2 月 26 日
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.
  2 件のコメント
Samuel Pappalardo
Samuel Pappalardo 2022 年 2 月 26 日
It never works for me everytime i use it saids plant cannot be linearsed, i even imported simulation data and still it doesnt work
Zhao Wang
Zhao Wang 2022 年 2 月 26 日
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
Pat Gipper 2022 年 2 月 26 日
My bad. Change I to 300.
  4 件のコメント
Samuel Pappalardo
Samuel Pappalardo 2022 年 2 月 26 日
Could you please email me your circuit
at lilyg8614@gmail.com
Pat Gipper
Pat Gipper 2022 年 2 月 28 日
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
Antonino Riccobono 2022 年 2 月 28 日
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

コミュニティ

カテゴリ

Help Center および File ExchangePID Controller Tuning についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by