PI Controller Tuning for totem pole Pfc

106 ビュー (過去 30 日間)
Barath Narayanan
Barath Narayanan 2022 年 9 月 30 日
コメント済み: Usman 2023 年 7 月 30 日
Hi all,
I am working on simulating a Totem-Pole Bridgeless PFC on Simulink. I have developed the control system and need to tune the PI values for the PI controller.
Since the video is for a Boost PFC, the control system is a little different when compared to a Totem-Pole PFC.
I tried the tuning with help of sisotool by find the transfer function using small signal analysis ,and found the kp and ki but the desired response is not coming.The transfer function is shown below as a code
% the controller transfer function
clc;
clear all;
s=tf('s');
Vin=230;
V0=400;
d=0.1868;
L=2.0634e-4;
C1=0.0042;
R=48.48;
fs=65000;
Ts=1/fs;
%Gid=(Vin*(2+R*C1*s))/(R*(1-d^3)*((C1*L*s^2)/((1-d)^2)+((L*s)/R*((1-d)^2))+1));
Gid=V0/(1+s*L*R);
Gvd=(Vin*R)/(2*V0*(s*R*C1 +1));
I have attached my simulation file ,Please Help me guys
%the parameters which I used
clc
clear all;
Vin=input("Enter the value ")
fline=50;
Vinpeak=sqrt(2)*Vin;
V0=400;
V0_min=380;
Po=3300;
n=0.95;
t_holdup=10e-3;
Iin=Po/(n*Vin);
fsw=65000;
D=(1-(Vinpeak/V0));
deliin=Iin*0.30;
delvo=0.025*V0;
L=(Vinpeak*D)/(fsw*deliin);
Cpower=Po/(2*pi*fline*delvo*V0);
Choldup=(2*Po*t_holdup)/(V0^2-V0_min^2);
cap=max(Cpower,Choldup);
Ts = 1/(100*fsw); % Sampling time for the plant [sec]
Tsc = 1/(50*fsw); % Sampling time for the controller [sec]
Iinpeak = 2*(Po/(n*0.01))/Vinpeak;
  6 件のコメント
Barath Narayanan
Barath Narayanan 2022 年 9 月 30 日
Thanks for replying
Usman
Usman 2023 年 7 月 30 日
do you have the example for multiphase buck converter control?

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

採用された回答

Sam Chak
Sam Chak 2022 年 9 月 30 日
編集済み: Sam Chak 2022 年 10 月 1 日
I forgot to ask the PI values you obtained from sisotool. Please check if the performance requirements are satisfied for your Totem-Pole Bridgeless PFC:
s = tf('s');
Vin = 230;
V0 = 400;
d = 0.1868;
L = 2.0634e-4;
C1 = 0.0042;
R = 48.48;
fs = 65000;
fline = 50;
Ts = 1/fs;
Gid = V0/(1 + s*L*R)
Gid = 400 ---------- 0.01 s + 1 Continuous-time transfer function.
Gic = pidtune(Gid, 'PI', 0.1*fs)
Gic = 1 Kp + Ki * --- s with Kp = 0.14, Ki = 542 Continuous-time PI controller in parallel form.
Gcli = minreal(feedback(Gic*Gid, 1))
Gcli = 5579 s + 2.169e07 ----------------------- s^2 + 5679 s + 2.169e07 Continuous-time transfer function.
margin(Gic*Gid) % Requirements: Pm = 45°–60°, ωc = 10% of fs
step(Gcli)
Gvd = (Vin*R)/(2*V0*(s*R*C1 + 1))
Gvd = 1.115e04 ------------- 162.9 s + 800 Continuous-time transfer function.
kpv = 0.1*1.46087; % 10% of the previous designed kp value
kiv = 0.1*7.17463; % 10% of the previous designed ki value
Gvc = pid(kpv, kiv)
Gvc = 1 Kp + Ki * --- s with Kp = 0.146, Ki = 0.717 Continuous-time PI controller in parallel form.
Gclv = minreal(feedback(Gvc*Gvd, 1))
Gclv = 10 s + 49.11 --------------------- s^2 + 14.91 s + 49.11 Continuous-time transfer function.
margin(Gvc*Gvd) % Requirements: Pm = 90°, ωc = 10% of 2*fline
step(Gclv)
  16 件のコメント
Barath Narayanan
Barath Narayanan 2022 年 10 月 1 日
編集済み: Barath Narayanan 2022 年 10 月 1 日
You see the file you will get better a scope init
Sam Chak
Sam Chak 2022 年 10 月 1 日
After opening the Simulink model, I don't see the transfer function , anything that is mathematically equivalent to it. Correct me if I'm wrong.
The output of the PI(z) block goes straight into one of the 2 input ports of the Product block.
What do the block components have to do the transfer function ?
If all the blocks make up to have the equivalent mathematical transfer function , and you place the PI(s) block in the correct position as shown above, then you should the converging step response.
However, I noticed there are other nonlinear blocks, so I don't think they are part of the transfer function . Perhaps, you would like to check with your research friends / group members / project manager, who are involved in the Bridgeless PFC project.

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

その他の回答 (1 件)

Barath Narayanan
Barath Narayanan 2022 年 10 月 2 日
Ok type in the matlab command as ee_ totem_pole_pfc and see the control subsystem
  3 件のコメント
Barath Narayanan
Barath Narayanan 2023 年 5 月 23 日
Ya tried a pI and pr simulation Instead of pi
Sufi
Sufi 2023 年 5 月 24 日
How did you get the PI values and PR values? What procedure did you follow to get it correctly?

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

カテゴリ

Help Center および File ExchangeClassical Control Design についてさらに検索

製品


リリース

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by