Beruflich Dokumente
Kultur Dokumente
1.
Ajuste de PIDs
03 Reguladores Clsicos.doc 1
u
R
+
+
03 Reguladores Clsicos.doc 2
03 Reguladores Clsicos.doc 3
03 Reguladores Clsicos.doc 4
e
K ip
i
i de
u = K e + Ki edt + K d
dt
i
p
K ip
100
K ip
Kii
Kii
K di
e ( t ) dt
de ( t )
dt
u
+
[1.1]
Banda proporcional
: Ganancia integral (reset) [repeticiones/seg]
- Banda Proporcional
umax [ % ]
Kp
umin [ % ]
emin [ %]
BP =
100
Kp
emax [ %]
03 Reguladores Clsicos.doc 6
Kp
Ti =
1
Kii
2Ti
3Ti
1 minuto
03 Reguladores Clsicos.doc 7
Ki
de
u = K e + Ki edt + K
dt
p
p
p
d
edt
de
dt
Kdp
u
+
[1.2]
de
dt
PID
edt
03 Reguladores Clsicos.doc 8
PID
PID
- Variantes
+
r
r
PID
PI
u
+
D
u
+
PD
03 Reguladores Clsicos.doc 9
i
i de
u = K e + Ki edt + K d
dt
i
p
[1.3]
U ( s ) = K ip E ( s ) + K ii E ( s ) + K di sE ( s )
s
U (s)
= K ip 1 + K ii + K di s
E (s)
s
U (s)
E (s)
K ip ( K ii + s + K di s 2 )
s
[1.4]
[1.5]
[1.6]
03 Reguladores Clsicos.doc 10
- Discretizacin
La mayora de los controladores son digitales.
T
u k = k p ek +
Ti
Td
e j + ( ek ek 1 )
T
j =0
(1.7)
k-1
=
+
+
e
e
k-1
k-2
u k-1 k p e k-1 k i e j k d
(1.8)
j=0
u k b0 + b1 z + b2 z
=
ek
1 z 1
2
(1.10)
con
b0 = k p ( 1 + k i + k d
b1 = k p ( 1 + 2 k d
)
(1.11)
b2 = k p k d
03 Reguladores Clsicos.doc 11
- Accin Proporcional
Accin ms intuitiva
Para error cero se tiene actuacin cero.
Necesariamente tiene error en el control
Alta ganancia, bajo sesgo o error
No introduce desplazamientos de fase (se ver ms adelante)
Ejemplo sea un sistema de primer orden
Y(s) =
A
U(s)
1 + sT
(1.12)
Kp A
Kp A
1+ K p A
1
+
s
Y(s) =
R(s) =
R(s) (1.13)
Kp A
1+ s
1+
1+ K p A
1 + s
La constante de tiempo en lazo abierto es y en lazo cerrado es
1+ Kp A
03 Reguladores Clsicos.doc 12
Kp A
1+ Kp A
1
1+ Kp A
03 Reguladores Clsicos.doc 13
Ejemplo:
Ve , Qe
Qs
Tanque
Kp
+
+
u
BIAS
03 Reguladores Clsicos.doc 14
Caso 1:
Ve = 50% r = 50%
entonces
e = 0 z = 0 u = BIAS = 50% Ve = Vs
Qe = Qs
y=r
[1.15]
[1.16]
Caso 2:
Ve = 60%
[1.17]
y e z u
[1.18]
u = Ve = 60%
[1.19]
03 Reguladores Clsicos.doc 15
u = Ve = 60%
z = u BIAS = 10%
e=
[1.20]
z
10
=
0
Kp Kp
10%
y = e+r =
+ 50%
Kp
[1.21]
Para
K p = 1 y = 60% d = 10%
[1.22]
K p = 10
[1.23]
y = 51% d = 1%
03 Reguladores Clsicos.doc 16
1
El desplazamiento es proporcional a
Kp +1
03 Reguladores Clsicos.doc 17
Lazo Abierto
z
y
r
tiempo
03 Reguladores Clsicos.doc 18
Lazo Abierto
Lazo Abierto
y
r
y
r
tiempo
tiempo
03 Reguladores Clsicos.doc 19
Derivador Ideal
frecuencia
Kd
pasa
de f
bajos
dt
03 Reguladores Clsicos.doc 20
Derivador Ideal
pasa bajos
efecto total
fc
fc =
1 1
[ Hz ]
2
frecuencia
[1.24]
= 0,1" 0,2 K d
[1.25]
03 Reguladores Clsicos.doc 21
Actuador
+
+
-
K/Ti
1/s
es
+
1
Ti
u
-y
KTds
Modelo
Actuador
+
+
-
K/Ti
1/s
es
+
1
Ti
u
03 Reguladores Clsicos.doc 22
1
1
s +1
Ki
K
U ( s ) = K p 1 + i
s
03 Reguladores Clsicos.doc 23
1
Tm
1
s
y
PD
r
Manual
e
1
Tr
1
s
u
Auto
-
1
Tr
es
03 Reguladores Clsicos.doc 24
referencia
integral
ua
um
manual
automtico
Sea un PI
CPI = K p +
Ki
s
en forma digital,
03 Reguladores Clsicos.doc 25
I k +1 = I k + TK i ek
uak = K p ek + I k
ua m / a = uman
esto se logra haciendo
I m / a = uman K p em / a
y
referencia
integral
ua
um
manual
automtico
03 Reguladores Clsicos.doc 26
03 Reguladores Clsicos.doc 27
03 Reguladores Clsicos.doc 28
03 Reguladores Clsicos.doc 29
s1
s2
s1
=4
s2
03 Reguladores Clsicos.doc 30
Procedimiento:
Se utiliza un controlador solo P
Se cambia la referencia y se observa la respuesta
Se incrementa la ganancia proporcional hasta que se obtiene una oscilacin
Si la oscilacin crece, disminuir la ganancia o aumentarla si decrece.
Cuando la oscilacin es sostenida, se registra la ganancia del controlador K c ,
se la denomina ganancia crtica
Se mide tambin el perodo de la oscilacin Tc
Se calculan los parmetros de acuerdo a la tabla
Kp
Ki
0,5K c
PI
0,45K c
1,2
PID
0,6 K c
Kd
Tc
Tc
Tc
03 Reguladores Clsicos.doc 31
X
Y
L
a
L
K =Y
,a =
LY
TX
03 Reguladores Clsicos.doc 32
Kp
Ki
Kd
1 TY
=
a LX
0,9 0,9TY
=
a
LX
1,2 1,2TX
=
a
LY
1
3L
1
2L
L
2
03 Reguladores Clsicos.doc 33
K ip
y
Planta
Kc
4
2A
[1.26]
03 Reguladores Clsicos.doc 34
L = T a = bT
(1.28)
K=
1.2
T
T i = 2T T d =
bT
2
(1.29)
t c = 4T
kc=
2bT
(1.30)
K=
0.6 0.94
T
=
2T
=
Ti
Td
2bT
bT
2
(1.31)
03 Reguladores Clsicos.doc 35
- Interpretacin
(i
)
=
0.6
1
+
j
=
0.6
Gr c
kc
k c 1+
cT d
cT i
= k c ( 0.6 + 0.26 j )
2
t 2
j
0.12t c - c
2 t c (1.32)
tc
es un avance de 23
- Generalizacin
sea la funcin de transferencia en lazo abierto
G p(j ) = r p e
j( + p )
(1.33)
(1.34)
mediante un regulador
G r(j ) = r r e
j r
(1.35)
rs e
j( + s )
= r p r r e j( + p+ r )
(1.36)
03 Reguladores Clsicos.doc 36
rs
=
r
r
rp
= -
s
p
r
(1.37)
k p=
r s cos( s - p )
rp
(1.38)
Td -
Ti
= tan( s - p )
(1.39)
03 Reguladores Clsicos.doc 37
Gp=
kp
1+ s T 1
(1.40)
regulador PI
1
=
K
1
+
Gr
sT i
(1.41)
Gc =
G p Gr
1+ G p G r
(1.42)
+
T1 T1T i
T1
2
03 Reguladores Clsicos.doc 38
2
2
s + 2 s + = 0
(1.44)
el regulador PI resulta
K=
Ti=
2 T1-1
kp
2 T1-1
(1.45)
2 T 1
se puede hacer algo parecido para un sistema de 2do rden
03 Reguladores Clsicos.doc 39
(1.46)
regulador PI
S(z)
R(z)
R(z) = ( z - 1 ) R 1(z)
H r(z) =
(1.47)
S(z) = s 0 z 2 + s 1 z + s 2
R(z) = ( z - 1 ) ( z + r 1 )
(1.48)
( z 2 + a 1 z + a 2 )( z - 1 )( z + r 1 ) +
( b1 z + b 2 )( s 0 z 2 + s 1 z + s 2 ) = 0
(1.49)
03 Reguladores Clsicos.doc 40
(1.50)
donde
2
p 1 = - 2 e -h cos( h 1 - )
p2 = e
-2 h
(1.51)
Ejemplo:
G p(s) =
1
( 1 + s )( 1 + 0.26 s )
(1.52)
0.0164 z + 0.0140
H p(z) = 2
z - 1.583 z + 0.616
(1.53)
condicin de diseo:
= 0.5 = 4 = 1 (1.54)
03 Reguladores Clsicos.doc 41
P ser
(1.55)
reemplazando
r 1 = - 0.407
s 0 = 6.74
s 1 = - 9.89
(1.56)
s 2 = 3.61
03 Reguladores Clsicos.doc 42
u
G
la salida es
y=
QG
1 + Q G G
r+
1 QG
1 + Q G G
do
[1.57]
si el modelo es perfecto,
y = QGr + 1 QG d o
[1.58]
03 Reguladores Clsicos.doc 43
do
C
r
u
Q
03 Reguladores Clsicos.doc 44
do
e
C=
Q
1 QG
u
G
( )
C = C G
[1.59]"
03 Reguladores Clsicos.doc 45
Es muy intuitivo
do
03 Reguladores Clsicos.doc 46
y = QGr + 1 QG d o
[1.60]
y = G 1Gr + 1 G 1G d o
G
G
y = r + 1 do
G
G
[1.61]
[1.62]
G
1 y r [1.63]
G
con Q = G 1 se obtiene el control perfecto
03 Reguladores Clsicos.doc 47
Problemas:
(a) nunca el modelo es perfecto
(b) los actuadores se saturan
(c) un retardo no se puede invertir en forma exacta
(d) problemas matemticos de inversin
(e) problemas con plantas inestables
03 Reguladores Clsicos.doc 48
Q = FG inv
[1.64]
G inv intenta resolver el problema (c) y F los problemas (a), (b) y (d)
Si se toma esta condicin de diseo se obtiene
QG
1 QG
y=
r+
d o [1.65]
1+ Q G G
1+ Q G G
FG inv G
1 FG inv G
y=
r+
do
1 + FGinv G G
1 + FGinv G G
[1.66]
suponiendo que
resulta
y Fr + (1 F ) d o
[1.68]
B ( s ) B e ( s ) Bi ( s )
G (s) =
=
[1.69]
A ( s )
A ( s )
B e ( s ) contiene los ceros estables y
Bi ( s ) contiene los ceros inestables o de no mnima fase
se elige
G inv ( s ) =
A ( s )
B e ( s ) Bi ( s )
[1.70]
s =0
1.3.2. Diseo de F
y Fr + (1 F ) d o
[1.71]
03 Reguladores Clsicos.doc 51
F=
( s + 1)
[1.72]
G ( s ) =
1
1
= 2s + 1
, F =
, Q = FG
inv
2s + 1
s +1
s +1
[1.73]
2
2
s
5
s
+
2
s
+
1
1
s
+ 2s + 1
=
(s) =
G ( s ) = 2
,G
,
=
,
F
Q
=
FG
inv
inv
2
2
s + 2s + 1
5
5
s
+
1
+
s
1
(
)
(
)
[1.74]
03 Reguladores Clsicos.doc 52
- incertidumbre en el modelo
- limitaciones de los actuadores
- ruido de medicin
03 Reguladores Clsicos.doc 53
0.6
To: Y(1)
Amplitude
0.7
0.5
0.4
0.3
0.2
0.1
0
10
12
Time (sec.)
03 Reguladores Clsicos.doc 54
e
CPID
03 Reguladores Clsicos.doc 55
CPID
Q
=
1 QG
[1.75]
03 Reguladores Clsicos.doc 56
G =
Modelo de la planta
K
s + 1
[1.76]
Tr 2,2
[1.77]
s + 1
1
Ginv =
,F =
s +1
K
Q = FG inv
[1.78]
[1.79]
1 QG 1 FGinv G K s G s
[1.80]
en el caso de un PI paralelo
K ip
C = CPI = K +
s
p
p
[1.81]
eligiendo
03 Reguladores Clsicos.doc 57
K pp =
1
p
, Ki =
K
K
[1.82]
s + 1
1
+
=
K K s K s
[1.83]
Resumen:
- encontrar y K
- elegir el controlador PI y
Recordar que con pequeos se obtiene
discreto
=5;
tauh/beta/Kh;
1/beta/Kh;
0;
beta =.2;
kp = tauh/beta/Kh;
ki = 1/beta/Kh;
03 Reguladores Clsicos.doc 59
kd = 0;
% se usa la aproximacin de Euler s=(q-1)/T
%ud(i)=ud(i-1)+A*error(i)+B*error(i-1)
A = kp;
B = ki*T-kp
Tfin = 5;
t = 0:precision:T;
ref = 1;
y = zeros(size(t));
ly = length(t);
x0= zeros(1,1);
[xx yx]= size(x0);
yy = 0;
uu = 0;
ttt=0;
yd=zeros(Tfin/T,1);
ud=zeros(Tfin/T,1);
error=zeros(Tfin/T,1);
for i = 3:Tfin/T
% muestreo de la salida
yd(i) = y(length(y));
% Regulador
error(i)= ref-yd(i);
ud(i)=ud(i-1)+A*error(i)+B*error(i-1);
% bloqueador de orden cero
ub = ud(i) * ones(size(t));
% Sistema
[y, tt, x0] = lsim(Pss,ub,t,x0(length(x0),:));
% se guardan los valores de entrada y salida
03 Reguladores Clsicos.doc 60
yy = [yy ; y(2:length(y))];
uu = [uu ; ub(2:length(ub))'];
end;
figure(2)
plot([uu yy]);
10
1.4
9
1.2
8
1
7
6
0.8
5
0.6
4
3
0.4
2
0.2
1
0
100
200
300
400
500
600
100
200
300
400
500
03 Reguladores Clsicos.doc 61
yk = G0 ( z 1 )uk + vk
[1.84]
v
e
r
u
R
RG0
1
r+
v
1 + RG0
1 + RG0
[1.85]
03 Reguladores Clsicos.doc 62
Objetivo:
encontrar los parmetros del regulador tal que minimicen el siguiente
funcional:
N
1 N
2
d 2
J ( ) =
E ( yk yk ) + ( uk )
2 N k =1
k =1
[1.86]
N k =1
k =1
[1.87]
J ( )
k +1 = k k R
1
k
[1.88]
y
u
y
03 Reguladores Clsicos.doc 63
llamando
RG0
1
T0 =
, S0 =
1 + RG0
1 + RG0
[1.89]
y d = Td r
[1.90]
y = y y d =
RG0
1
r yd +
v
1 + RG0
1 + RG0
RG0
1
y =
Td r +
v
1 + RG0
1 + RG0
[1.91]
[1.92]
G0 R
RG0 2 R
G0 2
y y
R
=
=
r
r
v
2
2
1 + RG0
(1 + RG0 ) (1 + RG0 )
[1.93]
y 1 R
R
R 1 R
T0 r T0 2 r T0 S0 v
r T0 2
r T0 S0
v =
= T0
R
[1.94]
T0 y S0 no son conocidas
03 Reguladores Clsicos.doc 64
se sabe que
T0 y = T0 2 r + T0 S0 v
[1.95]
y 1 R
1 R
=
T0 ( r y )
[T0 r T0 y ] =
R
R
[1.96]
[1.97]
y2 = T0 ( r y1 ) + S0 v2
(1.98)
03 Reguladores Clsicos.doc 65
y 1 R
1 R
=
T0 ( r y ) =
[ y 2 S 0 v2 ]
R
R
[1.99]
y 1 R
=
y2
R
[1.100]
Con la actuacin ocurre algo similar. De esta forma se logra el clculo del gradiente del funcional.
03 Reguladores Clsicos.doc 66
R=
k p (1 + ki z 1 )
1 z
(1.101)
por ende
kp
R 1 + ki z 1 R
=
=
,
1
1 z
k p
ki 1 z 1
(1.102)
1 + k i z 1
1 z 1
kp
kp
y
1 z 1
y
y2 =
=
y2 =
2
1
kp
k
1
1
k p (1 + ki z )
+
1
(
)
1 + k z 1
1
1 z 1
k
z
+
1
1
1
(
)
i
k
p
u
u = u
=
2
2
1 (1 + ki )
1
1
1
1
+
k
z
( i)
(1.103)
(1.104)
03 Reguladores Clsicos.doc 67
N
J ( ) 1 N
u
d y
= ( y1k yk )
+ u1k
N k =1
k =1
(1.105)
- Algoritmo:
1) Clculo del vector
2) Ensayo 1
3) Ensayo 2
4) Clculo de los gradientes
5) Clculo del gradiente
y
u
y
J
6) Ajuste de los parmetros con la ley k +1 = k k R
1
k
7) volver al paso 2)
03 Reguladores Clsicos.doc 68
- Simulaciones
plot(yes);grid
0.5
0.45
0.4
0.35
0.3
0.25
0.2
0.15
0.1
0.05
0
200
400
600
800
1000
1200
03 Reguladores Clsicos.doc 69
plot([ym ydd]);grid
1.4
1.2
1
0.8
0.6
0.4
0.2
0
-0.2
50
100
150
plot(j);grid
140
120
100
80
60
40
20
1.5
2.5
3.5
4.5
03 Reguladores Clsicos.doc 70
plot(th');grid
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
03 Reguladores Clsicos.doc 71
- Cdigo
%Sistema
continuo
Bc= 1;
Ac=poly([-1 -2 -1]);
na=length(Ac)-1;
syscont = tf(Bc,Ac);
%Sistema en variables de estado
Pss = ss(syscont);
[a,b,c,d] = ssdata(Pss);
% y su respuesta al escaln ...
t = 0:0.01:10;
u = ones(size(t));
yes = lsim(syscont,u,t);
T=.2;
% Parmetros del regulador PID
kp = 0.05;
ki = 0;
%kp = 0.1522; % 56 it .001
%ki = 0.0470; % 56 it .001
kd = 0;
iter = 5;
j=zeros(1,iter);
th=zeros(2,iter+1);
th(:,1)=[kp;ki];
lambda=.0;
Tfin = 30;
precision= .02;
t = 0:precision:T;
03 Reguladores Clsicos.doc 72
ref = 1;
y = zeros(size(t));
ly = length(t);
nd = Tfin/T;
ed = zeros(nd,1);
ud1 = zeros(nd,1);
yd1 = zeros(nd,1);
ud2 = zeros(nd,1);
yd2 = zeros(nd,1);
ud3 = zeros(nd,1);
yd3 = zeros(nd,1);
ym = zeros(nd,1);
ydd = [];
var =.001;
gamma=.5;
% Clculo de La respuesesta del modelo
am=.5;
for i = 3:nd
ym(i) = am*ym(i-1)+ (1-am)*ref;
end;
for k = 1:iter
% Experimento 1
x0= zeros(1,na);
y = zeros(size(t));
yy = 0;
uu = 0;
int = 0;
for i = 3:nd
% Regulador
03 Reguladores Clsicos.doc 73
03 Reguladores Clsicos.doc 74
yy = [yy ; y];
uu = [uu ; u'];
end;
j(k)=(ym-yd1)'*(ym-yd1)+lambda* ud1'*ud1;
dydkp=yd2/kp;
dydki = zeros(nd,1);
for i = 3:nd
dydki(i) = 1/(1+ki)*dydki(i-1)+1/(1+ki)*yd2(i);
end;
dudkp=ud2/kp;
dudki = zeros(nd,1);
for i = 3:nd
dudki(i) = 1/(1+ki)*dudki(i-1)+1/(1+ki)*ud2(i);
end;
dydp=[dydkp';dydki'];
dudp=[dudkp';dudki'];
yt=yd1-ym;
djdp=(dydp*yt+lambda*dudp*ud1)/nd;
kp=kp-gamma*djdp(1);
ki=ki-gamma*djdp(2);
th(:,k+1)=[kp;ki];
ydd=[ydd yd1];
end
03 Reguladores Clsicos.doc 75
- Referencias
1. Hkan Hjalmarsson, Michel Gevers, Svante Gunnarsson, Olivier Lequin,, Iterative
Feedback Tuning: Theory and Applications IEEE Control Systems Agosto
1998
2. G.C. Goodwin, S.F. Graebe, and M.E. Salgado. Control System Design. Prentice
Hall, 2001.
3. K. Astrom, B Wittenmark. Computer Controlled Systems. Prentice Hall, 1997.
4. strm, K., Hgglung: Automatic Tuning of PID Controllers, ISA 1988
03 Reguladores Clsicos.doc 76