10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942)...

51
10 Ajuste de PIDs 1 1. Ajuste de PIDs 1. AJUSTE DE PIDS ......................................................................................... 1 1.1. AJUSTES CLÁSICOS DE PIDS ............................................................................. 2 1.1.1. Ajuste Empírico Manual ........................................................................... 3 1.1.2. Método de Ziegler-Nichols (1942)........................................................... 4 1.1.3. Relación entre ambos métodos: ................................................................ 9 1.1.4. Método de Asignación de Polos. ............................................................ 12 1.2. PARAMETRIZACIÓN AFIN - CONTROL CON MODELO INTERNO (IMC) ........ 17 1.2.1. Paradigma de diseño para IMC ............................................................. 20 1.2.2. Diseño de F............................................................................................... 23 1.2.3. Realización del Controlador IMC .......................................................... 27 1.2.4. Diseño de PI-IMC para Plantas de Primer Orden ............................. 29 1.3. AJUSTE ITERATIVO EN LAZO CERRADO (IFT) .............................................. 35 1.4. REFERENCIAS .................................................................................................... 51

Transcript of 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942)...

Page 1: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 1

1. Ajuste de PIDs

1. AJUSTE DE PIDS ......................................................................................... 1

1.1. AJUSTES CLÁSICOS DE PIDS ............................................................................. 2

1.1.1. Ajuste Empírico Manual ........................................................................... 3

1.1.2. Método de Ziegler-Nichols (1942) ........................................................... 4

1.1.3. Relación entre ambos métodos: ................................................................ 9

1.1.4. Método de Asignación de Polos. ............................................................ 12

1.2. PARAMETRIZACIÓN AFIN - CONTROL CON MODELO INTERNO (IMC) ........ 17

1.2.1. Paradigma de diseño para IMC ............................................................. 20

1.2.2. Diseño de F............................................................................................... 23

1.2.3. Realización del Controlador IMC .......................................................... 27

1.2.4. Diseño de PI-IMC para Plantas de Primer Orden ............................. 29

1.3. AJUSTE ITERATIVO EN LAZO CERRADO (IFT) .............................................. 35

1.4. REFERENCIAS .................................................................................................... 51

Page 2: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 2

1.1. 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

Page 3: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 3

1.1.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 transitorio

Si tiene retardos bajar la derivativa y aumentar integral (no mucho porque osci-la)

Ojo con los autotuners

Page 4: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 4

1.1.2. Método de Ziegler-Nichols (1942)

Objetivo: reducir el sobrepico a un cuarto

1s 2s1

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

Page 5: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 5

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

Page 6: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 6

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 , LYa

TX

Page 7: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 7

Se calculan los parámetros de acuerdo a la tabla

pK iK dK

P 1 TYa LX

PI 0,9 0,9TYa LX

13L

PID 1,2 1,2TXa LY

12L

2L

¡Ojo con las unidades! ¡Ojo con la forma del PID!

Page 8: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 8

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.1]

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

Page 9: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 9

1.1.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.2)

que tendrá una respuesta al escalón de la que se obtendrá: L T a bT (1.3)

de acuerdo a la segunda tabla el regulador PID será

i d1.2 TK = = 2T = T TbT 2

(1.4)

Si se ensaya de acuerdo al método de respuesta en frecuencia se obtendrá un pe-ríodo de oscilación y una ganancia,

c c = 4T = t k 2bT

(1.5)

De acuerdo a esto, el regulador PID será:

Page 10: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 10

i d0.6 0.94 TK = = 2T = T T2bT bT 2

(1.6)

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.7)

es un avance de 23

Generalización

sea la función de transferencia en lazo abierto pj( + )

pp(j ) = G er (1.8)

queremos ubicar esta respuesta a una determinada frecuencia en un punto sj( + )

sB = er (1.9)

mediante un regulador rj

rr(j ) = G er (1.10)

Page 11: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 11

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.11)

entonces el regulador será:

sr

p

r s p

r = rr

= -

(1.12)

la ganancia proporcional es la parte real del regulador coss s p

pp

( - )r = kr

(1.13)

el ángulo estará dado por

tand s pi

1 - = ( - )T T

(1.14)

Page 12: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 12

1.1.4. Método de Asignación de Polos.

sistema de primer orden p

p1

k = G 1 + s T (1.15)

regulador PI

ri

1 = K 1 + GsT

(1.16)

resultando un sistema de segundo orden en lazo cerrado

p rc

p r

G G = G 1 + G G (1.17)

la ecuación característica será

p p2

1 1 1 i

K K1 k k + s + + = 0s T T T T

(1.18)

y nuestra condición de diseño dice

Page 13: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 13

2 2 + 2 s + = 0s (1.19)

el regulador PI resulta

1

p

1i 2

1

2 - 1TK = k

2 - 1T = T T

(1.20)

se puede hacer algo parecido para un sistema de 2do órden

Page 14: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 14

Caso Discreto del Método de Asignación de Polos.

sistema de segundo orden 2

1 2

1 2

A(z) = + z + a azB(z) = z + b b

(1.21)

regulador PI

r

1

S(z)(z) = H R(z)R(z) = ( z - 1 ) (z)R

(1.22)

una forma genérica sería 2

0 1 2

1

S(z) = + z + s s szR(z) = ( z - 1 ) ( z + )r

(1.23)

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.24)

Page 15: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 15

que es de cuarto orden.

Se podría especificar un denominador como, 2- h 2

1 2P(z) = ( z - ( + z + )) p pe z (1.25)

donde

cos 2- h1

-2 h2

= - 2 ( h 1 - )p e = p e

(1.26)

Ejemplo:

p1(s) = G ( 1 + s )( 1 + 0.26 s )

(1.27)

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.28)

condición de diseño: = 0.5 = 4 = 1 (1.29)

Page 16: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 16

P será 2 2P(z) = ( z - 0.670 ( - 1.54 z + 0.670 )) z (1.30)

reemplazando

1

0

1

2

= -0.407r = 6.74s

= - 9.89s = 3.61s

(1.31)

Page 17: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 17

1.2. Parametrización Afin - Control con Modelo Interno (IMC)

Lazo clásico de control

uCr G

y

od

e

id

1

1 1 1o iCG Gy r d d

CG CG CG

Si nos interesa solo la relación entre salida y referencia,

1CGy r

CG

Page 18: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 18

Fijamos una condición de diseño:

Encontrar el controlador C tal que la dinámica entre salida y referencia en lazo cerrado, sea

1CGy r Fr

CG

El controlador que satisface esta condición es 1

1FC

F G

Observar que queda en función de la inversa de la dinámica de la planta

Realmente, no conocemos G , sino una estimación (o modelo) G . En este caso el controlador resultará

1ˆ1

FCF G

Elegido el controlador de esta forma y suponiendo un modelo perfecto, la rela-ción entre las variables es:

1 1o iy Fr F d F Gd

Page 19: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 19

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

Page 20: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 20

1.2.1. Paradigma de diseño para IMC

Se elige el término 1 ˆˆ invG

G

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 la-zo 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

ˆ ˆ ˆ ˆ ˆ ˆo i

F G F GFGy r d GdG F G G G F G G G F G G

ˆ 1 1ˆ ˆ ˆ1 1 1 1 1 1inv

o iinv inv inv

F FFG Gy r d GdF G G F G G F G G

Page 21: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 21

suponiendo que ˆ ˆ ˆ 1inv invG G G G [1.32]

Resulta 1 1o iy Fr F d F Gd

Page 22: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 22

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.33]

ˆ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.34]

se considera la ganancia estática de ˆiB s

no se puede hacer esto con el retardo (se verá luego)

Page 23: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 23

1.2.2. Diseño de F 1 1o iy Fr F d F Gd

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

Page 24: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 24

Generalmente F se elige de la forma

1

1 pFs

[1.35]

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

,

1 2 1ˆ1

F sCF sG

[1.36]

2

5ˆ2 1

sG ss s

,

2 2 1ˆ5inv

s sG s

,

2

11

Fs

,

21 2 1ˆ1 5 2

F s sCF s sG

Page 25: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 25

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.

Page 26: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 26

step(tf(1,[.1 1]),tf(1,[1 1]),tf(1,[2 1]))

a=[.1 1];b=[.4 1];c=[.8 1];

step(tf(1,conv(a,conv(a,a))),tf(1,conv(b,conv(b,b))),tf(1,conv(c,conv(c,c))))

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

1Step Response

Time (sec)

Ampl

itude

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

1Step Response

Time (sec)

Ampl

itude

Page 27: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 27

1.2.3. Realización del Controlador IMC

Podemos igualar nuestro controlador a un PID,

u

PIDCr G

y

od

e

de donde se deduce que

1ˆ1PID IMC

FC CF G

Page 28: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 28

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.

Page 29: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 29

1.2.4. Diseño de PI-IMC para Plantas de Primer Orden

Modelo de la planta ˆˆ

ˆ 1KGs

[1.37]

el tiempo de crecimiento está relacionado con la constante de tiempo ˆ ˆ2,2rT [1.38]

ˆ 1ˆˆinv

sGK

,

11

Fs

[1.39]

el controlador según IMC es ˆ 1ˆˆ1 inv

F sC GF K s

Si nuestro PI es paralelo, p

p iPI p

KC C Ks

[1.40]

eligiendo

Page 30: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 30

ˆˆ

ppK

K

,1ˆ

piK

K [1.41]

dado , y K tenemos una forma sistemática de ajustar el controlador. ˆ ˆ1 1

ˆ ˆ ˆPIsC

K K s K s

[1.42]

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

Page 31: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 31

- mayor sensibilidad al ruido de medición

- mayor efecto de los ceros inestables

- mayor efecto del retardo

Page 32: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 32

% 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; 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);

Page 33: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 33

[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 yy = [yy ; y(2:length(y))]; uu = [uu ; ub(2:length(ub))']; end; figure(2) plot([uu yy]);

Page 34: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 34

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

Page 35: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 35

1.3. Ajuste Iterativo en Lazo Cerrado (IFT)

Método alternativo de autoajuste de parámetros

la planta es 1

0 ( )k k ky G z u v [1.43]

u

Rr G

y

v

e

el lazo cerrado resulta

0

0 0

11 1

RGy r vRG RG

[1.44]

Page 36: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 36

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.45]

hay que derivar e igualar a cero:

1 1

1 N Nd

k k kk k

J y uE y y uN

[1.46]

Una forma de ajustar los parámetros es recursivamente en la dirección del gra-diente

11k k k k

JR

[1.47]

El problema está en el cálculo del gradiente, en realidad los términos y

y u

Page 37: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 37

llamando

00

01RGT

RG

, 0

0

11

SRG

[1.48]

sea dy la respuesta deseada a la referencia d

dy T r [1.49]

0

0 0

11 1

d dRGy y y r y vRG RG

[1.50]

0

0 0

11 1d

RGy T r vRG RG

[1.51]

2 20 0 0

2 20 0 0

1 1 1G RG Gy y R R Rr r vRG RG RG

[1.52]

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.53]

0T y 0S no son conocidas

Page 38: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 38

se sabe que 2

0 0 0 0T y T r T S v [1.54]

se puede reescribir [1.53]

0 0 01 1y R RT r T y T r yR R

[1.55]

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.56]

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.57)

Page 39: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 39

Si se reemplaza (1.57) en [1.55] resulta

0 2 0 21 1y R RT r y y S vR R

[1.58]

con lo que se podría tomar como aproximación,

21y R yR

[1.59]

Con la actuación ocurre algo similar. De esta forma se logra el cálculo del gra-diente del funcional.

Page 40: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 40

Ejemplo 1.1. Regulador PI

En este caso simplificado, se cumple

1

1

11

p ik k zR

z

(1.60)

por ende 1

1

11

i

p

k zRk z

, 11

p

i

kRk z

(1.61)

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.62)

2 2

1

1

1 11 1 1

p

i

i

ku u ukk z

(1.63)

Page 41: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 41

1 11 1

1 N Nd

k k kk k

J y uy y uN

(1.64)

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)

Page 42: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 42

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

Page 43: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 43

plot([ym ydd]);grid

plot(j);grid

0 50 100 150-0.2

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1 1.5 2 2.5 3 3.5 4 4.5 50

20

40

60

80

100

120

140

Page 44: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 44

plot(th');grid

1 2 3 4 5 6

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

Page 45: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 45

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);

Page 46: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 46

th=zeros(2,iter+1); th(:,1)=[kp;ki]; lambda=.0; Tfin = 30; precision= .02; t = 0:precision:T; 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;

Page 47: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 47

% 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 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];

Page 48: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 48

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),:)); yy = [yy ; y]; uu = [uu ; u']; end; j(k)=(ym-yd1)'*(ym-yd1)+lambda* ud1'*ud1;

Page 49: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 49

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

Page 50: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 50

Page 51: 10 Ajuste de PIDs · 2015. 7. 1. · 10 Ajuste de PIDs 4 1.1.2. Método de Ziegler-Nichols (1942) Objetivo: reducir el sobrepico a un cuarto s 1 s 2 1 2 4 s s Método de Respuesta

10 Ajuste de PIDs 51

1.4. 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. Pren-tice 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

5. Stephanopoulos, G: Chemical Process Control. Prentice-Hall – 1984. Cap. 14 a 18

6. Sánchez Peña, Ricardo S. Introducción a la Teoría de Control Robusto. Buenos Aires: AADECA, 1992.