Ajuste de PIDs -...

71
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

Transcript of Ajuste de PIDs -...

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 3

u

Rr G

y

v

e

GG

+

+

+

+−

+

u

R′r

G

y

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 6

- Banda Proporcional

maxy

miny

minu maxu

pK

100

p

BPK

=

-

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 13

Ejemplo:

ur

y

e+

− +

+pK

BIAS

TanqueL

,e eV Q

sQ

z

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 66

plot(th');grid

1 2 3 4 5 60

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

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