Professional Documents
Culture Documents
PRÁCTICO Y AVANZADO
F Modelado de Procesos
F El Sistema de Medición
F Elementos Finales de Control
F Control PID SISO
F Estrategias de Control PID
F Sı́ntesis de Controladores SISO y MIMO
F Control Predictivo y Control Fuzzy
F Programas fuente en MATLAB
II
ISBN
Queda rigurosamente prohibida la reproducción total o parcial de esta obra por cualquier
medio o procedimiento, sin la autorización escrita del propietario del “Copyright”.
A mis Profesores
Índice general
III
Prefacio IX
Abreviaturas XI
1. Introducción 1
1.1. Sistema de Control a Lazo Cerrado . . . . . . . . . . . . . . . . . . . . 1
1.2. Sistema de Control a Lazo Abierto . . . . . . . . . . . . . . . . . . . . 6
1.3. Dinámica Lineal de los Elementos Ideales . . . . . . . . . . . . . . . . 7
2. El Proceso a Controlar 11
2.1. Procesos con Comportamiento Proporcional . . . . . . . . . . . . . . . 11
2.2. Procesos de Primer Orden . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.3. Procesos de Segundo Orden . . . . . . . . . . . . . . . . . . . . . . . . 18
2.4. Procesos Integrales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.5. Procesos con Tiempo Muerto . . . . . . . . . . . . . . . . . . . . . . . 21
2.6. Procesos de Orden Superior . . . . . . . . . . . . . . . . . . . . . . . . 22
2.7. El Motor DC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.8. Modelo MIMO del Proceso Tanque Cerrado . . . . . . . . . . . . . . . 28
2.8.1. Descripción del Proceso . . . . . . . . . . . . . . . . . . . . . . 28
2.8.2. Modelo Dinámico No Lineal del Proceso . . . . . . . . . . . . . 30
2.8.3. Modelo Dinámico de Lagrange del Proceso . . . . . . . . . . . 33
2.8.4. Modelo Dinámico Lineal del Proceso . . . . . . . . . . . . . . . 33
2.9. Respuesta Transitoria de los Procesos . . . . . . . . . . . . . . . . . . 34
2.9.1. Respuesta al Escalón: Método de la Tangente . . . . . . . . . . 34
2.9.2. Método del 28.3 % y 63.2 % . . . . . . . . . . . . . . . . . . . . 36
2.9.3. Otras Respuestas al Escalón y al Impulso . . . . . . . . . . . . 36
2.10. Problemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3. El Sistema de Medición 45
3.1. Caracterı́sticas de los Sensores . . . . . . . . . . . . . . . . . . . . . . 45
3.2. Sensores de Medición . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
B
. ibliografı́a 315
Indice
.́ alfabético 318
Prefacio
Introducción
En este Capı́tulo se hace un breve introducción sobre los sistemas de control a lazo
cerrado y a lazo abierto, describiendo sus componentes e incluyendo ejemplos ilustrativos
para reforzar la comprensión de los conceptos. Tales componentes son: el proceso cuya
variable de salida se desea controlar, el sistema de medición que sensa y transmite la
variable a controlar, el controlador que procesa la desviación entre el valor de la variable
a controlar con respecto a una señal deseada con el propósito de generar una señal de
control, y el elemento final de control que recibe la señal generada por el controlador
para efectuar cambios en el proceso, con la finalidad de reducir a cero la desviación
previamente descrita.
Este Capı́tulo también se ocupa del modelado lineal de los elementos ideales con
los siguientes propósitos: describir la dinámica de tales elementos y familiarizarse con el
manejo de unidades. Las unidades de medida usadas en esta publicación corresponden al
Sistema Internacional de Unidades (SI).
El Proceso
El bloque proceso representa un cambio fı́sico o quı́mico de la materia. Ası́ tenemos
los procesos de calefacción, enfriamiento, mezcla, fundición, separación, destilación,
llenado y vaciado, evaporación, cocción, entre otros. Los instrumentos son dispositivos
que se emplean en los procesos para monitorearlos y controlarlos, lo cual se logra
mediante la medición de algunas de sus caracterı́sticas, también denominadas los
parámetros del proceso.
Algunos ejemplos de caracterı́sticas del proceso son: capacitancia, inductancia,
resistencia, voltaje, corriente, peso, presión, aceleración, sonido, color, nivel, tempe-
ratura, humedad, densidad, contenido de humedad, viscocidad, dimensión, concen-
tración de pH, flujo, velocidad, espesor, gravedad especı́fica, entre otros. La variable y
mostrada en la Fig. 1.4, conocida también como PV (Process Variable), es la variable
2 Introducción
Controlador de
realimentación Disturbios
SP MV PV
r e Algoritmo u Elemento final y
de Control de control Proceso
Sensor más
Transmisor
Sistema de
medición
Fig. 1.1: Sistema de control a lazo cerrado. SP: Set Point; MV: Manipulated Variable;
PV: Process Variable.
controlada o salida del proceso. En esta publicación usaremos con mayor frecuencia
el término flujo en lugar de sus sinónimos caudal o gasto.
El Sistema de Medición
Es común que un proceso posea varios parámetros que necesitan ser monitoreados
simultáneamente. Esto se logra por lo general, empleando un sistema de medición
para cada parámetro (ver Fig. 1.1). Cada sistema de medición consta de un sensor
que proporciona la variable medida, y de un transmisor que cambia dicha variable en
una señal estandarizada que pueda ser transmitida. La variable medida representa
entonces la condición actual de la variable controlada y.
En algunos casos, la variable medida y la variable controlada es la misma variable.
Por ejemplo, la medición y control de la variable velocidad de un motor DC (Direct
Current). Sin embargo, en otros casos, la variable medida y la variable controlada
pueden ser diferentes. Este es el caso del control de nivel de un lı́quido en un tanque,
que puede ser realizado midiendo la presión en el fondo del tanque. Es decir, en este
caso medimos presión para controlar nivel.
Señales estandarizadas que se emplean en el control de procesos son: 4 a 20 mA
(miliamperio), 3 a 15 psi (libra por pulgada cuadrada) y 0.2 a 1 bar. Otros rangos de
señales también son empleados: 0 a 10 V (volt), − 10 a + 10 V, etc. El transmisor
también es conocido como convertidor, transductor, y en general como un acondi-
cionador de señales. Si fuera necesario, un acondicionador de señal se puede diseñar
empleando opamps (amplificadores operacionales) en su implementación.
En muchos casos, el sensor y el transmisor son parte de un solo instrumento. Los
sistemas de medición actuales también incluyen hardware para almacenar algoritmos
y rutinas de cálculo, y para el procesamiento de señales digitales empleando protoco-
los industriales de comunicación. Los sistemas de medición inteligente reciben dicha
denominación, por que poseen la capacidad de procesamiento de señales.
En general, los sistema de medición se aplican a los procesos para: indicar el
valor de una variable, registrar y almacenar los valores de una variable, controlar una
variable, fijar alarmas en los casos que una variable alcanza un determinado valor,
y como enclavamiento; es decir, haciendo que una variable cause una acción cuando
alcance un valor previamente establecido.
1.1 Sistema de Control a Lazo Cerrado 3
El Controlador
Para lograr control en la Fig. 1.1, se requiere que el valor de la variable medida
y tienda a ser el valor de la señal de referencia r o SP (Set Point), que es la señal
deseada de la variable controlada. En otras palabras, en los sistemas de control a lazo
cerrado, las señales r e y son comparadas. La diferencia entre ellas es la señal de error
e, llamada también señal de desviación. Cuando existe una desviación, es necesario
actuar para eliminarla. Esta acción incluye el ajuste y la acción de una señal o fuerza
de control u, denominada también la variable manipulada MV (Manipulated Vari-
able), para minimizar el error; es decir, para hacer que la señal y siga a r, cumpliendo
ciertas especificaciones de diseño (sección 5.2).
Por ejemplo, la velocidad de un carro se controla comparando el valor indicado
por el velocı́metro (la variable medida) con el valor lı́mite de la velocidad (la variable
deseada o SP). Si existe una desviación, se tiene que ajustar mediante el pedal del
acelerador una cierta cantidad de gas (la variable manipulada MV) para cambiar la
velocidad (la variable controlada o PV).
El bloque denominado controlador (ver la Fig. 1.1), es el que procesa la señal de
error e empleando un algoritmo de control, para generar la ley de control u que va
hacia el elemento de control final. El agregado de la palabra realimentación, que en
general no es necesario, sólo es para indicar en este caso que tal controlador forma
parte de un sistema de control realimentado.
La función del controlador mostrado en la la Fig. 1.1 se logra llevando a cabo
tres pasos. El primero consiste en recopilar información acerca de la variable del
proceso que se desea controlar. Luego, usar convenientemente dicha información para
tomar una decisión con relación a la condición del proceso. Finalmente, tomar una
acción basada en tal decisión, empleando para ello el elemento de control final. Es
importante anotar que para mantener el control, la recopilación de información debe
de ser continua y permanentemente evaluada. Estas acciones aseguran que la variable
controlada se mantenga en el valor deseado previamente establecido.
Considere el sistema de control de temperatura que posee la terma eléctrica de una
vivienda, en donde la acción de control se realiza conectando o desconectando a la red
la resistencia de calefacción para aumentar o disminuir la temperatura del agua en la
terma, correspondientemente. En un primer paso, un sensor de temperatura detecta
la temperatura actual y la compara con una temperatura de referencia previamente
establecida. Como resultado de la comparación, se decide que es necesario cambiar la
condición del proceso: aumentar o disminuir la temperatura. Finalmente, se toma la
acción correspondiente: conectar la resistencia a la red para aumentar la temperatura
del agua, o desconectarla para disminuirla.
El control se puede realizar en forma manual o en forma automática. En el control
manual, la decisión la realiza la persona, mientras que en el control automático la
realiza un dispositivo. La terma es un caso de control automático de la temperatura,
mientras que la conducción de un carro para mantenerlo a una velocidad constante,
es un caso de control manual.
se dirige hacia el elemento final de control (EFC), el cual sı́ posee la capacidad de
efectuar cambios en el proceso con el propósito de disminuir el error e = r − y.
Por consiguiente, el EFC es el hardware que implementa la decisión tomada por el
controlador.
La fuente de energı́a común del EFC puede ser eléctrica, neumática e hidráulica.
Ejemplos de EFC eléctricos son los motores AC y DC, motores paso a paso, válvu-
las de control motóricas, solenoides, relés, entre otros. Entre los EFC hidráulicos y
neumáticos tenemos: válvulas neumáticas, pistones hidráulicos y neumáticos, mo-
tores hidráulicos y neumáticos, etc. Dependiendo del tipo de EFC, en muchos casos
será necesario incluir un convertidor (o transmisor) de señal entre el controlador y el
EFC, tal como se muestra en el ejemplo 1.1.
Los Disturbios
Además de la variable manipulada, otros factores pueden afectar la variable con-
trolada. Por ejemplo, la velocidad del carro puede ser afectada por la resistencia del
viento y por la calidad de la pista. Por otro lado, La temperatura del agua en la terma
puede ser afectada por un mal aislamiento del tanque o por la cambiante temperatura
del entorno. En control de procesos, estos factores se denominan disturbios.
Para compensar la acción de los disturbios, se requiere de una continua circulación
de la información sobre el proceso. En el sistema de control a lazo cerrado de la Fig.
1.1, la información fluye constantemente hacia los instrumentos. Tal información es
denotada como realimentación. Todos los instrumentos y dispositivos que intervienen
en el control de un proceso son referidos como el lazo de control realimentado.
Ejemplo 1.1
Solución: Ver Fig. 1.2(b).√Observar que se requiere un primer transmisor para re-
alizar la operación F = C ∆P , donde C es una constante de proporcionalidad, y
luego convertir esta operación en una señal de corriente estandarizada (4 a 20 mA).
El signo raı́z cuadrada a un costado del transmisor indica esta operación. Notar tam-
bién que ha sido necesario incluir un segundo transmisor para convertir el rango de
4 a 20 mA a otro de 3 a 15 psi, debido a que el EFC, la válvula de control, trabaja
con señal neumática estandarizada.
Ejemplo 1.2
CONTROLADOR
TRANSMISOR TRANSMISOR
ACTUADOR
F
P1 P2 VÁLVULA
PLACA DE ORIFICIO NEUMÁTICA
(a)
4 − 20 mA 4 − 20 mA
SP
CONTROLADOR
4 − 20 mA PV MV
TRANSMISOR TRANSMISOR
ACTUADOR 3 − 15 psi
P
PROCESO F
P1 P2 EFC: VÁLVULA
SENSOR: PLACA DE CONTROL
DE ORIFICIO NEUMÁTICA
(b)
Fig. 1.2: (a) Sistema de control de flujo. (b) Solución al ejercicio 1.1.
eléctrica porque trabaja con una señal de 4 a 20 mA. Esta señal alimenta al motor
DC. El movimiento de rotación del eje del motor se convierte en un movimiento de
traslación para hacer desplazar el eje de la válvula de control.
PV
Sensor 4−20 mA
(ohm) Transmisor
MV Controlador
4−20 mA SP
Producto 4−20 mA
Agua caliente
Solución: El flujo del producto que ingresa al tanque constituye la señal de disturbio.
Mientras más brusca sea la variación de este flujo, mayor será la dificultad para que
la señal PV siga a la señal SP.
6 Introducción
Disturbios
SP MV PV
r y Sensor más
Controlador u Elemento final
anticipativo de control Proceso Transmisor
Sistema de
Medición
Fig. 1.4: Sistema de control a lazo abierto.
Ejemplo 1.3
TRANSPORTE
DESFOGUE
V4 V1
V5 V2
SOPLADO ENTRADA DE LT
ADICIONAL PRODUCTO
PT
SOPLADO
INFERIOR
V3
Fig. 1.5: Tanque del ejemplo 1.3 para el soplado de un producto. LT: Level Trans-
mitter; PT: Pressure Transmitter; V1, ... V5: válvulas.
Almacenador
capacitivo Masa f = M dv
dt E = 12 M v 2
Almacenador Momento
capacitivo de Inercia T = J dω
dt E = 12 Jω 2
Almacenador Capacitancia
capacitivo fluidica q21 = Cf dpdt21 E = 12 Cf p22
Almacenador Capacitancia
capacitivo térmica q = Ct dT
dt E = Ct T
Disipador Resistencia
1 1 2
de energı́a eléctrica i= R v21 P= R v21
Disipador Amortiguador
de energı́a traslacional f = Bv21 2
P = Bv21
Disipador Amortiguador
de energı́a rotacional T = Bω21 2
P = Bω21
Disipador Resistencia
1 1 2
de energı́a fluidica q= Rf p21 P= Rf p21
Disipador Resistencia
1 1
de energı́a térmica q= Rt T21 P= Rt T21
1.3 Dinámica Lineal de los Elementos Ideales 9
L K ω1 T T ω2 p1
i f f K I
v v2 q p2
v1 v2 θ1
θ2
(a) (b) (c) (d)
J ω T
C
i M f
v1 v2 v
p1
Cf q Ct
T
q1 p2 q2
(h) (i)
f ω1 T ω
i R B f B T 2
v1 v2
v1 v2
(j) (k) (l)
Rf Rt
p1 q p2 T1 T2
q
(m) (n)
Fig. 1.8: Elementos ideales disipadores de energı́a. (j) Resistencia eléctrica. (k) Amor-
tiguador traslacional. (l) Amortiguador rotacional. (m) Resistencia fluidica. (n) Re-
sistencia térmica.
Capı́tulo 2
El Proceso a Controlar
donde Kp es la ganancia proporcional del proceso. Los dos siguientes procesos poseen
comportamiento proporcional.
La respuesta al escalón (su curva de reacción a lazo abierto) del proceso flujo se
ilustra en la Fig. 2.1(b). Considérese que para un tiempo t1 , el flujo y1 que pasa por
la válvula es A1 vρ, donde A1 es la sección transversal correspondiente a la abertura
u1 de la válvula, v es la velocidad del flujo considerada constante y ρ es la densidad
lı́quido, también asumida constante. Para un tiempo t2 , incrementamos la abertura de
la válvula de u1 a u2 . Consecuentemente, el flujo aumenta de y1 al valor y2 = A2 vρ,
sin experimentar retardo, donde A2 es la sección transversal correspondiente a la
abertura u2 . La ganancia proporcional Kp del proceso flujo resulta constante:
∆y y2 − y 1
Kp = = (2.2)
∆u u2 − u 1
u
u
2
∆u
FI
u u1
y t1 t2 t
Válvula y
de control y
(a) 2 ∆y
y
1
t1 t2 t
(b)
Fig. 2.1: (a) Proceso flujo. (b) Respuesta al escalón (curva de reacción a lazo abierto)
del proceso flujo.
Ejemplo 2.1
∆y y2 − y 1 10 − 0 L
Kp = = = =1 ♣
∆u u2 − u 1 10 − 0 min.mm
2.2 Procesos de Primer Orden 13
Silo de
material
u Banda transportadora
Caja de
reducción y
Motor
q
C
S h
Rebose
q
D
Fig. 2.3: Proceso tanque cerrado con orificio de salida en la base y tuberı́a de rebose.
h
Rh = (2.7)
qD
La curva de reacción a lazo abierto del nivel h se determina resolviendo (2.8) o (2.10).
Vamos a intentar tres soluciones. Para una primera solución, descomponemos (2.10)
en fracciones parciales:
" #
Rh A 1 1
h(s) = = Rh A − 1
s(SRh s + 1) s (s + SR )
h
Notar que estos valores coinciden con los hallados empleando (2.10).
La segunda forma de hallar h(t) es empleando matemática simbólica, tal como se
ilustra en el programa nivel1simb.m listado abajo:
% nivel1simb.m DETERMINACIÓN DE h(t) USANDO TRANSFORMADA INVERSA DE LAPLACE
clear all; close all; clc; syms s Rh A S;
h=ilaplace(Rh*A*(1/s - 1/(s + 1/(S*Rh)))); pretty(simplify(h))
La tercera forma de hallar h(t) es mediante un programa en MATLAB, el cual tam-
bién grafica la curva de reacción. Este programa requiere la ecuación de diferencias
del proceso nivel. Para ello se debe de discretizar la ecuación de estado dada en (2.8)
como sigue:
dh ∼ h(k + 1) − h(k) 1 1
= =− h(k) + qC (k)
dt T Rh S S
1 1
h(k + 1) = h(k) + T − h(k) + qC (k)
Rh S S
1 1
h=h+T − h + qC
Rh S S
donde k = t/T es el tiempo discreto y T es el tiempo de muestreo. La última notación
es más conveniente para programación en tiempo real. Ejecutar el programa curvah.m
para obtener la curva de reacción de la Fig. 2.4.
16 El Proceso a Controlar
11
10.5
10
qC [L/h]
9.5
8.5
0 50 100 150 200 250 300 350 400 450 500
TIEMPO [s]
0.4
0.3
NIVEL [m]
0.2
0.1
0
0 50 100 150 200 250 300 350 400 450 500
TIEMPO [s]
Ti
q
T
Tabla 2.2: Parámetros y variables del proceso temperatura en un tanque con agitador.
To (s) 1 V Cv
= τ= (2.13)
Ti (s) τs + 1 qCp
La curva de reacción del proceso con Ti (s) = A/s, la cual es semejante al gráfico
inferior de la Fig. 2.4, posee la forma:
t
To (t) = A (1 − e− τ )
C1 C2
R1 C1 R2 C2
Vo
Vi
Vi Vx
Seguidor de voltaje Opamp Opamp
inversor inversor
Tanques en Cascada
La Fig. 2.7 muestra dos tanques unidos por una tuberı́a. Los parámetros y va-
riables de este proceso se describen en la Tabla 2.3. Las ecuaciones dinámicas que
gobiernan este proceso son:
h1 − h 2 dh1
q1 = C1 = q − q1
R1 dt
h2 dh2
q2 = C2 = q1 − q2
R2 dt
Pasando al dominio de Laplace con condiciones iniciales nulas, se obtiene:
h1 (s) − h2 (s)
q1 (s) = C1 sh1 (s) = q(s) − q1 (s)
R1
h2 (s)
q2 (s) = C2 sh2 (s) = q1 (s) − q2 (s)
R2
Si la entrada al proceso es q(s) y la salida es q2 (s), entonces:
q2 (s) 1
= 2
q(s) R1 C1 R2 C2 s + (R1 C1 + R2 C2 + R2 C1 )s + 1
2.3 Procesos de Segundo Orden 19
Tabla 2.3: Parámetros y variables del proceso temperatura en un tanque con agitador.
h1 h2
R1 R2
q1 q2
Resorte K u
uo
Bobina t
uo u M Escala y
Corriente yo
y y
yo
t
Amortiguador B
dy
A =u
dt
u(t)
Flujo u(t)
y(t)
uo
t
t1
y(t)
y(t)
yo
Bomba t
t1
Satélite
El satélite mostrado en la Fig. 2.10 se puede modelar como:
d2 θ d2 θ
J = J θ̈ = u θ̈ =
dt2 dt2
donde J es el momento de inercia del satélite, θ es el ángulo de inclinación y u es
el torque generado por los impulsores para corregir el ángulo de inclinación. En el
dominio de Laplace, con condiciones iniciales nulas, el modelo del satélite toma la
forma: Js2 θ(s) = u(s). Luego, la FT del satélite es un doble integrador:
θ(s) Kp 1
= 2 Kp =
u(s) s J
En forma matricial:
ẋ1 0 1 x1 0 x1
= + 1 u y = [1 0]
ẋ2 0 0 x2 J x2
J
u
L u(t)
u
Valvula de cuchilla
u+ u
uo
t
t0 t1
y(t)
r
Tt
y
Motor
Velocidad w
v = wr
y
o
t t1
t
u 0
constante
u 1(t)
u 1(t)
[u 1]o
L t
Flujo u1 (t)
u2(t)
u 2(t)
Flujo y(t) a Sensor [u 2]o
una velocidad de PH t
v constante
Flujo u2 (t)
Tt
y(t)
y(t)
yo
t
Rebose q
Agua fría T
qC
TC TC
ρC
Camisa de
Producto enfriamiento
q
Ti Tanque metálico
ρ Tm
(a) ti
K6
K1
tc tc t
i 1 1 1
K5 τ 3 s+1 K4 τ 2 s+1 t K2 τ 1 s+1
m
K7 K3
q
c (b)
dT
qρCp Ti − hi Ai T + hi Ai Tm − qρCp T = V ρCv (2.14)
dt
La ecuación (2.14) también es válida para el estado estacionario:
dT
qρCp T i − hi Ai T + hi Ai T m − qρCp T = V ρCv (2.15)
dt
dt
qρCp ti − hi Ai t + hi Ai tm − qρCp t = V ρCv (2.16)
dt
Pasando (2.16) al dominio de Laplace y operando, se obtiene:
K1 K2
t(s) = ti (s) + tm (s) (2.17)
τ1 s + 1 τ1 s + 1
2.6 Procesos de Orden Superior 25
qρCp hi A − i V ρCp
K1 = K2 = τ1 =
qρCp + hi Ai qρCp + hi Ai qρCp + hi Ai
El balance de energı́a para la pared del tanque y su correspondiente estado esta-
cionario se formulan como:
dTm
hi Ai (T − Tm ) − ho Ao (Tm − Tc ) = Vm ρm CVm (2.18)
dt
dT m
hi Ai (T − T m ) − ho Ao (T m − T c ) = Vm ρm CVm (2.19)
dt
Sabiendo que tc = Tc − T c , restando (2.18) de (2.19) se obtiene:
dtm
hi Ai (t − tm ) − ho Ao (tm − tc ) = Vm ρm CVm
dt
K3 K4
tm (s) = t(s) + tc (s) (2.20)
τ2 s + 1 τ2 s + 1
hi Ai ho Ao V m ρ m C vm
K3 = K4 = τ2 =
hi Ai + h o Ao hi Ai + h o Ao hi Ai + h o Ao
El balance de energı́a en la camisa de enfriamiento produce:
dTc
Qc ρc Cp Tci + ho Ao (Tm − Tc ) − Qc ρc Cp Tc = Vc ρc Cv (2.21)
dt
La ecuación (2.21) es no lineal debido a los productos Qc Tci y Qc Tc , los cuales se
pueden linealizar siguiendo el procedimiento de la subsección A.6.1, ejemplo A.49,
sabiendo que: qc = Qc − Qc . Esto es:
Q c Tc i = Q c T c i + T c i qc + Q c tc i
Q c Tc = Q c T c + T c q c + Q c t c (2.22)
Reemplazando las ecuaciones de (2.22) en (2.21) se obtiene:
dTc
ρc Cp (Qc T ci +T ci qc +Qc tci )+ho Ao (Tm −Tc )−ρc Cp (Qc T c +T c qc +Qc tc ) = Vc ρc Cv
dt
(2.23)
En el estado estacionario todas las variables residuales son nulas. Por consiguiente,
(2.23) toma la forma:
dT c
ρc Cp Qc T ci + ho Ao (T m − T c ) − ρc Cp Qc T c = Vc ρc Cv (2.24)
dt
Restando (2.24) de (2.23) y pasando la resultante al dominio de Laplace se obtiene:
K5 K6 K7
tc (s) = tc i + tm + qc (2.25)
τ3 s + 1 τ3 s + 1 τ3 s + 1
Q c ρc C p ho Ao
K5 = h o A o + Q c ρc C p K6 =
ho Ao h o A o + Q c ρc C p
ρc Cp (T c − T ci ) Vc ρc C p
K7 = τ3 =
h o A o + Q c ρc C p h o A o + Q c ρc C p
La Fig. 2.13(b) muestra el diagrama de bloques del proceso construido con las ecua-
ciones (2.17), (2.20) y (2.25).
26 El Proceso a Controlar
2.7. El Motor DC
La Fig. 2.14(a) muestra el circuito equivalente de un motor DC (Direct Current),
donde Rf , Lf , If y Vf son la resistencia, la inductancia, la corriente y el voltaje de
campo respectivamente, Ra , La , Ia y Va son la resistencia, la inductancia, la corriente
y el voltaje de armadura respectivamente, Tm , TL y Td son el torque motor, el torque
de carga y el torque de disturbio respectivamente, Km es la constante de motor, Kb
es la constante contraelectromotriz, ω es la velocidad angular, θ es la posición angular
del eje, J es el momento de inercia del motor más carga y B es la constante de fricción
del motor más carga.
Va
Ra
Rf La
Vf Lf Vb
J
If B
Ia ω
θ
(a)
Motor más
Campo carga
T
d
Vf 1 If Tm 1 ω 1 θ
Km
Rf Lf s TL Js B s
(b)
Motor más
Armadura Td carga
Va Im 1 Tm 1 ω 1 θ
Km
Ra L as TL Js B s
Vb
Kb
(c)
Fig. 2.14: (a) Circuito equivalente del motor DC. (b) Motor DC controlado por campo.
(c) Motor DC controlado por armadura.
θ(s) Km
Gp (s) = = (2.26)
Vf (s) s(Js + B)(Lf s + Rf )
θ(s) ∼ K
Gp (s) = = (2.27)
Vf (s) s(τ s + 1)
ω(s) ∼ K J Km
Gp (s) = = τ= K= (2.28)
Vf (s) τs + 1 B Rf B
θ(s) Km
Gp (s) = = (2.30)
Va (s) s[(Ra + La s)(Js + B) + Kb Km ]
θ(s) ∼ K
Gp (s) = = (2.31)
Va (s) s(τ s + 1)
ω(s) ∼ K Km Ra J
Gp (s) = = ; K= ; τ= (2.32)
Va (s) τs + 1 Ra B + Kb Km Ra B + Kb Km
Notar que tanto para el motor controlado por campo como por armadura, las FTs
para θ y para ω dadas en (2.28) y (2.31) poseen la misma estructura cuando se
desprecia ya sea Lf o La .
Tabla 2.5: Parámetros, variables y sı́mbolos del proceso tanque con agua.
∆p = ρD gh
PT
LT= Transmisor de Nivel
TT = Transmisor de Temperatura
TT
PT= Transmisor de Presión
FT= Transmisor de Flujo
LT
Rebose
Drenaje
FT
Agua Caliente
FT
Agua Fría
una relación igual a 0.41 y E es una constante de corrección del valor del flujo debido
a consideraciones geométricas, el cual se expresa como:
E = (1 − β 4 )−1/2
ΦT = −ΦD + ΦC + ΦH (2.39)
DENSIDAD Kg/m3
1005
1000
995
990
985
980
0 10 20 30 40 50 60
TEMPERATURA ° C
ΦC = C p ρC θ C qC
ΦH = C p ρH θ H qH
√
Φ D = C p ρD θ q D = C p ρD θ a h (2.40)
Los parámetros que aparecen en (2.40) se describen en la tabla 2.5. Observar que se
asume un valor constante para el calor especı́fico del agua Cp . La ecuación de estado
de la variable de estado temperatura θ se obtiene despejando dθ dt = θ̇ de (2.39):
a √ ρC θ C qC ρH θ H qH
θ̇ = − θ h+ + (2.41)
Ah ρD A h ρD A h
Definamos las siguientes fuerzas de control o variables manipuladas: u1 = qC ,
u2 = qH y las siguientes variables de estado: x1 = h, x2 = θ y juntando las ecuaciones
(2.38) y (2.41), la ecuación de estado que describe la dinámica del proceso tanque
cerrado con agua se formula como:
ẋ = f (x, u) (2.42)
ẋ1 ḣ x1 u1 qC
ẋ = = x= u= =
ẋ2 θ̇ x2 u2 qD
√
" # − Aa x1 + A1 u1 + A1 u2
f1
f= =
f2 a x ρ θ u ρ θ u
− A √x21 + ρCD AC x11 + ρHD AH x12
Dado que las variables de estado son las variables medidas del proceso, entonces la
ecuación de salida posee la siguiente expresión:
y = Cx (2.43)
2.8 Modelo MIMO del Proceso Tanque Cerrado 33
y1 x1 1 0
y= = C=
y2 x2 0 1
Por consiguiente:
√
1 1 u1 A 0 ẋ1 a x1
= + √
ρc θ C ρH θ H u2 0 ρD Ax1 ẋ2 ρD a x 1 x 2
u = P ẋ + d (2.44)
1 ρH θH A −ρD Ax1
P=
(ρH θH − ρC θC ) −ρC θC A ρD Ax1
√ √
1 ρH θ H a x 1 − ρ D a x 1 x 2
d= √ √
(ρH θH − ρC θC ) −ρC θC a x1 + ρD a x1 x2
ẋ = Ax + Bu y = Cx (2.45)
a
∂f1 ∂f1 − 2A√ x
0
∂x1 ∂x2 1
A= =
ax ρC θC u1 ρH θ H u 2
∂f2 ∂f2 √2 − ρD Ax21
− ρD Ax21
− A√ax1
∂x1 ∂x2 2A x31
∂f1 ∂f1 1 1
∂u1 ∂u2 A A
1 0
B= = C=
∂f2 ∂f2 ρC θ C u 1 ρH θ H 0 1
∂u1 ∂u2 ρD Ax1 ρD Ax1
y(s) Kp y1 − y 0
Gp (s) = = eτ s Kp = (2.46)
u(s) (T s + 1) u1 − u 0
u y
Proceso
u1 autoregulado y
1
u KP y
e τs P.T.
Ts + 1 y0
u0
τ
t t1 t t t1 T t
0 0
Ejemplo 2.2
El segundo modelo dinámico se refiere a la ecuación (2.47). Con los datos propor-
cionados en el ejemplo se obtiene: τ /T = 0.217. Empleando la Tabla 2.6 se puede
determinar: n = 3 y Tn /T = 0.270, lo que implica: Tn = 2.484 s. La FT resulta:
y(s) Kp 20
G(s) = = =
u(s) (Tn s + 1)n (2.484s + 1)3
La ganancia normalizada Kpn se determina de:
600−400
1000−0 0.2
Kpn = 20−10 = = 0.4
40−0
0.5
n 2 3 4 5 6 7 8 9 10
τ /T 0.104 0.218 0.320 0.410 0.493 0.591 0.641 0.709 0.775
Tn /T 0.368 0.270 0.224 0.195 0.175 0.151 0.148 0.140 0.132
Caso Especial
Para el caso especial:
0 < τ /T < 0.104
la dinámica del proceso autoregulado se puede aproximar mediante la siguiente FT
de segundo orden:
Y (s) KP y1 − y 0
G(s) = = KP = (2.48)
U (s) (T1 s + 1)(T2 s + 1) u1 − u 0
donde T1 y T2 son dos constantes de tiempo que se relacionan mediante la ecuación:
T1 = kT2 k>1
Ejemplo 2.3
Y (s) KP 10
G(s) = = =
U (s) (T1 s + 1)(T2 s + 1) (3.85s + 1)(7.7s + 1)
k 1 2 3 4 5 6 7 8 9
τ /T 0.094 0.090 0.085 0.080 0.075 0.069 0.064 0.058 0.053
T1 /T 0.238 0.175 0.140 0.120 0.107 0.097 0.088 0.081 0.074
u t 63.2%
y
t 28.3
u1 Proceso y
autoregulado 1
∆u
u KP y 0.632 ∆y ∆y
u0 e τs
Ts + 1 y0
0.283 ∆ y
t t1 t
0 t t1 t
0
2 4
1.5 0.2
Amplitude
Amplitude
2 0.2
1
0
0.5
1.8
1.8
0 −2
0 5 10 0 5 10
Time (sec) Time (sec)
2 4
1.5 0.2
Amplitude
Amplitude
2 0.2
1
0
0.5
1.8
1.8
0 −2
0 5 10 0 5 10
Time (sec) Time (sec)
u Proceso
no autoregulado y
A u y
Kp
e τs
s
τ R = Kp τ R t
τ
2.10. Problemas
Problema 2.1 Amplificador con Opamps
Rf R
Ri R
Vo
La Fig. 2.23 muestra una turbina de agua unido a un generador eléctrico. De-
mostrar que:
M (s) Kp
=
ω(s) Ts + 1
donde M (s) es el momento rotacional generado por la turbina gracias a la acción
del flujo de agua, ω(s) es la velocidad angular del generador y T su correspondiente
constante de tiempo. Asumir conocido cualquier otro parámetro necesario.
40 El Proceso a Controlar
Proceso FT Proceso FT
Kp
Proporcional (P) Kp Primer orden T s+1
Kp Kp
Integral (I) s Segundo orden (T1 s+1)(T2 s+1)
(primera forma)
Kp Kp
Doblemente s2
Segundo orden (T s+1)2
integral (segunda forma)
2
1 ωn
Proporcional Kp 1 + Ti s Segundo orden s2 +2ζωs+ωn
2
Generador
eléctrico
Turbina
Entrada
de agua
M
ω
Desague
Pi
R
Q
Po
C
ρ
x
K v
B fK M u
fB
estado y de salida del proceso. (b) Determine el modelo de Lagrange del proceso.
e1
+
u1
+
r1
R1 Y1
P1 y1
−
− K1 u2 B1
+
+
r2
R2 Y2
P2
y
2
− −
K2 B2
e2
Fig. 2.26: Plataformas acopladas.
V1
# ## ## #### "!!" "!!"
qi Ta
RF
"!"! "!"!
CF CM
TM
RM
"!"! "!"!
"!"! "!"!
h
TF Q
qo
VAPOR V2
B1 /2
**+ ,,- f(t)
M1 B1 /2
A1 f1
B2 /2
&' ACEITE
A2
M2
f2
() B2 /2
%$ %$ %$ %$ %$ %$ %$ %$ %$ %$ %$ %$
K B
dh
P1 = K1 TT = Po + ρgh = q − q1 A
dt
dθT dωT
ωT = = K 2 q1 TT = J T + DT ωT = KT (θT − θG )
dt dt
dIG
KT (θT − θG ) = TG = Kf IG V = R V IG + L V
dt
dIG
VG = Kb ωG = IG (RG + RV ) + (LG + LV )
dt
44 El Proceso a Controlar
θT θG IG
h ωT ωG RV
P1 q1 TT TG
V
Turbina VG K bω LV
KT
JT
DT q1 Generador DC en paralelo
Ref e R
001010 C1010 C1010 CC 676 76 x
H KJ KJ
u Vb K b ωm
KT r
El Sistema de Medición
Controlador de
realimentación Disturbios
SP MV PV
r e Algoritmo u Elemento final y
de Control de control Proceso
Sensor más
Transmisor
Sistema de
medición
porque sus puntos de sensibilidad corriente sobre voltaje no son constantes. En cam-
bio, una conductancia (la inversa de la resistencia) si posee una curva caracterı́stica
lineal, porque sus puntos de sensibilidad corriente sobre voltaje son constantes.
La saturación en un sensor se manifiesta debido a la no linealidad producida por
la disminución de sensibilidad, tı́picamente al principio o al final del rango. En las
zonas de saturación, la medición no es confiable. La zona muerta de un sensor es el
área de valores de la variable medida que no hace variar la indicación del instrumento.
Un sensor posee repetibilidad cuando se puede repetir el valor de la medición de
una variable para una única dirección de medición. La histérisis en un sensor se parece
a la repetibilidad; sin embargo, el proceso de medición es en ambos sentidos. Por
ejemplo, un termómetro posee repetibilidad porque siempre mide 49◦ C en un objeto
a 50◦ C, cuando dicho objeto pasa de más frı́o a más caliente. Desafortunadamente,
este termómetro posee una histéresis de ±1◦ C porque en un objeto a 50◦ C mide 49◦ C
cuando dicho objeto pasa de más frı́o a más caliente, y mide 51◦ C cuando el objeto
pasa de más caliente a más frı́o.
La exactitud de una medición se refiere a la máxima desviación en % del valor
medido, con respecto al valor ideal. Por otro lado, un instrumento de medición es
preciso cuando puede reproducir la lectura medida con una exactitud previamente
determinada. Supongamos que se mide una corriente conocida de 100 mA empleando
5 lecturas, las cuales resultan: 104, 103, 105, 103 y 105 mA. Dado que la desviación
máxima en la medición es 5 mA con respecto al valor real de 100 mA, la exactitud
del instrumento resulta:
5
× 100 = 5 %
100
La precisión se halla calculando primero la media de las lecturas:
105 + 103 + 105 + 103 + 105
= 104 mA
5
y luego determinando la máxima desviación de las lecturas con respecto a dicha
media, en este caso: ± 1 mA, que equivale al 1 % con respecto a la medida real de
100 mA.
En la mayorı́a de los casos, los sensores poseen un comportamiento dinámico
constante o proporcional, pero en otros casos, el comportamiento es similar al de un
proceso de primer orden. Por ejemplo, en un sensor PT 100 empleado para medir la
temperatura, la relación entre la salida resistencia en ohm y la entrada temperatura
en ◦ C es constante, mientras que en un flotador empleado para la medición de nivel,
la relación entre la salida voltaje en V y la entrada nivel en m es una expresión de
primer orden:
voltaje K
= (3.1)
nivel Ts + 1
donde K es la ganancia del sensor, s es la variable de Laplace y T es la constante de
tiempo, la cual se interpreta como el tiempo que demora la medición. La estabilidad
en un sensor se explica como la desviación que sufre la medición cuando se varı́an
ciertos parámetros.
La velocidad de respuesta de un sensor es la capacidad para que la señal de
salida siga sin retraso a las variaciones de la señal de entrada. Una velocidad de
respuesta rápida implica una constante de tiempo T pequeña y viciversa. Por otro
48 El Sistema de Medición
K
M (ω) = √ MB (ω) = 20logM (ω) ∠M = arctan(−T ω)
1 + ω2T 2
donde M (ω) es la magnitud de 3.1 y ∠M (ω) es el argumento o fase para cada fre-
cuencia ω. MB (ω) es M expresado en dB (decibelios). El gráfico de MB (ω) vs ω en
escala logarı́tmica es la respuesta en frecuencia en magnitud del sensor representado
por (3.1), mientras que el gráfico del ángulo de fase ∠M = arctan(−T ω) vs ω en
escala logarı́tmica, es su respuesta en frecuencia en fase. Tales representaciones se
denominan los gráficos de Bode en magnitud y fase, respectivamente. Se dice que
un sensor no es estable, cuando la medición experimenta desviaciones en los valores
medidos debido a la variación de ciertos parámetros, tales como K y T (ver (3.2)).
Sensores de Posición
1. Potenciómetro.– Un potenciómetro resistivo lineal o rotatorio está alimentado
por un voltaje DC. La posición longitudinal x o angular θ a medir genera una
señal de voltaje Vo que es proporcional a dicha posición, tal como se muestra
en las Figs. 3.2(a) y (b).
Fuente AC
x Bobina
primaria
x
θ
Vi
Bobina Bobina
Vo= (kVi )x secundaria 1 secundaria 2
Vi Vo= (kVi)θ
Vo = kx
(a) Potenciómetro lineal (b) Potenciómetro rotatorio (c) LVDT: transformador diferencial
variable lineal
E1
θ
LEDs A
Rotor B
E1 Rotor
Z
Receptor
E2 θ
Estator E
E2 3
S
Sensor
OMP OP
R
B Hall I Vo
N
LMNNMLNML LNNLNL V
NLMNLMNLMNLNLNL B
NLMNLMNML NLNLNL
NML NL
Material
ferromagnetico (a) Sensor de proximidad
de efecto Hall
TMS TS
A e t2 Objeto
t
o
(b) Sensor capacitivo (d) Sensor sónico
Cabezal
del sensor Campo magnético Campo magnético
del pulso del imán de posición
Sensores de Velocidad
1. Tacómetro.– Un tacómetro es un motor DC (ver sección 2.7) cuya tensión de
armadura Va está regida por la ecuación:
dIa
Va = L a + R a Ia + K b ω (3.3)
dt
52 El Sistema de Medición
Sensores de Aceleración
1. Acelerómetro inercial.– La Fig. 3.4(a) muestra un acelerómetro inercial para
medir la aceleración a del cuerpo M . La ecuación que rige el desplazamiento x
del acelerómetro es:
2
d x dx
M − a +B + Kx = 0 (3.4)
dt2 dt
d2 x dx
2
= =0
dt dt
Entonces: aM = Kx. De esta relación despejamos a conociendo x. El bloque
medición convierte posteriormente la aceleración a en una variable manipulable:
tensión, corriente o bits.
x a
M F = Ma Medición M
K B x a x a
Medición Sensor F Medición
Sensores de Presión
La mayorı́a de los sensores de presión miden presión manométrica porque toman
como referencia a la presión de la atmósfera o presión al nivel del mar: 14.7 lb/in 2 .
54 El Sistema de Medición
F I2
R+ R R R+ R
E v
R R
I1
La unidad de presión manométrica es psig que significa libra por pulgada cuadrada
gravimétrica. Un manómetro mide presión manométrica; es decir, si dicho manómetro
marca cero, entonces la presión es de 14.7 lb/in2 (la presión atmosférica). En cambio,
si marca por ejemplo 1 lb/in2 , entonces la presión medida está por encima de la
presión atmosférica.
Los sensores de presión que miden presión absoluta, toman como referencia a la
presión de vació absoluto (0 lb/in2 ). La unidad de presión absoluta es el psia o psi,
que significa libra por pulgada absoluta. Un sensor de presión absoluta mide psia o
psi; es decir, si dicho sensor marca cero, entonces la presión es de 0 lb/in 2 de vacı́o
absoluto (14.7 lb/in2 debajo de la presión atmosférica). A continuación se describen
varios sensores manométricos.
a babaa
del LVDT será proporcional a la presión medida.
a
da cdc bba
x
a
e
p
2 e
e gh fefefe p p
e
efefe
p p
2 1 2
1
x
Tubo de x
p Bourdon Sensor de fuelle Sensor de diafragma
1
Sensores de Temperatura
1. Termómetros de dilatación.– En estos sensores, la temperatura provoca la con-
tracción o dilatación o del sensor. Ası́, el termómetro de vidrio, que puede tomar
varias formas, emplea mercurio porque su volumen cambia proporcionalmente
con la temperatura. En un termómetro bimetálico, los metales empleados cam-
bian su dimensión proporcionalmente a la temperatura, mientras que en un
termómetro de bulbo, la variación de temperatura expande o contrae el fluido
alojado en un muelle o tubo tipo Bourdon. Las deformaciones que sufren estos
sensores se procesan en el transmisor.
I2 I2
R R+ R R R+ R
E v PT100 E v
R R 2 hilos R R 3 hilos
I1 I1
Metal A
ii j ij ij ij i j ij
Sin calentar
Metal B
m n
n m nm nm nm T
(a) Termocupla (b) Termómetro bimetálico
Medidores de Flujo
Los medidores de flujo o gasto de un fluido emplean, entre otras variables, la
presión diferencial, la fuerza, la velocidad, la masa o el volumen desplazado. A con-
tinuación se describen varios de estos medidores.
3. Medidores por velocidad.– Entre los medidores de flujo que emplean la veloci-
dad tenemos: medidor a turbina, medidor electromagnético, medidor vortex,
rotámetro y medidor por ultrasonido.
El fluido que ingresa a un medidor de turbina (Fig. 3.10(a)), hace girar un rotor
cuya velocidad de giro es proporcional al flujo. Estos medidores se emplean para
gases y lı́quidos limpios de baja densidad. Poseen una precisión de 0.15 a 1 %.
Un medidor electromagnético (Fig. 3.10(b)) produce un campo magnético en
el interior del tubo. Cuando un fluido circula por la tuberı́a a cierta velocidad,
dicho campo se modifica. Tal modificación se procesa para determinar un voltaje
de salida que representa el flujo. En estos medidores, la caı́da de presión es nula.
Se emplean para lı́quidos sucios, viscosos y contaminados. Poseen una precisión
de 0.25 a 1 %.
58 El Sistema de Medición
Toma de entrada
{||{ {||{ {||{ {||{ {||{
Toma de salida
Placa de
p1 p orificio
2 Cono de entrada Cono de salida
(a) Placa e orificio (b) Tubo Venturi
sst
vuvu vu vu popopo rqrqrq popopo rqrqrq tt zy zy zy zy
P P
P T
T
P
P v
P
v
T
P
T
4. Medidores másicos.– Entre los medidores de flujo que emplean la masa tenemos:
medidor másico térmico y el medidor de Coriolis.
En un medidor másico térmico (Fig. 3.10(e)) se miden las temperaturas aguas
arriba T1 y aguas abajo T2 del fluido circulante en la tuberı́a. La diferencia
de temperatura (T2 − T1 ) es proporcional al flujo masico existente; esto es:
Q = mce (T2 − T1 ), donde m es la masa del fluido, ce su calor especı́fico y Q el
calor transferido. Con este medidor se logra una precisión de 1 %.
En el medidor de Coriolis (Fig. 3.10(f)), el fluido que ingresa por su entrada
3.2 Sensores de Medición 59
Transductor
² ³ ²
³ ²
³ µ´µ´ ³² µ´µ´ µ´µ´ µ´µ´
Voltaje
§§¨§§¨ ¨§§¨®¬®¬®¬®¬¯¯ ¨§§¨®¬®¬¯¯ ®® ¨§§¨ ¨§§¨ ¨§§¨ ¨§§¨ ¨§§¨ ¨§§¨ ¨§§¨ ¨§§¨ ¨§§¨
Transmisor−−receptor
©©©ªª© ©ªª© ©ªª© ©ªª© ©ªª© ©ªª© ©ªª© ©ªª© ©ªª© ©ªª© ©ªª© ©ªª©
t2 Caudal
«¬«¬ «¬ «
t1
(c) Rotámetro
Tubo con calefacción constante
Transmisor−−receptor
T1 T2
±°°±±°°±±°°±±°°±±°°±±°°± f
a b
a
b f
a
b f
(g) Medidor por ruedas ovaladas (f) Medidor de Coriolis
8. Por conductividad.– El medidor consta de dos sondas con dos electrodos, los
cuales al entrar en contacto con el lı́quido o sólido conductor, cierran un circuito
eléctrico para generar una corriente que activa un relé. Ası́, los contactos nor-
malmente abiertos se cierran, mientras que los normalmente cerrados se abren.
9. Por radar.– En este medidor, un oscilador de estado sólido genera una frecuencia
de barrido de 10 a 11 GHz y enfoca la señal sobre el lı́quido por medio de
una antena. La diferencia de frecuencias entre las señales de transmisión y de
retorno es proporcional al tiempo empleado por las mismas y es una medida
del nivel. Estos medidores se emplean en productos muy viscosos como asfaltos.
No requieren contacto con el material ni incorpora elementos móviles en su
estructura. Poseen una precisión de 2 mm y un rango de hasta 40 m.
10. Por posicionador.– Este sistema emplea un contrapeso sostenido por un hi-
lo tensado. Este contrapeso está en ligero contacto con el lı́quido para una
situación de equilibrio. Al cambiar el nivel del lı́quido, el equilibrio se rompe.
En este momento actúa el posicionador para restituir un nuevo estado de equi-
librio, subiendo o bajando el contrapeso. Con este medidor de nivel se logra
una precisión de hasta 1 mm.
Recipiente de
condensado
P1
P2
Manómetro
Aire Detector
o gas Regulador
de caudal
h Emisor de
Burbujeo
P Atenuación rayos X
5. Sensor de peso.– El sensor de peso, una célula de carga, posee varias galgas
extensiométricas que se deforman con la presencia de un peso. Esta deformación
se procesa electrónicamente y es proporcional al peso (Fig. 3.12(d)).
(b) (c)
(a) (d)
Cabezal
É
Membrana
É Actuador
Resorte
É
ÊËÊÌ É
Eje o vástago
Cono u obturador
Q Q Dosificador
Asiento
Fig. 4.1: Válvula de control neumática mostrando sus partes.
bobina con núcleo de hierro móvil, y el inversor de potencia. Entre los actuadores
neumáticos tenemos los de membrana de simple y doble efecto, el cilindro o pistón de
membrana, el cilindro (o pistón) de doble y simple efecto. Los cilindros hidráulicos
lineal y rotatorio son dos ejemplos de actuadores hidráulicos.
Los dispositivos de dosificación también se clasifican de acuerdo a la energı́a au-
xiliar que los alimenta. A su vez, los dispositivos de dosificación eléctricos pueden
ser continuos y discontinuos. En la Fig. 4.3, la resistencia eléctrica, el transformador
y el transistor de potencia son dosificadores continuos, mientras que el contacto, el
relé, el tiristor o el triac son dosificadores discontinuos. En las válvulas para gas,
vapor, lı́quidos o granos, el conjunto obturador–asiento constituye el dispositivo de
dosificación.
P1 V12 P2 V22
+ + h1 = + + h2 (4.1)
γ 2g γ 2g
4.2 La Válvula de Control Automática (VCA) 65
R
ÍÎ
Î
ÍÎ ÍÎ
Î
ÍÎ ÎÍÎÍÎÍ Ð
ÏÏ
Ð ÐÐÏÏ
S
ÍÎÍ
ÍÍ Î
ÍÍ Î Í Î ÐÐÏ
ÐÏ ÐÐÏÐÏ Ò
T
ÍÎÎ
Î Í ÎÍÎÍ ÐÏ
ÏÐÏÏ ÒÑÒÑ
Ñ
w
Motor AC
(d) Inversor de potencia
ÕÖ
Ö ÕÖ
Õ Ö Õ Ø×Ø× Ö ÕÖ
Õ ÖÕÖÕ ßà
à
ßà ß
à ß ß
à ß ß à
Aire
Ø×Ø×Ø× ß à
à ßâáâá à
à ß àßàß ÙÞÝÚÚ
ÛÜ ÚÙ
Aceite
âáâáá
Aceite
ÙÙ ÞÝÝ ÚÙÚÙ
Ø× âáâ ÞÝÚ Þ
(i) Cilindro neumático (j Cilindro (k) Cilindro hidráulico
de doble efecto hidráulico rotatorio
Por continuidad:
A2
Q = V 1 A1 = V 2 A2 → V 1 = β 2 V2 β2 = (4.2)
A1
Notar en la Fig. 4.4 que la altura h1 es cero porque coincide con el eje horizontal de
referencia a trazos, mientras que la altura h2 se puede despreciar por ser pequeña.
Reemplazando V1 de (4.2) en (4.1) resulta:
s s
(P2 − P1 )2g γH2 O (P2 − P1 )2g γ
V2 = × = GF = (4.3)
γ(1 − β 4 ) γH 2 O GF γ(1 − β 4 )γH2 O γH 2 O
66 Elementos Finales de Control
(d) Relé
Por consiguiente:
r s
P2 − P 1 2g
Q = V 2 A2 = C v Cv = A 2 (4.4)
GF GF (1 − β 4 )γH2 O
Esta última expresión se corrige multiplicándola por factores que toman en cuenta
pérdidas, ruido, caracterı́stica del fluido, etc. Notar que cuando P 2 − P1 = GF = 1,
entonces: Q = Cv ; es decir, el flujo iguala al tamaño de la válvula.
Bajo ciertas consideraciones, la constante Cv de la válvula ha sido adoptada por
los fabricantes y usuarios como un coeficiente de dimensionamiento. En este sentido,
esta constante se define como el flujo en galones USA por minuto (gpm) que pasa a
través de la válvula en posición completamente abierta y con una pérdida de carga
(caı́da de presión) de una libra por pulgada cuadrada (psi).
En aquellos paı́ses donde se emplean el sistema métrico, la constante de la válvula
se denomina Kv y se define como el flujo de agua (de 5 a 40◦ C) en m3 /h que pasa
a través de una válvula a una determinada apertura y con una pérdida de carga
de 1 bar (105 Pa). La equivalencia entre los coeficientes Kv y Cv para una VCA
4.2 La Válvula de Control Automática (VCA) 67
Vástago
Cono
Q, P2 , V 2, A 2
Q, P1 , V1, A 1 h2
Asiento
La Fig. 4.5 muestra las curvas caracterı́sticas de las válvulas ON–OFF, lineal (ecuación
(4.8)) e isoporcentual (ecuación (4.9)), mientras que la Fig. 4.6 ilustra la forma de
los conos u obturadores.
Q = Cv
100 %
Válvula ON−OFF
Válvula
50 % lineal
Válvula
isoporcentual
u
0% 50 % 100 %
grupo de las válvulas Samson poseen el actuador y el eje alineados, como son las
válvulas de los extremos de la Fig. 4.8.
El DVD Metso Documentation 2011 contiene el software Netprof 6 para el di-
mensionamiento de válvulas y está disponible sin cargo. Basta solicitarlo en una de
las oficinas más cercanas de Metso. Ver ubicación en www.metso.com. El software
Netprof permite determinar los coeficientes de las válvulas, el tamaño del actuador,
además de advertir acerca de problemas potenciales en el diseño. Este paquete posee
una interfaz amigable y permite la representación gráfica de la aplicación.
70 Elementos Finales de Control
Samson ofrece el paquete Valve Sizing Program. Ver el link Valve sizing de soft-
ware del portal www.samson.de. También existe un demo libre de cargo que puede
ser descargado de varios sitios, por ejemplo, de axonautomation.ca/downloads.html.
En el help de la versión demo se explican los fundamentos del cálculo para el dimen-
sionamiento de válvulas.
P1 P2
Presión de la P P1 P2 P3
bomba: P0
(a)
Q Para máxima
presión nominal
Q Amax
Punto adecuado
ubicado al 70%
u [mm]
0% A 100%
(b)
Fig. 4.9: (a) Válvula operando en una linea. (b) Operación de una VCA alrededor
del punto de operación A.
Capı́tulo 5
El controlador PID SISO procesa la señal de error e(t), la cual es la diferencia entre
la señal deseada r(t) y la señal controlada y(t) (la salida del proceso), empleando un
algoritmo de control ampliamente difundido en el mundo industrial, cuya forma más
conocida es:
Z
Kc de(t)
u(t) = Kc e(t) + e(t)dt + Kc Td = P (t) + I(t) + D(t)
Ti dt
donde Kc es la ganancia proporcional, Ti es el tiempo integral y Td es el tiempo derivativo.
En la expresión anterior se puede ver claramente que el algoritmo
R PID posee una parte
proporcional: P (t) = Kc e(t), una parte integral: I(t) = K Ti
c
e(t)dt y una derivativa:
D(t) = Kc Td de(t)dt . Este algoritmo posee muchas variaciones, algunas de las cuales vamos
a explorar en este capı́tulo. Dependiendo de la aplicación, el controlador en cuestión puede
trabajar como P, PI, PD o PID.
El algoritmo PID es el de mayor aplicación industrial (aproximadamente el 90 %) y
su modelo dinámico es lineal y de segundo orden. Se emplea para controlar procesos
caracterizados por tener una entrada y una salida, como son los casos del control de
presión, nivel, flujo, entre otros.
r e u y
Gc (s) G p(s)
G m (s)
(a)
r e u y
G c1 (s) G p(s)
G c2 (s)
G m (s)
(b)
G a (s)
r u y
e
G c (s) G p(s)
G m (s)
(c)
du dy
Limitador
r Filtro de e u u u Proceso más y
Controlador elemento
entrada u final de control
Sensor más
transmisor
dm
Fig. 5.2: Sistema de control SISO con filtro de entrada, con limitador de salida y
sujeto a la acción de disturbios.
el error ess se puede determinar empleando el teorema del valor final, teniendo en
cuenta que r(s) = A/s, como sigue:
y(s) ωn2
Gp (s) = = 2 y(s) = Gp (s)r(s)
r(s) s + 2ζωn s + ωn2
A
lı́m y(t) = yss = lı́m sGp (s) =A ess = r − yss = A − A = 0
t→∞ s→0 s
Sin demostración, las relaciones exactas para Tp , Mp y P O se expresan como:
Mp − A √
2
PO = 100 = 100e−ζπ/ 1−ζ (5.3)
A √
2
Mp = A 1 + e−ζπ/ 1−ζ (5.4)
π−θ p
Tr = ωd = ω n 1 − ζ 2 θ = arc cos ζ (5.5)
ωd
π
Tp = (5.6)
ωd
r ω2 y
n
s (s 2 ζ ωn )
(a)
r y
2δ
Mp
A
A r ω 2n y
yss e ss
s2 2 ζω n s ω 2n
0 τ 0 T r Tp Ts τ
(b)
Zona de jω
estabilidad Plano s
s1 jω
d
θ
ζω n ωn σ
s2 Zona de
inestabilidad
(c)
r K y
s (s p)
de donde resulta: ζ < 0.745. Dado que Ts = ζω4n < 8 s, entonces: ωn > (2ζ)−1 = 0.67.
Luego se pueden determinar los parámetros p = 2ζωn y K = ωn2 pedidos.
Ejemplo 5.2
Elaborar los gráficos de Bode y Nyquist y la carta Nichols del proceso con FT:
ωn2
G(s) =
s2 + 2zωn s + ωn2
% bode1.m
clear all; close all; clc; s=tf(’s’);
for z=[0.1:0.4:1.3], G=1/(s^2+2*z*s +1); bode(G,’k’), hold on, end
% nyquist1.m
clear all; close all; clc; s=tf(’s’);
for z=[0.1:0.4:1.3], G=1/(s^2+2*z*s +1); nyquist(G,’k’), hold on, end
% nichols1.m
clear all; close all; clc; s=tf(’s’);
for z=[0.1:0.4:1.3], G=1/(s^2+2*z*s +1); nichols(G,’k’), hold on, end
Bode Diagram
20
z = 0.1
0
z = 1.3
Magnitude (dB)
−20
−40
−60
−80
0
z = 0.1
−45 z = 1.3
Phase (deg)
−90
−135
−180
−2 −1 0 1 2
10 10 10 10 10
Frequency (rad/sec)
Nyquist Diagram
z = 0.1
2
Imaginary Axis
−2
z = 1.3
−4
−6
−3 −2 −1 0 1 2 3
Real Axis
Nichols Chart
20
0
Open−Loop Gain (dB)
−20
z = 0.1
−40
z = 1.3
−60
−80
−100
−180 −135 −90 −45 0
Open−Loop Phase (deg)
(a)
y(jω)/r(jω) dB
(Mω) dB
(b) 0dB
−3dB
0 ωr ωB ω log
Fig. 5.8: (a) Respuesta de un proceso de segundo orden a una sinusoide. (b) Su gráfico
de Bode en magnitud.
donde u(jω) y (jω) son la parte real e imaginaria de GH(jω), respectivamente. Si tal
EC fuera cero, entonces el sistema tomarı́a un valor muy grande. Esta situación es
denominada crı́tica, porque se produce cuando el sistema posee ya un comportamiento
inestable. Un sistema es estable cuando las raı́ces de la EC: 1 + GH(s) = 0, poseen
parte real positiva. Las raı́ces nulas provocan también comportamiento inestable del
sistema realimentado. En general:
p v
GH(jω) = |GH(jω)|∠GH(jω) |GH(jω)| = u2 + v 2 ∠GH(jω) = arctan
u
Para el lı́mite de estabilidad, la EC toma la forma:
1 + GH(jω) = 0 GH(jω) = −1
La Fig. 5.9 grafica tal situación, donde las coordenadas toman los valores u = −1,
v = 0, la magnitud |GH(jω)| = 1 y el ángulo ∠GH(jω) = 180◦ .
jv
GH(jω) = 180°
1
u
|GH(jω)| = 1
dicho ángulo ocurre cuando (u, v) = (−1, 0). El Mg se puede interpretar como un un
aumento en la ganancia del sistema para que el lugar geométrico o gráfico de GH(jω)
pase a través del punto u = −1.
El margen de fase Mf se define como el ángulo de fase que debe de girar el gráfico
de GH(jω) = u + jv para que el punto de magnitud unitaria |GH(jω)| = 1, pase
a través del punto (u, v) = (−1, 0) en el plano GH(jω). Las Figs. 5.10(b), (c) y (d)
muestran los márgenes de fase y de ganancia representados en los gráficos de Bode,
Nyquist y Nichols, respectivamente. Tener en cuenta que los sistemas estables poseen
Mf Mg positivos, mientras que los Mf Mg son negativos para los inestables.
Ejemplo 5.3
Determinar los márgenes de fase y de ganancia del sistema mostrado en la Fig. 5.10(a)
sabiendo que:
1.5
G(s) = H(s) = 0.1
(s + 0.1)(s + 0.3)(s + 0.4)
y(s) s + Tz
Gp (s) = (5.12)
u(s) (s + T1 )(s + T2 )(s + T3 )(s + T4 )(s + T5 )
r y
G(jω) r G(jω) y
1 G H(jω)
H(jω)
(a)
GH dB GH dB M g negativo
0 dB ω log ωlog
M g positivo
ang GH
−90 ωlog −90
−180 −180 ω log
−270 −270
M f positivo M f negativo
(b)
jv M f negativo jv
M g positivo 1 M g negativo
Mg
1 u γ 1 u
γ φ φ
M f positivo 1
(c) Mg
GH dB GH dB M g negativo
M g positivo
0 dB 0 dB
M f positivo
M f negativo
Fig. 5.10: (a) Sistema realimentado. (b), (c) y (d): Márgenes de fase y de ganancia.
82 Control PID SISO
Bode Diagram
Gm = −0.598 dB (at 0.436 rad/sec) , Pm = −2.13 deg (at 0.45 rad/sec)
40
20
0
Magnitude (dB)
−20
−40
−60
−80
0
−90
Phase (deg)
−180
−270
−3 −2 −1 0 1
10 10 10 10 10
Frequency (rad/sec)
Error
... ##
Abertura de válvula
Máx.
(0 /)(0/) èçèç èçèç
100%
"!"!" !
&% $&% $&% $
,+*-,+ *-,+ -,
50%
Mín.
Pivote ''' 0%
(a) PB% = 100%
úôôúô ú
Error
þýþýþüû þýþýþüû þýþýþüû þýþýþüû þýþýþüû êþýþýþüû êþýþýþïüû êîíì ï êî íì
Abertura de válvula
õõ þýüûüû þýüûüû þýüûüû þýüûüû þýüûüû þýüûüû þýüûüû óñò ðó ñò ð
ööùø÷ öùø÷ ùø Pivote
ééé
50%
Mín. 0%
(b) PB% = 200%
Error
Abertura de válvula
Máx.
åæ åæ
100%
ÿ
50%
Mín.
Pivote ÿ ÿ 0%
(c) PB% = 50%
Ejemplo 5.4
∆e Controlador ∆u
E Proporcional U
100 100
PB % = = = 50 %
Kc 2
ACCIÓN PROPORCIONAL
1.4
1.2
SP
1
Kc=2.05; BP%=48.8
AMPLITUD
0.8
0.6
Kc=1.05; BP%=95.24
0.4
Kc=0.05; BP%=2000
0.2
0
0 10 20 30 40 50 60 70 80 90 100
TIEMPO (sec)
1.4
1.2
Ti = 3; KI=0.2
1
Ti=9; KI=0.066
AMPLITUD
0.8
Ti=15; KI=0.04
0.6
0.4
0.2
0
0 10 20 30 40 50 60 70 80 90 100
TIEMPO (sec)
Esta acción de control se suma a menudo al control proporcional para corregir cambios
rápidos en la variable controlada. Ası́, este modo de control toma el nombre de PD
(Proporcional más Derivativo).
La Fig. 5.16, elaborada con el programa mcpd.m mostrado abajo, ilustra tres
curvas de respuesta del sistema de control realimentado, empleando un controlador
PD de la forma:
de(t)
u(t) = Kc e(t) + KD K D = K c Td
dt
donde KD es la ganancia derivativa y Td es el tiempo derivativo o rate. Observar que
para todos los casos, el offset es el mismo (y de gran magnitud), ası́ como también lo
es el tiempo de estabilización (flecha horizontal de doble punta). Notar también que
conforme aumenta KD (aumenta Td ), el sobrenivel también crece.
% mcpd.m MODO DE CONTROL PD CON P CONSTANTE
clear all; close all; clc;
Kp=2; T1=0.5; T2=1; T3=1.5; T4=2; T5=2.5; Tz=3.5; Tf=100; s=tf(’s’);
Gp=Kp*(s+Tz)/(s+T1)/(s+T2)/(s+T3)/(s+T4)/(s+T5); Kc=0.6; % PROCESO
for Td=0.1:0.5:1.1; KD=Kc*Td; Gc=Kc+KD*s; PD=feedback(Gc*Gp,1); % CONT PD
step(PD,’k’,Tf); hold on; end; hold off; grid; xlabel(’TIEMPO’);
ylabel(’AMPLITUD’); title(’ACCIÓN PROPORCIONAL MÁS DERIVATIVA’);
print -deps -f mcpd
0.7
KD=0.06; Td=0.1
0.6
KD=0.3; Td=0.6
0.5
KD=0.66; Td=1.1
AMPPLITUD
0.4
0.3
0.2
0.1
0
0 10 20 30 40 50 60 70 80 90 100
TIEMPO (sec)
La Tabla 5.1 muestra la tendencia que tienen las especificaciones de diseño cuando
se incrementan las ganancias Kc , Ki o Kd . Por otro lado, la Tabla 5.2 nos informa
acerca de la velocidad de respuesta o de la estabilidad del sistema, cuando se incre-
mentan los parámetros Kc , Ti o Td . Tales Tablas deben de ser aplicadas con cuidado,
debido a que en un sistema de control PID, algún cambio en un parámetro de diseño
puede afectar el comportamiento de los otros.
Ejemplo 5.5
Diseñar un controlador de dos posiciones sin zona muerta para controlar el siguiente
proceso:
Kp
Gp (s) = e−τ s
Ts + 1
Solución: La Fig. 5.18 muestra el diagrama Simulink del sistema de control (archivo
onoff1.mdl), mientras que la Fig. 5.19 muestra la salida y(t) controlada y la señal de
control u(t). Este gráfico se obtuvo ejecutando el archivo onoff1data.m, cuyo listado
se muestra abajo. El relay empleado posee los parámetros Umin = 0.8, Umax = 1.2,
Switch On Point = 0 y Switch Off Point = 0. La FT de la válvula se asume que es
una constante incluida en Kp .
% onoff1data.m
clear all; close all; clc;
R=1; Kp=1; T=10; tau=2; Umin=0.8; Umax=1.2; swonpoint=0; swoffpoint=0;
load th; load yh; load uh; load rh;
plot(th,rh,’k’,th,yh,’k’,th,uh,’k’), xlabel(’TIEMPO [s]’), grid
ylabel(’y(t) y u(t)’), title(’CONTROL ON-OFF DEL PROCESO’)
print -f -deps onoff1r, print -s -deps onoff1
212
Set Point e(t) Control de dos
posiciones
u(t)
Válvula
1 Proceso y(t)
ON−OFF
Sistema de
Instrumentación
u(t) (a) u(t)
Umax Umax
e(t) e(t)
0 h1 h2
Umin Umin
y(t) y(t)
Ymax Ymax
Ymin Ymin
Válvula Válvula
Abierta Abierta
(Umax) (Umax)
t t
Válvula Válvula
Cerrada Cerrada
(Umin) (b) (Umin) (c)
Fig. 5.17: (a): Sistema de control de dos posiciones. (b): Controlador ON–OFF sin
zona muerta, y (c): con zona muerta.
T.s+1
Step Relay Transfer Fcn Transport Scope
Delay
rh
R
Save in format
th uh yh
array
Clock t t u y
1.2
u(t)
1
set point
0.8
y(t) y u(t)
y(t)
0.6
0.4
0.2
0
0 10 20 30 40 50
TIEMPO [s]
Fig. 5.19: Salida controlada y(t) y señal de control ON–OFF u(t) para el ejemplo 5.7.
formula como:
Z
1 t de
u = KC e + e dt + Td
Ti 0 dt
e = r−y (5.15)
def (t) 1
T = e(t) − ef (t) ef (s) = e(s) (5.18)
dt 1 + Ts
1
T = α Td → ef (s) = e(s) (5.19)
1 + α Td s
Para Td > TI /4, el controlador dependiente nunca será similar al controlador ideal,
ya que para esta condición los parámetros en (5.27) se vuelven imaginarios.
1.2
1.1
0.9
0.8
SALIDA
0.7
0.6
0.5
0.4
0.3
0.2
0 5 10 15 20 25 30 35 40 45 50
TIEMPO (seconds)
Método de Hartree
La Tabla 5.3 atribuida a Hartree et al. (ver referencias de [11]), se aplica para
controlar procesos que poseen una FT de la forma Gp (s) = Kp e−τ s . El control se
realiza empleando el sistema de control de la Fig. 5.1(a).
Tabla 5.3: Reglas de sintonı́a para controlar procesos tipo G p (s) = Kp e−τ s .
Ejemplo 5.7
Gp (s) = Kp e−τ s
Notar en el diagrama Simulink que los bloques Kc y Gc1 (s) forman un controlador
PI. Observar también que los bloques rh, yh, uh y th son del tipo To Workspace
y sirven para almacenar datos y estructuras. Como estamos interesados en crear
vectores de datos para luego graficarlos, hacer doble click en cada bloque del diagrama
Simulink. En cada caso aparecerá una ventana, en la cual seleccionaremos Array en
Save Format.
hartree 1.mdl
Ti .s+1 Td .s+1
Kc Kp
Ti .s Td /N.s+1 Scope
r Kc Gc1(s) Gc2(s) Kp tau
0.8
SALIDA y(t)
0.6
0.4
0.2
0
0 20 40 60 80 100 120 140 160 180 200
TIEMPO [s]
0.8
CONTROL u(t)
0.6
0.4
0.2
0
0 20 40 60 80 100 120 140 160 180 200
TIEMPO [s]
% hartree1graf.m
clear all; close all; clc;
r=1; N=3; Kp=2; tau=2; Kc=0.7/(Kp*tau); Ti=2.66*tau; Td=tau;
load th1; load yh1; load uh1; load rh1;
subplot(211), plot(th1,rh1,th1,yh1), xlabel(’TIEMPO [s]’),
96 Control PID SISO
Tabla 5.4: Método de la curva de reacción de Ziegler y Nichols para determinar los
parámetros Kc , Ti y Td .
100 Kp τ
Tipo Controlador Gc (s) Kc = BP ; a= T Ti Td
P Kc 1/a ∞ 0
PI Kc 1 + T1i s 0.9/a 10τ /3 0
PID Kc 1 + T1i s + Td s 1.2/a 2τ 0.5τ
PD Kc (1 + Td s) 1.2/a ∞ 0.42τ
Ejemplo 5.8
y
100%
63.2%
28.3%
t
t t2
1
Ejemplo 5.9
RESPUESTA AL ESCALÓN
AMPLITUD 6
4
Kpp
2
0
0 5 10 15
TIEMPO (sec)
SALIDAS CONTROLADAS
2
PID
1.5
SALIDA
PI
1
0.5
P PD
0
0 20 40 60 80 100 120
TIEMPO (sec)
Controlador Referencia
Actuador (set point)
v
d
Flotador
r e u y
GC (s) G H(s) e −sτ h GT (s)
Controlador Actuador Tiempo muerto Tanque
ym GF (s)
(a)
Flotador
r e u y
GC (s) G H(s) e −sτ h GT (s)
Controlador Actuador Tanque
ym GF (s)
(b) Flotador
r e u y
G C i(s) G H(s) e −sτ h GT (s)
Controlador Actuador Tanque
proporcional
integral G Cd(s)
Controlador derivativo
ym
GF (s)
(c)
Fig. 5.25: Diagrama de bloques del sistema de control de nivel; (a) Proceso. (b)
Estructura para control PID o PI D. (c) Estructura para control PI Dy.
Solución: El primer gráfico de la Fig. 5.26 muestra la respuesta al escalón (la curva
de reacción) del proceso, de la cual se obtienen τ = 1 y T = 30 − τ . Con estos
valores se calculan los parámetros del controlador PID empleando la Tabla 5.4. El
segundo gráfico de la Fig. 5.26 ilustra la comparación entre las salidas controladas.
Tales resultados se obtienen ejecutando el programa zn1a.m listado abajo.
RESPUESTA AL ESCALÓN
20
15
AMPLITUD
10
0
0 20 40 60 80 100 120 140 160 180
TIEMPO (sec)
SALIDAS CONTROLADAS
2
PI__Dy
1.5
SALIDA
0.5
PID y PI__D
0
0 5 10 15 20 25 30 35 40 45 50
TIEMPO (sec)
Fig. 5.26: Curva de reacción del proceso nivel y respuestas controladas para el ejemplo
5.9 (gráfico inferior).
Método de Chien–Hrones–Reswick
El método de Chien–Hrones–Reswick (CHR) [14] ilustrado en la Fig. 5.27(a), se
aplica a procesos que aceptan un modelo dinámico como el de la ecuación (5.33). Este
método propone un conjunto de reglas de sintonización para los casos siguientes (ver
Tabla 5.5):
amortiguamiento ζ > 0.8, tal como se muestra en la Fig. 5.27(c). Observar que
en esta situación existe rechazo al disturbio, dado que yd tiende a cero.
d
D
r d
t
R r
PID Proceso
e u y
t
(a) y
y
R R
d=0 d=0
t t
(b) (d)
y y
d d
r=0 r=0
D
D
t t
(c) (e)
Ejemplo 5.10
Tipo Controlador GC (s) Caso (b): Caso (c): Caso (d): Caso (e):
ζ > 0.8 ζ > 0.8 0.4< ζ < 0.8 0.4< ζ < 0.8
d=0 r=0 d=0 r=0
las salidas controladas, las cuales se obtienen ejecutando el programa chrd.m listado
abajo.
% chrd.m CONTROL PID, PI_D Y PI_Dy POR EL MÉTODO CHR (RECHAZO AL DISTURBIO)
clear all; close all; clc;
s=tf(’s’); GH=10/(s+1); GT=3.15/(30*s+1); GF=1/(s^2/9+s/3+1);
[num,den]=pade(1,3); Gtau=num/den; Gp=GH*Gtau*GT; Kp=31.5; % Kp=10*31.5
tau=2; T=30-tau; % TOMADOS DE LA CURVA DE REACCI ÓN
a=Kp*tau/T; Kc=0.95/a; Ti=2.4*tau; Td=0.42*tau; N=10; % PAR ÁMETROS PID
Gc1=Kc*(1+1/Ti/s+Td*s); PID=feedback(Gp,Gc1*GF); % CONTROL PID
Gc2=Kc*(1+1/Ti/s+Td*s/(1+Td*s/N)); PI_D=feedback(Gp,Gc2*GF); % CONTR PI_D
Gci=Kc*(1+1/Ti/s); Gcd=Kc*Td*s/(1+Td*s/N); PI_Dy=feedback(Gp,Gci*GF+Gcd);
step(PID,’k’,PI_D,’k’,PI_Dy,’k’); grid; title(’SALIDAS CONTROLADAS’);
xlabel(’TIEMPO’); ylabel(’SALIDA’); print -deps -f chrd
Método de Cohen–Coon
El método de sintonización desarrollado por los investigadores G.H. Cohen y G.A.
Coon [15] también se aplica a procesos que aceptan un modelo dinámico como el de
la ecuación (5.33). Las fórmulas de sintonización se muestran en la Tabla 5.6, donde:
Kp τ τ
a= L= (5.38)
T τ +T
Notar que las fórmulas de la Tabla 5.6 se asemejan a las de la Tabla 5.4 cuando L es
suficientemente pequeño.
Ejemplo 5.11
Disturbio d
Actuador Controlador r=0
v
d
(a) Flotador
d e y
G H(s) e −sτ GT (s)
Actuador Tiempo muerto Tanque
u
GC (s) GF (s)
Controlador Flotador
(b)
u y
d G H(s) e −sτ GT (s)
Actuador Tanque
Control D G Cd(s)
GF (s)
Control PI G C i(s)
(c)
Fig. 5.28: Estructuras para el rechazo al disturbio en el control del proceso nivel (Fig.
(a)) empleando controladores PID(s) y PI D(s) (Fig. (b))y PI Dy(s) (Fig. (c)).
100
Tipo Controlador GC (s) Kc = BP Ti Td
1 0.35L
P Kc a 1 + 1−L ∞ 0
1 0.9 0.92L 3.3−3L
PI Kc 1 + Ti s a 1 + 1−L 1+1.2L τ 0
1.24 0.13L 0.27−0.36L
PD Kc (1 + Td s) a 1 + 1−L ∞ 1−0.87L τ
1.35 0.18L 2.5−2L 0.37−0.37L
PID Kc 1 + T1i s + Td s a 1 + 1−L 1−0.39L τ 1−0.8L τ
SALIDAS CONTROLADAS
1.6
1.4
1.2
0.8
SALIDA
0.6
PI__Dy
0.4
PID y PI__D
0.2
−0.2
−0.4
0 10 20 30 40 50 60 70
TIEMPO (sec)
Fig. 5.29: Rechazo al disturbio empleando controladores tipo PID, PI–D y PI–Dy.
SALIDAS CONTROLADAS
1.8
1.6
1.4
1.2
PI__Dy
SALIDA
0.8
PID y PI__D
0.6
0.4
0.2
0
0 5 10 15 20 25 30 35
TIEMPO (sec)
Método de Samal
El método de sintonización de parámetros de Samal [16] está diseñado para re-
chazar los disturbios que actúan principalmente en la señal de control, tal como se
muestra en la Fig. 5.31(a), donde el rechazo al disturbio se manifiesta porque la señal
de salida y controlada tiende a cero para un tiempo de estabilización T s y un so-
brenivel de magnitud M . El proceso al cual se aplican los parámetros del controlador
PID, poseen un modelo de FT de la forma:
y(s) Kp
Gp (s) = = (5.39)
u(s) (1 + Tn s)n
Ejemplo 5.12
Kp
Gp(s) =
(s + T1 )(s + T2 )(s + T3 )(s + T4 )
donde: [T1 , T2 , T3 , T4 ] = [1, 1.5, 2, 2.5]. Para propósitos de comparación emplear los
controladores PID ideal (ecuación (5.35)), no interactivo (ecuación (5.36)) y mejorado
(ecuación (5.29)). Para el control PID y PI D emplear el diagrama de bloques de la
Fig. 5.1(b), mientras que para el control PI Dy usar el diagrama de bloques de la
Fig. 5.1(c).
106 Control PID SISO
d (a)
D
d y
0 t M
r=0 e Kp y D
P, I, PI, PID t
u (1+Ts) n 0 Ts
(b) (c)
5 20 5 5
4 16 I 4 4
P D
PI
3 12 3 3
Vo Ti I
Vo
2 8 T 2 2 Td
PID PI
PID T
1 4 1 1
I PID
0 0 0
1 2 3 4 n 1 2 3 4 n
(d) (e)
1 Ts 20
M
Kp D T
0.8 I 16
I
0.6 PI 12
P
PI
0.4 8
PID
PID
0.2 4
P
0 0
1 2 3 4 n 1 2 3 4 n
Fig. 5.31: Método de Samal para hallar los parámetros de un controlador PID.
Solución: El gráfico superior de la Fig. 5.32 muestra la respuesta al escalón (la curva
de reacción) del proceso. De esta curva se obtienen los parámetros τ = 0.8 s y T =
3.9 – τ = 3.1 s. Empleando la Tabla 2.6 se extraen los valores de n = 3 y T n = 0.270.
De la Fig. 5.31(b) se determinan Vo = 2 y Kc = V o/Kp , mientras que de la Fig.
5.31(c) se calculan Ti = 1.8Tn y Td = 0.7Tn . El gráfico inferior de la Fig. 5.32 ilustra
la comparación entre las salidas controladas. Tales resultados se obtienen ejecutando
el programa samal1.m listado abajo.
% samal1.m CONTROL PID, PI_D Y PI_Dy EMPLEANDO EL M ÉTODO DE SAMAL
clear all; close all; clc; Kp=10; Tb=1; Tc=1.5; Td=2; Te=2.5; s=tf(’s’);
Gp=Kp/(s+Tb)/(s+Tc)/(s+Td)/(s+Te); subplot(211); step(Gp,’k’); grid;
5.6 Métodos de Sintonización de Controladores PID 107
RESPUESTA AL ESCALÓN
1.5
AMPLITUD 1
0.5
0
0 1 2 3 4 5 6 7 8 9
TIEMPO (sec)
SALIDAS CONTROLADAS
1.5
PI__Dy
SALIDA
0.5
PID y PI__D
0
0 5 10 15 20 25 30 35 40 45 50
TIEMPO (sec)
Fig. 5.32: Respuesta al escalón (Fig. inferior) y respuestas controladas (Fig. superior)
empleando controladores tipo PID, PI D y PI Dy y el método de Samal.
ganancia crı́tica Kcrit (o ganancia lı́mite) para la cual se obtuvo dicho perı́odo.
Los parámetros Kc , Ti y Td se calculan luego usando la Tabla 5.7.
K crit
r u y y
r e
PID Proceso
R R
T crit
t t
Tabla 5.7: Método de la oscilación crı́tica de Ziegler y Nichols para determinar los
parámetros Kc , Ti y Td .
100
Tipo Controlador Gc (s) Kc = BP Ti Td
P Kc 0.5Kcrit ∞ 0
PI Kc 1 + T1i s 0.45 Kcrit 0.85 Tcrit 0
PID Kc 1 + T1i s + Td s 0.6 Kcrit 0.5 Tcrit 0.125 Tcrit
Ejemplo 5.13
Controlar el proceso nivel del problema 5.9 empleando la técnica de las oscilación
crı́tica de Ziegler y Nichols. Para propósitos de comparación emplear los controladores
PID ideal (ecuación (5.35)), no interactivo (ecuación (5.36)) y mejorado (ecuación
(5.29)). Para el control PID y PI D emplear el diagrama de bloques de la Fig. 5.1(b),
mientras que para el control PI Dy usar el diagrama de bloques de la Fig. 5.1(c).
OSCILACIÓN CRÍTICA
2
Tcrit
1.5
AMPLITUD
0.5
0
0 2 4 6 8 10 12 14 16 18 20
TIEMPO (sec)
SALIDAS CONTROLADAS
2
PI__Dy
1.5
SALIDA
0.5
PID y PI__D
0
0 10 20 30 40 50 60
TIEMPO (sec)
Ejemplo 5.14
OSCILACIÓN CRÍTICA
Tcrit
1.5
AMPLITUD
0.5
0
0 5 10 15 20 25 30 35 40 45 50
TIEMPO (sec)
SALIDAS CONTROLADAS
1.5
SALIDA
PI__Dy
1
PID y PI__D
0.5
0
0 10 20 30 40 50 60
TIEMPO (sec)
Kc = 0.3Kcrit Ti = 2.3τcrit Td = 0
Ejemplo 5.15
Kc = 0.3Kcrit Ti = 2.3τcrit Td = 0
OSCILACIÓN CRÍTICA
AMPLITUD
0
Tcrit
−5
−10
0 10 20 30 40 50 60
TIEMPO (sec)
SALIDA CONTROLADA
1
SALIDA
0.5
−0.5
0 50 100 150 200 250
TIEMPO (sec)
Fig. 5.36: Oscilaciones sostenidas (primer gráfico) para Kp = Kcrit y respuesta con-
trolada (gráfico inferior) para el ejemplo 5.15.
y a
u
e +L u y t
r
Gp(s)
e
−L
Proceso Tcrit
Relé
Ejemplo 5.16
1
Gp (s) =
s(s + 1)4
Solución: La primera parte del programa relay.m listado abajo, el cual usa el dia-
grama de bloques de la Fig. 5.37, permite obtener el primer y segundo gráfico de la
Fig. 5.39 para una magnitud del relé de L = 0.1. El diagrama de bloques de la Fig.
5.6 Métodos de Sintonización de Controladores PID 113
5.38 se emplea para determinar las cinco ecuaciones de estado del proceso:
u x5 1 x4 x3 x2 x1 = y
1 1 1 1
s s+1 s+1 s+1 s+1
Fig. 5.38: Diagrama de bloques del proceso mostrando sus variables de estado.
2
SALIDA y
Tcrit
1
a
0
0 10 20 30 40 50 60 70 80
TIEMPO
0.1
CONTROL u
+L
0
−L
−0.1
0 10 20 30 40 50 60 70 80
TIEMPO
SALIDAS CONTROLADAS
2
SALIDA
PI__Dy
1
PID y PI__D
0
0 10 20 30 40 50 60 70 80 90 100
TIEMPO (sec)
1
Fig. 5.39: Respuesta de Gp (s) = s(s+1) 4 al escalón empleando un relé (gráfico supe-
Ko y To
r r e u y
PID Proceso A
R R
A/4
t t
Controlar el proceso nivel del ejemplo 5.9 empleando la técnica de las oscilaciones
amortiguadas de Harriot. Para propósitos de comparación emplear los controladores
PID (ecuación (5.35)), PI D (ecuación (5.36)) y PI Dy (ecuación (5.37)), empleando
las estructuras (a) y (b) de la Fig. 5.1.
5.6 Métodos de Sintonización de Controladores PID 115
Tabla 5.8: Método de las oscilaciones amortiguadas de Harriot para hallar los
parámetros Kc , Ti y Td .
100
Tipo Controlador Gc (s) Kc = BP Ti Td
P Kc Ko ∞ 0
PI Kc 1 + T1i s Ko To /1.5 0
PID Kc 1 + T1i s + Td s Ko To /1.5 To /6
OSCILACIÓN SOSTENIDA
1.5
1
AMPLITUD
A
0.5
A/4
0
−0.5
0 2 4 6 8 10 12 14 16 18 20
TIEMPO (sec)
SALIDAS CONTROLADAS
2
PI__Dy
SALIDA
0 PID PI__D
−1
0 5 10 15 20 25 30 35
TIEMPO (sec)
OSCILACIÓN AMORTIGUADA
1.5
AMPLITUD
1
A
0.5 A/4
0
0 5 10 15 20 25 30 35 40 45 50
TIEMPO (sec)
SALIDAS CONTROLADAS
1.5
SALIDA
PID PI__D
0.5
0
0 10 20 30 40 50 60
TIEMPO (sec)
H(s)
Z ∞ Z ∞
2 2
IST E = t e(t)dt IST E = t2 e2 (t)dt (5.41)
0 0
118 Control PID SISO
donde el error e(t) puede ser de la forma dada en (5.40). Una vez formulado el ı́ndice
de rendimiento, por ejemplo ISE, el siguiente paso consiste en minimizar dicho ı́ndice:
∂ISE
=0
∂z
donde z puede ser una determinada variable o parámetro del cual se desea deter-
minar su valor extremo; por ejemplo, el parámetro Ti de un controlador PID. A
continuación se presentan algunas reglas de sintonización basados en diversos ı́ndices
de rendimiento.
Método de Shinskey
Las reglas de sintonización de la Tabla 5.9, atribuidas Shinskey (control I y PI) y
Nomura et al. (control PID), se aplican a procesos que poseen una FT de la forma:
Gp (s) = Kp e−τ s . El control se realiza empleando la configuración de la Fig. 5.1(a).
Los trabajos de Shinskey Nomura et al. se encuentran en las referencias de [11].
Tabla 5.9: Reglas de sintonı́a para controlar procesos tipo G p (s) = Kp e−τ s .
Ejemplo 5.19
1.2
0.8
0.6
0.4
SALIDA
0.2
−0.2
−0.4
−0.6
−0.8
0 5 10 15
TIEMPO (sec)
Fig. 5.44: Control PI del proceso Gp (s) = Kp e−τ s usando ITAE (ejemplo 5.19).
Método de Wang–Juang–Chan
Las fórmulas de sintonización de Wang–Juang–Chan (citadas en [19]) se basan en
el criterio de optimización de IT AE y se pueden aplicar a procesos que aceptan un
modelo dinámico como el de la ecuación (5.33). Estas fórmulas son:
Ejemplo 5.20
K
p
Controlar el proceso con FT: Gp (s) = T s+1 e−τ s , donde Kp = 2, τ = 2 y T = 20.
Emplear el criterio ISE, un controlador PID y las reglas de la Tabla 5.10.
Solución: La Fig. 5.45 muestra la respuesta controlada, resultado que se obtiene
ejecutando el programa zh1.m listado abajo.
120 Control PID SISO
a1
τ b1
PI Kc = Kp T a1 0.980 0.712 0.569 1.072 0.786 0.628
b1 –0.892 –0.921 –0.951 –0.560 –0.559 –0.583
T
PI Ti = a2 +b2 (τ /T ) a2 0.690 0.968 1.023 0.648 0.883 1.007
b2 –0.155 –0.247 –0.179 –0.114 –0.158 –0.167
a1
τ b1
PID Kc = Kp T a1 1.048 1.042 0.968 1.154 1.142 1.061
b1 –0.897 –0.897 –0.904 –0.567 –0.579 –0.583
T
PID Ti = a2 +b2 (τ /T ) a2 1.195 0.987 0.977 1.047 0.919 0.892
b2 –0.386 –0.238 –0.253 –0.220 –0.172 –0.165
τ b3
PID Td = a3 T T a3 0.489 0.385 0.316 0.490 0.384 0.315
b3 0.888 0.906 0.892 0.708 0.839 0.832
a1
τ b1
PID Kc = Kp T a1 1.260 1.053 0.942 1.295 1.120 1.001
b1 –0.887 –0.930 –0.933 –0.619 –0.625 –0.624
T
PID Ti = a2 +b2 (τ /T ) a2 0.701 0.736 0.770 0.661 0.720 0.754
b2 –0.147 –0.126 –0.130 –0.110 –0.114 –0.116
τ b3
PID Td = a3 T T a3 0.375 0.349 0.308 0.378 0.350 0.308
b3 0.886 0.907 0.897 0.756 0.811 0.813
1.5
0.5
SALIDA
−0.5
−1
−1.5
0 5 10 15 20 25 30 35 40
TIEMPO (sec)
Kp
Fig. 5.45: Control PID del proceso Gp (s) = T s+1 e−τ s usando ISE (ejemplo 5.20).
Método de Kessler
La Tabla 5.12 muestra las fórmulas propuestas por C. Kessler [21] para determinar
los parámetros de un controlador PID basado en criterios óptimos de diseño.
Ejemplo 5.21
Empleando el método de Kessler controlar un avión–helicóptero cuya dinámica sim-
plificada se puede representar como:
1
Gp(s) =
(1 + 20s)(1 + 10s)(1 + 0.5s)
Solución: La FT del proceso, que es de tercer orden, se puede formular como:
Kp
Gp(s) = Q
(1 + T1 s)(1 + T2 s) µ (1 + tµ s)
122 Control PID SISO
0.8
AMPLITUD
0.6
0.4
0.2
0
0 20 40 60 80 100 120 140 160 180
TIEMPO (sec)
SALIDA CONTROLADA
1.5
1
SALIDA
0.5
0
0 2 4 6 8 10 12
TIEMPO (sec)
Fig. 5.46: Respuesta al escalón (gráfico superior) y respuesta controlada (gráfico in-
ferior) empleando un controlador PID de acuerdo al método de Kessler.
Ejemplo 5.22
RESPUESTA AL ESCALÓN
300
250
AMPLITUD
200
150
100
50
0
0 500 1000 1500
TIEMPO (sec)
SALIDA CONTROLADA
1.5
1
SALIDA
0.5
0
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
TIEMPO (sec)
Fig. 5.47: Respuesta al escalón (gráfico superior) y respuesta controlada (gráfico in-
ferior) empleando un controlador PID de acuerdo al método de Kessler.
Kp
Método de Xue para Procesos con FT: s
e−τ s
El método de Xue se aplica a procesos que poseen una FT con parte proporcional,
parte integral y tiempo muerto de la forma:
Y (s) Kp −τ s
G(s) = = e (5.44)
U (s) s
Debido a la presencia del integrador, los controladores PD y PID resultan ser los
adecuados para controlar tales procesos. La Tabla 5.13 muestra los valores de los
coeficientes empleados por los parámetros de los controladores PD y PID [22]:
a1
ControladorP D : Kc = Td = a 2 τ
Kp τ
a3
ControladorP ID : Kc = Ti = a 4 τ Td = a 5 τ (5.45)
Kp τ
Criterio a1 a2 a3 a4 a5
ISE 1.03 0.49 1.37 1.496 0.59
ITSE 0.96 0.45 1.36 1.66 0.53
ISTSE 0.9 0.45 1.34 1.83 0.49
Ejemplo 5.23
Kp
Controlar el proceso con FT Gp (s) = s e−τ s , con Kp = 2, T = 20 y τ = 2 usando
el criterio ISE y un controlador PID.
Solución: La Fig. 5.48 muestra la respuesta controlada, resultado que se obtiene
ejecutando el programa zh2.m listado abajo.
% zh2.m CONTROL PID USANDO ISE
clear all; close all; clc; s=tf(’s’); Kp=2; tau=2; T=20; % tau/T=0.1
a1=1.03; a2=0.49; a3=1.37; a4=1.496; a5=0.59; N=10;
[num,den]=pade(tau,3); Gtau=tf(num,den); % TIEMPO MUERTO: exp(-tau*s)
Gp=Kp/(s)*Gtau; % PROCESO A CONTROLAR
Kc=a3/(Kp*tau); Ti=a4*tau; Td=a5*tau;
Gc=Kc*(1+1/(Ti*s)+Td*s); PID=feedback(Gc*Gp,1); % CONTROL PID
step(PID,’k’); title(’CONTROL PID USANDO ISE’);
xlabel(’TIEMPO’); ylabel(’SALIDA’); print -deps -f zh2
Kp
Método de Xue para Procesos con FT: s(T s+1)
e−τ s
La FT del siguiente proceso posee parte proporcional, parte integral, parte retardo
de primer orden y tiempo muerto:
y(s) Kp
G(s) = = e−τ s (5.46)
u(s) s(T s + 1)
5.6 Métodos de Sintonización de Controladores PID 125
0
SALIDA
−1
−2
−3
−4
−5
0 5 10 15 20 25 30 35
TIEMPO (sec)
Kp
Fig. 5.48: Control PID del proceso Gp (s) = s e−τ s (ejemplo 5.23).
Debido a la presencia del integrador, los controladores PD y PID resultan los ade-
cuados para controlar tales procesos. Las fórmulas para determinar los parámetros
del controlador PD son [22]:
2
Kc = Td = T τ (5.47)
3Kp τ
mientras que para el controlador PID, se tiene:
" 0.65 #
1.111T 1 T Ti
Kc = 2 h i2 Ti = 2τ 1 + Td = (5.48)
Kp τ 0.65 τ 4
1 + Tτ
Ejemplo 5.24
Kp
Controlar el proceso con FT Gp (s) = s(T s+1) e−τ s , con Kp = 2, T = 2 y τ = 2.
Solución: La Fig. 5.49 muestra la respuesta controlada, resultado que se obtienen
ejecutando el programa zh3.m listado abajo.
% zh3.m CONTROL PID
clear all; close all; clc; s=tf(’s’); Kp=2; tau=2; T=2;
[num,den]=pade(tau,3); Gtau=tf(num,den); % TIEMPO MUERTO: exp(-tau*s)
Gp=Kp/(s*(T*s+1))*Gtau; % PROCESO A CONTROLAR
Kc=1.111*T/(Kp*tau^2)/(1+(T/tau^(0.65)))^2; Ti=2*tau*(1+(T/tau)^(0.65));
Td=Ti/4;
Gc=Kc*(1+1/(Ti*s)+Td*s); PID=feedback(Gc*Gp,1); % CONTROL PID
step(PID,’k’); title(’CONTROL PID’);
xlabel(’TIEMPO’); ylabel(’SALIDA’); print -deps -f zh3
Kp
Método de Xue para Procesos con FT: T s−1
e−τ s
La FT del siguiente proceso posee parte proporcional, parte integral, parte retardo
de primer orden inestable y tiempo muerto:
y(s) Kp
G(s) = = e−τ s (5.49)
u(s) Ts − 1
126 Control PID SISO
CONTROL PID
1.6
1.4
1.2
1
SALIDA
0.8
0.6
0.4
0.2
−0.2
0 50 100 150
TIEMPO (sec)
Kp
Fig. 5.49: Control PID del proceso Gp (s) = s(T s+1) e−τ s usando ISE (ejemplo 5.24).
Criterio a1 b1 a2 b2 a3 b3 γ
ISE 1.32 0.92 4.00 0.47 3.78 0.84 0.95
ITSE 1.38 0.90 4.12 0.90 3.62 0.85 0.93
ISTSE 1.35 0.95 4.52 1.13 3.70 0.86 0.97
Ejemplo 5.25
Kp
Controlar el proceso con FT Gp (s) = T s−1 e−τ s , con Kp = 2, T = 2 y τ = 2.
3
SALIDA
−1
−2
−3
0 10 20 30 40 50 60 70
TIEMPO (sec)
Kp
Fig. 5.50: Control PI-D del proceso Gp (s) = s−1 e−τ s usando ISTSE (ejemplo 5.25).
Td=a3*T*(1-b3*(tau/T)^(-0.02))*(tau/T)^gamma;
Gc=Kc*(1+1/(Ti*s)+Td*s/(1+Td*s/N)); PI_D=feedback(Gc*Gp,1);% CONTROL PI_D
step(PI_D,’k’); title(’CONTROL PI_D USANDO ISTSE’);
xlabel(’TIEMPO’); ylabel(’SALIDA’); print -deps -f zh4
yi
u Scope
y
Step =1 yi
u
1 10
5
1.12s yi u s4 +10s3 +35s2 +50s+24
Kc=5 Ti =1.12 um =3.5
Transfer Fcn
t y
Clock y
t
EFECTO WINDUP
2
SALIDA y(t)
t1
1
0
0 2 4 6 8 10
TIEMPO [s]
4
CONTROL u(t)
t2
2
0
0 2 4 6 8 10
TIEMPO [s]
INTEGRADOR yi(t)
10
0
0 2 4 6 8 10
TIEMPO [s]
% windupgraf.m
clear all; close all; clc; load yi; load y; load u; load t;
subplot(311), plot(t,y,’k’), xlabel(’TIEMPO [s]’), Ylabel(’SALIDA y’),
title(’EFECTO WINDUP’)
subplot(312), plot(t,u,’k’), xlabel(’TIEMPO [s]’),Ylabel(’CONTROL u’)
subplot(313), plot(t,yi,’k’),xlabel(’TIEMPO [s]’),Ylabel(’INTEGRADOR yi’)
print -f -deps windupfig, print -s -deps windupsim
Existen diversos métodos para eliminar en gran medida el efecto windup en sis-
temas de control que emplean controladores PID continuos [24], [24]. Uno de estos
5.7 El Efecto Windup 129
1/1.2 tt
rr
REF. Clock tt
rr GANANCIA 1/Ti
1
1/1.2 Scope
s uu
1/Ti INTEGRADOR uu
10
1.3
s4 +10s3 +35s2 +50s+24
Kc SATURACIÓN
SISTEMA A CONTROLAR
1 yy
0.1 du/dt
0.5s+1 yy
FILTRO Td DERIVADOR antiwindup .m CONTROLADOR PID CON MECANISMO
ANTI WINDUP. EL FILTRO SE PUEDE SELECCIONAR
A VOLUNTAD.
Fig. 5.53: Diagrama Simulink que muestra un controlador PID con mecanismo anti
windup.
1.2
1
SALIDA y(t)
0.8
0.6
0.4
0.2
0
0 1 2 3 4 5 6 7 8 9 10
TIEMPO [s]
2.5
CONTROL u(t)
1.5
1
0 1 2 3 4 5 6 7 8 9 10
TIEMPO [s]
% antiwindupgraf.m
clear all; close all; clc; load yy; load rr; load uu; load tt;
subplot(211), plot(tt,rr,’k’,tt,yy,’k’), xlabel(’TIEMPO [s]’),
Ylabel(’SALIDA y’), title(’CONTROLADOR PID CON MECANISMO ANTI WINDUP’)
subplot(212), plot(tt,uu,’k’), xlabel(’TIEMPO [s]’), Ylabel(’CONTROL u’)
print -f -deps antiwindupfig, print -s -deps antiwindupsim
de(t) d
= (r(t) − y(t))
dt dt
Este fenómeno es conocido en inglés como derivative kick (puntapié derivativo) y
su efecto se puede apaciguar si es que utilizamos como señal de entrada únicamente
la señal realimentada y en lugar de e. De esta forma, (5.15) con de(t) dy(t)
dt = − dt se
convierte en: Z
1 dy
u = Kc e + edt − Td
Ti dt
Otra modificación importante es filtrar la acción derivativa del controlador PID origi-
nal mediante un filtro de primer (o segundo) orden para disminuir el ruido derivativo.
Esta caracterı́stica limita la amplificación del ruido de medición de alta frecuencia
en la salida del controlador. La señal de control será ası́ menos ruidosa y la ganancia
en alta frecuencia permanecerá dentro de cotas apropiadas. Un término derivativo
práctico, ya que un derivador puro no es realizable, puede aproximarse mediante un
término de primer orden que posee una constante de tiempo Tf , el cual a menudo se
normaliza con respecto al tiempo derivativo Td . Por consiguiente, el derivador puro
del algoritmo PID se modifica como sigue:
Td s Td
Td s Tf =
1 + Tf s N
Kc K c Td s
u(s) = Kc e(s) + e(s) − y(s) = P (s) + I(s) + D(s) (5.51)
Ti s 1 + Tf s
5.8 El Algoritmo PID Discreto Modificado 131
Kc K c Td s Td
P (s) = Kc e(s) I(s) = e(s) D(s) = − y(s) Tf =
Ti s 1 + Tf s N
Los términos P , I y D representan las partes proporcional, integral y derivativa del
controlador PID modificado, respectivamente.
Sea k el tiempo discreto, el cual está relacionado con el tiempo continuo t mediante
la relación t = T k, donde T es el tiempo de muestreo o discretización. La parte
proporcional P = Kc e(s) de (5.51) se discretiza directamente, obteniéndose:
P = Kc e(k) (5.52)
Rt
Para la parte integral I(s) = TKics e(s), o lo que es lo mismo: I(t) = Kc
Ti 0 e(t)dt
empleamos la aproximación trapezoidal (ver ejemplo A.46):
k k−1
Kc X [e(i) + e(i − 1)] Kc X [e(i) + e(i − 1)] Kc T [e(k) + e(k − 1)]
I(k) = T = T +
Ti 2 Ti 2 Ti 2
i=1 i=1
Kc T
I(k) = I(k − 1) + [e(k) + e(k − 1)] (5.53)
2Ti
Kc T d s
La parte derivativa D(s) = − 1+T f s
y(s) se puede escribir como:
donde P (k), I(k) D(k) se dan en (5.52), (5.53) y (5.54) respectivamente. También
se debe de incluir el efecto del limitador, basado en un modelo con presencia de
saturación con valores máximo y mı́nimo umax y ulow respectivamente:
v = P + I + D;
if(v < ulow), u = ulow; elseif(v > umax), u = umax; else u = v;
100
Tipo Controlador Gc (s) Kc = BP Ki = Kc /Ti K d = K c Td
1 T
P Kc Kp τ +Ts 0 0
Ki 0.9 T 0.27 Ts T
PI Kc + s Kp τ +0.5Ts − 0.5Ki Kp (τ +0.5Ts )2 0
Ki 1.2 T 0.6 Ts T 0.5 T
PID Kc + s + Kd s Kp τ +Ts − 0.5Ki Kp (τ +0.5Ts )2 Kp T s
100
Tipo Controlador Gc (s) Kc = BP Ki = Kc /Ti K d = K c Td
P KC 0.5Kcrit ∞ 0
Ki
PI Kc + s 0.45 Kcrit − 0.5Ki 0,54 K crit
Tcrit 0
Ki Kcrit Tcrit
PID Kc + s + Kd s 0.6 Kcrit − 0,5Ki 1.2 Tcrit 0.075Kcrit Ts
Ejemplo 5.26
0.8
0.4
0.2
0
0 10 20 30 40 50 60 70 80 90 100
0.5
0.4
Señal de control u (V)
0.3
0.2
0.1
0
0 10 20 30 40 50 60 70 80 90 100
Tiempo [s]
ep = 0; x1 = 0; x1p=0; x2 = 0; Ip = 0; Dp=0;
% ******** LAZO DEL SISTEMA DE CONTROL *********
Mm = 5000; T = 0.01; Nn = 10; ulow = -5; uhigh = 5;
for k = 1:Mm
r = 1; R(k) = r; e = r - x1;
P = Kp*e; I = Ip + T*Kp*(e+ep)/(2*Ti);
D = (Td/(Nn*T + Td))*Dp - Kp*Td*Nn*(x1 - x1p)/(Nn*T + Td);
v = P + I + D;
if(v < ulow), u = ulow; elseif( v > uhigh), u = uhigh; else u = v;
end
U(k) = u;
% MODELO DE SEGUNDO ORDEN DEL PROCESO (DISCRETIZACI ÓN DIRECTA)
x1 = x1 + T*x2; Y(k) = x1;
x2 = x2 + T*(-a1*(x1)-a2*x2+b*u);
ep = e; x1p=x1; Ip=I;
end
% GRAFICOS
ejex = linspace(0,Mm*T,Mm); subplot(2,1,1)
plot(ejex,R,ejex,Y); grid; ylabel(’Posición angular (rad)’)
subplot(2,1,2); plot(ejex,U); grid; ylabel(’Se~nal de control u (V)’)
xlabel(’Tiempo [s]’); print -f -deps pidposfijo
5.9. Problemas
Problema 5.1
Las FTs Ga (s) hasta Gj (s) corresponden a procesos a ser controlados. Determinar
para cada una de ellos los siguientes modelos dinámicos aproximados:
Kp −τ s
GA (s) = e
Ts + 1
134 Control PID SISO
Kp τ
GB (s) = n
; ≥ 0.104
(Tn s + 1) T
Kp τ
GC (s) = ; < 0.104
(T1 s + 1)(T2 s + 1) T
2 4
Ga (s) = Gb (s) =
(s + 1)3 (s + 1)5
−3s + 2 s2 − 3s + 6
Gc (s) = Gd (s) =
(s + 1)3 (s + 1)(s2 + 3s + 6)(s2 + s + 2)
−10s + 4 6
Ge (s) = e−s/2 Gf (s) =
(s + 1)2 (s + 3)3 (s + 1)6
3 3
Gg (s) = e−s Gh (s) = e−2s
(s + 1)(2s + 1) (s + 1)4
7 3s + 6
Gi (s) = e−30s Gj (s) = e−s/10
(17s + 1)(6s + 1)3 (s + 1)(4s + 1)
Problema 5.2
Problema 5.3
Problema 5.4
Problema 5.5
Problema 5.6
Realizar los controles PI o PID según corresponda, de los procesos G k (s) al Gt (s)
empleando el método de Kessler.
2
Gk (s) =
(1 + 20s)(1 + 0.1s)3 (1 + 0.3s)3
9
Gl (s) =
(1 + 20s)(1 + 30s)(1 + 0.2s)4 (1 + 0.5s)2
2
Gm (s) =
s(1 + s)3 (1 + 2s)2
8
Gn (s) =
s(1 + 20s)(1 + 0.1s)3 (1 + 0.3s)3
5
Go (s) =
(1 + 0.1s)(1 + 0.2s)(1 + 30s)(1 + 0.3s)2 (1 + 0.5s)2
3
Gp (s) =
s(1 + s)(1 + 2s)(1 + 40s)(1 + 0.2s)4 (1 + 0.5s)3
6
Gq (s) =
(1 + s)(1 + 2s)(1 + 40s)(1 + 50s)(1 + 0.2s)4 (1 + 0.5s)3
8
Gr (s) =
(s + 10)(s + 9)(s + 2)
4
Gs (s) =
s(s + 3)2 (s + 5)(s + 6)
4
Gt (s) = 2
s(1 + s) (1 + 2s)(1 + 0.9s)
Problema 5.7
Para el proceso del problema 2.2, diseñar un sistema de control PID para controlar la
velocidad de la turbina actuando sobre una válvula de control instalada en la tuberı́a
de entrada de agua. Asumir que la FT de transferencia de la válvula es una constante
Kv = 1.4. Se sabe que Kp = 3.6 y T = 6.8 s.
Problema 5.8
Para el proceso del problema 2.4, diseñar un sistema de control PID para controlar la
presión Po en el interior del tanque actuando sobre una válvula de control instalada
en la tuberı́a de entrada de gas. Asumir que T = 3.4 s y que la FT de transferencia
de la válvula es:
2
0.8s + 1
Problema 5.9
Para el proceso del problema 2.5, diseñar un sistema de control PID para controlar
la posición x de la masa M actuando sobre un pistón de control conectado a la masa
M . Asumir que M = 120 kg, K = 2 N/m, B = N/m/s y que la FT de transferencia
del pistón es 4.5.
136 Control PID SISO
Problema 5.10
Para el proceso del problema 2.7, diseñar un sistema de control PID para controlar
la temperatura TF actuando sobre una válvula de control instalada en la tuberı́a de
vapor. Asumir que la FT de transferencia de la válvula es una constante K v = 0.6.
Asumir valores apropiados de los otros parámetros.
Problema 5.11
Para el proceso del problema 2.8, diseñar un sistema de control PID para controlar
el desplazamiento de la masa M2 actuando sobre pistón neumático conectado a esta
masa. La FT de transferencia del pistón neumático es una constante de valor 2.3.
Asumir valores apropiados de los otros parámetros.
Problema 5.12
Empleando Simulink, diseñar un sistema de control PID para controlar la posición
del proceso descrito en el ejemplo 5.26.
Problema 5.13
Empleando Simulink, diseñar un sistema de control PID para controlar la salida del
proceso descrito en el ejemplo 5.3.
Problema 5.14
Empleando Simulink, diseñar un sistema de control PID para controlar la salida del
proceso:
s+2
Gp (s) =
(s + 1)(s + 3)(s + 4)(s + 5)(s + 6)
Problema 5.15
Para el proceso del ejemplo 2.1, diseñar un sistema de control PID para controlar el
flujo actuando sobre una válvula de control instalada en la tuberı́a. Asumir que la
FT de transferencia de la válvula es:
2
0.3s + 1
Problema 5.16
Para el proceso mostrado en la Fig. 2.3, diseñar un sistema de control PID para
controlar el nivel actuando sobre la válvula de control, cuya FT se asume constante
y de valor unitario.
Problema 5.17
Para el proceso mostrado en la Fig. 2.7, diseñar un sistema de control PID para
controlar el flujo de salida actuando sobre la válvula de entrada de FT constante y
de valor dos. Asumir valores adecuados de los parámetros.
Problema 5.18
Para el proceso mostrado en la Fig. 2.8 , diseñar un sistema de control PID para
controlar el desplazamiento y mediante una corriente de control u. Los valores de los
parámetros son: Km = 1.1 N/A, M = 1.3 kg, K = 1 N/m, B = 1.5 N/m/s.
Capı́tulo 6
Estrategias de Control
Set point
Controlador Convertidor
Placa de oroficio
(a)
FC
(b)
Conversión
I/P corriente/neumático
FIC FY
01 01
FT
01 FV
01
(c)
Fig. 6.1: (a) Diagrama de bloques. (b) Diagrama PFD. (c) Diagrama P&ID.
La Tabla 6.1, muestra las letras empleadas para la identificación de las variables
de medición y sus funciones, de acuerdo a la norma ANSI–ISA–S5.1–2009 [23]. Ob-
servar que las dos primeras columnas corresponden a las primeras letras, mientras
que las tres últimas columnas se refieren a las letras siguientes. Las notas indicadas
entre paréntesis se explican más abajo. Por otro lado, la Fig. 6.2 muestra las lı́neas
empleadas para unir los diversos componentes de un proceso, ası́ como los sı́mbolos
empleados en los diagramas P&ID.
1. Las letras usadas como primeras letras son variables medidas o de inicialización
y, si fuera el caso, una combinación de una variable medida o de inicialización
con una letra modificadora. Por ejemplo, T es una temperatura, pero TD es una
diferencia de temperatura debido a la letra modificadora D: diferencia.
2. El significado especı́fico de las variables A, B, E, F, H, I, J, K, L, P, Q, R, S,
T, U, V, W, Y y Z no deberı́an de ser alterados.
3. La variable A deberı́a de ser usada para todo tipo de composición y análisis de
las propiedades fı́sicas.
(a) Las variables User’s Choice C, D y M identifican conductividad, densidad
y humedad, tal como lo dicta la práctica.
4. La variable A no deberı́a de ser usada para identificar vibración u otro tipo de
análisis mecánico o de maquinaria. En tales casos, emplear la variable V.
5. Las letras User’s Choice C, D, M y O se pueden usar ya sea como primera letra
o como letra siguiente, pero no en forma simultánea.
6.1 Diagramas de Instrumentación 139
Instrumentos
discretos
Display y
control
compartido
Función de
computadora
Controlador
lógico
programable
C
12 P R I
Instrumentos en Luz Panel montado Purga o Estado rest de Interlock lógico
una caja común piloto en columna C desfogue un enclavador indefinido
con fila 12
(b)
Fig. 6.2: (a) Lı́neas de conexión, (b) Sı́mbolos para instrumentos y sus funciones.
140 Estrategias de Control
Tabla 6.1: Simbologı́a según norma ISA, donde, SIS: Safety Instrument System, FCE:
Final Control Element.
(c) PSE (pressure rupture disc) y TSE (fusible link ) se usan con todos los
sensores y elementos primarios para la protección en casos de condiciones
de emergencia de las variables P y T.
(d) S no deberı́a de ser usado para identificar Sistemas Instrumentados de
Seguridad y sus componenetes.
15. La forma gramatical del significado de una letra siguiente se debe de modificar
según el requerimiento. Por ejemplo, I se debe leer como indicador o indicando
y T como transmisor o transmitiendo.
16. G debe de usarse en lugar de I para instrumentos o dispositivos que propor-
cionen una vista secundaria tales como tubos para nivel, medidores de presión,
termómetro de vidrio y ventanas para medir flujo.
(a) La función pasiva G también se aplica a instrumentos o dispositivos que
proporcionan una vista no calibrada, tales como un tubo indicador de
vidrio o un monitor de TV.
17. Indicate se aplica normalmente a una lectura analógica o digital de un instru-
mento, o a una medición actual de una señal de entrada a un instrumento
discreto o a un monitor de un sistema de control distribuido.
(a) En el caso de un cargador manual, se debe de usar para marcar o fijar la
indicación de la señal de salida que se está generando. Esto es: HIC o HIK.
18. La función pasiva J (scan) indica una lectura periódica no continua, o varias
lecturas de la misma o de diferentes clases, tales como la medición de tempera-
turas en puntos múltiples.
19. La función pasiva L (light) identifica dispositivos o funciones que indican un
estado de operación normal, tal como en un motor ON–OFF. No es alarma.
20. La función pasiva record se aplica a cualquier forma de almacenamiento perma-
nente de información que permita extraerla empleando diversos medios.
21. La función de lectura/pasiva y salida/activa U (multifunction) se emplea para:
(a) Identificar lazos de control que poseen más funciones de lo usual.
(b) Ahorrar espacio en los esquemas no mostrando burbujas para cada función.
(c) Resulta conveniente describir en el esquema el tipo de función múltiple.
22. La función de lectura/pasiva accesoria X (unclassified ) se emplea para identi-
ficar hardware y dispositivos que no son para medición o control, pero que si
son necesarios para su operación adecuada.
23. Existen diferencias en el significado a ser considerado cuando se selecciona entre
una función de salida/activa para control C, switch S, válvula, damper (com-
puerta), louver (amortiguador) V, y dispositivo auxiliar Y. Esto es:
(a) C significa un dispositivo o función que recibe una señal de entrada, pro-
ducto de una medición, y genera una señal de salida que se emplea para
modular o conmutar una válvula V o un dispositivo auxiliar Y para un
predeterminado setpoint, tal como se realiza en el control de procesos.
(b) S significa un dispositivo o función que conecta, desconecta, o transfiere
señales de aire, eléctricas, electrónicas, hidráulicas, o circuitos. S puede
ser actuado manual o automáticamente mediante señales medidas direc-
tamente o provenientes de un transmisor.
(c) V significa un dispositivo que modula, conmuta, o, deja pasar o interrumpe
un flujo luego de recibir una señal que puede provenir de C, S o Y.
6.1 Diagramas de Instrumentación 143
La Fig. 6.3 muestra dos aplicaciones de diagramas P&ID, donde el signo asterisco
junto con los números dentro de las burbujas, representa un identificador de tres
caracteres. La Fig. 6.3(a) muestra que las variables PT, TT, LT y FT (Pressure,
Temperature, Level, y Flow Transmitter) se unen para formar la señal UU, la cual se
dirige al actuador de la válvula UV (Multivariable Valve). La señal UU también se
usa como señal SP (Set Point) para el controlador de f lujo FC (Flow Control), cuya
salida se dirige hacia el actuador de la válvula FV (Flow Valve). FO (Flow Orifice)
144 Estrategias de Control
PT
*11 TI L1
TT *51 21
*51
UU FC
LT *01 SP *21
FV
*21 *71
FT UV
*71 *01
FO
FO
(a)
STOP
LSL HS LIC
*02 *02−B *02
START FIC
HS HS LSH *01
*02−A *01 *02
T−1 LT FT FV
H−O−A
*02 *01 *01
P−1 FO
(b)
r Controlador
y C
T1 u r y
e u
Transmisor Controlador Proceso P
T2
Producto Transmisor Medición
Agua caliente
(a) (b)
r1 u 1= r 2 r1 e1 u1 e2 u2 y2 y1
T1 C1 C1 C2 P2 P1
y1 C2
u2 T2 y2 M2
T3 u 1= r 2
Producto M1
Agua caliente
(c) (d)
Fig. 6.4: Circuito de control realimentado (a) y su diagrama de bloques (b). Circuito
de Control en cascada (c) y su diagrama de bloques (d).
Ejemplo 6.1
OSCILACIÓN SOSTENIDA
1.5
y(t)
0.5
0
0 5 10 15 20 25 30 35 40
TIEMPOx60 (sec)
SALIDA CONTROLADA
60
TEMPERATURA °C
50
40
30
20
10
0
0 10 20 30 40 50 60
TIEMPOx60 (sec)
Fig. 6.5: Oscilaciones sostenidas para Kcrit = 2.18 (gráfico superior) y respuesta
controlada (gráfico inferior) para el caso control con lazo simple del ejemplo 6.1.
Fig. 6.6 muestra la respuesta al escalón a manera de una oscilación sostenida que se
obtiene haciendo que el controlador C2 en la Fig. 6.4(d) trabaje en modo proporcional
con ganancia Kcrit2 = 8.53. Notar que la oscilación posee un perı́odo Tcrit2 = 2.4.
Con tales valores se calculan los parámetros del controlador PI empleando la Tabla
5.7. El segundo gráfico de la Fig. 6.6 ilustra la salida y2 (t) controlada, la cual se logra
realizando post–sintonı́a, tal como se explica en el listado del programa casc1b.m.
El lazo de control primario incluye en su estructura el lazo de control secundario
descrito arriba. El diseño del control PI del lazo primario es similar al del secundario:
se genera una oscilación sostenida (tercer gráfico de la Fig. 6.6) y con los parámetros
Kcrit1 = 3.4 y Tcrit1 = 13 determinados, se calculan los parámetros del controlador
C1 . El gráfico inferior de la Fig. 6.6 ilustra la salida y1 controlada, luego de realizar
una postsintonı́a. Todos estos resultados se obtienen ejecutando el programa casc1b.m
listado abajo.
2
y2(t)
0
0 1 2 3 4 5 6 7 8 9 10
TIEMPOx60 (sec)
CONTROL DEL LAZO SECUNDARIO
2
y2(t)
0
0 5 10 15 20 25
TIEMPOx60 (sec)
OSCILACIÓN DEL LAZO PRIMARIO
2
y1(t)
0
0 5 10 15 20 25 30 35 40
TIEMPOx60 (sec)
SALIDA CONTROLADA EN CASCADA
TEMPERATURA °C
100
50
0
0 10 20 30 40 50 60 70
TIEMPOx60 (sec)
Fig. 6.6: Resultados para el caso control en cascada del ejemplo 6.1.
r2 = V y 1 e2 = r 2 − y 2 = V y 1 − y 2 (6.1)
u
V r2
y1 y2
q2
Qemador
q1
Horno
razon1.mdl
th
y1
Clock th
y1 1
u V
1/y1 V=y2/y1
Aire Inversa
r2 e2 2
PID
10 0.5s+1
Producto Product Scope
PI Controller Válvula + caudal y 2
Set V y2 y2
y2
40
35
30
RAZÓN V(t)
25
20
y2(t)
15
V = 10
10
y1(t)
5
0
0 200 400 600 800 1000
TIEMPO [s]
de ser mı́nimo en presencia de disturbios, lo cual no se logra sólo con el control por
realimentación. Para tales situaciones resulta útil el control anticipativo. Con esta
estrategia de control, los disturbios se miden antes de que ingresen al proceso, lo
cual permite calcular por adelantado la señal de control requerida para mantener la
variable controlada en el valor deseado y sin la presencia de disturbios.
La Fig. 6.10 muestra el diagrama de bloques de un sistema de control anticipa-
tivo donde Gp (s), Ga (s) y Gd (s) son las funciones de transferencia del proceso, del
controlador anticipativo y del disturbio, respectivamente. Además, d, u e y son las
señales disturbio, de control y de salida, correspondientemente. De la Fig. 6.10 se
deduce:
d
Gd(s)
u y
Ga(s) Gp(s)
El sistema de control anticipativo trabaja bien siempre que Gp (s) y Gd (s) repre-
senten lo más fiel posible al proceso y al disturbio. Evidentemente, en presencia de
errores de modelado, el desempeño del sistema de control anticipativo va a disminuir.
Existen dos casos notables para los que no se debe de emplear el control anticipativo.
El primero ocurre cuando el grado del polinomio del denominador de Gp (s) es mayor
que el grado del polinomio del denominador de Gd (s). Por ejemplo, sean:
1 1
Gp (s) = Gd (s) =
s2 + bs + c s+f
donde a, b, c y f son constantes. El controlador anticipativo se calcula como:
Gd (s) s2 + bs + c
Ga (s) = − =−
Gp (s) s+f
Lamentablemente, el controlador Ga (s) resultante es fı́sicamente no realizable, por lo
tanto no implementable.
El segundo caso ocurre cuando el tiempo muerto τp del modelo de la planta es
mayor que el tiempo muerto τd del modelo del disturbio. Por ejemplo, si:
1 1
Gd (s) = e−s Gp (s) = e−2s
s2 + bs + c s+f
Entonces:
Gd (s) s+f
Ga (s) = − =− 2 es
Gp (s) s + bs + c
Notar que el controlador anticipativo resultante es no implementable fı́sicamente
debido a que su tiempo muerto es positivo.
En un determinado diseño, Ga (s) puede resultar en una función de transferencia
inestable. Esto sucede cuando el modelo Gp (s) del proceso no es de mı́nima fase. Es
decir, cuando posee al menos un cero positivo. Para ilustrar esta situación asumamos
que (notar que Gp (s) es de mı́nima fase):
s−1 1
Gp (s) = Gd (s) =
s+1 4s + 1
que resulta en el siguiente controlador anticipativo inestable:
Gd (s) s+1
Ga (s) = − =−
Gp (s) (s − 1)(4s + 1)
6.4 Control Anticipativo 153
Ejemplo 6.3
Gd (s) 2.5s + 5
Ga (s) = − =−
Gp (s) 6s + 3
antic 1.mdl
d
d 5
2s+1 Scope 1
d Gd(s) u y
−2.5s−5 3
th
6s+3 0.5s+1
Clock th
Ga(s) Gp(s)
% antic1graf.m
clear all; close all; clc; load th; load d; load u; load y;
subplot(211), plot(th,d,th,u), xlabel(’TIEMPO [s]’), ylabel(’d(t),u(t)’),
title(’VARIABLES d(t) y u(t) EN EL CONTROL ANTICIPATIVO’)
subplot(212), plot(th,y), xlabel(’TIEMPO [s]’), ylabel(’y(t)’),
title(’SALIDA CONTROLADA y(t)’)
print -f -deps antic1r, print -s -deps antic1s
Control Anticipativo–Realimentado
El control anticipativo posee la capacidad de eliminar el efecto de los disturbios
medibles que actúan sobre la señal controlada. Por otro lado, el control realimentado
puede rechazar el efecto de los disturbios no medibles sobre la señal controlada,
ası́ como también corregir el efecto de los errores de modelado en el lazo de control.
Cae entonces por su propio peso, que si deseamos sacar ventaja de las bondades
de cada uno de los esquemas descritos, debemos de aplicar simultáneamente control
anticipativo y control realimentado , tal como se ilustra en la Fig. 6.13, donde d 1
es un disturbio medible con FT Gd1(s) conocida, mientras que d2 es un disturbio no
medible pero con FT Gd1(s) también conocida. El disturbio d2 se incluye para dar
mayor generalidad al problema, tal como se trata en el el siguiente ejemplo.
154 Estrategias de Control
1
d(t),u(t)
0
u
d
−1
−2
0 200 400 600 800 1000
TIEMPO [s]
x 10
−3 SALIDA CONTROLADA y(t)
2
0
y(t)
−2
−4
−6
0 200 400 600 800 1000
TIEMPO [s]
d1 Gd1(s)
G a (s)
r e u y
G c (s) G p (s)
d2 Gd2(s)
Ejemplo 6.4
anticreal 1.mdl
th
3
Clock th
d1 5s+1
d1 Gd1(s) Tiempo u
y
muerto : 3
−4.8s−0.6 5
5s+1 0.8s+1
Ga(s) Tiempo Gp(s) Tiempo
Scope
muerto : 1 muerto : 2
6 r
PID
9s+1
r = 10 Gc(s)
Gd1(s)1 Tiempo
muerto : 5
d2
12
10
8
y(t)
0
0 20 40 60 80 100 120 140 160 180 200
TIEMPO [s]
CONTROL u(t)
3.5
2.5
u(t)
1.5
0.5
0 20 40 60 80 100 120 140 160 180 200
TIEMPO [s]
% anticreal1graf.m
clear all; close all; clc; load th; load r; load u; load y;
subplot(211), plot(th,y,’k’,th,r,’k’), xlabel(’TIEMPO [s]’), ylabel(’y(t)’),
title(’SALIDA y(t) CONTROLADA’), grid
subplot(212), plot(th,u,’k’), xlabel(’TIEMPO [s]’), ylabel(’u(t)’),
title(’CONTROL u(t)’), grid
print -f -deps anticreal1r, print -s -deps anticreal1s
PIC
PIC PY
LAZO 2 LAZO 1
PT
PT
IMPULSION
ASPIRACION
BOMBA
(a)
TRANSMISOR
DE IMPULSION
LAZO 1
CONTROLADOR
DE IMPULSION PROCESO
VALVULA
PRESION
DE CONTROL
CONMUTADOR IMPULSION
SELECTOR PROCESO
VALVULA
PRESION
CONTROLADOR DE CONTROL ASPIRACION
DE ASPIRACION
LAZO 2
TRANSMISOR
DE ASPIRACION
(b)
Observar que existen dos lazos de control de presión, uno para la aspiración y el
otro para la impulsion. En condiciones normales, la presión se controla con el lazo
de impulsion. Si por alguna circunstancia de falla, cae la presión de aspiración de
la bomba por debajo del lı́mite de seguridad, entonces actúa el conmutador selector
para que entre en funcionamiento el lazo de aspiración en lugar del de impulsión.
El conmutador selector trabaja como sigue. En principio, el conmutador selecciona
la mı́nima de las dos señales que le llegan. Además, el set point del controlador
de aspiración tiene que ser inferior a los valores normales de trabajo. En operación
normal, la señal de salida del controlador de impulsion alcanza sus valores de trabajo.
Si la presión de aspiración baja demasiado hasta llegar a ser inferior a su set point,
entonces el controlador de aspiración genera una señal que es inferior a la que sale
del controlador de impulsion. En esta situación, el conmutador hace que entre en
operación el lazo de control de la aspiración. En este caso, el conmutador es del tipo
LSS (Low Selector Switch).
La Fig. 6.17 muestra otra aplicación del control override aplicado a un generador
de vapor, en donde el conmutador selector LSS hará la conmutación del lazo de
control de presión (Lazo 1) al lazo de control de nivel (Lazo 2), cuando el el nivel del
liquido en el hervidor caiga por debajo del nivel permisible previamente establecido.
Esta conmutación también provoca que se cierre la valvula de control.
PT
LAZO 2 LAZO 1
LT LC PC
LSS
AGUA
CALEFACTOR (a)
TRANSMISOR
DE PRESION
LAZO 1
CONTROLADOR
DE PRESION
VALVULA PROCESO
DE CONTROL PRESION
CONMUTADOR
LSS
VALVULA PROCESO
CONTROLADOR DE CONTROL NIVEL
DE NIVEL
LAZO 2
TRANSMISOR
DE NIVEL
(b)
MS
FY
2
FIC
2
FT FT FT
4 5 6 A
Flujo A
FY
B 2
MS B/ A
FY
1
FIC
1
FT FT FT
1 2 3
Flujo B
Selector VA VB
uA uB 100%
Abertura
de válvula
Pr
0% P
P
VA VB 0% 30% 50% 70% 100%
Reactor
u u
disturbio
SP e(t) PV
Gc (s) Gp(s)
e(t) (a)
e1
e3
e2
e(t) (b)
e1
e3
t
e2
Tp
(c)
Fig. 6.20: (a) Sistema realimentado. (b) Respuesta a un cambio escalón. (c) Respuesta
a un cambio en el disturbio.
También existen una serie de parámetros opcionales, a parte de los requeridos, que
deben de ser proporcionados por el usuario. En caso contrario, el programa usa los
valores por defecto, mostrados entre paréntesis en la siguiente lista:
6.9. Problemas
Problema 6.1
Destilado Sobrecalentador
Cabezal
Temperatura
del último plato
Destilado
Reflujo
Producto
Producto
Vapor
Vapor
Condensado (a) (b)
Problema 6.3
Problema 6.4
Presión Flujo
SP
Pro−
ducto
SP SP
Agua caliente
(b) Control de flujo a presión constante
(a) Control de temperatura
−k
SP
Agua caliente Pro−
Producto ducto SP
Agua caliente
−k
Pro−
ducto
SP Vapor
−k
SP
Agua
SP
(g) Control de la combustión en un horno (h) Control de nivel de una caldera tipo tambor
Problema 6.5
Multiplicador
SP Vapor
−k
CO
SP
Agua
SP
(g) Control de la combustión en un horno (h) Control de nivel de una caldera tipo tambor
Problema 6.6
Sensor de salinidad
Problema 6.7
PDI
103 FQI FR
FRCA
302 104 103
Filtro
(a) (b)
SO
Bomba 201 FR
503 FFC FR
504 505
(c)
FR (d)
711
FI H
FR TR PR 302 306
708 709 710
(e) (f)
Problema 6.8
La Fig. 6.26 muestra un alto horno para la producción de acero. Se deben de cumplir
los siguientes objetivos de control:
1. Control de la temperatura TM del viento mezclado mediante una configuración
cascada–relación de control entre las variables MF , mC y TM .
2. Control de la presión de salida P mediante la válvula motórica V4.
3. Control de la temperatura TS mediante la válvula V3.
4. Control del CO u O2 de la cámara de combustión con el auxilio de las señales
de presión PW y PD y de la válvula V2.
Elaborar los diagramas de bloque y de instrumentación correspondientes para cumplir
los requerimientos listados.
Problema 6.9
Diseñar los controladores G(s)p (principal) y G(s)s (secundario) del sistema de con-
trol en cascada mostrado en la Fig. 6.27. El set point es arbitrario. Sustentar las
especificaciones de diseño obtenidas.
Problema 6.10
Diseñar los controladores G(s)a (anticipativo) y G(c)c (de realimentación) del inter-
cambiador de calor mostrado en la Fig. 6.28, sabiendo que θr = 150◦ F y F = 25
gpms. Sustentar las especificaciones de diseño obtenidas.
Problema 6.11
En el horno industrial de la Fig. 6.29 se desea mantener la relación aire–gas en un
determinado valor, de modo tal que la combustión dentro del horno sea eficiente y
que la temperatura en dicho horno se mantenga constante.
166 Estrategias de Control
Sensor de
M
P CO u O2
V4
PW TS
AGUA V1
V2 V3
VAPOR PD
ALTO
mF
HORNO
V5
TM
Intercambiador
de calor Cámara
Placa de de mezcla
orificio Viento
mezclado
TUBO
mC M CIRCULAR
Válvula
V6 motórica
2 −s
10e
Gp(s) G s (s)
(s+1)((2s+1) (2s+1)((3s+1)
1/2
2/25
Flujo F
Ga (s)
−0.417 Intercambiador
θr θ
4 Flujo 0.6e −5s
Gc (s)
3s+1 (20s+1)(5s+1)
Válvula de control Intercambiador
88
8 8 8 8 8 8 Horno 8
8 industrial 8
8 8 8
8
8
Gas
8 8 8 8 8 8 8
Sensor
rrq
de CO 8 t 34 de56 78temp Sensor
7 I K J
caliente
Aire
8
B D E C B ? A @ 8
8
q t s s ~ pop 8
8 ~ O|8
{ Q P 65658
~ |8
{ 98R8U8 ~ |8
{ :; 9 RS ~ F8
{ 8
| HIH [ 8 ~ FG |8
{ ~EDED |8
8 { a ~ |8
8{ <8>?> 8~ |8 { <= ~ |{ nmn }8i }8}8}8}8}8}8}8}8}8}8k}
y jij 8
z8 zy 8
Aire
u vu o L8NON LM W8
v8 V U T T V W \ 8
] X [ Z Z \ ] Y X b 8
c ^ a ` ` b c _ ^ 8
e d f f h g e d m 8
8
8
8
8
8
8
lkl
u8
v v x8 u y 8
z y z
u vu w x8
v8 w x8 w x8 w x8 w x8 w x8 w x8 w x8 w x8 w x8 w xw Artículos calentados
Fig. 6.29: Horno industrial.
Capı́tulo 7
Por consiguiente:
1 y(s)/r(s)
Gc (s) = (7.1)
Gp (s) 1 − y(s)/r(s)
168 Sı́ntesis de Controladores SISO y MIMO
Se puede forzar que la señal controlada y(t) sea la curva de reacción de un proceso
de primer orden de ganancia unitaria y constante de tiempo Tc :
y(s) 1
= (7.2)
r(s) Tc s + 1
H(s)
Proceso Proporcional
Cuando Gp (s) = Kp (proceso proporcional), la ecuación (7.3) toma la forma:
Kc 1
Gc (s) = Kc = (7.4)
s K p Tc
Kp
Gp (s) = (7.5)
Ts + 1
Kp
Gp (s) = (7.7)
(T1 s + 1)(T2 s + 1)
7.1 Método de Dahlin 169
donde T1 y T2 son las dos constantes de tiempo del proceso. Con Gp (s) dado por la
ecuación (7.7), (7.3) toma la forma:
1 T1
Gc (s) = Kc 1+ (Td s + 1) Kc = Ti = T 1 Td = T 2
Ti s K p Tc
(7.8)
Proceso Integral
Cuando:
Kp
Gp (s) =
s(T s + a)
1
Gc (s) = Kc (Td s + 1) Kc = Td = T (7.9)
K p Tc
1
Gc (s) = Kc s Kc = (7.10)
K p Tc
y(s) 1 − T3 s
= (7.12)
r(s) Tc s + 1
Kp e−τ s
Gp (s) = (7.14)
(T s + 1)
En este caso conviene forzar que la señal controlada y(t) sea la curva de reacción de
un proceso de primer orden con tiempo muerto y ganancia unitaria, de la forma:
y(s) e−τ s
= (7.15)
r(s) Tc s + 1
donde:
T τ Tc
Kc = Ti = T Td = α=
Kp (Tc + τ ) 2 Tc + τ
Ejemplo 7.1
1 1
SALIDA
SALIDA
0.5 0.5
0 0
0 2 4 6 8 10 12 0 2 4 6 8 10 12
TIEMPO [s] (sec) TIEMPO [s] (sec)
CONTROL DE UN PROCESO DE 2do ORDEN CONTROL DE UN PROCESO INTEGRATIVO
1 1
SALIDA
SALIDA
0.5 0.5
0 0
0 2 4 6 8 10 12 0 2 4 6 8 10 12
TIEMPO [s] (sec) TIEMPO [s] (sec)
PROCESO CON RPTA INVERSA O SOBRENIVEL CONTROL DE UN PROCESO CON TIEMPO MUERTO
2 1
SALIDA
SALIDA
1 0.5
0 0
−1 −0.5
−2 −1
0 2 4 6 8 10 12 0 5 10 15
TIEMPO [s] (sec) TIEMPO [s] (sec)
1. No interacción.
2. Exactitud estática.
3. Estabilidad.
172 Sı́ntesis de Controladores SISO y MIMO
Controlador Proceso
MIMO MIMO
r(s) e(s) u(s) y(s)
G c(s) G p (s)
ẋ = Ax + Bu y = Cx + Du (7.17)
donde G(s) y Go son las matrices de transferencia de lazo cerrado y de lazo abierto
del sistema. La matriz G(s) posee la forma:
G11 (s) · · · G1p (s)
.. .. ..
G(s) = . . .
Gp1 (s) · · · Gpp (s)
7.2.1. No Interacción
Los elementos ubicados fuera de la diagonal principal de G(s) determinan el grado
de interacción entre las diferentes entradas de referencia ri con respecto a las salidas
yi . Para obtener desacoplamiento completo entre tales entradas y salidas, se requiere
que G(s) sea diagonal, esto es:
Dado que G(s) tiene que ser diagonal por para no interacción, entonces, I − G(s)
también debe de ser diagonal. Por consiguiente, su matriz inversa [I − G(s)] −1 es
también diagonal y de la forma:
1
1−G11 (s) 0
1
1−G22 (s)
−1
[I − G(s)] =
..
.
1
0 1−Gpp (s)
Entonces podemos concluir que para exactitud estática (error en estado estable nulo)
se requiere:
lı́m [G(s)] = I (7.25)
s→0
7.2.3. Estabilidad
Para el caso de condiciones iniciales nulas, de (7.21) sabemos que:
Adj (I − A)
[I − A]−1 =
det(I − A)
donde Adj significa adjunta, det está por determinante y la ecuación polinómica:
det(I − A) = 0 (7.26)
es la ecuación caracterı́stica del sistema y es de gran trascendencia por que sus raı́ces
determinan la estabilidad del mismo como sigue. El sistema (7.17) es estable si todas
las raı́ces caracterı́sticas de 7.26 se localizan en el semiplano izquierdo del plano–s.
Si existe al menos una raı́z en el semiplano derecho del plano–s, entonces el sistema
es inestable. Si todas las raı́ces se localizan en el semiplano izquierdo del plano–s,
excepto al menos una que se ubique en el eje imaginario (el eje vertical del plano–s),
entonces el sistema es oscilante, que para fines prácticos también es inestable.
Es importante anotar que el proceso a controlar puede ser inestable, como es el
caso del proceso posición angular de un motor DC. Sin embargo, el sistema de control,
como el mostrado en la Fig. 7.3 (notar que Gp (s) forma parte de este sistema), debe
de tener comportamiento estable. A continuación se deduce la ecuación caracterı́stica
del sistema de control.
De la Fig. 7.3 se obtiene:
Adj [I + Go (s)]
[I + Go (s)]−1 =
det[I + Go (s)]
Entonces, el sistema MIMO de la Fig. 7.3 es estable si todas las raı́ces caracterı́sticas
de (7.28) se localizan en el semiplano izquierdo del plano–s. Si existe al menos una
raı́z en el semiplano derecho del plano–s, entonces el sistema es inestable. Si todas las
raı́ces se localizan en el semiplano izquierdo del plano–s, excepto al menos una que se
ubique en el eje imaginario (el eje vertical del plano–s), luego el sistema es oscilante,
que para fines de operación del sistema controlado, también es inestable.
7.2 Control MIMO vı́a Desacoplamiento 175
Para diseñar la matriz de control Gc (s), podemos asumir una matriz G(s) de la
forma:
1
Tniv s+1 0
G(s) = (7.30)
1
0 Ttemp s+1
La Fig. 7.4 muestra en detalle la interconexión de todos los bloques del sistema de
control MIMO del proceso tanque cerrado. Observar que el controlador MIMO se
sintetiza con cuatro controladores PI.
e1 1 u1 K p11
K c11 1+
r1 T c11 s T p11 s+1 y1
1 K p11
K c12 1+
T c12 s T p11 s+1
1 K p21 (T pas+1)
K c21 1+
T c21 s (T pbs+1)(T pcs+1)
r2 y2
1 K p21 (T pas+1)
K c12 1+
e2 T c12 s u2 (T pbs+1)(T pcs+1)
Fig. 7.4: Diagrama de bloques del sistema de control PID MIMO diseñado.
Step Response
0.8
0.6
To: Out(1)
0.4
0.2
Amplitude
0.8
0.6
To: Out(2)
0.4
0.2
0
0 200 400 600 800 1000 1200 0 200 400 600 800 1000 1200
Time (sec)
1 1
u1 = Kc11 (1 + ) e1 − Kc12 (1 + ) e2 ; e1 = r 1 − y 1
Tc11 s Tc12 s
1 1
u2 = −Kc21 (1 + ) e1 + Kc12 (1 + ) e2 ; e2 = r 2 − y 2 (7.33)
Tc21 s Tc12 s
178 Sı́ntesis de Controladores SISO y MIMO
k k
Kc11 X Kc12 X
u1 (k) = Kc11 e1 (k) + T e1 (i) − Kc12 e2 (k) − T e2 (i)
Tc11 Tc12
i=0 i=0
Xk Xk
Kc21 Kc12
u2 (k) = Kc21 e1 (k) + T e1 (i) − Kc12 e2 (k) − T e2 (i)
Tc21 Tc12
i=0 i=0
k−1 k−1
Kc11 X Kc12 X
u1 (k − 1) = Kc11 e1 (k − 1) + T e1 (i) − Kc12 e2 (k − 1) − T e2 (i)
Tc11 Tc12
i=0 i=0
k−1
X k−1
X
Kc21 Kc12
u2 (k − 1) = Kc21 e1 (k − 1) + T e1 (i) − Kc12 e2 (k − 1) − T e2 (i)
Tc21 Tc12
i=0 i=0
entonces:
Kc11
u1 (k) − u1 (k − 1) = Kc11 [e1 (k) − e1 (k − 1)] + T e1 (k)
Tc11
Kc12
−Kc12 [e2 (k) − e2 (k − 1)] − T e2 (k)
Tc12
Kc21
u2 (k) − u2 (k − 1) = Kc21 [e1 (k) − e1 (k − 1)] + T e1 (k)
Tc21
Kc12
−Kc12 [e2 (k) − e2 (k − 1)] − T e2 (k) (7.34)
Tc12
x(k) − x(k − 1)
ẋ ∼
= = A x(k) + B u(k)
T
donde:
x(1) y1 h u1 qC
x= = = u= =
x(2) y2 θ u2 qD
Para programación en tiempo real, la ecuación de estado discreta del proceso toma
la forma:
x = x + T (A x + B u) (7.36)
La simulación del sistema se logra ejecutando el programa pidmimotanque.m, el cual
toma en cuenta las ecuaciones discretas (7.35) y (7.36). El resultado de la simu-
lación se muestra en la Fig. 7.6. Observar que el controlador PID MIMO estabiliza
simultáneamente el nivel y la temperatura cumpliendo las especificaciones de diseño
del caso.
1
NIVEL [m]
0.5
0
0 500 1000 1500 2000 2500 3000 3500 4000
TIEMPO [s]
AGUA FRÍA [m3/s]
0.01
0.005
0
0 500 1000 1500 2000 2500 3000 3500 4000
TIEMPO [s]
TEMPERATURA [ºC]
60
40
20
0 500 1000 1500 2000 2500 3000 3500 4000
AGUA CALIENTE [m3/s]
TIEMPO [s]
0
−0.005
−0.01
0 500 1000 1500 2000 2500 3000 3500 4000
TIEMPO [s]
Fig. 7.6: Resultado de la simulación del sistema de control PID MIMO del tanque:
nivel y temperatura controladas.
% pidmimotanque.m CONTROL PID MIMO DEL PROCESO TANQUE CERRADO CON AGUA
clear all; close all; clc;
% PARÁMETROS
C=0.6; D=0.0159; d=0.0065; beta=d/D; E=(1-beta^4)^(-1/2); rhoD=996;
g=9.81; a=C*E*pi*d^2*rhoD*sqrt(2*g)/4; A=0.0314; rhoH=988; Cp=4186.8;
rhoC=998; thetaH=50+270.15; thetaC=20+270.15;
% VALORES ESTACIONARIOS
barh=0.4; bartheta=35+270.15; barqC=2.16e-4; barqH=0.5e-4;
barqD=2.16e-4; Rh=barh/barqD;
% MODELO LINEAL, DONDE: df1/dx1=a11, df1/dx2=a12, etc.
a11=-a/(2*A*sqrt(barh)); a12=0;
a21=a*bartheta*barh^(-1.5)/(2*A) - ...
180 Sı́ntesis de Controladores SISO y MIMO
(rhoC*thetaC*barqC+rhoH*thetaH*barqH)/(rhoD*A*barh^2);
a22=-a/(A*sqrt(barh)); b11=1/A; b12=1/A;
b21=rhoC*thetaC/(rhoD*A*barh); b22=rhoH*thetaH/(rhoD*A*barh);
AA=[a11 0;a21 a22]; BB=[b11 b11;b21 b22]; CC=[1 0;0 1]; DD = [0 0;0 0];
Tniv=60; Ttemp=100;
% PARÁMETROS DEL CONTROLADOR: SE DETERMINAN DE Gc EN mimopidsimb.m
Kc11=b22/((b22-b21)*b11*Tniv); Ti11=b22/(a21*b11-b22*a11);
Kc12=1/((b22-b21)*Ttemp); Ti12=-1/a22; Kc22=Kc12; Ti22=Ti12;
Kc21=b21/((b22-b21)*b11*Tniv); Ti21=b21/(a21*b11-b21*a11);
% CONDICIONES INICIALES
e1p=0; e2p=0; u1=0; u2=0; x = [0.4;20+270.15]; % NIVEL + TEMPERATURA
T = 0.2; M = 20000; % PERIODO DE MUESTREO Y NÚMERO DE MUESTRAS M
for k = 1:M % INICIO DEL LAZO DE CONTROL
if(k >= 0 && k <= M/4), r1 = 0.5; r2=20+273.15; % SE ~NALES DE REFERENCIA
elseif(k >= M/4 && k <= M/2), r1 = 0.2; r2=40+273.15;
elseif(k >= M/3 && k <= 3*M/4), r1 = 0.4; r2=70+273.15;
elseif(k >= 3*M/4 && k <= M), r1 = 0.3; r2=20+273.15; end
R1(k) = r1; R2(k) = r2;
% CALCULO DEl VECTOR DE CONTROL u(t)
e1 = r1 - x(1); Y1(k) = x(1); e2 = r2 - x(2); Y2(k) = x(2);
u1 = u1 + Kc11*(e1-e1p) + Kc11*T*e1/Ti11 ...
- Kc12*(e2-e2p) - Kc12*T*e2/Ti12; U1(k) = u1;
u2 = u2 - Kc21*(e1-e1p) - Kc21*T*e1/Ti21 ...
+ Kc22*(e2-e2p) + Kc22*T*e2/Ti22; U2(k) = u2; u = [u1;u2];
% MODELO LINEAL (DISCRETIZACION DIRECTA)
x = x + T*(AA*x + BB*u); e1p = e1; e2p = e2;
end
% GRÁFICOS
ejet = linspace(0,M*T,M); subplot(4,1,1), plot(ejet,R1,ejet,Y1),
grid, ylabel(’NIVEL [m]’), xlabel(’TIEMPO [s]’)
subplot(4,1,2), plot(ejet,U1), grid, ylabel(’AGUA FR ÍA [m^3/s]’),
xlabel(’TIEMPO [s]’)
subplot(4,1,3), plot(ejet,R2,ejet,Y2), grid
ylabel(’TEMPERATURA [K]’), xlabel(’TIEMPO [s]’)
subplot(4,1,4), plot(ejet,U2), grid, ylabel(’AGUA CALIENTE [m^3/s]’),
xlabel(’TIEMPO [s]’), print -f -deps pidmimotanque
Se puede demostrar (problema 2.6) que las ecuaciones de estado y de salida son:
ẋ = Ax + Bu y = Cx
0 0 1 0
0 0 0 1
A = − K1 K1 B1
−m B1
m1 m1 1 m1
K1
m2 − (K1m+K
2
2) B1
−m 2
− (B1m+B
2
2)
0 0
0 0 1 0 0 0
B=
m1
C=
1
0 0 1 0 0
1
0 m2
El programa mimopid02.m, cuyo listado se muestra abajo, simula el sistema de con-
trol pedido. En el resultado de la simulación (Fig. 7.7) se observa que las salidas
controladas y1 (gráfico superior izquierda) e y2 (gráfico superior derecha) controla-
dos, cumplen las especificaciones de diseño requeridas.
Step Response
0.8
0.6
To: Out(1)
0.4
0.2
Amplitude
0.8
0.6
To: Out(2)
0.4
0.2
0
0 10 20 30 40 50 60 70 0 10 20 30 40 50 60 70
Time (sec)
y1 (s) = Gp11 (s)[u1 (s) + D1 (s)u2 (s)] + Gp12 (s)[u2 (s) + D2 (s)u1 (s)]
y2 (s) = Gp22 (s)[u2 (s) + D2 (s)u1 (s)] + Gp21 (s)[u1 (s) + D1 (s)u2 (s)] (7.37)
Por consiguiente:
y1 m1 u1 e1
y= m= u= e=
y2 m2 u2 e2
e1 u 1 m1
G c1(s) Gp11(s)
r1 y1
D 1 (s) G p12(s)
D 2 (s) G p21(s)
r2 m2 y2
G c2 (s) G p22(s)
e2 u2
Step Response
0.8
0.4
0.2
Amplitude
0.8
0.6
To: Out(2)
0.4
0.2
0
0 10 20 30 40 50 60 0 10 20 30 40 50 60
Time (sec)
Controlador
P MIMO Sistema
r(s) e(s) u(s) y(s) r(s) −1
y(s)
K G p (s) (I+KG p (s)) KG p (s)
(a) (b)
Fig. 7.10: (a) Sistema de control MIMO con controlador MIMO Gc . (b) Sistema
equivalente.
−1
y(s) = Gp (s)u(s) u(s) = Gc e(s) y(s) = [I + Gp Gc (s)] Gp Gc (s)
las especificaciones de diseño para los dos canales (salidas) son: tiempo de estabi-
lización menor de 2 s, error en estado estable nulo y porcentaje de sobrenivel también
nulo.
Solución: Ejecutar el programa pmimo1.m, el cual sigue el procedimiento de diseño
arriba establecido. La Fig. 7.11 muestra que las salidas controladas del proceso
cumplen las especificaciones de diseño para las ganancias K1 = 2 y K2 = –1.5.
Es necesario anotar que con estos valores de las ganancias, se satisfacen simultánea-
mente las condiciones H1 > 0, H2 > 0, H3 > 0 y H4 > 0 establecidas en el criterio
de Hurwitz.
Step Response
0.8 y1(t)
0.6
To: Out(1)
0.4
0.2
Amplitude
1.5
1
To: Out(2)
y2(t)
0.5
0
0 1 2 3 0 1 2 3
Time (sec)
7.5. Problemas
Problema 7.1 Turbina
Basado en las técnicas descritas en las secciones 7.3 y 7.4, diseñar los controladores
MIMO para controlar el nivel y la temperatura del proceso tanque cerrado descrito
en la subsección 2.8.4. Las especificaciones de diseño tanto para el nivel como para
la temperatura son: 0 % de sobrenivel, error en estado estable nulo y tiempos de
estabilización lo más rapido posible.
L
F
m1
z
m2
x
z
d θ
T L
d
θ y
(a) (b)
m1 F
L m2 z
x θ
Control Predictivo
Con relación a la figura 8.1, el principio del control predictivo se caracteriza por
la siguiente estrategia:
w(t+k/t)
r(t+k/t) y(t+k/t)
Error
Horizonte de
optimización
k k+Nu −1 k=t/ t
(b)
Fig. 8.1: Estrategia del control predictivo. (a) Señales: deseada (w(t)), de referencia
(r(t)) y de salida predictiva (y(t + k/t)). (b) Señal de control predictivo u(t).
Entradas y
salidas Salidas + Trayectoria de
pasadas predecidas referencia
MODELO -
Entradas
futuras
OPTIMIZADOR
Funcion
’ de costo restricciones
tal como se ilustra en la Fig. 8.3, donde y(t) es la salida medible del proceso, u(t) es
la entrada al proceso (la señal de control), x(t) es la salida del modelo y n(t) es el
disturbio en el proceso.
n
u x y
MODELO
El Disturbio n(t)
La señal de disturbio n(t) incluye todos los efectos no deseados en la salida y(t).
Esta señal representa el efecto conjunto de todos los disturbios sobre el proceso,
otras entradas no medibles, ruido de medición, errores de modelado, incertidumbres,
etc. Una forma de modelar al disturbio consiste en introducir un ruido blanco e(t)
a un filtro. La salida del filtro, la señal de disturbio n(t) de interés, también es un
ruido pero coloreado. Los conceptos de ruido blanco y ruido coloreado se detallan a
continuación.
El ruido blanco e(t) es una señal aleatoria cuyos valores poseen una media o val-
or esperado nulo y una determinada distribución estadı́stica f (e). Esta distribución
puede ser uniforme, tal como se muestra en la Fig. 8.4 o gaussiana (la famosa cam-
pana). Si analizamos las señales de un ruido blanco en dos bases de tiempo diferentes,
encontraremos que tales valores no guardan correlación estadı́stica alguna entre ellas;
es decir, tales valores no están correlacionados. Sea e un vector de ruido blanco. La
media y la autocorrelación R(τ ) de e se expresan como:
n(t) C(z −1 )
= (8.2)
e(t) D(z −1 )
8.3 El Modelo del Proceso 195
R(τ ) R(τ )
σ2 Autocorrelación
τ τ
0 0
f(e) f(n)
... ... e n
e Filtro e
0 Ruido Ruido 0
blanco coloreado
uniforme
S(ω) S(ω)
Densudad
... ... espectral
de potencia
ω
0 0 ω
Fig. 8.4: Ruido blanco y ruido coloreado, con sus caracterı́sticas estadı́sticas.
donde f (.) es una función que puede estructurarse de diversas formas. Es decir,
f (.) puede ser una ecuación de diferencias, una red neuronal o una caja negra con
parámetros a ser estimados. Notar en (8.7) que cuando no se considera n(t), entonces:
x(t) = y(t), x(t − 1) = y(t − 1), y ası́ sucesivamente.
El Modelo CARIMA
El modelo CARIMA, del inglés Controlled Autoregressive Integrated Moving Av-
erage, es un modelo lineal básico y bastante extendido en su aplicación, y es pre-
cisamente el que emplearemos. Tal modelo CARIMA para un determinado proceso
puede ser representado por:
C(z −1 )
A(z −1 )y(t) = B(z −1 )u(t) + e(t) (8.8)
D(z −1 )
donde z es la variable de desplazamiento de la transformada Z, y:
El origen del término CARIMA se debe a que la ecuación de diferencias del modelo
del proceso presenta tres componentes, a saber, la componente salida autoregresiva
A(z −1 )y(t), de donde despejamos y(t):
donde:
B C
x(t + k/t) = u(t + k/t) n(t + k/t) = e(t + k/t)
AF AD
Ejemplo 8.1
El modelo lineal de orden dos de un servomotor DC puede ser descrito por las si-
guientes ecuaciones en el espacio de estado:
q̇ = w
ẇ = −c1 q − c2 w + c3 u
Ejemplo 8.2
Comparar las respuestas no ruidosa q(t) y ruidosa y(t) del ejemplo anterior. Los
parámetros requeridos se derivan de un proceso de segundo orden cuyas ecuaciones
de estado y de salida son conocidas. La respuesta q(t) se obtiene cuando la entrada al
proceso es una sinusoide u(t), mientras que la ruidosa y(t) se debe a un ruido blanco
gaussiano que se añade a q(t). Asumir un tiempo de muestreo de T = 0.01 s.
Solución: La solución del problema planteado se detalla en el programa ejruido.m.
Los resultados se muestran en la Fig. 8.5. Observar en la Fig. inferior que el ruido
e(t) empleado posee media cero y una función de distribución gaussiana.
198 Control Predictivo
u(t + k/t), k = 0, . . . , N2 − 1
donde :
∆u(t + k/t) = u(t + k/t) − u(t + k − 1/t) (8.16)
con ∆u(t + k/t) = 0 para k ≥ Nu . La trayectoria de referencia está representada por
la ecuación:
r(t + k/t) = αr(t + k − 1/t) + (1 − α)w(t + k/t) (8.17)
evaluada para k = 1, . . . , N2 , con r(t/t) = y(t). Los parámetros de diseño son:
u(t) [V] 1
0
−1
0 1 2 3 4 5 6 7 8 9 10
TIEMPO [s]
−3
x 10
5
q(t) [rad]
0
−5
0 1 2 3 4 5 6 7 8 9 10
TIEMPO [s]
5
y(t) [rad]
0
−5
0 1 2 3 4 5 6 7 8 9 10
TIEMPO [s]
0.5
e(t) [rad]
0
−0.5
0 1 2 3 4 5 6 7 8 9 10
TIEMPO [s]
e(t) GAUSS.
400
200
0
−0.3 −0.2 −0.1 0 0.1 0.2 0.3 0.4
<−−−−−− e(t) −−−−−−>
2. El filtro para w(t) se puede implementar fuera del lazo de control, no afectando
de esta manera a la estabilidad del sistema, pero sı́ contribuyendo al rechazo
del ruido.
200 Control Predictivo
N u =4
u
¢ £ £ ¢ ¤¤¥¤¥¤ ¨©¨© ªªªª ¬¬ ®®®® °±°± ²²²²
u(t+k/t)
¡ ¡ ¢¢ ¦¦§¦§¦ ¨¨ «« ¬¬ ¯¯ °° ³³
o o o o
o o o o
o o o o o o o o o o o o o o o o
o o o o o
o o o
r=w
y y(t+k/t)
N1 N2
PASADO FUTURO
TIEMPO ACTUAL t
donde el subı́ndice forz indica forzada. La respuesta libre ylibre (t + k/t) aparece como
consecuencia de los factores siguientes:
El efecto debido a las señales de control pasadas u(t − 1), u(t − 2), . . .
El efecto debido a un escenario de control futuro. Por defecto se tiene u(t/t) =
u(t − 1), u(t + 1/t) = u(t − 1), u(t + 2/t) = u(t − 1), . . .; esto es, ∆u(t/t) =
∆u(t + 1/t) = . . . = ∆u(t + Nu − 1/t) = 0.
El efecto debido a las perturbaciones futuras del ruido n(t + k/t).
Las condiciones iniciales a tomar son: y(t), y(t − 1), . . . , y(t − n), donde n es el orden
del proceso.
La componente forzada yf orz (t+k/t) aparece debido al efecto causado por cambios
consecutivos de la variable manipulada, tanto en el tiempo actual como en el tiempo
futuro. Es decir, originado por las acciones de control ∆u(t/t), ∆u(t + 1/t), . . . ,
∆u(t + Nu − 1/t), con las condiciones iniciales: y(k) = y(k − 1) = · · · = y(k − n) = 0.
La Fig. (Fig. 8.7(c)) muestra el efecto conjunto de las respuestas libre y forzada
en un proceso lineal, donde tales respuestas se pueden sumar gracias a que se cumple
el principio de superposición. Desafortunadamente, el principio de superposición no
es válido para procesos no lineales.
Por consiguiente, el efecto acumulativo de la acción conjunta de los escalones es:
yf orz (t + k/t) = gk ∆u(t/t) + gk−1 ∆u(t + 1/t) + · · · + gk−Nu +1 ∆u(t + Nu − 1/t) (8.20)
8.4 El Controlador Predictivo 201
y
3
Respuestas libre más forzada
2 Señal de referencia
1
Respuesta libre
0 Respuesta forzada
t
u Señales de control para
2 la respuesta lforzada
1
Señales de control para
0 la respuesta libre
t
donde los parámetros g1 , . . . , gN2 son los coeficientes de la respuesta del proceso al
escalón unitario. Es decir, la respuesta de la salida del proceso a los cambios tipo
escalón unitario en la entrada.
Para un proceso lineal, la respuesta al escalón unitario no depende del punto de
operación. Este punto es fijo y puede ser calculado fuera de lı́nea (“off-line”) usando
el modelo del sistema.
Para un proceso no lineal, como en el caso de una red neuronal, la respuesta al
escalón unitario es diferente para cada punto de operación. Esta respuesta tiene que
ser calculada en cada tiempo de muestreo (“on-line”), aplicando en cada instante de
muestreo un cambio escalón (ficticio) a la entrada actual del proceso y calculando su
efecto en la salida respectiva.
De la ecuación (8.20) se puede obtener la siguiente expresión para la componente
forzada:
Yf orz = GU (8.21)
donde:
T
Yf orz = yf orz (t + N1 /t) yf orz (t + N1 + 1/t) · · · yf orz (t + N2 /t)
g N1 gN1 −1 ... ...
gN1 +1 g N1 ... ...
G=
...
... ... ...
g N2 gN2 −1 . . . gN2 −Nu +1
T
U= ∆u(t/t) ∆u(t + 1/t) · · · ∆u(t + Nu − 1/t)
y empleando la ecuación (8.19), podemos escribir:
Y = Ȳ + GU (8.22)
202 Control Predictivo
donde:
Ejemplo 8.3
Cuando la entrada es u(k) = 1 para todo k ≥ 0, entonces y(k) = g(k) para todo
t ≥ 0. Luego, los coeficientes g(t) se determinan de:
(R − Y)T (R − Y) + λUT U = [(R − Ȳ) − GU]T [(R − Ȳ) − GU] + λUT U (8.23)
Ejemplo 8.4
Determinar la matriz dinámica de control para el proceso del ejemplo 8.1 empleando
los datos siguientes: N1 = 7, N2 = 12, Nu = 6.
Solución: La solución del problema planteado se detalla en el programa lcm1.m
listado a continuación.
% lcm1.m CÁLCULO DE UNA MATRIZ DINÁMICA DE CONTROL
clear all; close all; clc;
% PROCESO CONTINUO DE SEGUNDO ORDEN Y SU MODELO DISCRETO
Ac=[0 1;-14.4007 -1.2707]; Bc=[0;30.4696]; Cc=[1 0]; Dc=[0];
T=0.01; [G,H,C,D]=c2dm(Ac,Bc,Cc,Dc,T,’zoh’); [num,den]=ss2tf(G,H,C,D);
a1=den(2); a2=den(3); b1=num(2); b2=num(3);
% CONDICIONES INICIALES NULAS
qp=0; qpp=0; up=0; upp=0;
yp=0; ypp=0; yppp=0; ep=0; epp=0;
N1=6; N2 =12; Nu =7; % HORIZONTES DE CONTROL Y DE OPTIMIZACI ÓN
% RESPUESTA AL ESCALON
g(1) = b1; g(2) = -a1*b1 + b1 + b2;
for k=3:12; g(k) = -a1*g(k-1) -a2*g(k-2) + b1 + b2; end
% LUEGO, LA MATRIZ G TIENE LA FORMA:
G = [g(N1) g(N1-1) g(N1-2) g(N1-3) g(N1-4) g(N1-5) 0
g(N1+1) g(N1) g(N1-1) g(N1-2) g(N1-3) g(N1-4) g(N1-5)
204 Control Predictivo
IR R L IM
+ Kω
+
v C e
-
-
T ω2
J
ω1
ẋ = Ax + Bu; y = Cx
1
− RC − C1 0
Kω −Ke Kω
A= LKω +Kt Ke 0 LKω +Kt Ke
Kt
0 J 0
1
RC
B = 0 ; C= 0 0 1
0
Siguiendo el procedimiento de diseño propuesto, en el programa p11pred1.m, cuyo
listado se muestra abajo, se diseña un sistema de control predictivo con fuerza de
control escalar, para controlar la velocidad angular x3 = ω2 del eje del motor mediante
el voltaje de entrada v, el cual puede variar entre ± 100 volt. Las especificaciones de
diseño alcanzadas son: tiempo de estabilización de la señal controlada x 3 , menor que
6 s, respuesta con sobrepico máximo de 5 %, y error en estado estacionario nulo, tal
como se ilustra en la Fig. 8.9.
% p11pred1.m CONTROL DE LA VELOCIDAD DE UN PROCESO ELECTROMEC ÁNICO
clear all; close all; clc;
% MODELO DEL PROCESO EN TIEMPO CONTINUO
J = 0.01; Ke = 0.01; Kt = 0.01; R = 12; C = 0.5; L = 0.5; Kw = 1.8;
Ac = [-1/(R*C) -1/C 0;Kw/(L*Kw+Kt*Ke) 0 -Ke*Kw/(L*Kw+Kt*Ke);0 Kt/J 0];
Bc = [1/(R*C);0;0]; Cc = [0 0 1]; Dc = [0]; T=0.2; % TIEMPO DE MUESTREO
% MODELO LINEAL DISCRETO
[G,H,C,D]=c2dm(Ac,Bc,Cc,Dc,T,’zoh’); [numd,dend]=ss2tf(G,H,C,D);
a1=dend(2); a2=dend(3); a3=dend(4); b1=numd(2); b2=numd(3); b3=numd(4);
% RESPUESTA AL ESCALON
% RESPUESTA AL ESCALON Y MATRIZ GANANCIA GG
g(1) = b1; g(2) =-a1*b1+b1+b2; g(3)=-a1*g(2)-a2*g(1)+b1+b2+b3;
for k=4:10; g(k) =-a1*g(k-1)- a2*g(k-2)-a3*g(k-3)+b1+b2+b3; end;
N1 =1; N2 =10; Nu =1; % HORIZONTES
for k=1:4
yf(k)=0; y(k)=0; r(k)=0; u(k)=0; % CONDICIONES Y PAR ÁMETROS INICIALES
end
du(1)=0; alf = 0.85; lambda = 0; MM=1000;
% LAZO DE CONTROL
for t =4:MM+3
for k=1:N2
W(t+k)= 4*sign(sin(0.01*t)); % TRAYECTORIA DESEADA
r(t+k) = alf*r(t+k-1) + (1-alf)*W(t+k); % TRAYECTORIA DE REFERENCIA
yf(t+k) = -a1*yf(t+k-1)-a2*yf(t+k-2)-a3*yf(t+k-3)+(b1+b2+b3)*u(t-1);
end % yf ES LA RESPUESTA LIBRE
% LEY DE CONTROL ESCALAR
du(t) = (...
g(1)*(r(t+1)-yf(t+1))+g(2)*(r(t+2)-yf(t+2))+g(3)*(r(t+3)-yf(t+3))+ ...
206 Control Predictivo
g(4)*(r(t+4)-yf(t+4))+g(5)*(r(t+5)-yf(t+5))+g(6)*(r(t+6)-yf(t+6))+ ...
g(7)*(r(t+7)-yf(t+7))+g(8)*(r(t+8)-yf(t+8))+g(9)*(r(t+9)-yf(t+9))+ ...
g(10)*(r(t+10)-yf(t+10)))/(g(1)^2+g(2)^2+g(3)^2+g(4)^2+g(5)^2+ ...
g(6)^2+g(7)^2+g(8)^2+g(9)^2+g(10)^2+lambda);
u(t) = u(t-1) + du(t);
% LIMITADOR MÁS LA ECUACIÓN DE DIFERENCIAS DEL PROCESO
if(u(t) > 100); u(t)=100; elseif(u(t) < -100); u(t) = - 100; end
y(t+1)=-a1*y(t)-a2*y(t-1)-a3*y(t-2)+b1*u(t)+b2*u(t-1)+b3*u(t-2);
end % FIN DEL LAZO
% GRAFICOS
ejex=linspace(0,MM*T,MM-3);
subplot(2,1,1); plot(ejex,W(4:MM),ejex,y(4:MM)); grid
ylabel(’Velocidad [rad/s]’); xlabel(’Tiempo [s]’); subplot(2,1,2)
plot(ejex,u(4:MM)); grid; xlabel(’Tiempo [s]’);
ylabel(’Voltaje de control [V]’); print -deps -f p11pred1
5
Velocidad [rad/s]
−5
0 20 40 60 80 100 120 140 160 180 200
Tiempo [s]
50
Voltaje de control [V]
−50
0 20 40 60 80 100 120 140 160 180 200
Tiempo [s]
8.7. Problemas
Problema 8.1 Posición de un Motor DC
θ 1.5
=
Vo s(0.2s + 1)
208 Control Predictivo
Velocidad [rad/s]
0
−5
0 20 40 60 80 100 120 140 160 180 200
Tiempo [s]
40
Voltaje de control [V]
20
−20
−40
0 20 40 60 80 100 120 140 160 180 200
Tiempo [s]
La Fig. 2.23 muestra una turbina de agua unido a un generador eléctrico, cuya
FT es:
M (s) 6
=
ω(s) 3,2s + 1
donde M (s) es el momento rotacional generado por la turbina gracias a la acción
del flujo de agua y ω(s) es la velocidad angular del generador. Diseñar y simular dos
sistemas de control predictivo, uno con ley de control escalar y otro con ley de control
matricial, para controlar el momento M (s), cumpliendo determinadas especificaciones
de diseño dictadas por el usuario.
Diseñar y simular dos sistemas de control predictivo, uno con ley de control escalar
y otro con ley de control matricial, para controlar la posición x 2 (t) de la masa M2 del
8.7 Problemas 209
Diseñar y simular dos sistemas de control predictivo, uno con ley de control es-
calar y otro con ley de control matricial, para controlar el voltaje V (t) del generador
mostrado en la Fig. 2.29, actuando sobre el flujo de agua q1 (t), cumpliendo determi-
nadas especificaciones de diseño dictadas por el usuario. Se sabe que el radio de la
sección del tanque es de 0.7 m, Ra = Rc = 2.4 ohm, La = Lc = 3.5 H, Kb = 2.7
V/rad/s y JT = 5.1 N–m/rad/s2 .
Diseñar y simular dos sistemas de control predictivo, uno con ley de control es-
calar y otro con ley de control matricial, para controlar la posición angular θ(s) del
proceso electromecánico mostrado en la Fig. 2.30, cumpliendo determinadas especi-
ficaciones de diseño dictadas por el usuario. Cada controlador predictivo a diseñar,
debe sustituir al amplificador de ganancia A. Datos adicionales: R = 4 ohm, L =
0.7 H, KT = 1.8 N–m/rad, B = N/rad/s, M = 20 kg, Km = 0.7 N–m/A, J = 4.8
N–m/rad/s2 y r = 0.1 m.
La dinámica de un avión puede ser descrita por varios conjuntos acoplados de ecua-
ciones diferenciales no lineales. Sin embargo, bajo ciertas suposiciones, tales ecua-
ciones pueden ser desacopladas y linealizadas para obtener dos conjuntos: las ecua-
ciones longitudinales y las ecuaciones laterales. El control de la inclinación θ del
avión mostrado en la Fig. 8.11 es un problema longitudinal. Asumiendo que el avión
Empuje
x
θ
Impulso α
γ
e
x’
Arrastre
δe
z
Peso
z’
las ecuaciones longitudinales del movimiento del avión (los datos corresponden a un
avión comercial Boeing) son:
La Fig. A.17 muestra dos tanques idénticos colocados en cascada. La sección hori-
zontal A=9 m2 de cada tanque es constante. El objetivo de control es controlar la
altura H2 empleando el flujo Qo . La deducción del modelo linealizado del proceso se
derivó en el ejemplo A.50. Diseñar un controlador predictivo del tipo escalar y otro
del tipo matricial, con los requerimientos siguientes: tiempo de estabilización menor
que 15 s, sobreimpulso menor al 10 % y error en estado estable nulo. Estas condiciones
de diseño deben mantenerse cuando se cambie la referencia (por ejemplo de 3 a 2 m).
Además, el flujo de entrada (la señal de control) no debe sobrepasar los 3 m 3 /s.
Tolva Controlador
Referencia
Sensor
Horno
d
v
v Deposito
(b)
d/v
u hs hr vr
1 10
e -(d/v)s
s+1 s + 0.5
Horno Tiempo muerto Sensor
fines de modelado del proceso, el tiempo muerto puede ser descrito empleando la
aproximación de Padé de tercer orden (ver ejemplo A.48):
θ̇ = ω
ω̇ = p + dτ
Km Km
ṗ = −Ωm p − q+ ω + dp
J J
q̇ = −Kv Lv q − Kv K∆p Jp + Kv u + dq ; Lv = 1
Angulo de
θ ’
elevacion
’
Azimut: angulo de
posicionamiento horizontal
La Fig. A.2 muestra un carro de masa m = 1000 kg desplazándose con una velocidad
v gracias a la acción de la fuerza u producida por su motor. Si se desprecia la inercia
de las ruedas y se asume que la fuerza de fricción bv, donde b= 50 N-s/m es el
coeficiente de fricción, es lo único que se opone al movimiento del carro, entonces la
dinámica del proceso puede modelarse como (ver ejemplo A.9):
dv
mv̇(t) + bv(t) = u(t); v̇ =
dt
Diseñar un sistema de control predictivo con fuerza de control escalar y otro con
fuerza de control matricial, para controlar la velocidad del móvil con mı́nimo tiempo
de estabilización y mı́nimo sobreimpulso. La señal de referencia puede ser arbitraria
(problema de seguimiento). La selección de los valores de los horizontes y el tiempo
de muestreo son a conveniencia del problema planteado.
Capı́tulo 9
Control Fuzzy
2. El conjunto de reglas fuzzy, en donde las variables fuzzy de entrada son eva-
luadas para generar variables fuzzy de salida. Estas últimas pasan luego al
defuzzyficador (palabra derivada del inglés defuzzifier).
3. El defuzzificador, el cual toma como base las variables fuzzy de salida para
generar un conjunto de valores de salida: las señales de control.
Las funciones de membresı́a poseen una forma geométrica caracterı́stica. Por ejem-
plo pueden ser de forma triangular, de forma trapezoidal, o de alguna forma arbitraria,
siempre que permita ser descrita y evaluada mediante una función.
El conjunto de reglas fuzzy son las sentencias del tipo “if/then” que se definen en
conformidad con los objetivos de control. Tales reglas constituyen la clave del sistema
de control fuzzy, ya que ellas deciden el comportamiento del sistema para diferentes
entradas.
Con el fin de generar las señales de control, el defuzzyficador puede hacer uso de
varios métodos, todos relacionados con el procesamiento de las variables fuzzy para
generar señales que se puedan implementar en tiempo real. Por ejemplo, es común
tomar el promedio ponderado de las variables ya procesadas con las reglas fuzzy. Esta
metodologı́a será aplicada a un manipulador robótico de un grado de libertad, el cual
se describe en detalle en la sub–siguiente sección.
La ia mh
θm mh
ωm
·¸µ
¸µ
·¸·µ¸µ ·¸µ
·¸µ ¸·
+ + · ¸·¸· N1
»»µ
µ »µ
µ
» »»¼ θ L θ
u KA ¹ºµ
ºµ
¹ ºµ ¹ºµ
¹ º¹º¹ ¼¼µ
»¼µ¼µ ¼ »¼µ¼»¼ ω mb L
´µ¶µ
´ ¶´
V
_ _b
¾½µ
½¾½µ¾µ ½¾µ
½¾µ ¾½ ´Lµ¶µ ´ ¶´
Tm Bm Tg1
Jm
¾µ ½ ¾½¾½ BL
τ
N2 T Bg TL J
Ra g2 L
Jg
Tg2 = Jg θ̈ + Bg θ̇ + TL (9.4)
TL = JL θ̈ + BL θ̇ + τL (9.5)
L
τL = mb g senθ + mh g (L + rh )senθ = Q sen θ (9.6)
2
L
Q = mb g + mh g (L + rh )
2
donde JL y BL representan el momento de inercia y la constante de fricción viscosa
de la carga no lineal (brazo más efector final), g es la constante gravitacional, m b
218 Control Fuzzy
y mh denotan las masas del brazo y del efector final (esta masa también incluye la
masa de la carga en el efector) respectivamente, y rh denota la distancia desde el
extremo del brazo al centro de masa de mh .
rh
θ _L
2
mhg
_L τL
2
mb g
Notar en (9.6) que el torque τL se debe a las fuerzas ejercidas por los pesos del
brazo y de la esfera. Ası́, el torque mb g L senθ
2 es el producto del peso mb g del brazo
L senθ
por su brazo de palanca 2 , mientras que el torque mh g (L+rh )senθ es el producto
del peso mh g del efector por su brazo de palanca (L + rh )senθ.
El momento de inercia JL de la carga es la suma del momento de inercia del brazo
Jb más el momento de inercia del efector Jh . Por otra parte, el teorema de los ejes
paralelos, establece que el momento de inercia de una masa m alrededor de un eje de
rotación que no pasa por su C.M. está dado por:
J = Jo + m a 2 (9.7)
donde Jo es el momento de inercia de m alrededor del eje de rotación que pasa por
su centro de masa y a es la distancia entre los dos ejes. Asumiendo que la masa
mb del brazo se concentra en su C.M., su momento de inercia con relación a un eje
perpendicular que pasa por su C.M. es [34]:
1
Jbo = mb L2 (9.8)
12
Considerando que la masa del brazo está distribuida a lo largo de su longitud y
aplicando el teorema de los ejes paralelos, el momento de inercia Jb con respecto al
punto de articulación se formula como:
2
L 1
Jb = Jbo + mb = mb L2 (9.9)
2 3
donde:
JL = J h + J b Jeq = n2 Jm + Jg + JL Beq = n2 Bm + Bg + BL
dia
Va = ia Ra + La + Vb (9.12)
dt
donde ia , Ra y La son la corriente, la resistencia y la inductancia en la armadura
del servomotor respectivamente, y Vb es el voltaje de fuerza contra electromotriz
gobernado por la relación:
Vb = Kb ωm = Kb nω = Kb nθ̇ (9.13)
Va = K A u (9.14)
Tm = K m i a (9.15)
dia KA Kb n Ra
= u− ω− ia (9.17)
dt La La La
Empleando (9.15) en (9.11) y despejando ω̇ = dω/dt obtenemos:
dω Q Beq nKm
=− senθ − ω+ ia (9.18)
dt Jeq Jeq Jeq
220 Control Fuzzy
ẋ1 = x2
Q Beq nKm
ẋ2 = − senx1 − x2 + x3
Jeq Jeq Jeq
nKb Ra KA
ẋ3 = − x2 − x3 + u (9.19)
La La La
donde la salida es la posición x1 y la señal de control es u (la tensión de armadura).
ẋ1 = x2
ẋ2 = −a1 senx1 − a2 x2 + bu (9.21)
donde:
Q Beq Ra + n2 Km Kb nKm KA
a1 = a2 = b=
Jeq Jeq Ra Jeq Ra
Small (negativo pequeño), ZE: zero (cero), PS: Positive Small (positivo pequeño),
PM: Positive Medium (positivo medio), PL: positive Large (positivo grande).
Notar que en las funciones de membresı́a estamos usando los factores de es-
calamiento p para el error, f para la derivada del error y uu para la salida. Es-
tos factores nos van a permitir sintonizar en tiempo real el controlador difuso para
cumplir el objetivo de control. Debemos anotar que los rangos de e(t) y de(t)/dt son
sólo estimaciones. Para el caso de la salida u(t), estamos asumiendo un rango de
salida de − 2.5 V a + 2.5 V.
NL NM NS ZE PS PM PL
1
0.5
0
−1.2p −1p −0.3p 0 0.3p 1p 1.2p
−0.1p 0.1p
Error e
NL NM NS ZE PS PM PL
1
0.5
0
−6f −5f −4f −3f −2f −1f 0 1f 2f 3f 4f 5f 6f
Derivada del error de/dt
UNM UPL
UNX UNL UNS UZE UPS UPM UPX
1
0.5
0
−2.5uu −2uu −0.9uu 0 0.9uu 2uu 2.5uu
−1.9uu 1.9uu
Salida (señal de control ) u(t)
Fig. 9.5: Funciones de membresı́a para las entradas error e(t) y de(t)/dt, y para la
salida u(t).
Tabla 9.2: Conjunto de reglas del controlador fuzzy mostradas en la forma de una
matriz de memoria asociativa fuzzy (FAM–matrix).
de \ e NL NM NS ZE PS PM PL
DNL NX NX NX NX NS ZE PX
DNM NX NX NL NL NS PS PX
DNS NX NL NL NM PS PS PX
DZE NX NL NL ZE PL PL PX
DPS NX NS NS PM PL PL PX
DPM NX NS PS PL PL PX PX
DPL NX ZE PS PX PX PX PX
Tabla 9.3: Valores de e(t) para los puntos extremos de las funciones de membresia.
Tabla 9.4: Valores de de(t)/dt para algunos puntos de las funciones de membresia.
w46 = min(PM,DZE);
El resultado w46 nos indica el mı́nimo entre los valores de PM(t) y DZE(t), corres-
pondiente a determinados valores de e(t) y de(t)/dt, respectivamente. Los cálculos
para los otros elementos wij, i,j = 1,...,7, se muestran en el listado del programa
fuzzyposition.m, cuyo listado se muestra al final de este Capı́tulo.
que nos ocupa, la señal de control fuzzy a aplicar sobre el manipulador MR1 en cada
tiempo de muestreo es:
u = u1/ww
u1 = w11*unx+w12*unx+w13*unx+w14*unx+w15*uns+w16*uze+w17*upx+ ...
w21*unx + w22*unx + w23*unl + w24*unl + w25*uns + w26*ups + w27*upx + ...
w31*unx + w32*unl + w33*unl + w34*unm + w35*ups + w36*ups + w37*upx + ...
w41*unx + w42*unl + w43*unl + w44*uze + w45*upl + w46*upl + w47*upx + ...
w51*unx + w52*uns + w53*uns + w54*upm + w55*upl + w56*upl + w57*upx + ...
w61*unx + w62*uns + w63*ups + w64*upl + w65*upl + w66*upx + w67*upx + ...
w71*unx + w72*uns + w73*ups + w74*upl + w75*upl + w76*upx + w77*upx);
ww= w11 + w12 + w13 + w14 + w15 + w16 + w17 + ...
w21 + w22 + w23 + w24 + w25 + w26 + w27 + ...
w31 + w32 + w33 + w34 + w35 + w36 + w37 + ...
w41 + w42 + w43 + w44 + w45 + w46 + w47 + ...
w51 + w52 + w53 + w54 + w55 + w56 + w57 + ...
w61 + w62 + w63 + w64 + w65 + w66 + w67 + ...
w71 + w72 + w73 + w74 + w75 + w76 + w77;
0.7
0.6
Posición angular [rad]
0.5
0.4
0.3
0.2
0.1
0
0 2 4 6 8 10 12
2
Señal de control u [v]
−1
−2
0 2 4 6 8 10 12
Tiempo en segundos
Fig. 9.6: Posición angular controlada en la simulación del sistema de control fuzzy
del brazo robótico de 1GDL, para una señal de referencia fija.
Fig. 9.7: Posición angular controlada en el sistema de control fuzzy en tiempo real
del brazo robótico de 1GDL, para una señal de referencia fija.
226 Control Fuzzy
% GRADO DE SATISFACCIÓN
w11=min(NL,DNL); w12=min(NM,DNL); w13=min(NS,DNL); w14=min(ZE,DNL);
w15=min(PS,DNL); w16=min(PM,DNL); w17=min(PL,DNL);
w21=min(NL,DNM); w22=min(NM,DNM); w23=min(NS,DNM); w24=min(ZE,DNM);
w25=min(PS,DNM); w26=min(PM,DNM); w27=min(PL,DNM);
w31=min(NL,DNS); w32=min(NM,DNS); w33=min(NS,DNS); w34=min(ZE,DNS);
w35=min(PS,DNS); w36=min(PM,DNS); w37=min(PL,DNS);
w41=min(NL,DZE); w42=min(NM,DZE); w43=min(NS,DZE); w44=min(ZE,DZE);
w45=min(PS,DZE); w46=min(PM,DZE); w47=min(PL,DZE);
w51=min(NL,DPS); w52=min(NM,DPS); w53=min(NS,DPS); w54=min(ZE,DPS);
w55=min(PS,DPS); w56=min(PM,DPS); w57=min(PL,DPS);
w61=min(NL,DPM); w62=min(NM,DPM); w63=min(NS,DPM); w64=min(ZE,DPM);
w65=min(PS,DPM); w66=min(PM,DPM); w67=min(PL,DPM);
w71=min(NL,DPL); w72=min(NM,DPL); w73=min(NS,DPL); w74=min(ZE,DPL);
w75=min(PS,DPL); w76=min(PM,DPL); w77=min(PL,DPL);
% DEFUZIFICACIÓN
u1 = (w11*unx+w12*unx+w13*unx+w14*unx+w15*uns+w16*uze+w17*upx+ ...
w21*unx + w22*unx + w23*unl + w24*unl + w25*uns + w26*ups + w27*upx + ...
w31*unx + w32*unl + w33*unl + w34*unm + w35*ups + w36*ups + w37*upx + ...
w41*unx + w42*unl + w43*unl + w44*uze + w45*upl + w46*upl + w47*upx + ...
w51*unx + w52*uns + w53*uns + w54*upm + w55*upl + w56*upl + w57*upx + ...
w61*unx + w62*uns + w63*ups + w64*upl + w65*upl + w66*upx + w67*upx + ...
228 Control Fuzzy
9.3. Problemas
Problema 9.1
Para el proceso del problema 2.2, diseñar un sistema de control fuzzy para controlar
la velocidad de la turbina actuando sobre una válvula de control instalada en la
tuberı́a de entrada de agua. Asumir que la FT de transferencia de la válvula es una
constante Kv = 1.4. Se sabe que Kp = 3.6 y T = 6.8 s. La salida controlada debe de
cumplir las especificaciones de diseño establecidas por el usuario.
Problema 9.2
Para el proceso del problema 2.4, diseñar un sistema de control fuzzy para controlar
la presión Po en el interior del tanque actuando sobre una válvula de control instalada
en la tuberı́a de entrada de gas. Asumir que T = 3.4 s y que la FT de transferencia
de la válvula es:
2
0.8s + 1
La salida controlada debe de cumplir las especificaciones de diseño establecidas por
el usuario.
Problema 9.3
Para el proceso del problema 2.5, diseñar un sistema de control fuzzy para controlar
la posición x de la masa M actuando sobre un pistón de control conectado a la masa
M . Asumir que M = 120 kg, K = 2 N/m, B = N/m/s y que la FT de transferencia
del pistón es 4.5. La salida controlada debe de cumplir las especificaciones de diseño
establecidas por el usuario.
9.3 Problemas 229
Problema 9.4
Para el proceso del problema 2.7, diseñar un sistema de control fuzzy para controlar
la temperatura TF actuando sobre una válvula de control instalada en la tuberı́a
de vapor. Asumir que la FT de transferencia de la válvula es una constante K v =
0.6. Asumir valores apropiados de los otros parámetros. La salida controlada debe de
cumplir las especificaciones de diseño establecidas por el usuario.
Problema 9.5
Para el proceso del problema 2.8, diseñar un sistema de control fuzzy para controlar
el desplazamiento de la masa M2 actuando sobre pistón neumático conectado a esta
masa. La FT de transferencia del pistón neumático es una constante de valor 2.3.
Asumir valores apropiados de los otros parámetros. La salida controlada debe de
cumplir las especificaciones de diseño establecidas por el usuario.
Problema 9.6
Diseñar un sistema de control fuzzy para controlar la salida del proceso descrito en
el ejemplo 5.3. La salida controlada debe de cumplir las especificaciones de diseño
establecidas por el usuario.
Problema 9.7
Diseñar un sistema de control fuzzy para controlar la salida del y(t) del proceso con
FT:
y(s) s+2
Gp (s) = =
u(s) (s + 1)(s + 3)(s + 4)
La salida controlada debe de cumplir las especificaciones de diseño establecidas por
el usuario.
Problema 9.8
Para el proceso del ejemplo 2.1, diseñar un sistema de control fuzzy para controlar
el flujo actuando sobre una válvula de control instalada en la tuberı́a. Asumir que la
FT de transferencia de la válvula es:
2
0.3s + 1
La salida controlada debe de cumplir las especificaciones de diseño establecidas por
el usuario.
Problema 9.9
Para el proceso mostrado en la Fig. 2.3, diseñar un sistema de control fuzzy para
controlar el nivel actuando sobre la válvula de control, cuya FT se asume constante y
de valor unitario. La salida controlada debe de cumplir las especificaciones de diseño
establecidas por el usuario.
230 Control Fuzzy
Problema 9.10
Para el proceso mostrado en la Fig. 2.7, diseñar un sistema de control fuzzy para
controlar el flujo de salida actuando sobre la válvula de entrada, cuya FT se asume
constante y de valor dos. La salida controlada debe de cumplir las especificaciones de
diseño establecidas por el usuario.
Problema 9.11
Para el proceso mostrado en la Fig. 2.8 , diseñar un sistema de control fuzzy para
controlar el desplazamiento y mediante una corriente de control u. Los valores de los
parámetros son: Km = 1.1 N/A, M = 1.3 kg, K = 1 N/m, B = 1.5 N/m/s. La salida
controlada debe de cumplir las especificaciones de diseño establecidas por el usuario.
Problema 9.12
Para el proceso del problema 2.1, diseñar un sistema de control fuzzy para controlar el
voltaje de salida. Asumir valores apropiados de los parámetros. La salida controlada
debe de cumplir las especificaciones de diseño establecidas por el usuario.
Problema 9.13
Para el proceso de la Fig. 2.10, diseñar un sistema de control fuzzy para controlar la
posición angular del satélite. Asumir valores apropiados de los parámetros. La salida
controlada debe de cumplir las especificaciones de diseño establecidas por el usuario.
Problema 9.14
Para el proceso de la Fig. 2.11, diseñar un sistema de control fuzzy para controlar el
flujo de salida de la faja de transporte. Asumir valores apropiados de los parámetros
y usar aproximación de Padé de segundo o tercer orden para el tiempo muerto. La
salida controlada debe de cumplir las especificaciones de diseño establecidas por el
usuario.
Apéndice A
Sistemas Continuos
u
u
Agua
t
y
y
Vapor
t
t0 t1 t2 t3
(a) (b)
Ejemplo A.1
Ejemplo A.4
donde g(t) es una función arbitraria pero continua en t = T . Se sabe además que la
función impulso unitario o delta de Dirac δ(t) y delta de Dirac retardada δ(t − T ) se
definen como:
1 si t = 0 1 si t = T
δ(t) = δ(t − T ) = (A.3)
0 si t 6= 0 0 si t 6= T
Ejemplo A.5
donde a es una constante real y positiva, µ(t) es la función escalón unitario definida
en el ejemplo A.1 y g(t) es una función arbitraria dependiente del tiempo.
Ejemplo A.6
s+3 Aw
G1 (s) = G2 (s) =
s2 (s − a2 ) + w2
Ejemplo A.7
La figura A.2 muestra un móvil de masa m = 1000 kg desplazándose con una velocidad
v gracias a la acción de la fuerza u producida por su motor. Si se desprecia la inercia
de las ruedas y se asume que la fuerza de fricción bv es lo único que se opone al
movimiento, donde b= 50 N–s/m es el coeficiente de fricción, entonces la dinámica
del sistema puede modelarse como:
dv(t)
mv̇(t) + bv(t) = u(t) v̇(t) =
dt
Determine la velocidad v(t) y la aceleración v̇(t) del carro como respuesta a una
fuerza u(t) tipo escalón de 1 N. Considere que la fuerza comienza a actuar para una
velocidad inicial del carro de 2 m/s.
v velocidad
friccion
bv m u
Solución: Teniendo en cuenta que v(0) = 2 m/s, V (s) = L[v(t)] y U (s) = L[u(t)],
apliquemos la propiedad de derivación (2) de la Tabla A.2 en la ecuación dinámica
del carro:
m(sV (s) − v(0)) + bV (s) = U (s)
A.1 La Transformada Unilateral de Laplace 235
1/m v(0)
V (s) = +
s(s + b/m) s + b/m
donde hemos usado el hecho de que U (s) = 1s debido a que la entrada u es del tipo
escalón. La salida v(t) se determina usando la Tabla A.2.1. Para el primer término
de V (s) empleamos la fórmula (14) con n = 1, mientras que para el segundo término
empleamos la fórmula (3). Por consiguiente:
1 b b
v(t) = L−1 [V (s)] = (1 − e− m t ) + v(0)e− m t
b
La derivada de v(t) produce la aceleración pedida:
1 b
v̇ = [1 − bv(0)] e− m t
m
Ejemplo A.8
Empleando las propiedades del valor inicial y del valor final de la Tabla A.2, deter-
minar tales valores para la velocidad del móvil del problema anterior.
Solución: El valor inicial de v(t) se determina de:
Y (s) K
=
U (s) τs + 1
Ejemplo A.9
Determinar la FT del móvil del ejemplo A.7. Luego determine la velocidad v(t) del
móvil partiendo de su FT, como respuesta a una fuerza u(t) tipo escalón de 1 N.
236 Sistemas Continuos
V (s) 1/m
m[sV (s) − v(0)] + bV (s) = (ms + b)V (s) = U (s); =
U (s) s + b/m
Observar que resulta una FT de primer orden. Como la entrada es un escalón unitario,
entonces U (s) = 1s . La salida se determina de:
−1 −1 1/m
v(t) = L [V (s)] = L
s(s + b/m)
1 b
v(t) = (1 − e− m t )
b
Ejemplo A.10
Empleando las propiedades del valor inicial y del valor final de la Tabla A.2, deter-
minar tales valores para la velocidad del móvil del problema anterior.
Solución: El valor inicial se determina de:
B(s) R(s)
=k+
A(s) A(s)
R(s)
donde k es una constante y la fracción A(s) resulta propia.
Ejemplo A.11
A.1 La Transformada Unilateral de Laplace 237
No G(s) g(t)
(1) 1 δ(t)
1
(2) s µ(t)
1
(3) s+a e−at
ω
(4) s2 +ω 2
sen ωt
s
(5) s2 +ω 2
cos ωt
s cos α−ωsenα
(6) s2 +ω 2
cos(ωt + α)
ω
(7) (s+a)2 +ω 2
e−at senωt
(s+a)
(8) (s+a)2 +ω 2
e−at cosωt
(s+a)cosα−ωsenα
(9) (s+a)2 +ω 2
e−at cos(ωt + α)
s [at−2+(2+at)e−at ]
(15) s2 (s+a)2 a3
1
(16) (s+a)(s+b) (e−at − e−bt )/(b − a)
s
(17) (s+a)(s+b) (be−bt − ae−at )/(b − a)
1 1 be−at −ae−bt
(18) s(s+a)(s+b) ab 1 − b−a
1 t 1 1 1 1 −at 1 −bt
(19) s2 (s+a)(s+b) ab − a2 b
− ab2
+ b−a a2
e − b2
e
1 e−at e−bt e−ct
(20) (s+a)(s+b)(s+c) (b−a)(c−a) + (a−b)(c−b) + (a−c)(b−c)
s ae−at be−bt ce−ct
(21) (s+a)(s+b)(s+c) (a−b)(c−a) + (b−a)(c−b) + (c−a)(b−c)
238 Sistemas Continuos
No G(s) g(t)
p
ωd = ω n 1 − ζ 2
δ = ζ ωn
1
p
T1,2 = ωn (ζ ± ζ 2 − 1)
3s + 2 C D E F
2
= + + 2
+
s(4s + 3)(2s + 5) s 4s + 3 (2s + 5) (2s + 5)
7s2 − 2s + 1 Cs + D Es + F H
2 2
= 2 2
+ 2 +
(s + 2s + 4) (s + 1) (s + 2s + 4) s + 2s + 4 s + 1
s2 − 9 8 C D
2
=1− =1− +
s −1 (s + 1)(s − 1) s+1 s−1
A manera de ilustración, el valor de H del segundo ejemplo se calcula multiplicando
ambos miembros de la igualdad por el factor (s + 1), para poder aislar H. La relación
resultante se evalúa con la solución de la ecuación (s + 1) = 0; es decir, se evalúa en
A.1 La Transformada Unilateral de Laplace 239
No Descripción Propiedad
s = −1 como sigue:
2
(7s − 2s + 1)(s + 1) (Cs + D)(s + 1) (Es + F )(s + 1) 10
H= 2 2
− 2 2
+ 2
=
(s + 2s + 4) (s + 1) (s + 2s + 4) s + 2s + 4 s=−1 9
Ejemplo A.12
El programa fracp1.m descompone en fracciones parciales las expresiones:
B(s) s2 − 16 N (s) s+6 s+6
= 2 = = 2
A(s) s −1 M (s) (s − 2)2 s − 4s + 4
% fracp1.m DESCOMPOSICIÓN EN FRACCIONES PARCIALES
clear all; close all; clc;
B = [1 0 -16]; A = [1 0 -1]; % PRIMER CASO
[r,p,k] = residue(B,A); % r = [7.5;-7.5]; p = [-1;1]; k = 1
M = [1 6]; N = [1 -4 4]; % SEGUNDO CASO
[rr,pp,kk] = residue(M,N); % rr = [1;8]; pp = [2;2]; kk = 0;
Por consiguiente:
B(s) 7.5 −7.5 N (s) 1 8
= + +1 = +
A(s) s+1 s−1 M (s) s − 2 (s − 2)2
Ejemplo A.13
Hallar la transformada inversa de Laplace de:
B(s) s4 + 2s3 + 3s2 + 2s + 1
G(s) = = 4
A(s) s + 4s3 + 7s2 + 6s + 2
Solución: El programa fracp2.m calcula los vectores r, p y k:
r = [ r1 ; r2 ; rj ; rj+1 ] = [ −0.5i ; 0.5i ; −2 ; 1 ]
p = [ p1 ; p2 ; pj ; pj+1 ] = [(−1 + i) ; (−1 − i) ; −1 ; −1] k=1
Dado que todas las raı́ces en el vector r son distintas:
r1 r2 rj rj+1
G(s) = k + + + +
s − p1 s − p2 s − pj (s − pj )2
−0.5i 0.5i −2 1
= 1+ + + +
s + 1 − i s + 1 + i s + 1 (s + 1)2
Es fácil demostrar que:
−0.5i 0.5i 1 2 1 ωn2
+ = =
s+1−i s+1+i 2 (s2 + 2s + 2) 2 s2 + 2ζωn s + ωn2
√ √
donde, por igualación: ωn = 2, ζ = 1/ 2. Por consiguiente:
1 2 −2 1
G(s) = 1 + + +
2 (s + 2s + 2) s + 1 (s + 1)2
2
Empleando los pares (1), (29), (3) y (12) de la Tabla A.2.1, con n = 1, se obtiene:
−1 −1 ωn2 ωn2 −δt
L [1] = δ(t) L = e sen ωd t
s2 + 2ζωn s + ωn2 ωd
1 1
L−1 = e−t L−1 = te−t
s+1 (s + 1)2
donde, ωd = 1 y δ = 1, se calcularon empleando las fórmulas al final de la continuación
de la Tabla A.2.1. Por consiguiente, juntando los resultados anteriores se obtiene:
g(t) = δ(t) + e−t sen t − 2e−t + te−t
A.1 La Transformada Unilateral de Laplace 241
Ejemplo A.14
d2 y(t) dy(t)
2
+ 11 + 24y(t) = e−6t
dt dt
dy(0)
con las condiciones iniciales nulas: dt = 0, y(0) = 0.
2 dy(0) 1
s Y (s) − sy(0) − + 11(sY (s) − y(0)) + 24Y (s) =
dt s+6
3 −3t 1 1
y(t) = e + e−8t + e−6t
80 60 48
x1 (s) G(s)
x2 (s) = G(s)e(s) = G(s)(x1 (s) ± H(s)) → =
x2 (s) 1 ∓ GH(s)
242 Sistemas Continuos
u e y u y r e r e
G1 G2 G1 G2 G G
r r
u G1 e G 2 y u y 1/G
G 1G 2 r e
G r e
(a) G
1
r e u r u r (d) r 1/G
G G
y r e
y G u r u
G G
r 1 e G u r G u 1 u y y
u 1/G
1 G r G u
y 1 r 1 e G u
y
(b)
1
r y y
r e e (e) 1/G
G G
r r r e y
G G r G y
r G e r e 1 GH
G H
1
e G r 1 e y r y
e G
G
(c) H (f) 1 GH
Los elementos de una matriz pueden ser números reales o complejos, funciones, otras
matrices, etc. Cuando n = 1, A se convierte en un vector fila. Cuando m = 1, A
toma la forma de un vector columna. Los vectores se denotan en negrita. Por ejemplo,
los vectores columna x(q) y fila y(q) de orden n y dependiente del argumento q se
representan como:
x1 (q)
x(q) = ... y(q) = y1 (q) · · · yn (q)
xn (q)
A.2 Matrices y Determinantes 243
Por ejemplo, la siguiente multiplicación es válida: A2×3 B3×1 = C2×1 , tal como se
observa a continuación.
b11
a11 a12 a13 c11 a11 b11 + a12 b21 + a13 b31
b21 = =
a21 a22 a23 c21 a21 b11 + a22 b21 + a23 b31
b31
κA = κ[aij ] = [κaij ]
La multiplicación es asociativa:
y distributiva:
(A + B)(C + D) = AC + AD + BC + BD
Cuando AB = BA, se dice que A y B son matrices que conmutan. Sin embargo, en
general, la multiplicación no es conmutativa; es decir:
AB 6= BA
244 Sistemas Continuos
Ejemplo A.15
AH = (A∗ )T = (AT )∗
Por consiguiente:
Si A es una matriz real; es decir, si todos sus elementos son reales, entonces A ∗ = A
y AH = (A∗ )T = AT .
Ejemplo A.16
Solución:
1 0 2
A∗ = A A H = AT = 2 4 6
3 −2 −9
1−j j 2−j 1+j 3 3−j
BT = 3 4 6+j B∗ = −j 4 −2 − j
3 + j −2 + j −9 2+j 6−j −9
1+j −j 2+j
H T ∗
B = (B ) = 3 4 6−j
3 − j −2 − j −9
Una matriz cuadrada se denomina matriz diagonal cuando los elementos que no
pertenecen a su diagonal son todos ceros:
d11 0 0 . . . 0
0 d22 0 . . . 0
D = [dii ] = . .. .. ..
.. . . .
0 0 0 . . . dnn
Una matriz cuadrada se denomina triangular superior si los elementos debajo de
su diagonal son todos ceros. Si los elementos encima de su diagonal son todos ceros,
entonces la matriz es triangular inferior.
La matriz identidad I, denotada también como In (n es el orden de la matriz), es
una matriz diagonal que sólo posee unos. Si A es cuadrada, AI = IA. En general, se
cumple que:
Una matriz compleja cuadrada A puede ser escrita como la suma de una matriz
hermitiana B = 12 (A + AH ) más otra matriz antihermitiana C = 12 (A − AH ). Es
decir:
1 1
A = B + C = (A + AH ) + (A − AH )
2 2
Ejemplo A.17
Solución:
H 1−j 6−j
∗ T
A = (A ) =
2+j 5+j
1 H 1 4−j
B = (A + A ) = BH = (B∗ )T = B
2 4+j 5
1 H j −2
C = (A − A ) = CH = (C∗ )T = −C
2 2 −j
Matriz inversa
Si A y B son dos matrices no singulares; es decir, si det(A) 6= 0 y det(B) 6= 0,
entonces:
(AB)−1 = B−1 A−1 ; (AT )−1 = (A−1 )T
1
((A∗ )T )−1 = ((A−1 )∗ )T ; det(A−1 ) =
det(A)
Si A es una matriz no singular de orden 2, vale recordar que:
a b −1 1 d −b
A= ; A = (A.20)
c d ad − bc −c a
Del mismo modo, si A es una matriz no singular de orden 3:
a b c
A= d e f
g h i
e f b c b c
det −det det
h i h i e f
1 d f a c a c
−1
A = −det det −det (A.21)
det(A)
g i g i d f
d e a b a b
det −det det
g h g h d e
det(A) = aei + gbf + cdh − gec − ahf − idb
Ejemplo A.18
La Tabla A.3 muestra los comandos para ejecutar operaciones matriciales con
MATLAB.
Cantidades Complejas
Sea G = Gr + jGi un número o función compleja donde <e[G] = Gr es su parte
real e =m[G] = Gi es su parte imaginaria. El valor absoluto o módulo o magnitud
de G se denota como |G| mientras que el ángulo o argumento de G se expresa como
∠ G. Luego, G se puede formular como:
Ejemplo A.19
4j
127º
5
−1 1
−3 −60º
2
−135º
2
−j
3j
Ejemplo A.20
Solución: El programa calmat.m calcula la matriz B pedida. Además, por ser her-
mitiana: M = MH , y por ser antihermitiana: N = −NH . Entonces basta comprobar
que M − MH = 0 y que N + NH = 0.
250 Sistemas Continuos
Ejemplo A.21
La condición necesaria para realizar el producto Cnp = Anm Bmp empleando parti-
ciones, es que las columnas de A y las filas de B sean particionadas en la misma
forma. Por lo tanto, n = n1 + · · · + nn , m = m1 + · · · + mm y p = p1 + · · · + pp .
Ejemplo A.22
Ejemplo A.23
Ejemplo A.26
Ejemplo A.27
rango(A) ≤ mı́n(n, m)
rango(A) = rango(AH )
rango(AB) ≤ min(rango(A), rango(B))
rango(CB) = rango(B)
Eigenvalores y Eigenvectores
Un eigenvalor de una matriz de orden n, conocido también como valor propio,
modo, eigenvalue, o raı́z caracterı́stica, es un escalar λ que permite una solución no
trivial de la ecuación:
Ax = λx (A.23)
Factorizando x en (A.23) obtenemos la ecuación caracterı́stica de A:
det(λI − A) = 0 (A.24)
Ejemplo A.28
254 Sistemas Continuos
Ejemplo A.29
Ejemplo A.30
det(A) = λ1 λ2 . . . λn ; i = 1, . . . , n
Pseudoinversas
El concepto de pseudoinversa de una matriz es la generalización de su inversa y
resulta útil para encontrar una solución en un conjunto de ecuaciones algebraicas en
donde el número de variables desconocidas y el número de ecuaciones linealmente
independientes no son iguales. Sea la ecuación:
Ax = b
Ejemplo A.32
Ejemplo A.33
dx
= ẋ = Ax + Bu
dt
en otro sistema descrito por la ecuación:
dx∗
= ẋ∗ = A∗ x∗ + B∗ u
dt
donde: x = Ex∗ es una transformación lineal, A∗ = E−1 AE = Λ y B∗ = E−1 B.
Esta transformación se denomina canónica.
Por otro lado, si A es una matriz de orden n de rango completo que posee eingen-
valores repetidos, entonces A se puede diagonalizar mediante la relación E −1 AE = Λ.
Sin embargo, la matriz de eigenvectores E no es unitaria (EH 6= E−1 ).
A.3 Variables de Estado 257
Ejemplo A.34
Ejemplo A.35
En el programa siguiente se diagonalizan varias matrices de rango completo.
% diagmat.m DIAGONALIZACIÓN DE MATRICES DE RANGO COMPLETO
clear all; close all; clc;
A1 = [2 2 -1;2 3 0;-1 0 2]; n1 = 3; % rank(A1) = 3 (RANGO COMPLETO)
[E1,D1] = eig(A1); DD1=inv(E1)*A1*E1;
% D1=DD1=diag(4.7093,2.1939,0.0968), RA ÍCES NO REPETIDAS => inv(E1)=E1’
A2 = [-2 -1 -1 -1 2;1 3 1 1 -1;-1 -4 -2 -1 1;-1 -4 -1 -2 1;...
-2 -2 -2 -2 3]; n2 = 5; % rank(A2) = 5 (RANGO COMPLETO)
[E2,D2] = eig(A2); DD2=inv(E2)*A2*E2;
% D2 = DD2 = diag(-1,1.5+0.866i,1.5-0.866i,-1,-1)
% DOS RAÍCES REPETIDAS => inv(E2) ~= E2’
A3 = [-2 3 3 -1 -6 -2;1 0 -1 0 2 1;1 -2 0 1 2 0;1 1 -1 -1 2 1;...
1 -2 -1 1 3 1;1 0 -1 0 2 0]; n3 = 6; % rank(A3)=6 (RANGO COMPLETO)
[E3,D3] = eig(A3); DD3=inv(E3)*A3*E3;
% D3 = diag(-1,-1,1,1,1,-1), TRES RAÍCES REPETIDAS => inv(E3) ~= E3’
ÀÀ
¿À¿¿ qi
ÃÂÃÂÂ
ÃÃÂÃÂ A
h
ÃÂ
ÁÁ Sensor de presión qo
ẋ = Ax + Bu y = Cx + Du (A.33)
A.3 Variables de Estado 259
ẋn×1 = An×n xn×1 + Bn×m um×1 yp×1 = Cp×n xn×1 + Dp×m um×1
Ejemplo A.36
La Fig. A.6 muestra un sistema masa–resorte compuesto por una masa M unida
a un resorte de constante K. Determinar analı́tica y gráficamente su plano de fase
mostrando las correspondientes trayectorias de estado y sus puntos de equilibrio.
Notar que el sistema masa–resorte es no forzado porque no existe fuerza exterior
alguna actuando sobre el mismo.
z
K=1
M=1 z0
Por consiguiente, las ecuaciones de estado y salida del sistema masa–resorte son:
ẋ = Ax y = Cx
ẋ1 x1 0 1
ẋ = x= A= C= 1 0
ẋ2 x2 −1 0
Asumamos que estiramos el resorte hasta que M se encuentre en la posición inicial
z0 . Luego soltamos el resorte, lo cual produce un movimiento oscilatorio que puede
modelarse como z(t) = z0 cos t. Es fácil comprobar que la solución z(t) = z0 cos t
verifica el modelo dinámico dado en (A.34). Usando las variables de estado definidas
anteriormente resulta:
x1 (t) = z0 cos t x2 (t) = −z0 sen t
Elevando al cuadrado y sumando se obtiene:
x21 + x22 = z02 (cos2 t + sen2 t) = z02
La última ecuación representa un cı́rculo de radio z0 . Por consiguiente, las trayectorias
de estado en el plano de fase x1 versus x2 son cı́rculos cuyos radios dependen de la
posición inicial de reposo z0 . tales trayectorias se muestran en la Fig. A.7. Para
obtener dichas trayectorias de fase, ejecutar el programa pfl.m.
Los eigenvalores del sistema masa–resorte se determinan de:
λ 1
det(λI − A) = det = λ2 + 1 = 0
−1 λ
Por lo tanto: λ1 = i, λ2 = −i, ambas raı́ces imaginarias, lo cual nos informa del
carácter oscilante de la respuesta del sistema, tal como se discute en la siguiente
sección. El único punto de equilibrio xe = 0 del sistema se determina de:
e
x1 0
ẋe = Axe = 0 xe = =
xe2 0
% C2pfl.m PLANO DE FASE EN UN SISTEMA LINEAL
clear all; close all; clc;
g = inline(’[x(2);-x(1)]’,’t’,’x’); % MODELO MATEM ÁTICO
vectfield(g,-1:0.2:1,-1:0.2:1) % RANGOS DE LOS EJES HORIZONTAL Y VERTICAL
hold on
for x20=-1:0.2:1 % SIMULACIÓN PARA ESTAS CONDICIONES INICIALES DE y(2)
[ts,xs]=ode45(g,[0,10],[0;x20]); % [0,10]: SIMULACI ÓN DE 0 A 10 s
plot(xs(:,1),xs(:,2)); grid;
end
hold off, ylabel(’x2(t)’), xlabel(’x1(t)’),
title(’PLANO DE FASE x2(t) VS x1(t)’), print -deps -f C2pfl
PLANO DE FASE x1 VS x2
0.8
0.6
0.4
0.2
VELOCIDAD x2
−0.2
−0.4
−0.6
−0.8
−1
Fig. A.7: Plano de fase mostrando las trayectorias de estado (Ejemplo A.36).
ẋ = Ax + Bu
y = Cx + Du (A.36)
Ejemplo A.37
ẋ = Ax + Bu y = Cx + Du
x1 y1 u1
x= ; y= ; u=
x2 y2 u2
−1 1 2 −1 1 0 0 −5
A= ; B= ; C= ; D=
2 −3 1 −2 0 −1 −3 0
El programa mtrans.m determina la MT pedida. El resultado es:
2s+7 5s2 +21s+10
2 − s2 +4s+1
s +4s+1
G(s) = C(sI − A)−1 B + D =
2
− 3ss2 +13s+8
+4s+1
2s+4
s2 +4s+1
Estabilidad
Cuando las señales y y u son unidimensionales, la ecuación (A.38) se convierte en
la FT del sistema SLIT y se puede representar como la relación entre dos polinomios
A(s) y B(s) como sigue:
y(s) B(s)
= G(s) = [C(sI − A)−1 B + D] = (A.39)
u(s) A(s)
Notar que todas las funciones de transferencia de la matriz G del ejemplo A.37
poseen un mismo denominador común: el polinomio A(s) = s2 +4s+1. Este polinomio
es también la ecuación caracterı́stica del sistema multivariable, siendo sus eigenvalores
s1 = –3.7321 y s2 = –0.2679. Por consiguiente, tal sistema es estable.
El sistema no forzado ẋ = Ax posee un solo punto de equilibrio: el origen, debido
a que la solución de ẋ = Ax = 0 es xe = 0. Por consiguiente, un SLIT no forzado
es estable, cuando el estado x del sistema tiende al estado de equilibrio xe = 0
A.3 Variables de Estado 263
para cualquier estado inicial finito x(t0 ), donde t0 es el tiempo inicial. Por ejemplo,
el sistema de primer orden ẋ = a x donde a > 0, es inestable porque su solución
x(t) = x(0)eat no tiende al estado de equilibrio xe = 0 cuando t → ∞ para cualquier
estado inicial x(0).
jω x2 jω x2
σ x1 σ x1
λ1 λ 2 λ1 λ 2
(a) (b)
jω x2 jω x2
λ1
σ x1 σ x1
λ1 λ2
λ2
(c) (d)
jω x2 jω x2
λ1
λ1
σ x1 σ x1
λ2
λ2 (f)
(e)
Fig. A.8: Tipos de puntos singulares en un sistema lineal de segundo orden: (a)
nodo estable, (b) nodo inestable, (c) punto silla de montar, (d) foco estable, (e) foco
inestable, (f) punto centro.
ẋ∗1 λ1 0 x∗1 b∗11 b∗12 · · · b∗1m u1
ẋ∗2 λ2 x∗2 b∗21 b∗22 · · · b∗2m u2
.. = .. .. + .. .. .. .. ..
. . . . . . . .
ẋ∗n 0 λn x∗n b∗n1 b∗n2 ∗
· · · bnm um
de donde claramente se observa que ninguna fuerza de control está actuando sobre
la variable x∗2 .
Ejemplo A.38
Observabilidad Completa
Un sistema SLIT es completamente observable si algún estado x(t), incluyendo el
estado inicial x(t0 ), se puede determinar partiendo de la observación de la salida y(t)
en un tiempo finito t0 ≤ t ≤ t1 . La observabilidad completa en un sistema es de suma
importancia porque permite reconstruir las variables de estado no medibles partiendo
del vector medible y(t). Sin demostración se establece la condición de estabilidad
completa. Para que un sistema sea completamente observable, es necesario que el
rango de la denominada matriz de observabilidad N de dimensión np × p :
C
CA H
N= .. = CH AH CH · · · (AH )n−1 CH (A.44)
.
CAn−1
Entonces, para que el sistema SLIT sea completamente observable, ninguna de las
columnas de la matriz CE de orden p × n debe de ser nula. Si alguna columna i fuera
nula, entonces no se podrı́a reconstruir completamente el vector de estado x, lo que
se contrapone a la definición de observabilidad completa.
266 Sistemas Continuos
Ejemplo A.39
En el programa observ1.m se determina la observabilidad completa de varios SLITs.
% observ1.m OBSERVABILIDAD COMPLETA DE SLITs
clear all; close all; clc;
A1 = [2 0 0;0 2 0;0 3 1]; B1 = [0 1;1 0;0 1]; C1 = [1 2 1;2 0 3]; n1 = 3;
[E1,D1] = eig(A1); DD1 = inv(E1)*A1*E1; % D1 = diag(2,1,2)
N1 = obsv(A1,C1); % RETORNA MATRIZ DE OBSERVABILIDAD [C1; C1*A1; C1*A1^2]
rankN1=rank(N1); % rankN1=3=n1 => SISTEMA COMPLETAMENTE OBSERVABLE
A2 = [-1 1 -1;0 1 -4;0 1 -3]; B2 = [0 2 1]; C2 = [0 1 -1]; n2 = 3;
[E2,D2] = eig(A2); DD2 = inv(E2)*A2*E2; % D2 = diag(-1,-1,-1)
N2 = obsv(A2,C2); % RETORNA MATRIZ DE OBSERVABILIDAD [C2; C2*A2; C2*A2^2]
rankN2=rank(N2); % rankN2=2<n2 => SISTEMA NO ES COMPLETAMENTE OBSERVABLE
A3 = [2 2 -1;2 3 0;-1 0 2]; B3 = [0 1;1 0;0 1]; C3 = [1 2 1;2 0 3]; n3=3;
[E3,D3] = eig(A3); DD3 = inv(E3)*A3*E3; % D3 = diag(0.0968,2.1939,4.7093)
N3 = obsv(A3,C3); % RETORNA MATRIZ DE OBSERVABILIDAD [C3; C3*A3; C3*A3^2]
rankN3=rank(N3); % rankN3=3=n3 => SISTEMA COMPLETAMENTE OBSERVABLE
donde:
∞
X Aν (t − t0 )ν A2 (t − t0 )2 A3 (t − t0 )3
Φ(t−t0 ) = eA(t−t0 ) = = I+A(t−t0 )+ + +· · ·
ν! 2! 3!
ν=0
(A.47)
es la matriz de transición o exponencial. La derivada total de e A(t−t 0 ) resulta:
deA(t−t0 ) A3 (t − to )2
= A + A2 (t − to ) + + ···
dt 2!
A2 (t − t0 )2
= A I + A(t − t0 ) + + +···
2!
= AeA(t−t0 ) = eA(t−t0 ) A (A.48)
Derivando ahora (A.46) con respecto al tiempo t se obtiene:
Z
A(t−t0 ) d At t −Aτ
ẋ = Ae x(t0 ) + e e Bu(τ )dτ
dt t0
Z t
A(t−t0 )
= Ae x(t0 ) + Ae At
e−Aτ Bu(τ )dτ + eAt e−At Bu = Ax + Bu
t0
A.3 Variables de Estado 267
y(s) = Cx(s) + Du(s) = C(sI − A)−1 x(t0 ) + [C(sI − A)−1 B + D]u(s) (A.50)
Comparando (A.49) con (A.46) podemos afirmar que:
Ejemplo A.40
Graficar la respuesta x(t) del sistema: ẋ = −2x + 5u con x(0) = 3. La entrada u(t)
tiene la forma mostrada en la Fig. A.9.
1 u(t)
t
0 1 2 3 4
5 5
x(t) = 3e−2t + [7 − t − 6e2(1−t) ]; x(3) = 3e−6 + (4 − 6e−4 )
8 8
Para t ≥ 3 , u(t) = 0, t0 = 3 y x(t0 ) = x(3). Luego:
x(t) = x(3)e−2(t−3)
2.5
RESPUESTA x(t)
1.5
0.5
0
0 1 2 3 4 5 6 7 8 9 10
TIEMPO EN SEGUNDOS
Fig. A.10: Respuesta x(t) de un SLIT de primer orden a una entrada arbitraria u(t).
Ejemplo A.41
Dado u(t) = 3e−t , determinar la respuesta de un sistema descrito por las siguientes
ecuaciones de estado y de salida:
Según la Tabla A.2.1: u(s) = L[3e−t ] = 3/(s + 1). Luego, x(s) (ecuación (A.49)) e
y(s) (ecuación (A.50)) toman la forma:
−1
−1
s + 7 −1 −6
s + 7 −1 2
x(s) = + u(s)
12 s 12 1
s −1
1 s 1 −6 2 3
= 2 +
s + 7s + 12 −12 s + 7 1 −1 s+1
" 2 #
−6s +s−2
(s+1)(s+3)(s+4)
= s2 +77s−14
(s+1)(s+3)(s+4)
" #
−6s2 +s−2
(s+1)(s+3)(s+4) 3
y(s) = Cx(s) + Du(s) = 3 −4 s2 +77s−14 −2
(s+1)(s+3)(s+4)
s+1
−22s2 − 305s + 50 6 297/6 −767/2 918/3
= − = + +
(s + 1)(s + 3)(s + 4) s + 1 s+1 s+3 s+4
297 −t −767 −3t 918 −4t
y(t) = e + e + e , t≥0
6 2 3
Las respuestas mostradas en la Fig. A.11 se realizaron con el programa crpta.m.
Notar que se emplea la siguiente aproximación de la derivada:
x(k + 1) − x(k)
ẋ ∼
= = Ax + Bu → x = x + T (Ax + Bu)
T
Ejemplo A.42
270 Sistemas Continuos
20
0
y(t) para T2 = 0.04 s
RESPUESTAS
−10
y(t)
−20
−30
−40
−50
0 2 4 6 8 10
TIEMPO [s]
En el ejemplo anterior sean u1 (t) = 3e−t , u2 (t) = 2u1 (t) y u3 (t) = u1 (t) + u2 (t) y
sean las salidas respectivas y1 (t), y2 (t) e y3 (t). El programa C2prosup.m demuestra
gráficamente (ver figura A.12) los principios de proporcionalidad: y 2 (t) = 2y1 (t), y
de superposición: y3 (t) = y1 (t) + y2 (t).
Ejemplo A.43
En el sistema de la Fig. A.13 ya se han definido las variables de estado xi del sistema,
las cuales se han fijado a la salida de cada bloque de primer orden. Para este sistema:
(a) Determinar su ecuación de estado y su ecuación de salida. (b) Hallar su matriz
de transferencia. (c) Determinar si el sistema es estable. (d) Hallar la controlabilidad
completa, la controlabilidad completa en la salida y la observabilidad completa del
sistema. (e) Usar (A.51) para determinar su matriz de transición con t 0 = 0. (f) De-
terminar y(t) para x(t0 ) = 0 usando (A.50). (g) Graficar las respuestas y1 (t) e y2 (t)
a entradas tipo escalón unitario.
A.3 Variables de Estado 271
80
70
y3 = y1 + y2
60
50
RESPUESTAS
40
y2 = 2y1
30
20
y1
10
−10
−20
0 0.5 1 1.5 2 2.5 3 3.5 4
TIEMPO [s]
1 x1
u1 s+1
x4 y1
4
s+4
u2 2 x2
s+2
x5 y2
5
s+5
u3 3
s+3 x3
Solución: (a) Del diagrama de bloques se puede comprobar que las salidas y1 e y2
poseen las expresiones:
y1 = x 2 + x 3 + x 4 − x 5 + u 3 y2 = x 1 − x 2 + x 5 + u 2 (A.52)
Operando en el bloque que tiene como salida la variable de estado x1 , se obtiene:
1
x1 = (u1 − y1 ) → (s + 1)x1 = ẋ1 + x1 = u1 − y1
s+1
Reemplazando y1 de (A.52) en la última expresión, se obtiene:
ẋ1 = −x1 − x2 − x3 − x4 + x5 − u3 (A.53)
Operando del mismo modo con los otros bloques resultan:
(s + 2)x2 = 2(u2 − x2 ) → ẋ2 = −4x2 + 2u2
272 Sistemas Continuos
√ ! √ !
1 39 5 3 183 − 5 t 7 99 √ − 5 t 7
y2 = − e−3t + e−5t − e−4t + e 2 cos t − 7e 2 sen t
2 4 16 2 16 2 112 2
Por otro lado, la Fig. A.14 muestra las respuestas y1 (t) e y2 (t) (Out(1) y Out(2) en
el gráfico) a los escalones u1 = 1, u2 = 1 y u3 = 1 (In(1), In(2) e In(3) en el gráfico)
obtenidas con el comando step de MATLAB. Ejecutar el archivo va.m.
A.3 Variables de Estado 273
y(s)
= G(s) = [C(sI − A)−1 B + D]
u(s)
Step Response
0.5
To: Out(1)
−0.5
Amplitude
−1
1.5
1
To: Out(2)
0.5
0
0 1 2 3 0 1 2 3 0 1 2 3
Time (sec)
βn = bn − a1 βn−1 − · · · − an−1 β1 − an β0
A.3 Variables de Estado 275
donde las raı́ces pi (los eigenvalores del sistema) son no repetidos, las constantes ci
se pueden hallar en la forma acostumbrada a partir de:
Ejemplo A.44
beta4 = b4-a1*beta3-a2*beta2-a3*beta1-a4*beta0;
beta5 = b5-a1*beta4-a2*beta3-a3*beta2-a4*beta1-a5*beta0;
beta6 = b6-a1*beta5-a2*beta4-a3*beta3-a4*beta2-a5*beta1-a6*beta0;
Acc = [0 1 0 0 0 0
0 0 1 0 0 0
0 0 0 1 0 0
0 0 0 0 1 0
0 0 0 0 0 1
-a6 -a5 -a4 -a3 -a2 -a1];
Bcc = [beta1;beta2;beta3;beta4;beta5;beta6];
Ccc = [1 0 0 0 0 0]; Dcc =[beta0];
% 1RA FORMA CANÓNICA OBSERVABLE: dx/dt = Aco*x + Bco*u; y = Coo*x + Doo*u
Aoo = [0 0 0 0 0 -a6
1 0 0 0 0 -a5
0 1 0 0 0 -a4
0 0 1 0 0 -a3
0 0 0 1 0 -a2
0 0 0 0 1 -a1];
Aco = [b6-a6*b0;b5-a5*b0;b4-a4*b0;b3-a3*b0;b2-a2*b0;b1-a1*b0];
Cco = [0 0 0 0 0 1]; Dco=[b0];
% FORMA CANÓNICA DE JORDAN: dx/dt = Aj*x + Bj*u; y = Cj*x + Dj*u
[c,p,k] = residue(B,A); % EXPANSIÓN EN FRACCIONES PARCIALES
% c = [-1.89 3.6133 -1.0136 0.1111 -5.8233 -0.5323]’;
% p = [-2 0.5 0.5 0.5 -0.4 -0.4]; k = 1;
c1=c(1); c2=c(2); c3=c(3); c4=c(4); c5=c(5); c6=c(6);
p1=p(1); p2=p(2); p2=p(3); p2=p(4); p3=p(5); p3=p(6);
Aj = [p1 0 0 0 0 0
0 p2 1 0 0 0
0 0 p2 1 0 0
0 0 0 p2 0 0
0 0 0 0 p3 1
0 0 0 0 0 p3];
Bj = [1;0;0;1;0;1];
Cj = [c1 c2 c3 c4 c5 c6]; Dj = [k];
Ejemplo A.45
T t=iT T t=iT
(a) (b)
Fig. A.15: (a) Aproximación del área bajo la curva e(t) mediante rectángulos. (b)
Mediante trapezoides.
Ejemplo A.46
Determinar la ecuación de diferencias de la siguiente integral usando tanto aproxi-
mación rectangular como trapezoidal.
Z t
u(t) = e(τ )dτ
0
Solución: Si empleamos sumatoria de rectángulos para aproximar el área debajo de
la curva e(t), se obtiene:
k
X k
X k−1
X
u(kT ) ≈ T e(iT ) = T e(iT ) = T e(iT ) + T e(kT ) = u(kT − T ) + T e(kT )
i=0 i=0 i=0
Discretización de la Derivada
Términos que contengan derivadas pueden discretizarse empleando diferencias
por atraso:
de(t) ∆e(kT ) e(kT ) − e(kT − T ) e(k) − e(k − 1)
= ė(t) ≈ = =
dt T T T
dė(t) ∆ė(kT ) ė(t) − ė(t − T ) ∆e(kT ) − ∆e(kT − T )
= ë(t) ≈ = =
dt T T T2
e(k) − e(k − 1) − [e(k − 1) − e(k − 2)] e(k) − 2e(k − 1) + e(k − 2)
= 2
=
T T2
..
. (A.67)
Ejemplo A.47
donde:
T TD TD TD
q0 = K c 1 + + ; q1 = −Kc 1 + 2 ; q2 = K c
Ti T T T
1 1 num(s)
e−τ s = 1 − sτ + (sτ )2 − (sτ )3 + · · · =
!2 !3 den(s)
Con una aproximación de tercer orden podemos acomodar retardos de fase de hasta
200o (3.5 rad) [35], lo cual es suficiente para capturar el efecto del tiempo muerto en
muchas aplicaciones. Tal aproximación tiene la forma:
Ejemplo A.48
y(s) 10 −5.8s
= e
u(s) 2s + 1
Step Response
10
6
Amplitude
exp(−sD)
0
Padé de 3er orden
−2
0 5 10 15 20 25
Time (sec)
Ejemplo A.49
Linealizar la siguiente taza de reacción rA para el punto de operación (T , C A ):
E
rA = k0 e− RT CA
A.6 Linealización de Sistemas Continuos 283
r A = r A + C 1 t + C 2 cA t=T −T c A = CA − C A
− E
r A = k0 e CA
RT
∂rA ∂rA
C1 = C2 = (A.75)
∂T (T =T ) ∂CA (CA =C A )
Del mismo modo, la ecuación de salida del sistema se puede formular como:
∂g ∂g
y= x+ u (A.78)
∂X (X,U) ∂U (X,U)
Por consiguiente, las formas linealizadas de (A.77) y (A.78) se puede expresar como:
ẋ = Ax + Bu y = Cx + Du (A.79)
Ejemplo A.50
La Fig. A.17 muestra dos tanques idénticos colocados en cascada. La sección hori-
zontal S=9 m2 de cada tanque es constante. El objetivo de control es estabilizar
(controlar) la altura H2 empleando como fuerza de control el flujo de alimentación
Qo . Determinar el modelo linealizado de este sistema hidráulico, su estabilidad y su
función de transferencia.
Q p
0 0
ρ Tanque
H1
p 1
1 γ
g
Q
p 1
0
ρ
Tanque
H2
p 2
2 γ
Q
2
Y = h(X, U ) = X2
Observar que las ecuaciones anteriores poseen las formas dada en (A.76)):
Ẋ = f(X, U ) Y = h(X, U ) = X2
x1 = X 1 − X 1 x2 = X 2 − X 2 u=U −U
Conociendo que U = 3 m3 /s, el estado estable del sistema se puede obtener de:
√ q
˙ 1 γ ρg
X1 = U − X1 = 0
S S
√ q q
˙ γ ρg
X2 = X1 − X2 = 0
S
lo que resulta en:
2
U
X1 = X2 = 2 (A.81)
γ ρg
Aplicando el jacobiano, el sistema linealizado resulta:
ẋ = A x + B u y = h(x, u) = x2 = C x D = [0]
donde:
" # √
γ ρg
∂f1 ∂f1 − √ 0
x1 2S
√ X̄1
x= ; A= ∂X1
∂f2
∂X2
∂f2 = γ ρg
√
γ ρg
x2 ∂X1 ∂X2 √ − √
(X 1 ,X 2 ,U ) 2S X1 2S X2
∂f1
∂U 1/S ∂h ∂h
B= ∂f2 = ; C= = [0 1]
∂U
0 ∂X1 ∂X2 (X 1 ,X 2 ,U )
(X 1 ,X 2 ,U )
La estabilidad y la función de transferencia del sistema se computan con el programa
C2tqh.m.
286 Sistemas Continuos
A.7. Problemas
Problema A.1
Problema A.2
Problema A.3
Problema A.4
Problema A.5
Problema A.6
Demostrar que la siguientes matriz es nilpotente:
1 −3 −4
A = −1 3 4
1 −3 −4
Problema A.7
Dada las matrices:
1 1 + i 2 + 3i i 1 + i 2 − 3i
A= 1−i 2 −i B = −1 + i 2i 1
2 − 3i i 0 −2 − 3i −1 0
demostrar que A, iB y A∗ son hermitianas, y que B y B∗ son antihermitianas.
Problema A.8
Empleando matemática simbólica demostrar que:
n n
λ 1 λ nλn−1
=
0 λ 0 λn
Problema A.9
Empleando matemática simbólica demostrar que las matrices:
2 3 2
a a 1 bcd a a a 1
b2 b 1 acd 3 2 1
A= B = b b b
c2 c 1 abd c c2
3 c 1
d2 d 1 abc d3 d2 d 1
poseen el mismo determinante: (a − b)(a − c)(a − d)(b − c)(b − d)(c − d).
Problema A.10
Empleando matemática simbólica hallar la derivada con respecto a x del determinante
de la matriz:
x 1 2
A = x2 2x + 1 x3
0 3x − 2 x + 1 2
Problema A.11
Examine la dependencia o independencia lineal del siguiente conjunto de vectores. Si
el conjunto es dependiente, seleccione el máximo subconjunto linealmente indepen-
diente y exprese cada uno de los vectores dependientes como una combinación lineal
de los independientes.
4 8 0 12
2 4 0 6
x1 =
6 ; x2 = 2 ; x3 = 10 ; x4 = −2
4 −4 12 −12
−2 6 −10 14
288 Sistemas Continuos
Problema A.12
Problema A.13
Problema A.14
Problema A.15
Problema A.16
Problema A.17
(a) 2x1 + 3x2 − 5x3 = 4u1 − 3u2 + ẋ1 ; ẋ2 − x1 + 8x2 − 2x3 = −u1
2x2 − 5x3 = −3u1 − 4u2 − ẋ3
y1 = x1 − 3x2 − u2 ; y2 = −3x1 + 7x3 + u1 − 5u2
(b) −x1 − 8x2 + x3 + ẋ1 = u1 ; 2x1 + 4x2 − 2x3 = −3u2 − u2 + ẋ2
2x2 − 5x3 = −3u1 + 3u2 + ẋ3
y1 = 3x1 − x2 + u1 ; y2 = −x1 − 5x3 − 5u2
(c) 6x1 + 7x2 + ẋ1 = 4u2 ; ẋ2 − 3x1 + 5x2 + 62x3 = −u1 − 7u2
x2 − 6x3 = ẋ3 − u1 + 9u2
y1 = 4x1 + x2 − u1 + u2 ; y2 = −3x1 + 7x2 − 5u2
(d) 3x2 − 5x3 + ẋ1 = −3u1 + 3u2 ; ẋ2 − 6x1 + 5x2 − 7x3 = −3u2
x1 − 2x2 − 5x3 + ẋ3 = −3u1
y1 = x1 − u2 + 8u2 ; y2 = −3x2 + 7x3 − 9u1 − 2u2
donde u1 y u2 son las entradas, y1 e y2 son las salidas y x1 , x2 y x3 son las variables
de estado.
Problema A.18
Graficar la corriente i(t) que circula en un circuito serie RLC alimentado por una
baterı́a E de 12 V, sabiendo que R = 100 Ω, C = 1 F, L = 2 H, i(0) = 5 A y di(0)
dt = −5
A/s. Partiendo de la ecuación caracterı́stica del circuito, determine la estabilidad, la
frecuencia natural de oscilación y el coeficiente de amortiguamiento de dicho circuito.
Problema A.19
Una forma de determinar la estabilidad de un SLIT con entrada x(t) y salida y(t)
conociendo su función G(t) de respuesta al impulso δ(t), es evaluando la siguiente
condición para estabilidad: Z ∞
|G(τ )|dτ < ∞
−∞
Rt
Por ejemplo, para un integrador y(t) = 0 x(τ )dτ con y(0) = 0, su respuesta al
Rt
impulso es: y(t) = G(t) = 0 δ(τ )dτ = µ(t), que es la función escalón, la cual es igual
a 1 para t ≥ 1. El sistema es inestable porque:
Z ∞ Z ∞
|G(τ )|dτ = |1|dτ = ∞
−∞ 0
Problema A.20
290 Sistemas Continuos
Problema A.21
Graficar para varios valores del cero c, la respuesta al escalón del sistema:
y(s) K(s + c)
= 2
u(s) s + 3s + 100
Para cada c, seleccionar el valor de K que haga: lı́m y(t)t→∞ = 1.
Problema A.22
Problema A.24
Problema A.26
r e a (s − 1)
2
1 y
K 2 s
s +1
Problema A.27
h At i
Sabiendo que: dedt = A, hallar la matriz de estado A de un sistema cuya matriz
t=0
de transición es: −t
2e cos(t + 0,7) 3e−t cos(t + 1,5)
e−t cos(t − 1,5) 2e−t cos(t − 0,7)
Problema A.28
Problema A.29
R (s+7)(s+8)(s+9) Y
Kc + Ki/s
(s+1)(s+2)(s+3)(s+4)(s+5)
Problema A.30
292 Sistemas Continuos
Problema A.31
R Y
10e−3t
Kc + Ki/s
4s+1
2e −2t
Problema A.32
1 x1
K1
r1 u 1
s+1
x4 y1
4
s+4
r2 u2 2 x2
K2
s+2
x5 y2
5
s+5
r3 3
K3
u3 s+3 x3
Problema A.33
Problema A.34
Problema A.35
graficar x(t) sabiendo que x(0) = 1 y u(t) es la rampa mostrada en la Fig. A.22.
Problema A.36
hallar las ecuaciones de estado y de salida lineales del siguiente sistema no lineal y
determinar la estabilidad del sistema linealizado.
Problema A.37
u1 y1
1
4
s+1
u2 2 y2
6
s+2
Problema A.38
8(s + 1)
G(s) = e−4s
(s + 3)(s + 4)(s + 5)(s + 6)(s + 7)2 (s + 8)
n(t)
r(t) y(t)
PID G(s)
Fundamentos de MATLAB y
Simulink
MATLAB [1] es un lenguaje técnico de cómputo de alto nivel e interactivo que puede
ser empleado para el desarrollo de algoritmos, visualización y análisis de datos y com-
putación numérica. MATLAB se emplea mundialmente en diversas aplicaciones que in-
cluyen procesamiento de señales e imágenes, telecomunicaciones, diseño de sistemas de
control, pruebas y mediciones, modelado y análisis financiero y biologı́a computacional.
MATLAB también cuenta con una colección herramientas (Toolboxes) para propósitos
especı́ficos, disponibles por separado, los cuales permiten resolver ciertas clases de prob-
lemas en el área de su aplicación.
Simulink [2] emplea un lenguaje en bloques y se usa para modelar, simular y analizar
sistemas dinámicos continuos, discretos o hı́bridos (combinación de ambas). El modelo
del sistema puede ser lineal o no lineal y puede tener diferentes partes que se discreticen
o se actualicen a diferentes tiempos de muestreo. Esta herramienta permite validar los
modelos dinámicos existentes o aquellos construidos desde cero.
En este Apéndice, una sección está dedicada a MATLAB y la otra a Simulink.
Todos los archivos de esta publicación se pueden descargar del link DESCARGAS de
www.ctlima.com.
MATLAB. Los comandos escritos después del prompt requieren de un ENTER para
que MATLAB los procese. El formato siguiente: >> help roots ENTER , es útil
cuando se desea tener información de un determinado comando. En este caso partic-
ular, luego de presionar la tecla ENTER, la VC (Ventana de Comandos) muestra la
ayuda correspondiente al comando roots. En lo que sigue, la introducción de la tecla
ENTER será sobreentendida.
El comando format long le dice a MATLAB que se quiere trabajar con 15 dı́gitos
para doble precisión y 5 dı́gitos para simple precisión. Por ejemplo, escribiendo en
la VC: >> format long, 1/3, MATLAB devuelve 0.33333333333333, mientras
que >> format, 1/3 devuelve 0.3333.
Las operaciones fundamentales en MATLAB son suma a+b, resta a-b, multipli-
cación a*b, división derecha a/b, división izquierda a\b y exponenciación a^b. La
división izquierda se emplea más con matrices. El resultado de la operación a/b es
igual al resultado de b\a.
El orden de precedencia en las operaciones fundamentales es: ejecutar primero
el paréntesis más interno, luego los exponentes, después la multiplicación o división
(ambos tienen igual presedencia), y finalmente la suma y resta. Ejemplo:
>> 0.7854-(0.7854)^3/(1*2*3)+0.785^5/(1*2*3*4*5)...
-(0.785)^7/(1*2*3*4*5*6*7)
ans =
0.7071
Observar que los tres puntos al final de la primera fila indica que la sentencia continúa
en la siguiente lı́nea.
√ MATLAB √ reconoce a las letras i y j como números imaginarios. Es decir: i =
−1 y j = −1. Por ejemplo, >> 4i - 2j devuelve 0 + 2.0000i, mientras que
>> 8i-j4 devuelve Undefined function or variable ’j4’.
Sabemos que la división sobre cero es infinito, mientras que la división 0/0 es
indeterminada. En notación MATLAB >> 20/0 devuelve Inf , mientras que
>> 0/0 devuelve NaN, donde NaN está por Not a Number.
A continuación se describen otros comandos de utilidad general. Se recomienda
leer el help del comando antes de usarlo.
donde las 3 primeras filas corresponden a la matriz formada por el comando a=magic(3),
la fila 5 se origina por el comando b = ones(1, 3)*-5.7 y la última fila corresponde
al vector c=[8 6 4 2].
Hay tres formas de ejecutar el archivo m generado: (1) presionando la tecla F5;
(2) haciendo click en Debug → Run en el menú del editor; (3) haciendo click
en el icono Run and Save del editor, el cual se ubica debajo de la lı́nea que
contiene el menú del editor.
% APROXIMACIONES
x1=5.92;
r1=ceil(x1); % r1=6 (ceil REDONDEA HACIA INFINITO)
r2=fix (x1); % r2=5 (fix REDONDEA HACIA CERO)
r3=floor (x1); % r3=5 (floor REDONDEA HACIA MENOS INFINITO)
300 Fundamentos de MATLAB y Simulink
% TRIGONOMETRÍA
r5=sin(pi/2); % r5=1 (ÁNGULO EN RADIANES)
r6=sind(-90); % r6=-1 (ÁNGULO EN GRADOS)
r7=cosd(60); % r7=0.5 (ÁNGULO EN GRADOS)
r8=asind(1); % r8=90 (ÁNGULO EN GRADOS)
% ALGUNAS OPERACIONES
r9=abs (-7); % VALOR ABSOLUTO, r9=7
r10=sign(10); % SIGNO, r10=10/abs(10)=10/10=1
r11=gcd (9,12); % MÁXIMO COMÚN DIVISOR ENTRE 9 Y 12, r11=3
r12=lcm (10,25); % MÍNIMO COMÚN MÚLTIPLO ENTRE 10 Y 25, r12=50
r13=mod (-12,5); % MÓDULO, SI y~=0, n=floor(x./y)=-3, r13=x-n.*y=3
r14=rem (12,5); % RESTO DE LA DIVISIÓN ENTRE 12 Y 5, r14=2
r15=nthroot (8,3); % RAÍZ CÚBICA DE 8, r15=2
Vectores y Matrices
% vectoresymatrices.m VECTORES Y MATRICES. ELEM = ELEMENTOS
clear all; close all; clc;
% CÓMO DEFINIRLOS
x = [5 7 -2 4 -6]; % VECTOR FILA, ELEM SEPARADOS POR ESPACIOS
y = [2,1,3,7]; % VECTOR FILA, ELEM SEPARADOS POR COMAS
z = [0 1 2,3 4,5]; % IDEM, ELEM SEPARADOS POR COMAS Y ESPACIOS
w = [2;1;3;7]; % VECTOR COLUMNA
A = [1 2 3 % A(1)=1, A(3)=2, A(5)=3
4 5 6]; % A(2)=4, A(4)=3, A(6)=6
B = [1 2 3;4 5 6]; % MATRIZ DE 2 FILAS Y 3 COLUMNAS AL IGUAL QUE A
% DIRECCIONAMIENTO
r1=x(2); % r1=7
r2=x(end); % r2=-6
r3=x(2:4); % r3=[7 -2 4]
r4=x(1:3:5); % r4=[5, -2 y -6]
r5=x([3 5 1]); % r5=^[-2, -6, 1]
r6=A(2,1); % r6=4
r7=A(2,:); % r7=[4 5 6]
r8=A(2,2:3); % r8=[5 6] (2da FILA, COLUMNAS DE 2 A LA 3)
r9=A(2,[3 1]); % r9=[6 4}
r10=A([2 1],2:3); % r10=[5 6] (FILAS 2 y 1, COLUMNAS DE 2 A LA 3)
% [2 3]
r11=A(end,[1 3]); % r11=[4 6]
% TEXTO
a = ’casa’; b = ’gato’; AA = ’CASA’; % CADENAS DE CARACTERES
r60=a + b; % r60=[202 194 231 208], SUMA ASCII ELEM POR ELEM
r61=a + 0; % r61=[99 97 115 97], REPRESENTACI ÓN ASCII DE a
r62=abs(a); % r62=[99 97 115 97], REPRESENTACI ÓN ASCII DE a
r63=double(a); % r63=[99 97 115 97], REPRESENTACI ÓN ASCII DE a
r64=setstr([99 97 115 97]); % r64=casa
r65=abs(’a’)-abs(’A’); % r65=32, RESTA MIN ÚSCULAS MENOS MAYÚSCULAS
r66=setstr (a-32); % r66=CASA (LA DIFERENCIA)
d=5; disp(d); % DEVUELVE 5 EN LA VC
disp(’escribe esto’); % DEVUELVE << escribe esto >> EN LA VC
Polinomios
% polinomios.m POLINOMIOS
clear all; close all; clc;
c = conv(p,q); % c=(z^2+2z+7)(z^2+3z+6)=z^4+5z^3+19z^2+33z+42
% =[1 5 19 33 42]
d = deconv(c,q); % COCIENTE DE DIVIDIR c ENTRE q
dp = polyder(p); % DERIVADA DE POLINOMIO p
dpq = polyder(p,q); % DERIVADA DEL PRODUCTO p*q
ep=polyval(p,[0 1 5]); % EVALÚA p=x^2+2x+7 PARA x=0, x=1 y x=5
em=polyval(p,[0 1 2;-1 -2 -3;4 0 7]); % EVAL ÚA p PARA CADA FILA
% em=
% 7 10 15
% 6 7 10
% 31 7 70
Creación de Funciones
La forma general de una función de dos variables es:
function[a,b]=nombre_función(x,y)
Por ejemplo, se desea crear la función de nombre calculos para calcular la suma
y la resta de dos números, vectores o matrices (x,y). Los resultados los devuelve en
[a,b]. Los listados del archivo calculos.m y el archivo usacalculo.m para usar calcu-
los.m se muestran a continuación. Sólo es necesario ejecutar el archivo usacalculos.m
para obtener los resultados.
% calculos.m FUNCIÓN calculos
clear all; close all; clc;
function[suma,resta] = calculos(x,y)
suma = x + y;
resta = x - y;
Programación
% programacion.m PROGRAMACIÓN EN MATLAB
clear all; close all; clc;
% SENTENCIA FOR
for x = 1:5
disp(’x toma el valor’) % DEVUELVE x toma el valor PARA CADA x
disp(x) % DEVUELVE EL VALOR DE x
end
% SENTENCIA WHILE
a=3;
while a < 5
disp(’a es menor que 5 porque su valor es:’)
disp(a)
a = a + 1;
end
% SENTENCIA IF
b = 5;
if b == 0 % SE USA == PORQUE ES UNA EXPRESIÓN LÓGICA
disp (’el valor de b es 0’)
elseif b == 1
disp (’el valor de b es 1’)
elseif b == 2
disp (’el valor de b es 2’)
elseif b == 3
disp (’el valor de b es 3’)
else
disp (’b no es ni 0 ni 1 ni 2 ni 3’)
end
X = [5 7 9 2 9; 3 1 7 5 1; 3 9 2 7 5; 1 5 5 1 8];
% >> cumprod(X) % DEVUELVE MATRIZ DE PRODUCTOS ACUMULADOS
% >> cumsum(X) % DEVUELVE MATRIZ DE SUMAS ACUMULADAS
% >> mean(X) % DEVUELVE LA MEDIA DE CADA COLUMNA
% >> sort(X) % ORDENA LOS VALORES DE CADA COLUMNA
% >> sum(X) % DEVUELVE SUMA DE LOS ELEMENTOS DE CADA COLUMNA
% >> var(X) % DEVUELVE VARIANZA DE LOS ELEMENTOS DE C/COLUMNA
% >> max (X) % DEVUELVE VALOR MÁXIMO DE CADA COLUMNA
% >> min (X) % DEVUELVE VALOR MÍNIMO DE CADA COLUMNA
% >> iqr (X) % DEVUELVE RANGO intercuartı́lico DE CADA COLUMNA
% >> range(X) % DEVUELVE RANGO DE CADA COLUMNA: DIFERENCIA ENTRE
% EL MÁXIMO Y EL MÍNIMO
Y = [5 7 9 2 9 3 1 7 5 1 3 9 2 7 5 1 5 5 1 8];
% >> tabulate(Y) % DEVUELVE:
% Value Count Percent
% 1 4 20.00% (EL NÚMERO 1 APARECE 4 VECES)
% 2 2 10.00% (EL NÚMERO 2 APARECE 2 VECES)
% 3 2 10.00%
% 4 0 0.00%
% 5 5 25.00%
% 6 0 0.00%
% 7 3 15.00%
% 8 1 5.00%
% 9 3 15.00%
B.1.5. Gráficos
% graficas2D.m GRÁFICAS EN 2 DIMENSIONES
clear all; close all; clc;
figure(1) % CREA figure(1)
x=[-2 -1 0 1 2 3]; y=[4 1 0 1 4 9]; z=[6 5 3 7 5 2];
w=[-2 -1 0 0.5 1.5 2.5];
plot(x,y,’*’,x,z,’-’), xlabel(’eje x’), ylabel(’eje y’),
title(’x vs y’), grid, text(1,4,’HOLA>&$’), axis([-3 3 -1 10]),
gtext(’AQUÍ COLOCO TEXTO’)
figure(2)
x1 = pi*(-1:0.01:1); y1=x1.*sind(x1); y2=cosd(x1);
y3=sin(x1).*exp(x1); y4=exp(-x1);
subplot(2,2,1), plot(X1,Y1), title (’x1*seno(x1)*’)
subplot(2,2,2), plot(x1,y2), title (’cos(x1)’)
subplot(2,2,3), plot(x1,y3), title (’sen(x1)*exp(x1)’)
306 Fundamentos de MATLAB y Simulink
figure(12)
t=0:0.001:0.009;
v=900:1025;
[T V]=meshgrid(t,v);
aux1=16*pi^2*(T.^2).*((V-918).^2).*((V-1011).^2);
aux2=aux1+(2*V-1929).^2;
w=T./aux2;
z=35000000*w;
surfl(t,v,z); % SUPERFICIE SOMBREADA 3D CON RAYOS
shading interp; % FIJA MODO shading (SOMBRA) CON INTERPOLACI ÓN
colormap(pink); % FIJA EN pink (ROSADO) EL COLOR DE LA FIGURA
rotate3d; % GIRA LA FIGURA USANDO EL MAUSE
print -f -depsc ultimo % GENERA ultimo.eps EN COLOR
% DERIVADAS E INTEGRALES
syms x n a b t theta y u;
f1=x^n; r1=diff(f1); % r1=x^n*n/x=n*x^(n - 1), DERIVADA EN x
f2=sin(a*t + b); r2=diff(f2); % r2=a*cos(b + a*t), DERIVADA EN t
f3=exp(i*th); r3=diff(f3); % r3=exp(th*i)*i, DERIVADA EN th
r4=int(f1); % r4=x^(n+1)/(n+1), INTEGRAL INDEFINIDA EN x
f5=y^(-1); r5=int(f5); % r5=1/y, INTEGRAL INDEFINIDA EN y
f6=n^x; r6=int(f6); % r6=n^x/log(n), INTEGRAL INDEFINIDA EN n
r7=int(f2); % r7=-cos(b + a*theta)/a, INTEGRAL EN theta
f8=1/(1+u^2); r8=int(f8); % r8=atan(u), INTEGRAL INDEFINIDA EN n
f9=exp(-x^2); r9=int(f9); % r9=(pi^(1/2)*erf(x))/2,
% erf=función error
c=0; d=1; f10 = x^7; r10=int(f10,c,d); % r10=1/8, INTEGRAL DEFINIDA
c=1; d=2; f11 = 1/x; r11=int(f11,c,d); % r11=log(2), INTEGRAL DEFIN.
c=0; d=1; f12 = log(x)*sqrt(x); r12=int(f12, c, d); % r12=-4/9
c=0; d=inf; f13 = exp(-x^2); r13=int(f13, c, d); % r13=pi^(1/2)/2
% SIMPLIFICACIONES Y SUSTITUCIONES
% collect: COLECTA TODOS LOS COEFICIENTES CON LA MISMA POTENCIA DE x
f14=(x-1)*(x-2)*(x-3); r14=collect(f14); % r14=x^3-6*x^2+11*x-6
f15=x*(x*(x-6)+11)-6; r15=collect(f15); % r14=x^3-6*x^2+11*x-6
f16=(1+x)*t + x*t; r16=collect(f16); % r16=(2*t)*x+t
Simulink proporciona una gran variedad de demos para ilustrar las bondades de
este software. Para ingresar a los demos, hacer click en el botón Start ubicado en el ex-
tremo inferior izquierdo de la ventana MATLAB y luego ir a Start > Simulink > Demos.
disnl2_u
u
Mux
gráfico
Señal u Proceso Mux
Señal v no lineal
disnl2_x1
x1
Referencia disnl2_r
r Conversión Observador r
de x a z no lineal
3 2
x3 x2
1 Kact 1
n*K 1 1
u L.s+R 1
gan 5 s
sum1 subsistema gan 6 M.s+B
x1
eléctrico sum2 subsistema Integrador
mecánico
n*E
gan 2 MATLAB
N
Function
gan 3
seno
Posición (radianes)
0.5
−0.5
−1
0 2 4 6 8 10 12 14 16 18 20
Tiempo en segundos
2.5
Señal de control (voltios)
1.5
0.5
−0.5
0 2 4 6 8 10 12 14 16 18 20
Tiempo en segundos
[3] Katsuhiko Ogata, Modern Control Engineering (5th Edition), Prentice Hall,
2009.
[4] C.A. Smith y A.B. Corripio, Control Automático de Procesos, Editorial Limusa,
2007.
[5] TecQuipment Ltd, TE37 Control and Instrumentation Study Station, User
Guide, 2009.
[7] Alan S. Morris and Reza Langaris, Measurement and Instrumentation: Theory
and Application, Elsevier Inc., 2012.
[11] A. O’Dwyer, Handbook of PI and PID Controller Tuning Rules, 3rd edition,
Imperial College Press, 2009.
[12] J.G. Ziegler y N.B. Nichols, “Optimum Setting for Automatic Controllers”,
Transactions of the American Society Mechanical Engineering, Vol 64, pp. 759-
768, 1942.
[13] Richard C. Dorf y Robert H. Bishop, Sistemas de Control Moderno (10ma Edi-
ción), Pearson Prentice Hall, 2005.
[14] K.L. Chien, J. A. Hrones, and J. B. Reswick, “On the automatic control of
generalized passive systems”, Trans. ASME, vol. 74, pp. 175-185, 1952.
316 BIBLIOGRAFÍA
[16] Erwin Samal, Grundriss der Praktischen Regelungstechnik (11. durchsehene Au-
flage, R. Oldenbourg Verlag Muenchen Wien 1980.
[17] K.J. Åström y T. Hägglund, PID Controllers: Theory, Design, and Tuning, In-
strument Society of America, 1995.
[19] F.S. Wang, W.S. Juang y C.T. Chan,“Optimal tuning of PID controllers for
single and cascade control loops”. Chemical Engineering Communications, Vol.
132, pp 15–34, 1995.
[21] C. Kessler, C., “Das symmetrische Optimum”, part 1, rt, No.11, pp. 395-400 and
part 2, rt, No.12, pp. 432-436, (1958)
[24] C. Smith, Practical Process Control: Tuning and Troubleshooting, Wiley, 2009.
[25] C. Smith, Advanced Process Control: Beyond Single Loop Control, Wiley–
AICHE, 2010.
[26] W. Altmann, Practical process control for engineers and technicians, Elsevier,
2005.
[27] E. B. Dahlin, “Designing and Tuning Digital Controllers,” Instruments and Con-
trol Systems, V. 41 (June 1968), p. 77.
[29] T. Edgar, D. Mellichamp, Process Dynamics and Control D. Seborg, John Wiley
& sons Inc., 3rd Edition, 2010.
[32] H. Zhang, D. Liu Fuzzy Modeling And Fuzzy Control, Birkhäuser, Boston, Basel
Berlin, 2006
Tanque cerrado
descripción, 28
modelo de Lagrange, 33
modelo lineal, 33
modelo no lineal, 30
Tiempo de estabilización, 73
Transformada de Laplace
Fórmulas de, 236
inversa, 234
propiedades, 239
Propiedades de la, 239
tablas, 237
unilateral, 231
Transmisor, 2