How can I tune PID controller using GENETIC ALGORITHM.......????

6 vues (au cours des 30 derniers jours)
RAJEEV KUMAR
RAJEEV KUMAR le 15 Nov 2012
Commenté : Fer Ruiz le 22 Jan 2019
num=6;
den=[48 44 12 1];
gp=tf(num,den); % PLANT TRANSFER FUNCTION
%%OVERALL TRANSFER FUNCTION
gpgcr=gp*gcr;
sysy4=feedback(gpgcr,1);
%%BY GENETIC ALGORITHM
N=5; % NO OF POPULATION
M=4;
iter=12; % no.of iterations
maxiter=1;
%%initialization of pbest and gbest
for i=1:N
for j=1:iter
for k=1:M
pbest(i,j,k)=rand;
gbest(i,j,k)=rand;
end
end
end
%%initialization of kp,kd,ki and calculation of ISE
for i=1:N
for j=1:iter
for k=1:M
kp(i,j,k)=rand;
kd(i,j,k)=rand;
ki(i,j,k)=rand;
%%controller transfer function
numgc=[kd(i,j,k),kp(i,j,k),ki(i,j,k)];
dengc=[1,0];
gc=tf(numgc,dengc); % controller T.F
g=gp*gc;
GCL=feedback(g,1); % gives c(s)/r(s)
[num,den] = tfdata(GCL,'v'); % 'V' return the numerator and denominator directly as
......row vectors rather than as cell arrays
GCL1=1-GCL; % GIVES e(s)/r(s)
[nume,dene]=tfdata(GCL1,'v');
dene1=[dene,0]; % for e(s)
[r,p,k1]=residue(nume,dene1);
n=length(p);
for y=1:n
h(y)=ilaplace(r(y)/(s-p(y)));
end
h;
q=0;
for z=1:n
q=h(1,z)+q; % gives e(t)
end
q;
q=vpa(q,5); % Variable-precision arithmetic
qsq=q^2;
lqsq=laplace(qsq); % to get laplace transform
isee=limit(lqsq,s,0);
ise=vpa(isee,5);
x(i,j,k)=ise %CAN WE TAKE IT AS FITTNESS FUNCTION..??
end
end
end
  3 commentaires
vishvas  kumar
vishvas kumar le 5 Juin 2016
what is 'gcr' please explore it.
govindan
govindan le 30 Déc 2016
gcr is controller transfer function.

Connectez-vous pour commenter.

Réponses (3)

Charitha Yampati
Charitha Yampati le 10 Déc 2016
what is gcr here

Nasser Almabrok
Nasser Almabrok le 5 Avr 2018
there are many mistakes in this code, so you have to fix it and remove some commands that you do not need.

alnaser alnaser
alnaser alnaser le 1 Nov 2018
Error using InputOutputModel/feedback (line 138) The first and second arguments of the "feedback" command must have compatible I/O sizes.
Error in gapid (line 6) sysy4=feedback(gpgcr,1);
  1 commentaire
Fer Ruiz
Fer Ruiz le 22 Jan 2019
I have the same error, could you solve it?

Connectez-vous pour commenter.

Community Treasure Hunt

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

Start Hunting!

Translated by