Any one with an idea how the PI gain values used in the many VSC control examples in Matlab have been derived?
10 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
I have been trying to calculate the gains using modulus optimum and symmetrical optimum criterion but my gains are way off what has been used in the matlab examples. I am caculating the gains in pu. Here is part of the code I have used for the calculation.
%inner current control gains using modulus optimum method.
Btb.Ts=1/(5e3); %This is the PWM switching period for a given swiching Frequency
Btb.Curr2.Ta= Ts_power/2; %PWM delay for swiching frequency of 10kHz
Btb.Curr2.tau=Btb.Lffpu_2/(Btb.wbase*Btb.Rffpu_2);%RL filter time constant
Btb.Curr2.Ti=Btb.Curr2.tau; %Controller integral time constant Ti=Kp/Ki
% Gain parameters for VSC controller
Btb.Kp_Ireg_2_pu =(Btb.Curr2.tau*Btb.Rffpu_2/(2*Btb.Curr2.Ta));
Btb.Ki_Ireg_2_pu =Btb.Kp_Ireg_2_pu/Btb.Curr2.Ti; % Integral gain (pu)
%dc link gains calculation using symmetrical optimum criterion
Btb.dclink.a=3; %symmetrical distance between 1/Tiv and 1/Teq
Btb.dclink.Tc=1/(Btb.wbase*Btb.dclink.C_pu);
Btb.dclink.Tiv=((Btb.dclink.a)^2)*Btb.Curr2.Teq;
Btb.dclink.Kpv=(Btb.dclink.Tc/(sqrt(Btb.dclink.Tiv*Btb.Curr2.Teq)));
Btb.dclink.Kiv=Btb.dclink.Kpv/Btb.dclink.Tiv;
0 comentarios
Respuestas (1)
Sabin
el 8 de Ag. de 2025 a las 10:11
There is no general rule used in shipping examples for tuning the controller. Some are tuned based on frequency response, some using pole placement or other methods. Sometimes a bit of trial and error may have been involved in the process. Therfore, it may not be easy to compute the exact same gains as in a specific example. If the gains that you compute are giving wrong results in closed loop then may be an error somewhere in the calculation.
You can also try Simulink Control Design and the PID autotuner block which can help tune the controller during simulation. Check out this example as a starting point: https://www.mathworks.com/help/slcontrol/ug/tune-field-oriented-controllers-for-a-pmsm-using-closed-loop-pid-autotuner-block.html
Ver también
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!