Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
METODO ANALITICO
FIGURA 4.1
Ejemplo 4.1
1
GP ( s) ;
s ( s 2)
z
Controlador: GC ( z ) k
z
z e ( n jd )T
z e ( nT ) e ( jd T )
z e ( sT ) ; s n j d
FIGURA 4.2
z = Magnitud polo
z e ( n T )
z d T
4
tS 2 (Tolerancia 2%)
n
4 4
n 4 rad
t S 0.5 2 sg
n 4 rad sg
d 3.46 rad sg
z e ( 0.540.2)
z 0.67
z 3.46 * 0.2 0.692 rad
z 39.6º
Polo dominante: 0 . 67 39 . 6 º
p 0.51 j 0.42
El polo dominante es en lazo cerrado.
2 2
S 31.42 rad
T 0.2 sg
S 31.42 rad sg
# muestras S 31.42
9
ciclo d 3.46
b) Condiciones de ángulo:
Gla Gc G z
1
G p ( s)
s ( s 2)
1 G p
G ( z ) (1 z ) z
s
G ( z ) c 2d (Gp, Ti, ' zoh' ) (MATLAB)
0.017 ( z 0.87)
G( z)
( z 1)( z 0.67)
z
Gc ( z ) k
z
( z ) 0.017( z 0.87)
Gla ( z ) k
( z )( z 1)( z 0.67)
Método de cancelación de polos:
0.67
(0.017)( z 0.87)
Gla ( z ) k
( z )( z 1)
El polo en z = 1 no se debe cancelar, puesto que hace que e ss 0 .
k
Siempre que tengamos en el denominador z 1 , es un integrador.
z 1
Si se cancela se presenta lo siguiente:
FIGURA 4.3
FIGURA 4.4
0.42
tan 1 17.1º
0.87 0.51
0.42
2 180º tan 1 139.4º
1 0.51
1 2 180 º
17º 1 139.4º 180º
1 57.6º
0.42
tan 57.6º 0.25
0.51
c) Condición de magnitud:
Gla 1
k (0.017)( z 0.87)
1
( z 1)( z 0.25)
pole(glc)
step(glc)
%************************************************************
% MOTOR DE CORRIENTE CONTINUA CONTROLADO EN VELOCIDAD
% Gp(s) = 2/(s+10)(s+2)
% CONDICIONES DE DISEÑO ts = 0.02 seg, T = 0.001 seg,
%Mp = 0.5%
%*************************************************************
clear all
home
disp(' ');
disp('******************************************************')
disp('DISEÑO DE SISTEMAS DE CONTROL DISCRETO');
disp('DISEÑO EN EL DOMINIO DEL TIEMPO');
disp('DISEÑO MEDIANTE CANCELACION DE POLOS');
disp('******************************************************')
% FUNCION DE TRANSFERENCIA DE LA PLANTA Y DEL CONTROLADOR :
%
2 z alfa
% Gp (s ) Gc( z ) k *
s ( s 2)( s 10) z beta
%
disp(' ');
ts=input('Digite el tiempo de establecimiento : ts(seg) = ');
% ts = 0.02;
disp(' ');
T=input('Digite el tiempo de muestreo "T" (seg): ');
% T=0.001;
disp(' ');
Mp=input('Digite maximo sobreimpulso : Mp = ');
% Mp = 0.5%;
cita= solve('Mp = 100*exp(-cita*3.1416/sqrt(1-cita^2))');
cita = eval(cita)
% cita = 0.86
disp(' ');
disp(' ');
% 9.9601e-007 (z+0.996)
% Gp(z) = ------------------------------
% (z-0.998) (z-0.99)
%************************************************************
% METODO CANCELACION DE POLOS :
% SE HACE EL CERO DEL CONTROLADOR alfa IGUAL
% AL POLO DE LA PLANTA MAYOR CERCANO A UNO
%************************************************************
% Hallar alfa
alfa=pgpz(1)
disp(' ');
disp('El valor de Alfa es: ')
disp(alfa)
% alfa = 0.998
%******************************************************
% (C) HALLAR beta POR CONDICION DE ANGULO
FIGURA 4.5
teta1_rad=atan(imag(zpole)./(abs(zgpz)+real(zpole)));
teta1_grad=(teta1_rad*180)/pi;
fi1_rad= pi-atan(imag(zpole)/(pgpz(2)-real(zpole)));
fi1_grad=(fi1_rad*180)/pi;
fi2_grad=teta1_grad+180-fi1_grad;
fi2_rad=teta1_rad+pi-fi1_rad;
% teta1(grados) = 3.1º
% fi1(grados) = 151.3º
% fi2(grados) = 31.7º
beta=real(zpole)-imag(zpole)/tan(fi2_rad);
% beta = 0.6564
disp(' ');
disp('El valor de Beta es: ')
disp(beta)
%*******************************************************
% Hallar k por condición de magnitud
% k*abs(Gc(z)*G(z)) = 1 en el polo dominante
%
9.9601e 007( z 0.998)( z 0.996)
% Gla ( z )
( z 0.6564)( z 0.99)( z 0.998)
%
% gla no aparece simplificada, no se cancela el polo con el
% cero entonces se debe hacer
[z1,p1,k1]=zpkdata(gla,'v')
i=find(p1==alfa);
p1(i)=[ ]
i=find(z1==alfa);
z1(i)=[ ];
gla= zpk(z1,p1,k1,T)
gla_tf=tf(gla); % Convierto a Modelo tf
[num,den]=tfdata(gla_tf,'v'); % Extraigo los valores
gla1=poly2sym(num,'z')/poly2sym(den,'z');
z=zpole;
mag = abs(eval(gla1));
k=1/mag;
% k = 2.0593e+004
disp(' ');
disp('El valor de k es: ')
disp(k)
%
20593.3092( z 0.998)
% Gc( z )
( z 0.6564)
%
FIGURA 4.6
EJEMPLO 4.2
z
Gc ( z ) k
z 1
10
G p ( s)
( s 1)( s 2)
Especificaciones:
T=0.1sg
M p 20%
t S 5sg
kp ?
ki ?
T z 1
G PI k p ki
2 z 1
k i T 2k p
z
T k i T 2k p
G PI (k p k i )
2 z 1
T k i T 2k p
k k p ki ;
2 k i T 2k p
a) Polo dominante:
M p 20%
t S 5sg
T 0.1sg
1 2
Mp e
0.2 0.45
4
tS 5 n 1.78 rad sg
0.45 n
d n 1 2 1.78 1 0.45 2 1.6 rad sg
d 1.66 rad sg
z e ( 0.451.780.1)
z 0.92
z 1.6 0.1 0.16 rad
z 9.2º
0.92 9.2º
Polo dominante:
p 0.9 j 0.15
b) Condición de ángulo:
FIGURA 4.7
0.15
tan 1 4. 7 º
0.9 0.9
0.15
1 tan 1 59º
1 0.9
0.15
2 180º tan 1 123.7 º
1 0.9
1 2 178º 180º
c) Condición de magnitud:
Gla 1
( z ) 0.045( z 0.90)
Gla Gc G z k
( z 1)( z 0.90)( z 0.81)
0.045( z 0.90)
Gla k
( z 1)( z 0.81)
Se cancela el polo que este más cerca de la unidad para que haya menos riesgo de
inestabilidad.
k (0.045)( z 0.90)
1
( z 1)( z 0.81) z 0.9 j 0.15
k = 0.77
T
k k p ki 0.77 k p 0.05k i (1)
2
k i T 2k p 0.1k i 2k p
0. 9
k i T 2k p 0.1k i 2k p (2)
METODO ANALITICO
(z )
Gc ( z ) k
z
z 1 k p Tz k d z k d z (k p T k d ) k d
G PD k p k d
Tz Tz Tz
kd
z
k p T k d k pT k d
G PD
T z
k pT k d kd
k ;
T k pT k d
Ejemplo:
1
G p (s)
( s 1)( s 2) ;
Especificaciones:
T=0.1
M p 16% ; t s 2 sg
n
4
Mp e d tS
; n
z e ( nT )
z d T
Solución
4
tS 2 n 2
n
2
d
M p 0.16 e
d 3.46 rad
sg
z exp(2 0.1) 0.8187
z 0.8187
z 3.46 0.1 0.346rad
z 19.82º
Polo dominante:
p z z p 0.77 j 0.28
1 G p
G ( z ) (1 z ) z
s
Cancelación de polos:
0.9048
0.0045k ( z 0.9048)
Gla
z ( z 0.8187)
FIGURA 4.9
1 1 2 180º
0.28
1 tan 1 19.98º
0.77
0.8187 0.77
2 90º tan 1 99.86º
0.28
9.49º 19.98º 99.86º 110.35º (No cumple la condición de ángulo)
Como no se cumple la condición de ángulo, el polo z = 0.9048 no se puede cancelar,
por lo cual procedemos a buscarlo.
FIGURA 4.10
1 2 1 2 3 180º
0.9048 0.77
3 90º tan 1 115.7º
0.28
2 1 1 2 3 180 º
2 9.49 19.98º 99.86º 115.7 º 180º
2 46º
0.28
tan 2 tan 46º 0. 5
0.77
k ( z 0.5)
Gc
z
Condición de magnitud:
Gla 1
0.0045k ( z 0.5)( z 0.9048)
1
z ( z 0.9048)( z 0.8187) z 0.7 j 0.28
k 24 . 3
24.3( z 0.5)
Gc ( z )
z
k pT k d kd
k
T ; k pT k d
k 24.3 ; 0.5 ; T 0.1
0.1k p k d
24.3 2.43 0.1k p k d
0 .1
kd k
0.5 0.5 d k d 1.215
0.1k p k d 2.43
2.43 k d 2.43 1.215
kp k p 12.15
0.1 0.1
CONTROLADOR PD POR MAT-LAB
clear all
home
disp(' ');
disp('*****************************************************')
disp('DISEÑO DE SISTEMAS DE CONTROL DISCRETO');
disp('DISEÑO EN EL DOMINIO DEL TIEMPO');
disp('DISEÑO DE UN CONTROLADOR PD');
disp('*****************************************************')
% FUNCION DE TRANSFERENCIA DE LA PLANTA Y DEL CONTROLADOR :
%
1 z alfa
% Gp( s ) Gpd ( z ) k *
( s 1)( s 2) z
%
kp * T kd kd
% k alfa
T kp * T kd
%
% kp=Constante Proporcional
% kd=Constante Derivativa
%*************************************************************
disp(' ');
ts=input('Digite el tiempo de Establecimiento "ts" (seg): ');
% ts=2;
disp(' ');
mp=input('Digite el Porcentaje de SobreImpulso "Mp" (%): ');
% mp=16.3;
mp=mp/100;
disp(' ');
T=input('Digite el tiempo de muestreo "T" (seg): ');
% T=0.1;
disp(' ');
disp(' ');
gps=zpk([],[-1 -2],1);
gpz=c2d(gps,T,'ZOH'); % Planta en el Dominio Z
pgpz=pole(gpz); % Polos en Gp(z)
zgpz=zero(gpz); % Zeros en Gp(z)
%
0.04528( z 0.9048)
% Gp ( z )
( z 0.9048)( z 0.8187)
%
teta1_rad=atan(imag(zpole)./(abs(zgpz)+real(zpole)));
teta1_grad=(teta1_rad*180)/pi;
fi1_rad=angle(zpole);
fi1_grad=(fi1_rad*180)/pi;
fi2_rad=pi - atan(imag(zpole)./(abs(pgpz(1,1))-real(zpole)));
fi2_grad=(fi2_rad*180)/pi;
fi3_rad=pi - atan(imag(zpole)./(abs(pgpz(2,1))-real(zpole)));
fi3_grad=(fi3_rad*180)/pi;
teta2_grad=-180-teta1_grad+fi1_grad+fi2_grad+fi3_grad;
teta2_rad=(teta2_grad*pi)/180;
% teta1=9.4221º, fi1=19.8456º, fi2=115.8610º, fi3=99.9228º
FIGURA 4.11
alfa=real(zpole)-(imag(zpole)/tan(teta2_rad));
disp(' ');
disp('El valor de Alfa es: ')
disp(alfa)
% alfa = 0.5036
FIGURA4.12
4.4 CONTROLADOR PID:
METODO ANALITICO
T z 1 kd z 1
G PID k p k i
2 z 1 T z
z 2 Az B
G PID k
z ( z 1)
Ejemplo:
10
G p ( s)
( s 1)( s 2) ; T 0.1sg
k v 4.9883k i
5 4.988k i k i 1
0.045 ( z 0.9048) k ( z 2 Az B)
Gla
( z 0.9048)( z 0.8187) z ( z 1)
k i T 2 2 k p T 4k d
A
k i T 2 2 k p T 2k d
2k d
B
k i T 2 2k p T 2k d
Cancelación de polos y ceros:
z 2 Az B ( z 0.9048)( z 0.8187)
z 2 Az B z 2 1.1724 z 0.741
k i T 2 2k p T 4k d
A 2
1.724
k i T 2k p T 2k d
2k d
B 2
0.741
k i T 2k p T 2k d
k d 0.4995 ; k p 1.4525 ; k i 5.06
0.1 z 1 0.4995 z 1
G PID 1.4525 5.06
2 z 1 0.1 z
z 1 z 1
G PID 1.4525 0.253 4.995
z 1 z
1.425 z ( z 1) 0.253 z ( z 1) 4.995 ( z 1) 2
G PID
z ( z 1)
% (A)DISCRETIZAR PLANTA
gps=zpk([],[-1 -2],10);
gpz=c2d(gps,T,'ZOH'); % Planta en el Dominio Z
pgpz=pole(gpz); % Polos en Gp(z)
zgpz=zero(gpz); % Zeros en Gp(z)
%
5.7971( z 0.9048)( z 0.8187)
% Gpid ( z )
z ( z 1)
FIGURA 4.13
EJERCICIOS
BIBLIOGRAFIA
BIBLIOGRAFIA BASICA
SISTEMAS DE CONTROL EN TIEMPO DISCRETO.
AUTOR: Katsuhito Ogata.
EDITORIAL: Pearson
BIBLIOGRAFIA COMPLEMENTARIA
CONTROL DE PROCESOS.
AUTOR: ALFRED ROCA CUSIDO.
EDITORIAL: ALFAOMEGA.