Clase 09 Reguladores Clásicos.doc 1
1. Ajuste de PIDs 1. AJUSTE DE PIDS ........................................................................................................1
1.1. PORQUÉ REALIMENTAMOS........................................................................................2
1.1.1. Estructura estándar de un PID .........................................................................5
1.1.2. Efecto Antireset Windup up.............................................................................21
1.1.3. Efecto Bumpless...............................................................................................22
1.2. AJUSTES CLÁSICOS DE PIDS ...................................................................................23
1.2.1. Ajuste Empírico Manual..................................................................................24
1.2.2. Método de Ziegler-Nichols (1942).................................................................25
1.2.3. Relación entre ambos métodos: ......................................................................30
1.2.4. Método de Asignación de Polos......................................................................33
1.3. CONTROL CON MODELO INTERNO (IMC) ...............................................................38
1.3.1. Paradigma de diseño para IMC......................................................................44
1.3.2. Diseño de F......................................................................................................46
1.3.3. Realización del Controlador IMC...................................................................50
1.3.4. Diseño de PI-IMC para Plantas de Primer Orden.........................................52
1.4. AJUSTE ITERATIVO EN LAZO CERRADO (IFT) ........................................................57
Clase 09 Reguladores Clásicos.doc 2
1.1. Porqué Realimentamos
u
Rr G
y
v
e
u
Rr G
y
v
e
G
G
+
−
+
+
+
+
+−
Clase 09 Reguladores Clásicos.doc 4
- Acciones más comunes de control Control de dos posiciones Control proporcional Control Integral Control Derivativo
Clase 09 Reguladores Clásicos.doc 5
1.1.1. Estructura estándar de un PID
- Ideal (de libro)
uipKr
y
e+
−
+
++
iiK
idK
( )e t dt∫
( )de tdt
i i ip i d
deu K e K edt Kdt
= + + ∫ [1.1]
ipK : Ganancia proporcional [unidades de salida / unidades de entrada].
100ipK Banda proporcional
iiK : Ganancia integral (reset) [repeticiones/seg] idK |: Ganancia derivativa (rate) [segundos]
Clase 09 Reguladores Clásicos.doc 7
- Ganancia Integral – Tiempo Integral – Reset Time – Repeticiones
i1
ii
TK
=
pK
i2T i3T 1 minuto
Clase 09 Reguladores Clásicos.doc 8
- Modelo Paralelo (sin interacción)
u
ppK
r
y
e+
−
+
++
piK
pdK
edt∫
dedt
p p pp i d
deu K e K edt Kdt
= + +∫ [1.2]
Ojo con las unidades!
- PID con acción velocidad o incremento ude
dtr
y
e+
−PID edt∫
Clase 09 Reguladores Clásicos.doc 9
- Acción Directa o Inversa u
r
y
e+
−PID
ur
y
e
+−
PID
- Variantes
ur
y
e+
−PID
ur
y
e+
−
+
+PI
D
ur
y
e+
−
+
+I
PD
Clase 09 Reguladores Clásicos.doc 10
- Discretización La mayoría de los controladores son digitales.
( )10
kd
k p k j k kji
TT = k e e e e u T T −=
+ + −
∑ (1.3)
( )k-1
k-1 k-2j dk-1 p k-1 ij=0
= + e eu k e k e k + -
∑ (1.4)
( ) ( )k k-1 p i d k d k-1 d k-2 - = 1 + + - 1 + 2 + u u k k k e k e k e (1.5)
Clase 09 Reguladores Clásicos.doc 11
- Acción Proporcional Acción más intuitiva Para error cero se tiene actuación cero. Necesariamente tiene error en el control Alta ganancia, bajo sesgo o error No introduce desplazamientos de fase (se verá más adelante) Ejemplo sea un sistema de primer orden
AY(s) = U(s)1 + sT
(1.6)
Si se lo realimenta con un regulador P resulta
pp
p
p
p
K AK A1 + K A1 + sY(s) = R(s) = R(s)K A 1 + s1 + 1 + K A1 + s
ττ
τ
(1.7)
La constante de tiempo en lazo abierto es τ y en lazo cerrado es 1 pK Aτ
+
Clase 09 Reguladores Clásicos.doc 12
Al aumentar K el sistema se hace más rápido.
La ganancia en lazo abierto es A y en lazo cerrado 1p
p
K AK A+
A medida que pK aumenta, la ganancia tiende a uno, objetivo buscado en el control.
Solo con pK = ∞ llegaríamos a ganancia uno
El error permanente es 11 p
r yK A
ε = − =+
Clase 09 Reguladores Clásicos.doc 14
Caso 1: 50% 50% 50% 50%eV r y BIAS= = = = [1.8]
entonces 0 0 50% e se z u BIAS V V= = = = = [1.9]
e sQ Q y r= = [1.10]
Caso 2: 60%eV = [1.11]
y e z u↑ ↑ ↑ ↑ [1.12]
se debe lograr que e sQ Q= o sea
60%eu V= = [1.13]
Clase 09 Reguladores Clásicos.doc 15
En este caso no se logra y r= porque,
60%10%
10 0
e
p p
u Vz u BIAS
zeK K
= == − =
= = ≠
[1.14]
10% 50%p
y e rK
= + = + [1.15]
Para 1 60% 10%pK y d= = = [1.16]
10 51% 1%pK y d= = = [1.17]
Clase 09 Reguladores Clásicos.doc 16
El desplazamiento es proporcional a 11pK +
El BIAS se ajusta para compensar el desplazamiento promedio. Se hace BIAS = actuación promedio En muchos casos se fija BIAS = 50% BIAS se puede usar para rechazar una perturbación promedio Notar que la acción de control es proporcional y negativa con respecto al error
Clase 09 Reguladores Clásicos.doc 17
- Acción Proporcional + Integral Recupera el desplazamiento
zy
tiempo
%
r
Lazo Abierto
La acción integral aumenta el tiempo de respuesta del sistema Lo inestabiliza Introduce un retardo en la fase (es malo)
Clase 09 Reguladores Clásicos.doc 18
- Acción Proporcional + Derivativa
zy
tiempo
%
r
Lazo Abierto
z
y
tiempo
%
r
Lazo Abierto
Aumenta la velocidad de respuesta del sistema No corrige desplazamientos permanentes Introduce avance de fase (bueno). Puede corregir el retardo del I Es anticipativo Altas acciones de control. Bueno para sensores lentos Alta ganancia a altas frecuencias. Amplifica ruido Malo para plantas de no mínima fase (péndulo invertido)
Clase 09 Reguladores Clásicos.doc 19
frecuencia
t∂∂
Derivador Ideal
Solo se necesita la acción derivativa hasta cierta frecuencia Se utiliza un pasa bajos para anular la acción a altas frecuencias
fdedt
udK
e pasabajos
Clase 09 Reguladores Clásicos.doc 20
frecuencia
t∂∂
Derivador Ideal
pasa bajos
efecto totalcf
[ ]1 12cf Hzπ γ
= [1.18]
en muchos controladores comerciales (SPEC-200, Bailey FC-156) existe este ajuste
0,1 0,2 dKγ = [1.19]
Clase 09 Reguladores Clásicos.doc 21
1.1.2. Efecto Antireset Windup up
u
KTds-y
es
u
K
K/Ti 1/s
Actuador
1
iT
-
+
+
+
e v
+
+
+
u
KTds-y
es
u
K
K/Ti 1/s
1
iT
-
+
+
+
e v
+
+
+
ActuadorModelo
Clase 09 Reguladores Clásicos.doc 22
1.1.3. Efecto Bumpless
Manual
u
PDy
es1
rT
-
+
e
+
r
Actuaciónmanual
1
rT1s
1s
1
rT
1
mT
Auto
-
Clase 09 Reguladores Clásicos.doc 23
1.2. Ajustes Clásicos de PIDs No es magia Los parámetros dependen del proceso Existe una teoría para el ajuste óptimo (se verá más adelante) Existen ajustes empíricos Se requiere una perturbación a la planta
Clase 09 Reguladores Clásicos.doc 24
1.2.1. Ajuste Empírico Manual Ajustar primero la respuesta transitoria sin importar el error estacionario. Solo usar P y obtener la mejor respuesta que se pueda obtener (ejemplo control
de caudal) Agregar D e intentar mejorarlo Verificar el error estacionario y eventualmente introducir I sin que afecte el tran-
sitorio Si tiene retardos bajar la derivativa y aumentar integral (no mucho porque osci-
la) Ojo con los autotuners
Clase 09 Reguladores Clásicos.doc 25
1.2.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto
1s 2s
1
2
4ss=
- Método de Respuesta en frecuencia Es más seguro porque el lazo permanece cerrado incluye todas las no linealidades funciona en dos direcciones
Clase 09 Reguladores Clásicos.doc 26
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 oscilación Si la oscilación crece, disminuir la ganancia o aumentarla si decrece. Cuando la oscilación es sostenida, se registra la ganancia del controlador cK ,
se la denomina ganancia crítica Se mide también el período de la oscilación cT
Se calculan los parámetros de acuerdo a la tabla pK iK dK
P 0,5 cK
PI 0,45 cK 1,2cT
PID 0,6 cK 2cT
8cT
Clase 09 Reguladores Clásicos.doc 27
Zieglers y Nichols utilizaron un PID serie neumático (Taylor Fullscope con 0,2 dKγ = )
- Método de Respuesta al Escalón Rápido, solo un escalón da idea de la respuesta de la planta
L
Y
u
T
X
L
u
a
X
YK X= , LYaTX
=
Clase 09 Reguladores Clásicos.doc 28
Se calculan los parámetros de acuerdo a la tabla pK iK dK
P 1 TYa LX=
PI 0,9 0,9TYa LX
=1
3L
PID 1,2 1,2TXa LY
=1
2L
2L
¡Ojo con las unidades! ¡Ojo con la forma del PID!
Clase 09 Reguladores Clásicos.doc 29
- Método del Relé. Åström – Hägglund (Heladera) Mejora al método de Z-N de respuesta en frecuencia el Z-N introduce grandes oscilaciones
se aproxima entrada y salida a dos senoides y la ganancia crítica de Z-N sería
42cK
A∆
≈ [1.20]
donde ∆ es la amplitud del relé y A la amplitud de la salida Con esto se aplica Z-N
uipKr
y
e+
−Planta
u
y
Clase 09 Reguladores Clásicos.doc 30
1.2.3. Relación entre ambos métodos: El método en lazo abierto también es válido para sistemas inestables siempre que la respuesta inicial tenga la forma de la figura. En particular se puede considerar el integrador con retardo siguiente
-sTbG(s) = es (1.21)
que tendrá una respuesta al escalón de la que se obtendrá: L T a bT= = (1.22)
de acuerdo a la segunda tabla el regulador PID será
i d1.2 TK = = 2T = T TbT 2
(1.23)
Si se ensaya de acuerdo al método de respuesta en frecuencia se obtendrá un período de oscilación y una ganancia,
c c = 4T = t k 2bTπ
(1.24)
De acuerdo a esto, el regulador PID será:
i d0.6 0.94 TK = = 2T = T T2bT bT 2
π≈ (1.25)
Clase 09 Reguladores Clásicos.doc 31
- Interpretación
( )
cdr c c c c c
ic c c
c
1 2 2t(i ) = 0.6 1 + j - = 0.6 1 + j 0.12 - G k k tT 2t tT = 0.6 + 0.26 j k
πω ω
πω
(1.26)
es un avance de 23
- Generalización sea la función de transferencia en lazo abierto
pj( + )pp(j ) = G er π φω (1.27)
queremos ubicar esta respuesta a una determinada frecuencia en un punto sj( + )
sB = er π φ (1.28)
mediante un regulador rj
rr(j ) = G er φω (1.29)
Podríamos hacer el diseño por el método de márgen de amplitud es decir que para Φs= 0 la amplitud sea rs= 1 / Am siendo ésta un márgen de amplitud dado. Por lo tanto se debe cumplir:
s p rj( + ) j( + + )s p r = e er r rπ πφ φ φ
(1.30)
Clase 09 Reguladores Clásicos.doc 32
entonces el regulador será:
sr
p
r s p
r = rr
= - φ φ φ
(1.31)
la ganancia proporcional es la parte real del regulador coss s p
pp
( - )r = kr
φ φ (1.32)
el ángulo estará dado por
tand s pi
1 - = ( - )T Tω φ φ
ω (1.33)
Clase 09 Reguladores Clásicos.doc 33
1.2.4. Método de Asignación de Polos. sistema de primer orden
pp
1
k = G 1 + s T (1.34)
regulador PI
ri
1 = K 1 + GsT
(1.35)
resultando un sistema de segundo orden en lazo cerrado
p rc
p r
G G = G 1 + G G (1.36)
la ecuación característica será
p p2
1 1 1 i
K K1 k k + s + + = 0s T T T T
(1.37)
y nuestra condición de diseño dice 2 2 + 2 s + = 0s ξ ω ω (1.38)
Clase 09 Reguladores Clásicos.doc 34
el regulador PI resulta
1
p
1i 2
1
2 - 1TK = k
2 - 1T = T T
ξ ω
ξ ωω
(1.39)
se puede hacer algo parecido para un sistema de 2do órden
Clase 09 Reguladores Clásicos.doc 35
- Caso Discreto del Método de Asignación de Polos. sistema de segundo orden
21 2
1 2
A(z) = + z + a azB(z) = z + b b
(1.40)
regulador PI
r
1
S(z)(z) = H R(z)R(z) = ( z - 1 ) (z)R
(1.41)
una forma genérica sería 2
0 1 2
1
S(z) = + z + s s szR(z) = ( z - 1 ) ( z + )r
(1.42)
la ecuación característica será 2
11 2
21 2 0 1 2
( + z + )( z - 1 )( z + ) +a az r ( z + )( + z + ) = 0b b s s sz
(1.43)
Clase 09 Reguladores Clásicos.doc 36
que es de cuarto órden. Se podría especificar un denominador como,
2- h 21 2P(z) = ( z - ( + z + )) p pe zαω
(1.44)
donde
cos 2- h1
-2 h2
= - 2 ( h 1 - )p e = p e
ξω
ξω
ω ξ (1.45)
Ejemplo:
p1(s) = G ( 1 + s )( 1 + 0.26 s )
(1.46)
si el período de muestreo es h = 0.1 seg.
p 2
0.0164 z + 0.0140(z) = H - 1.583 z + 0.616z (1.47)
condición de diseño:
= 0.5 = 4 = 1ξ ω α (1.48)
Clase 09 Reguladores Clásicos.doc 37
P será 2 2P(z) = ( z - 0.670 ( - 1.54 z + 0.670 )) z (1.49)
reemplazando
1
0
1
2
= - 0.407r = 6.74s
= - 9.89s = 3.61s
(1.50)
Clase 09 Reguladores Clásicos.doc 38
1.3. Control con Modelo Interno (IMC) Se puede plantear el siguiente esquema
u
Qr G
y
od
e
G
+
−
+
+
+−
la salida es
( ) ( )ˆ1
ˆ ˆ1 1o
QG QGy r dQ G G Q G G
−= +
+ − + − [1.51]
si el modelo es perfecto,
( )ˆ1 oy QGr QG d= + − [1.52]
Clase 09 Reguladores Clásicos.doc 39
el IMC se puede mostrar como
u
Qr G
y
od
e
G
+
−
+
+
+−
u
Qr G
y
od
e
G
+
−
+
+++
C
Clase 09 Reguladores Clásicos.doc 40
u
ˆ1QCQG
=−
r G
y
od
e+
−
+
+
El control es diseñado en base al modelo de la planta
( )ˆC C G= [1.53]"
Clase 09 Reguladores Clásicos.doc 41
Es muy intuitivo
u
Qr G
y
od
e
G
+
−
+
+
+−
está relacionado con el concepto de predictor de Smith
Clase 09 Reguladores Clásicos.doc 42
Si la planta es estable, ¿cómo elegir Q?
¿Si probamos con 1ˆQ G−= ?
( )ˆ1 oy QGr QG d= + − [1.54]
( )1 1ˆ ˆ ˆ1 oy G Gr G G d− −= + − [1.55]
ˆ1ˆ ˆ o
G Gy r dG G
= + −
[1.56]
1ˆG y rG≈ ⇒ ≈ [1.57]
con 1ˆQ G−= se obtiene el control perfecto
Clase 09 Reguladores Clásicos.doc 43
Problemas: (a) nunca el modelo es perfecto (b) los actuadores se saturan (c) un retardo no se puede invertir en forma exacta (d) problemas matemáticos de inversión (e) problemas con plantas inestables
Clase 09 Reguladores Clásicos.doc 44
1.3.1. Paradigma de diseño para IMC Se elige
ˆinvQ FG= [1.58]
siendo ˆinvG una aproximación estable de la inversa de G
y F una condición de diseño (filtro) para lograr determinadas propiedades en lazo cerrado.
ˆinvG intenta resolver el problema (c) y F los problemas (a), (b) y (d)
Si se toma esta condición de diseño se obtiene
( ) ( )ˆ1
ˆ ˆ1 1o
QG QGy r dQ G G Q G G
−= +
+ − + − [1.59]
( ) ( )ˆ ˆ ˆ1
ˆ ˆ ˆ ˆ1 1inv inv
oinv inv
FG G FG Gy r dFG G G FG G G
−= +
+ − + − [1.60]
suponiendo que ˆ ˆ ˆ 1inv invG G G G≈ ≈ [1.61]
Clase 09 Reguladores Clásicos.doc 45
resulta
( )1 oy Fr F d≈ + − [1.62]
recordar que elegimos ˆinvG como una aproximación estable de la inversa de G
si G tiene inversa estable y no tiene retardos se puede elegir 1ˆ ˆinvG G−=
si no es el caso se hace una separación
( ) ( )( )
( ) ( )( )
ˆ ˆ ˆˆ
ˆ ˆe iB s B s B s
G sA s A s
= = [1.63]
( )ˆeB s contiene los ceros estables y
( )ˆiB s contiene los ceros inestables o de no mínima fase
se elige
( ) ( )( ) ( )( )
0
ˆˆ
ˆ ˆinv
e is
A sG s
B s B s=
= [1.64]
se considera la ganancia estática de ( )ˆiB s
no se puede hacer esto con el retardo (se verá luego)
Clase 09 Reguladores Clásicos.doc 46
1.3.2. Diseño de F ( )1 oy Fr F d≈ + − [1.65]
F es la respuesta deseada del sistema. Para seguimiento de referencias:
- F rápida => respuesta rápida - F lenta => respuesta lenta
Para rechazo de perturbaciones: - F rápida => buen rechazo de perturbaciones - F lenta => rechazo pobre
Clase 09 Reguladores Clásicos.doc 47
Generalmente F se elige de la forma
( )1
1 pFsβ
=+
[1.66]
se agrega el exponente p de modo de que ˆinvQ FG= sea bipropia o tenga igual
número de polos y ceros. Por ejemplo
( ) 1ˆ2 1
G ss
=+
, 1
1F
sβ=
+,
2 1ˆ1inv
sQ FGsβ+
= =+
[1.67]
( ) 2
5ˆ2 1
sG ss s
−=
+ +, ( )
2 2 1ˆ5inv
s sG s + +=
−,
( )21
1F
sβ=
+,
( )
2
22 1ˆ
5 1inv
s sQ FGsβ
+ += =
− + [1.68]
Clase 09 Reguladores Clásicos.doc 48
β pequeño => F rápido
β grande => F lenta
Una F lenta reduce los efectos negativos de - incertidumbre en el modelo - limitaciones de los actuadores - ruido de medición
β se convierte en un potenciómetro de diseño
Una elección más sofisticada de F lleva a un diseño más complejo.
Clase 09 Reguladores Clásicos.doc 49
step(tf(1,[.1 1]),tf(1,[1 1]),tf(1,[2 1]))
Time (sec.)
Am
plitu
deStep Response
0 2 4 6 8 10 120
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1From: U(1)
To: Y
(1)
Clase 09 Reguladores Clásicos.doc 50
1.3.3. Realización del Controlador IMC en la forma IMC
u
Qr G
y
od
e
G
+
−
+
+
+−
en la forma "PID" clásica
u
PIDCr G
y
od
e+
−
+
+
Clase 09 Reguladores Clásicos.doc 51
de donde se deduce que
ˆ1PIDQCQG
=−
[1.69]
Con el diseño IMC se puede lograr un comportamiento PID si - se controla con un PI un modelo de primer orden - se controla con un PID un modelo de segundo orden - se controla con un PID un modelo de primer orden con retardo
Ventajas del diseño de un PID vía IMC: - fácil obtener el modelo de los datos de planta (resp. escalón) - se explicita la forma de la respuesta en lazo cerrado eligiendo F o β
- se calculan las constantes del controlador (P, I y D) con fórmulas apropia-das.
Clase 09 Reguladores Clásicos.doc 52
1.3.4. Diseño de PI-IMC para Plantas de Primer Orden Modelo de la planta
ˆˆˆ 1
KGsτ
=+
[1.70]
el tiempo de crecimiento está relacionado con la constante de tiempo ˆ ˆ2,2rT τ≈ [1.71]
ˆ 1ˆˆinv
sGK
τ += ,
11
Fsβ
=+
[1.72]
ˆinvQ FG= [1.73]
el controlador según IMC es ˆ ˆ 1 1 1
ˆ ˆ ˆ ˆ ˆ1 1inv
inv
FGQ sCsK sQG FG G G
τββ
+= = = =
− − [1.74]
en el caso de un PI paralelo p
p iPI p
KC C Ks
= = + [1.75]
eligiendo
Clase 09 Reguladores Clásicos.doc 53
ˆˆ
ppK
Kτβ
= ,1ˆ
piK
Kβ= [1.76]
dado β , τ y K tenemos una forma sistemática de ajustar el controlador. ˆ ˆ1 1
ˆ ˆ ˆPIsC
K K s K sτ τβ β β
+= + = [1.77]
Resumen:
- encontrar τ y K - elegir el controlador PI y β
Recordar que con β pequeños se obtiene
- rápidos seguimientos de referencias - menor robustez a errores de modelo - mayor sensibilidad a errores de modelado en alta frecuencia - actuaciones más importantes - más sensible a saturaciones de los actuadores - mejor rechazo a perturbaciones - mayor sensibilidad al ruido de medición
Clase 09 Reguladores Clásicos.doc 54
- mayor efecto de los ceros inestables - mayor efecto del retardo
% Control PI IMC Sistema de Primer Orden % Sistema continuo Kh = 10; tauh = 1; d=poly([-1/tauh]); sis = tf( Kh,d); %Sistema en variables de estado Pss = ss(sis); % y su respuesta al escalón ... precision= .01; t = 0:precision:5; u = ones(size(t)); y = lsim(sis,u,t); figure(1) plot([y]); % período de muestreo T=.1; % PI discreto beta =5; kp = tauh/beta/Kh; ki = 1/beta/Kh; kd = 0; beta =.2; kp = tauh/beta/Kh; ki = 1/beta/Kh;
Clase 09 Reguladores Clásicos.doc 55
kd = 0; % se usa la aproximación 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
Clase 09 Reguladores Clásicos.doc 56
yy = [yy ; y(2:length(y))]; uu = [uu ; ub(2:length(ub))']; end; figure(2) plot([uu yy]);
0 100 200 300 400 500 6000
1
2
3
4
5
6
7
8
9
10
0 100 200 300 400 5000
0.2
0.4
0.6
0.8
1
1.2
1.4
Clase 09 Reguladores Clásicos.doc 57
1.4. Ajuste Iterativo en Lazo Cerrado (IFT) Método alternativo de autoajuste de parámetros la planta es
10 ( )k k ky G z u v−= + [1.78]
u
Rr G
y
v
e
el lazo cerrado resulta
0
0 0
11 1
RGy r vRG RG
= ++ +
[1.79]
Clase 09 Reguladores Clásicos.doc 58
Objetivo: encontrar los parámetrosθ del regulador tal que minimicen el siguiente
funcional:
( ) ( ) ( )2 2
1 1
12
N Nd
k k kk k
J E y y uN
θ λ= =
= − + ∑ ∑ [1.80]
hay que derivar e igualar a cero:
( ) ( )1 1
1 N Nd
k k kk k
J y uE y y uN
θλ
θ θ θ= =
∂ ∂ ∂ = − + ∂ ∂ ∂ ∑ ∑ [1.81]
Una forma de ajustar los parámetros es recursivamente en la dirección del gra-diente
( )11k k k k
JR
θθ θ γ
θ−
+
∂= −
∂ [1.82]
El problema está en el cálculo del gradiente, en realidad los términos yθ∂∂
y uθ∂∂
Clase 09 Reguladores Clásicos.doc 59
llamando
00
01RGT
RG=
+ , 0
0
11
SRG
=+
[1.83]
sea dy la respuesta deseada a la referencia d
dy T r= [1.84]
0
0 0
11 1
d dRGy y y r y vRG RG
= − = − ++ +
[1.85]
0
0 0
11 1d
RGy T r vRG RG
= − + + +
[1.86]
( ) ( )
2 20 0 0
2 20 0 0
1 1 1G RG Gy y R R Rr r vRG RG RGθ θ θ θ θ
∂ ∂ ∂ ∂ ∂= = − −
∂ ∂ + ∂ ∂ ∂+ + [1.87]
2 20 0 0 0 0 0 0 0
1 1y R R R RT r T r T S v T r T r T S vR Rθ θ θ θ θ
∂ ∂ ∂ ∂ ∂ = − − = − − ∂ ∂ ∂ ∂ ∂ [1.88]
0T y 0S no son conocidas
se sabe que
Clase 09 Reguladores Clásicos.doc 60
20 0 0 0T y T r T S v= + [1.89]
se puede reescribir [1.88]
[ ] ( )0 0 01 1y R RT r T y T r yR Rθ θ θ
∂ ∂ ∂= − = −
∂ ∂ ∂ [1.90]
en donde sigue sin conocerse 0T .
Pero si se realizan los siguientes experimentos: 1) se realiza un primer ensayo con una referencia 1r r= , obteniéndose una res-
puesta
1 0 0 1y T r S v= + [1.91]
2) el segundo ensayo se efectúa con una referencia 2 1r r y= − , obteniéndose una respuesta
( )2 0 1 0 2y T r y S v= − + (1.92)
Si se reemplaza (1.92) en [1.90] resulta
Clase 09 Reguladores Clásicos.doc 61
( ) [ ]0 2 0 21 1y R RT r y y S vR Rθ θ θ
∂ ∂ ∂= − = −
∂ ∂ ∂ [1.93]
con lo que se podría tomar como aproximación,
21y R yRθ θ
∂ ∂=
∂ ∂ [1.94]
Con la actuación ocurre algo similar. De esta forma se logra el cálculo del gra-diente del funcional.
Clase 09 Reguladores Clásicos.doc 62
Ejemplo 1.1. Regulador PI En este caso simplificado, se cumple
( )1
1
11
p ik k zR
z
−
−
+ −=
− (1.95)
por ende 1
1
11
i
p
k zRk z
−
−
+ −∂=
∂ − , 11
p
i
kRk z−
∂=
∂ − (1.96)
( ) ( )( )
1
1 1
2 2 21
1 11
1111 1
1 1111 1 1 11
i
pp
p ip i
i i
k zkky z z y y y
k kk k zk z k zz
θ
−
− −
−
− −−
+ − ∂ − − = = = +∂ + − + − − +−
(1.97)
( )( )
2 2
1
1
1 11 1 1
p
i
i
ku u ukk z
θ−
∂ = = ∆ +∂ − +
(1.98)
Clase 09 Reguladores Clásicos.doc 63
( ) ( )1 11 1
1 N Nd
k k kk k
J y uy y uN
θλ
θ θ θ= =
∂ ∂ ∂ = − + ∂ ∂ ∂ ∑ ∑ (1.99)
- Algoritmo: 1) Cálculo del vector ∆ 2) Ensayo 1 3) Ensayo 2
4) Cálculo de los gradientes yθ∂∂
y uθ∂∂
5) Cálculo del gradiente Jθ∂∂
6) Ajuste de los parámetros con la ley 11k k k k
JRθ θ γθ
−+
∂= −
∂
7) volver al paso 2)
Clase 09 Reguladores Clásicos.doc 64
- Simulaciones plot(yes);grid
0 200 400 600 800 1000 12000
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
0.45
0.5
Clase 09 Reguladores Clásicos.doc 65
plot([ym ydd]);grid
0 50 100 150-0.2
0
0.2
0.4
0.6
0.8
1
1.2
1.4
plot(j);grid
1 1.5 2 2.5 3 3.5 4 4.5 50
20
40
60
80
100
120
140
Clase 09 Reguladores Clásicos.doc 67
- Código %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 escalón ... t = 0:0.01:10; u = ones(size(t)); yes = lsim(syscont,u,t); T=.2; % Parámetros 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;
Clase 09 Reguladores Clásicos.doc 68
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; % Cálculo 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
Clase 09 Reguladores Clásicos.doc 69
yd1(i) = y(ly)+ var*randn; ed(i)=ref- yd1(i); int = int + ki * ed(i); der = kd * (yd1(i)-yd1(i-1)); ud1(i)=kp*(ed(i)+ int + der); % bloqueador de orden cero u = ud1(i) * ones(size(t)); % Sistema s=size(x0); [y, tt, x0] = lsim(Pss,u,t,x0(s(1),:)); yy = [yy ; y]; uu = [uu ; u']; end; % Experimento 2 x0= zeros(1,na); y = zeros(size(t)); yy = 0; uu = 0; int = 0; for i = 3:Tfin/T % Regulador yd2(i) = y(ly)+ var*randn; ed(i)=ref - yd1(i) - yd2(i); int = int + ki * ed(i); der = kd * (yd2(i)-yd2(i-1)); ud2(i)=kp*(ed(i)+ int + der); % bloqueador de orden cero u = ud2(i) * ones(size(t)); % Sistema s=size(x0); [y, tt, x0] = lsim(Pss,u,t,x0(s(1),:));
Clase 09 Reguladores Clásicos.doc 70
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
Clase 09 Reguladores Clásicos.doc 71
- Referencias 1. Häkan 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. Äström, K., Hägglung: Automatic Tuning of PID Controllers, ISA – 1988