Está en la página 1de 19

ANEXO 1. GUÍA MATLAB 7.10.

0 APLICADO AL DISEÑO DE CONTROLADORES

Función de transferencia:

Para un sistema de lazo abierto: T(s) = G(s)

Para un sistema de lazo cerrado con retroalimentación unitaria:

𝐶(𝑠) 𝐺(𝑠)
𝑇 (𝑠 ) = =
𝑅(𝑠) 1 + 𝐺(𝑠)

Para un sistema de lazo cerrado con elemento de realimentación (sensor):

𝐶(𝑠) 𝐺(𝑠)
𝑇 (𝑠 ) = =
𝑅(𝑠) 1 + 𝐻(𝑠)𝐺(𝑠)

Programación en Matlab

Mediante un programa se introduce en el Matlab, solo la función G(s) de la planta o la función T(s)
del sistema de lazo abierto.

Para introducir una función de transferencia se hace uso del comando tf(num,den), conformando
matrices de una fila con los coeficientes de s, desde el orden mayor al orden menor, tanto para el
numerador como el denominador.

Ejemplo: Introducir las funciones de transferencia de los dos sistemas, sys1 y sys2.

s+4 5s2
T1 (s) = T2 (s) =
s+2 s2 +3s+2

Si la función de transferencia está representada mediante la factorización del numerador y


denominador, entonces se introduce la función de transferencia con el uso del comando zpk(z,p,k),
donde z son los ceros en forma de vector, p son los polos en forma de vector y k es la ganancia del
sistema.

(s+1)(s+3)
Ejemplo: introducir la función de transferencia T(s) =
s(s+2)(s+4)

El comando tf2zp(num,den) transforma la función de transferencia de un sistema al modelo de


polos y ceros.

s+4
Ejemplo: Hallar los polos y ceros de la función de transferencia T1 (s) =
s+2

Se explica mejor en detalle con un ejemplo:

8
La planta Gp (s) = , se realimenta unitariamente, para una entrada escalón unitario:
(s+2)(s+4)

a) Hallar los polos dominantes, el sobrepaso porcentual P.O., el tiempo de estabilización y el


error en estado estacionario. Muestre los resultados en tablas.
b) Hallar los polos dominantes que cumplan con las siguientes especificaciones: P.O. <= 2%,
ts2% <= 1 seg, ess <= 3%.

Resolviendo en Matlab:
Obtención del lugar de raíces con Matlab.-

Se utiliza el comando rltool(). Este comando puede introducirse sin especificar el sistema en lazo
abierto, en este caso no muestra ningún lugar de raíces y es necesario importar el sistema en lazo
abierto; también se puede introducir el comando específico para un sistema en lazo abierto (en este
caso nuestro sistema en lazo abierto es G, y el comando es: “rltool(G)”).

Para importar el sistema G, nos dirigimos a la ventana Control and Estimation Tools Manager, y
hacemos clic en System Data. Luego hacer clic en G para importar un sistema en la planta G,
entonces clic en Browse y nos saldrá una lista de todos los sistemas que antes introducimos en el
editor de comandos, seleccionamos el sistema en lazo abierto (en este caso G) y clic en Import para
importar, clic en Close y luego clic en OK. Por lo tanto se dibuja el Lugar de Raíces del sistema en
lazo abierto, ver la ventana SISO Design for SISO Design Task.
Para observar las respuestas de salida del sistema G (escalón, Bode, etc.), en la pestaña “Analysis”
del Lugar de raíces se encuentran las respuestas de salida, elegimos “Response to Step Command”
para la respuesta escalón. En la gráfica que muestra, hacer clic derecho y en la parte de “Systems”
dejar marcado “Closed Loop r to y” para ver la respuesta escalón en lazo cerrado, para poder
observar las características deseadas (sobrepaso, tiempo de estabilización y error en estado
estacionario) hacer clic derecho y en la parte de “Characteristics” marcar “Peak Response”
(respuesta pico), y “Setting Time” (tiempo de estabilización), sobre los puntos que se marcan en la
gráfica hacer clic en cada uno de ellos para ver los valores de sobrepaso y el tiempo de estabilización.

ess = 1 – 0.5 = 0.5

Pd: s = –3 ± 2.6458j

P.O.(%) = 2.84%

ts2% = 1.44 seg

ess = 50%

Ahora, para diseñar el compensador se puede añadir polos en el origen (integrador), ceros, polos
para cumplir con las especificaciones. Lo primero es hallar los polos dominantes que cumplan con
las condiciones dinámicas (respuesta transitoria).
−πξ
√1−ξ2
P. O. = e ∗ 100 <= 2%, entonces ξ >= 0.78

4
t s2% = <= 1 , entonces ωn >= 5.128
ξωn

Elegir ξ = 0.78 y ωn = 5.13

de la ecuación característica: s2 + 2ξωns + ωn2 = 0 se halla los polos dominantes

s2 + 2*0.78*5.13s + 5.132 = 0, entonces s2 + 8s + 26.317 = 0

Entonces los polos dominantes son: – 4 ± 3.212j

El lugar de raíces tiene que pasar por los polos dominantes, como el LGR no pasa por los polos
dominantes, entonces el compensador necesita una acción derivativa para llevar el LGR a la
localización de los polos dominantes, por lo tanto el compensador puede ser PD o PID, se prueba
primero con PD, si se cumple la condición del error en estado estacionario el compensador será PD,
si no se cumple es necesario aumentar un integrador y el compensador será del tipo PID.

Ejercicios

1.- Para las funciones de planta mostradas, que constituyen un sistema de lazo cerrado unitario,
determinar sus características de control con ayuda de Matlab.
3
a) 𝐺 (𝑠) =
𝑠(𝑠+1)(𝑠+2)
7
b) 𝐺 (𝑠) =
𝑠(𝑠+1)(𝑠+2)

2.- Para la función de planta mostrada, hallar el rango de valores de k para que el sistema sea
estable, inestable y el valor para que el sistema sea indiferente y verificar con Matlab.
𝐾(𝑠+1)
a) 𝐺 (𝑠) =
𝑠(𝑠+2)(𝑠+3)(𝑠+4)

METODO DEL LUGAR DE RAICES CON AYUDA DEL MATLAB

Polos dominantes.-

Son los polos que influyen más que otros del sistema en la respuesta transitoria, por su ubicación
en el plano s.
Tipos de sistemas.-

Según el valor del exponente n en s del denominador de la expresión de función transferencia en


lazo abierto:
𝑘 (𝑠 + 𝑧1 )(𝑠 + 𝑧2 ) … . .
𝐺 (𝑠 ) =
𝑠 𝑛 (𝑠 + 𝑝1 )(𝑠 + 𝑝2 ) … . .

Tenemos:

Tipo 0, n= 0

Tipo 1, n= 1

Tipo 2, n= 2

Expresiones del error de estado estable ess para los tipos de sistemas, cuando la señal de entrada
es paso u(t)

Tipos de Tipo 0 Tipo 1 Tipo 2


sistemas

kp Cte. ∞ ∞

ess 1 0 0
1 + 𝑘𝑝

Kp = ganancia proporcional

Kp = lim s 0 kG(s) x pd

CONTROLADOR PROPORCIONAL (P) B A

Gc(s) = K x x

K = A.B (por criterio de módulo) - p2 - p1


1
Kp = lim s 0 kG(s) , ess=
1+𝑘𝑝

CONTROLADOR PROPORCIONAL-INTEGRADOR (PI)

𝐾𝐼 𝐾(𝑠+𝑏)
Gc(s) = Kp +
𝑆
=
𝑠
x Pd
𝐴.𝐵.𝐷
K= D C B A
𝐶
x 𝛼3 o𝛽 x 𝛼2 x 𝛼1 -

- p2 -b -P1 0

Por el criterio del argumento:


𝛽 − 𝛼1 − 𝛼2 − 𝛼3 = −180º

ess = 0

CONTROLADOR PROPORCIONAL-DERIVATIV0 (PD)

Gc(s) = Kp + KDs = K(s + a)


𝐴.𝐵
K= x Pd
𝐶
Kp = lim s 0 kG(s) C B A
1
ess= o 𝛽 𝑥 𝛼2 𝑥 𝛼1
1+𝑘𝑝
a -p2 -p1
Por el criterio del argumento:

𝛽 − 𝛼1 − 𝛼2 = −180º

CONTROLADOR PROPORCIONAL-INTEGRADOR-DERIVATIVO (PID)

𝐾(𝑠+𝑎)(𝑠+𝑏)
Gc(s) = Kp + KDs + KI/s =
𝑠
𝐴.𝐶.𝐷
K=
𝐵.𝐸
x Pd

E D C B A

o 𝛽1 x 𝛼3 x𝛼2 o 𝛽2 x 𝛼1

-a -p2 -p1 –b 0

Por el criterio del argumento

𝛽1 + 𝛽2 − 𝛼1 − 𝛼2 − 𝛼3 = −180º

ess = 0
PROBLEMAS RESUELTOS SOBRE DISEÑO DE CONTROLADORES

Ejercicio Resuelto 4.1.-


25
Para la planta G(s) = diseñar un controlador que cumpla con las siguientes
s2 +7s+25

especificaciones: P.O.% <= 25%, ts2% = 1.143 seg. (condiciones dinámicas).

Solución

1º Hallar los polos dominantes Pd, que cumplan con las condiciones dinámicas
−πξ

√1−ξ2 −πξ
P. O. = e ∗ 100 ≤ 25%, luego ≤ ln 0.25 , entonces −πξ ≤ ln 0.25 √1 − ξ2
√1−ξ2

Al multiplicar por (-1) el sentido de la desigualdad cambia: πξ ≥ − ln 0.25 √1 − ξ2

(πξ)2 ≥ (1.386√1 − ξ2 )2 , entonces π2 ξ2 ≥ 1.92 − 1.92ξ2


ξ >= 0.4037
4 4
ts = ≤ 1.143 , entonces ωn ≥
ξωn 0.4∗1.143

ωn >= 8.66872
De la ecuación característica: s2 + 2ξωns + ωn2 = 0 se hallan los polos dominantes:
s2 + 2*0.4037*8.66872s + 8.668722 = 0, entonces s2 + 7s + 75.14 = 0
Las raices halladas son los polos dominantes: s = – 3.5 ± 7.93j ; es decir,
s1 = - 3.5 +7.93j , s2 = - 3.5 – 7.93j
2º Ubicar los polos dominantes en el lugar de raíces
Graficando el Lugar de raíces de Matlab se observa que estos polos pertenecen al lugar de raíces,
no hace falta acción derivativa y el controlador será un proporcional P
3º Hallar la ganancia K por el criterio del módulo en el Polo dominante:

25K
| | =1
s2 +7s+25

s2 +7s+25 (−3.5+8j)2 +7(−3.5+8j)+25 −51.25


K=| | =| |=| |
25 𝑠=𝑠1 25 25
K = 2.0

Por lo tanto el controlador P es: Gc(s) = K = 2.0

Ejercicio Resuelto 4.2.-

1
Para la planta Gp (s) = , diseñar un controlador PI que cumpla las siguientes
(s+1)(s+2)

especificaciones para una entrada escalón unitario:

P.O <= 5%, ts <= 2.1 seg, ess <= 10%.

Solución.

El sistema realimentado es:

Controlador PI: Gc(s) = KP + KI/s

1º Hallar polos dominantes que cumplan con las condiciones dinámicas:

−πξ
√1−ξ2 −πξ
P. O. = e ∗ 100 =< 5, entonces <= ln 0.05 , entonces −πξ <= ln 0.05 √1 − ξ2
√1−ξ2

Al multiplicar por (-1) el sentido de la desigualdad cambia: πξ >= − ln 0.05 √1 − ξ2

(πξ)2 >= (3√1 − ξ2 )2 , entonces π2 ξ2 >= 9 − 9ξ2

ξ >= 0.69

π π
ts = <= 2.1 , entonces ωn >=
ξωn 0.69∗2.1

ωn >= 2.168

de la ecuación característica: s2 + 2ξωns + ωn2 = 0 se halla los polos dominantes

elegimos: ξ = 0.7 y ωn = 2.17

s2 + 2*0.7*2.17s + 2.22 = 0, entonces s2 + 3s + 4.7 = 0

Entonces los polos dominantes son: – 1.5 ± 1.56j

2º Ubicar los polos dominantes en el lugar de raíces

Estos polos pertenecen al lugar de raíces, no hace falta acción derivativa.


3º Dibujar el polo dominante en el plano s y los demás polos y ceros:

4º Hallar la ganancia K por el criterio del módulo:

K
| | =1
(s+1)(s+2)

K = |s + 1||s + 2| = A ∗ B

A = |s + 1| = √(1.5 − 1)2 + (1.56)2 = 1.638

B = |s + 2| = √(2 − 1.5)2 + (1.56)2 = 1.638

K = A*B = 1.638*1.638

K = 2.683

5º Verificar que cumpla con el error en estado estacionario

1
ess =
1+kp

K 2.638
k p = lim G(s) = lim
(s+1)(s+2)
=
(0+1)(0+2)
= 1.34
s→0 s→0

1 1
ess = = = 0.427
1+kp 1+1.34

ess = 42.7% > 10% “NO cumple”

6º Como no cumple aplicamos PI

Gc(s) = KP + KI/s = K(s + b)/s

7º Dibujar el polo dominante en el plano s y los demás polos y ceros incluyendo los nuevos polos y
ceros:
8º Aplicar criterio del argumento para calcular el valor del cero b:

/KG(s)H(s) = 180° ± n360°

(s+b)
/K = 180° ± n360°
s(s+1)(s+2)

/K +/(s + b) −/s −/(s + 1) −/(s + 2) = 180° ± n360°

0 + β – α1 – α2 – α3 = – 180º

α1 = 180 – tg-1(1.56/1.5) = 133.88º

α2 = 180 – tg-1(1.56/(1.5 – 1)) = 107.77º

α3 = tg-1(1.56/(2 – 1.5) = 72.29º

entonces β – α1 – α2 – α3 = – 180º

β – 133.88 – 107.77 – 72.29 = – 180º

β = 133.94º

tg(180 – β) = 1.56/(1.5 – b), entonces tg(180 – 133.94) = 1.56/(1.5 – b)

b = –0.00332 “el valor de b no tiene que ser 0 para que no se cancele con el integrador 1/s”

9º Ajustar K por criterio del módulo:

(s+b)
|K |=1
s(s+1)(s+2)

|s||s+1||s+2| A∗B∗D
K= |s+0.0577|
=
C

A = |s| = √(1.5)2 + (1.56)2 = 2.164

B = |s + 1| = √(1.5 − 1)2 + (1.56)2 = 1.638

D = |s + 2| = √(2 − 1.5)2 + (1.56)2 = 1.638

C = |s + 0.00332| = √(1.5 − 0.00332)2 + (1.56)2 = 2.16186

K = A*B*D/C = 2.164*1.638*1.638/2.16186

K = 2.7595
10º Verificar el error en estado estacionario:

K(s+b)
G(s) = Gc (s)Gp (s) =
s(s+1)(s+2)

Como en el sistema a lazo abierto G(s) existe un polo en el origen, el sistema es tipo 1

Para una entrada escalón y tipo 1, ess = 0 < 10% “cumple”

2.7595(s+0.00332)
El controlador PI diseñado es: Gc (s) =
s

Los resultados en Matlab se muestran a continuación:

Ejercicio Resuelto 4.3.-

1
Para la planta Gp (s) = , diseñar un controlador PD que cumpla las siguientes
(s+1)(s+2)

especificaciones para una entrada escalón unitario:

P.O = 5%, ts = 1 seg, ess <= 25%.

Solución.

El sistema realimentado es:

Controlador PD: Gc(s) = KP + sKD

1º Hallar polos dominantes que cumplan con las condiciones dinámicas:

−πξ
√1−ξ2
P. O. = e ∗ 100 = 5, entonces −πξ = ln 0.05 √1 − ξ2
(πξ)2 = (3√1 − ξ2 )2 , entonces π2 ξ2 = 9 − 9ξ2

ξ = 0.69

π π
ts = = 1 , entonces ωn =
ξωn 0.69∗1

ωn = 4.553

de la ecuación característica: s2 + 2ξωns + ωn2 = 0 se halla los polos dominantes

s2 + 2*0.69*4.55s + 4.552 = 0, entonces s2 + 6.28s + 20.73 = 0

Entonces los polos dominantes son: – 3.14 ± 3.3j

2º Ubicar los polos dominantes en el lugar de raíces

Estos polos NO pertenecen al lugar de raíces, por lo tanto hace falta Acción Derivativa.

3º Aplicar PD

Gc(s) = KP + sKD = K(s + a)

4º Dibujar el polo dominante en el plano s y los demás polos y ceros:

5º Aplicar criterio del argumento para hallar el valor del cero a:

/KG(s)H(s) = 180° ± n360°

(s+a)
/K = 180° ± n360°
(s+1)(s+2)

/K +/(s + a) −/(s + 1) −/(s + 2) = 180° ± n360°

0 + β – α1 – α2 = – 180º

α1 = 180 – tg-1(3.3/(3.14-1)) = 123º

α2 = 180 – tg-1(3.3/(3.14 – 2)) = 109º

entonces β – α1 – α2 = – 180º

β – 123 – 109 = – 180º

β = 52º
tg(β) = 3.3/(a – 3.14), entonces tg(52) = 3.3/(a – 3.14)

a = 5.72

6º Ajustar K por criterio del módulo:

(s+a)
|K |=1
(s+1)(s+2)

|s+1||s+2| A∗B
K= |s+5.72|
=
C

A = |s + 1| = √(3.14 − 1)2 + (3.3)2 = 3.93

B = |s + 2| = √(3.14 − 2)2 + (3.3)2 = 3.49

C = |s + 5.72| = √(5.72 − 3.14)2 + (3.3)2 = 4.2

K = A*B/C = 3.93*3.49/4.2

K = 3.2656

7º Verificar el error en estado estacionario:

K(s+a)
G(s) = Gc (s)Gp (s) =
(s+1)(s+2)

Como en el sistema a lazo abierto G(s) no existen polos en el origen, el sistema es tipo 0

1
ess =
1+kp

K(s+5.72) 3.2656(0+5.72)
k p = lim G(s) = lim = = 9.34
s→0 s→0 (s+1)(s+2) (0+1)(0+2)

1 1
ess = = = 0.0967
1+kp 1+9.34

ess = 9.67% < 25% “cumple”

El controlador PD diseñado es: Gc (s) = 3.2656(s + 5.72)

Los resultados en Matlab se muestran a continuación:


Ejercicio Resuelto 4.4.-

1
Para la planta Gp (s) = , diseñar un controlador PID que cumpla las siguientes
(s+1)(s+2)

especificaciones para una entrada escalón unitario:

P.O <= 5%, ts <= 1 seg, ess <= 5%.

Solución.

El sistema realimentado es:

Controlador PID: Gc(s) = KP + sKD + KI/s

1º Hallar polos dominantes que cumplan con las condiciones dinámicas:

−πξ
√1−ξ2
P. O. = e ∗ 100 <= 5, entonces −πξ <= ln 0.05 √1 − ξ2

(πξ)2 >= (3√1 − ξ2 )2 , entonces π2 ξ2 >= 9 − 9ξ2

ξ >= 0.69
π π
ts = <= 1 , entonces ωn >=
ξωn 0.69∗1

ωn >= 4.553

de la ecuación característica: s2 + 2ξωns + ωn2 = 0 se halla los polos dominantes

s2 + 2*0.69*4.553s + 4.5532 = 0, entonces s2 + 6.28s + 20.73 = 0

Entonces los polos dominantes son: – 3.14 ± 3.3j

2º Ubicar los polos dominantes en el lugar de raíces

Estos polos NO pertenecen al lugar de raíces, por lo tanto hace falta Acción Derivativa.

3º Aplicar PD

Gc(s) = KP + sKD = K(s + a)

4º Dibujar el polo dominante en el plano s y los demás polos y ceros:

5º Aplicar criterio del argumento para hallar el valor del cero a:

/KG(s)H(s) = 180° ± n360°

(s+a)
/K = 180° ± n360°
(s+1)(s+2)

Como es igual al anterior ejercicio, entonces: β = 52º, a = -5.72

6º Ajustar K por criterio del módulo:

(s+5.72)
|K |=1
(s+1)(s+2)

Como es igual al anterior ejercicio, entonces: K = 3.2656

7º Verificar el error en estado estacionario:

K(s+a) 3.2656(s+5.72)
G(s) = Gc (s)Gp (s) = =
(s+1)(s+2) (s+1)(s+2)

Como es igual al anterior ejercicio, entonces:

ess = 0.0967

ess = 9.67% > 5% “NO cumple”


8º Aplicar PID

Gc(s) = KP + sKD + KI/s = K(s + a)(s + b)/s

9º Dibujar el polo dominante en el plano s y los demás polos y ceros:

10º El valor de a es el calculado con PD:

a = -5.72, su ángulo β = 52º

11º Aplicar criterio del argumento para hallar el valor del cero b:

/KG(s)H(s) = 180° ± n360°

(s+a)(s+b)
/K = 180° ± n360°
s(s+1)(s+2)

/K +/(s + a) +/(s + b) −/s −/(s + 1) −/(s + 2) = 180° ± n360°

0 + β1 + β2 – α1 – α2 – α3 = – 180º

β1 = 52º

α1 = 180 – tg-1(3.3/3.14) = 133.578º

α2 = 180 – tg-1(3.3/(3.14-1)) = 122.963º

α3 = 180 – tg-1(3.3/(3.14 – 2)) = 109.06º

entonces β1 + β2 – α1 – α2 – α3 = – 180º

52 + β2 – 133.578 – 122.963 – 109.06 = – 180º

β2 = 133.6º

tg(180 – β2) = 3.3/(3.14 – b), entonces tg(180 – 133.6) = 3.3/(3.14 – b)

3.14 – b = 3.3/1.05

b = – 0.00255 “el valor de b no tiene que ser 0 para que no se cancele con el integrador 1/s”
12º Ajustar K por criterio del módulo:

(s+a)(s+b)
|K |=1
s(s+1)(s+2)

|s||s+1||s+2| A∗C∗D
K=| =
s+5.72||s+0.00255| B∗E

A = |s| = √(3.14)2 + (3.3)2 = 4.555

C = |s + 1| = √(3.14 − 1)2 + (3.3)2 = 3.933

D = |s + 2| = √(3.14 − 2)2 + (3.3)2 = 3.491

B = |s + 5.72| = √(5.72 − 3.14)2 + (3.3)2 = 4.189

E = |s + 0.00255| = √(3.14 − 0.00255)2 + (3.3)2 = 4.553

K = A*C*D/(B*E) = (4.555*3.933*3.491)/(4.189*4.553)

K = 3.279

13º Verificar el error en estado estacionario:

K(s+a)(s+b)
G(s) = Gc (s)Gp (s) =
s(s+1)(s+2)

Como en el sistema a lazo abierto G(s) existe un polo en el origen, el sistema es tipo 1
Para una entrada escalón y tipo 1 el error en estado estacionario es: ess = 0
ess = 0% < 5% “cumple”
3.279(s+5.72)(s+0.00255)
Por lo tanto el controlador PID diseñado es: Gc (s) =
s

Los resultados en Matlab se muestran a continuación:

También podría gustarte