5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
CONTROL DE PROCESOS ´ PRACTICO Y AVANZADO ARTURO ROJAS MORENO, Ph.D.
Modelado de Procesos Sistemas de Instrumentaci´ on Elementos Finales de Control Control PID SISO Estrategias de Control PID Control PID MIMO Control Inteligente Programas fuente en MATLAB
TECSUP
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
1/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
II
´ CONTROL DE PROCESOS PRACTICO Y AVANZADO
c 2011 Arturo Rojas-Moreno. Todos los derechos reservados. Copyright ISBN
Queda rigurosamente prohibida la reproducci´on total o parcial de esta obra por cualquier medio o procedimiento, sin la autorizaci´on escrita del propietario del “Copyright”.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
2/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
A la Memoria de mis Padres
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
3/256
5/9/2018
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
ControlDe Proc e sosV3 - slide pdf.c om
4/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
´ Indice general III
IX
Prefacio 1. Introducci´ on 1.1. Sistema de Control a Lazo Cerrado . . . . . . . . . . . . . . . . . . . . 1.2. Sistema de Control a Lazo Abierto . . . . . . . . . . . . . . . . . . . . 1.3. Din´ a mica Lineal de los Elementos Ideales . . . . . . . . . . . . . . . . 2. El Proceso a Controlar 2.1. Procesos con Comportamiento Proporcional . . . . 2.2. Procesos de Primer Orden . . . . . . . . . . . . . . 2.3. Procesos de Segundo Orden . . . . . . . . . . . . . 2.4. Procesos Integrales . . . . . . . . . . . . . . . . . . 2.5. Procesos con Tiempo Muerto . . . . . . . . . . . . 2.6. Procesos de Orden Superior . . . . . . . . . . . . . 2.7. El Motor DC . . . . . . . . . . . . . . . . . . . . . 2.8. Modelo MIMO del Proceso Tanque Cerrado . . . . 2.8.1. Descripci´ on del Proceso . . . . . . . . . . . 2.8.2. Modelo Din´amico No Lineal del Proceso . . 2.8.3. Modelo Din´amico de Lagrange del Proceso 2.8.4. Modelo Din´amico Lineal del Proceso . . . . 2.9. Respuesta Transitoria de los Procesos . . . . . . . 2.9.1. Respuesta al Escal´ on . . . . . . . . . . . . . 2.9.2. M´etodo del 28.3 % y 63.2 % . . . . . . . . . 2.9.3. Otras Respuestas al Escal´ on y al Impulso . 2.10. Problemas . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
1 1 6 7 11 11 13 18 20 21 22 26 28 28 29 33 33 34 34 37 37 39
3. El Sistema de Instrumentaci´ on 45 3.1. Sensores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 3.1.1. Caracter´ısticas Est´ aticas y Din´amicas . . . . . . . . . . . . . . 46 3.1.2. Principios de los sensores . . . . . . . . . . . . . . . . . . . . . 47 4. Elementos Finales de Control 51 4.1. Caracter´ısticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
5/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
´ INDICE GENERAL
VI
5. Control PID SISO 5.1. Sistema de Control SISO . . . . . . . . . . . . . . . . . . . . . . . . . 5.2. Especificaciones de Dise˜ no . . . . . . . . . . . . . . . . . . . . . . . . 5.2.1. Especificaciones de Dise˜ n o en el Dominio del Tiempo . . . . . 5.2.2. Especificaciones de Dise˜ n o en el Dominio de la Frecuencia . . 5.3. Modos de Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.4. Estructuras del Controlador PID . . . . . . . . . . . . . . . . . . . . 5.4.1. Algunas Estructuras B´ asicas . . . . . . . . . . . . . . . . . . 5.4.2. La Banda Proporcional BP % . . . . . . . . . . . . . . . . . . 5.5. M´ etodos de Sintonizaci´on de Controladores PID . . . . . . . . . . . 5.5.1. M´etodo de la Curva de Reacci´ o n (Sistemas Autoregulados) . 5.5.2. M´etodo de las Oscilaciones Sostenidas . . . . . . . . . . . . . 5.5.3. M´etodo del Rel´e . . . . . . . . . . . . . . . . . . . . . . . . . 5.5.4. M´etodo de las Oscilaciones Amortiguadas . . . . . . . . . . . 5.5.5. M´etodos Basado en la Minimizaci´ on de un ´Indice . . . . . . . 5.5.6. Uso de la Curva de Reacci´ on en Sistemas No Autoregulados . 5.6. Control PID del Sistema SDA . . . . . . . . . . . . . . . . . . . . . . 5.7. El Efecto Windup . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.8. El Algoritmo PID Discreto Modificado . . . . . . . . . . . . . . . . . 5.9. Problemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
55 55 57 57 59 65 65 65 68 70 71 85 91 93 95 100 106 108 110 115
6. Otras Estrategias de Control 119 6.1. Control en Cascada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 6.2. 6.3. 6.4. 6.5.
Control la Raz´ on .. .. .. Control de Anticipativo Control Selectivo . . . . . Control de Rango Partido
.. . .
.. . .
.. . .
.. . .
.. . .
.. . .
.. . .
.. . .
.. . .
.. . .
.. . .
.. . .
.. . .
.. . .
.. . .
.. . .
.. . .
.. . .
.. . .
.. . .
.. . .
.. . .
.. . .
.. . .
.. . .
123 125 130 132
7. Control PID Multivariable 7.1. Control MIMO v´ıa Desacoplamiento . . 7.1.1. No Interacci´ on . . . . . . . . . . 7.1.2. Exactitud Est´atica . . . . . . . . 7.1.3. Estabilidad . . . . . . . . . . . . 7.2. Control PID MIMO con Desacopladores
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
135 135 136 137 137 145
7.3. Control P MIMO empleando el 7.3.1. Procedimiento de Dise˜ noCriterio . . . .de . .Hurwitz . . . . .. 7.3.2. El Criterio de Hurwitz . . . . . . . . . . . . . 7.4. Problemas . . . . . . . . . . . . . . . . . . . . . . . .
.. . .
.. . .
.. . .
.. . .
.. . .
.. . .
.. . .
.. . .
.. . .
.. . .
148 148 149 150
. . . . .
153 . 153 . 153 . 156 . 157 . 158
A. Matem´ atica para Sistemas Continuos A.1. La Transformada Unilateral de Laplace . . . . . . A.1.1. Definici´ on y Ejemplos . . . . . . . . . . . . A.1.2. La Transformada Inversa de Laplace . . . . A.1.3. La Funci´ o n de Transferencia . . . . . . . . A.1.4. Fracciones Parciales . . . . . . . . . . . . .
. . . . .
. . . . .
. . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . .
A.2. Matrices y Determinantes . . . . . . . . . . . . . . . . . . . . . . . . . 163 A.2.1. Operaciones con Matrices . . . . . . . . . . . . . . . . . . . . . 164
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
6/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
´ INDICE GENERAL
A.3.
A.4. A.5. A.6.
A.7.
A.2.2. Tipos de Matrices . . . . . . . . . . . . . . . . . . . . . . A.2.3. Determinantes y Matriz Inversa . . . . . . . . . . . . . . . A.2.4. Rango, Eigenvectores y Pseudoinversas . . . . . . . . . . . A.2.5. Diagonalizaci´ on de Matrices y Formas Can´o nicas . . . . . Variables de Estado . . . . . . . . . . . . . . . . . . . . . . . . . A.3.1. Ejemplo de Introducci´ on . . . . . . . . . . . . . . . . . . . A.3.2. Definici´ o n de Variables de Estado . . . . . . . . . . . . . . A.3.3. Matriz de Transferencia y Estabilidad . . . . . . . . . . . A.3.4. Controlabilidad y Observabilidad . . . . . . . . . . . . . . A.3.5. Soluci´on de la Ecuaci´o n de Estado de SLITs Continuos . A.3.6. Formas Can´ o nicas SISO en el Espacio de Estado . . . . . Discretizaci´ on Directa . . . . . . . . . . . . . . . . . . . . . . . . Sistemas con Tiempo Muerto . . . . . . . . . . . . . . . . . . . . Linealizaci´ o n de Sistemas Continuos . . . . . . . . . . . . . . . . A.6.1. Caso SISO . . . . . . . . . . . . . . . . . . . . . . . . . . A.6.2. Caso MIMO . . . . . . . . . . . . . . . . . . . . . . . . . . P roblemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
VII
. . . . . . . . . . . . . . . . .
. . 166 . . 167 . . 172 . . 177 . . 178 . . 178 . . 180 . . 181 . . 184 . . 187 . . 194 . . 199 . . 201 . . 203 . . 2 03 . . 204 . . 207
B. Fundamentos de MATLAB y Simulink B.1. Fundamentos de MATLAB . . . . . . . . . . . . . . . . . . . . . . . B.1.1. El Entorno de Trabajo de MATLAB . . . . . . . . . . . . . . B.1.2. Comandos y Funciones Generales . . . . . . . . . . . . . . . . B.1.3. Creaci´ o n de Archivos Tipo m . . . . . . . . . . . . . . . . . . B.1.4. Matem´ aticas . . . . . . . . . . . . . . . . . . . . . . . . . . . B.1.5. Gr´ aficos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B.1.6. Matem´ atica Simb´olica . . . . . . . . . . . . . . . . . . . . . . B.1.7. Simulaci´ o n de un Sistema de Control . . . . . . . . . . . . . . B.2. Fundamentos de Simulink . . . . . . . . . . . . . . . . . . . . . . . . B.2.1. Fundamentos del Software Simulink . . . . . . . . . . . . . . B.2.2. Creaci´ o n de un Modelo Simulink . . . . . . . . . . . . . . . .
217 . 217 . 217 . 218 . 220 . 221 . . . . . .
228 229 231 234 234 238
B . ibliograf´ıa
241
´ Indice . alfab´ etico
244
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
7/256
5/9/2018
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
ControlDe Proc e sosV3 - slide pdf.c om
8/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
Prefacio Esta publicaci´on est´a dirigida a todos los profesionales, cient´ıficos, especialistas y estudiantes interesados en familiarizarse con el modelado, la simulaci´on y el control de procesos industriales. Tanto modelos lineales como no lineales se emplean en esta publicaci´on para representar la din´amica de los procesos tratados. El libro se denomina Control de Procesos Pr´actico y Avanzado porque su contenido abarca tanto temas relacionados con el dise˜no pr´actico de sistemas de control de una entrada y una salida empleando controladores PID (Proporcional Integral Derivativo), as´ı como tambi´ en temas avanzados del control de procesos tales como: Control PID multivariable, control de procesos empleando estrategias (cascada, raz´on, rango partido, anticipativo, selectivo) y control con inteligencia artificial (control fuzzy y control neuronal). En todos los Cap´ıtulo que lo conforman, este libro usa intensivamente el software MATLAB para el c´alculo, dise˜ no y simulaci´on de sistemas de control de proce
sos. Tambi´ eSimulink n se emplea software de Simulink , elsu cual trabaja dentro delendice entorno MATLAB. usa el diagramas bloques en programaci´ on. El Ap´ B: Fundamentos de MATLAB y Simulink, es lectura primordial para los lectores poco familiarizados con estos programas. Todos los programas empleados en este libro se pueden ejecutar sin problemas en versiones recientes de MATLAB. Estos programas fuente se pueden descargar del enlace Descargas de: www.ctlima.com. Para asimilar sin dificultad el contenido de este libro, el lector requiere haber llevado los cursos de matem´atica, f´ısica y fundamentos de control autom´atico dictados en una Universidad o Instituto. Sin embargo, se recomienda que el lector se remita al Ap´endice A: Matem´aticas para el Control de Procesos, donde, empleando intensivamente la herramienta MATLAB, se hace un repaso de los t´opicos de matem´aticas requeridos en el desarrollo de los Cap´ıtulos de este libro. El procedimiento de dise˜ no de sistemas de control empleado en este libro comprende b´asicamente: la formulaci´on del problema a resolver, el modelado del proceso, el dise˜ no del algoritmo de control, y verificaci´on del sistema de control dise˜ nado v´ıa simulaci´ on. Esta publicaci´on puede ser usada como: Libro texto para cursos relacionados con el Control de Procesos. Libro texto para cursos relacionados con el Control Avanzado de Procesos. Libro de consulta en diferentes cursos de instrumentaci´on y control.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
9/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
Prefacio
X
Libro de consulta en temas relacionados con el dise˜ no e implementaci´o n de sistemas de control. La organizaci´ on de este libro comprende los cap´ıtulos siguientes:
Cap´ıtulo 1: Introducci´ on. Este cap´ıtulo presenta una introducci´on sucinta sobre los sistemas de control a lazo cerrado y a lazo abierto, describiendo brevemente sus componentes. Antes de abordar los siguientes cap´ıtulos se recomienda leer los Ap´endices A y B. opicos relevantes de los Cap´ıtulo 2: Sistemas de Instrumentaci´ on. Algunos t´ sistemas de instrumentaci´on se tratan en este Cap´ıtulo, incluyendo el c´alculo de placas de orificio y el dise˜ no de circuitos acondicionadores de se˜ nal.
Cap´ıtulo 3: Elementos Finales de Control. Diferentes tipos de elementos de control final son descritos en este Cap´ıtulo, que tambi´en incluye el c´alculo de v´alvulas de control. Cap´ıtulo 4: Modelado de Sistemas Lineales. En este cap´ıtulo se elaboran y simulan los modelos din´amicos de varios procesos de comportamiento lineal. Cap´ıtulo 5: Modelado de Sistemas No Lineales. Los modelos din´amicos no lineales de diversos procesos son desarrollados y simulados en este cap´ıtulo. El control PIDes(Proporcional Derivativo) Cap´ıtulo 6: Control PID.Single de procesos SISO (Single Input Output) el m´as usadoIntegral en la industria. Por ello, esta publicaci´ on le dedica un Cap´ıtulo.
Cap´ıtulo 7: Control PID MIMO. Varios m´etodos de control PID aplicados a procesos MIMO (Multiple Input Multiple Output), caracterizados por m´ultiples entradas y m´ ultiples salidas, se tratan en este cap´ıtulo. Cap´ıtulo 8: Control Fuzzy. El control de procesos empleando inteligencia artificial est´a cobrando mayor importancia en la industria en raz´o n a sus m´ ultiples aplicaciones exitosas. Este Cap´ıtulo trata sobre el control fuzzy (difuso o borroso), el cual es una t´ecnica de control inteligente.
Cap´ıtulo 8: Control Neuronal. Este Cap´ıtulo se ocupa del control neuronal de procesos, el cual es otra t´ecnica de control que emplea inteligencia artificial en su dise˜ no. Ap´ endice A: Matem´ atica para el Control de Procesos. Este Ap´endice trata algunos t´opicos de matem´atica aplicada que son necesarios para el mejor entendimiento de los cap´ıtulos presentados. Se pone ´enfasis en la soluci´on de problemas matem´aticos empleando software. Ap´ endice B: Fundamentos de MATLAB y Simulink. Este cap´ıtulo se ocupa de la teor´ıa y aplicaciones del paquete MATLAB/SIMULINK.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
10/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
XI
VIENEN AGRADECIMIENTOS.
Arturo Rojas Moreno, Ph.D.
[email protected] www.ctlima.com
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
11/256
5/9/2018
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
ControlDe Proc e sosV3 - slide pdf.c om
12/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
Cap´ıtulo 1
Introducci´ on En este Cap´ıtulo se hace un breve introducci´ on sobre los sistemas de control a lazo cerrado y a lazo abierto, describiendo brevemente sus componentes e incluyendo ejemplos industriales para reforzar la comprensi´on de los conceptos. Tales componentes son: el proceso cuya variable de salida se desea controlar, el sistema de instrumentaci´o n que sensa y transmite la variable a controlar, el controlador que procesa la desviaci´on entre el valor de la variable a controlar con respecto a una se˜nal deseada con el prop´osito de generar una se˜ nal de control, y el elemento de control final que recibe la se˜nal generada por el controlador para efectuar cambios en el proceso con la finalidad de que la desviaci´on anteriormente descrita se reduzca a cero.
1.1.
Sistema de Control a Lazo Cerrado
La Fig. 1.1 muestra el diagrama de bloques (la interrelaci´on entre sus componentes) de un sistema de control a lazo cerrado. A continuaci´on vamos a describir sucintamente sus componentes. Controlador de realimentación SP r
e
Algoritmo de Control
Disturbios MV u
Elemento final de control
PV y Proceso
Sensor más Transmisor Sistema de Instrumentación
Fig. 1.1: Sistema de control a lazo cerrado.
El Proceso El bloque proceso representa un cambio f´ısico o qu´ımico de la materia. As´ı tenemos los procesos de calefacci´on, enfriamiento, mezcla, fundici´on, separaci´on, destilaci´ on,
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
13/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
2
Introducci´ on
llenado y vaciado, evaporaci´on, cocci´ on, entre otros. Los instrumentos son dispositivos que se emplean en los procesos para monitorearlos y controlarlos, lo cual se logra mediante la medici´o n de algunas de sus caracter´ısticas, tambi´ en denominadas los par´ ametros del proceso. Algunos ejemplos de caracter´ısticas del proceso son: capacitancia, inductancia, resistencia, voltaje, corriente, peso, presi´on, aceleraci´ on, sonido, color, nivel, temperatura, humedad, densidad, contenido de humedad, viscocidad, dimensi´on, concentraci´on de pH, flujo, velocidad, espesor, gravedad espec´ıfica, entre otros. La variable y mostrada en Fig. 1.4, conocida tambi´ en como PV (Process Variable), es la variable controlada o salida del proceso.
El Sistema de Instrumentaci´ on Es com´ un que un proceso posea varios par´ametros que necesitan ser monitoreadas simult´aneamente. Esto se logra por lo general, empleando un sistema de instrumentaci´ on para cada par´ametro (ver Fig. 1.1). Cada sistema de instrumentaci´on consta de un sensor que proporciona la (variable medida ) , y de un transmisor que cambia dicha variable en una se˜ nal estandarizada que pueda ser transmitida. La variable medida representa entonces la condici´on actual de la variable controlada y. En algunos casos, la variable medida y la variable controlada es la misma variable. Por ejemplo, la medici´on 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´on en el fondo del tanque. Es decir, en este caso medimos presi´on para controlar nivel. Se˜ nales 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˜nales tambi´ en son empleados: 0 a 10 V (volt), 10 a + 10 V, etc. El transmisor tambi´ en es conocido como convertidor, transductor, y en general como un acondicionador de se˜ nales. Si fuera necesario, un acondicionador de se˜nal se puede dise˜ nar empleando opamps (amplificadores operacionales) en su implementaci´ on. En muchos casos, el sensor y el transmisor son parte de un solo instrumento. Los sistemas de instrumentaci´ on actuales tambi´ en incluyen hardware para almacenar algoritmos y rutinas de c´alculo, y para el procesamiento de se˜nales digitales empleando protocolos industriales de comunicaci´on. Los sistemas de instrumentaci´on inteligente
−
reciben dicha denominaci´on, por que poseen la capacidad de procesar se˜nales digitales. En general, los sistema de instrumentaci´ on 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´on cuando alcance un valor previamente establecido.
El Controlador Para lograr control en la Fig. 1.1, se requiere que el valor de la variable medida tienda a ser el valor de la se˜ nal de referencia r o SP (Set Point), que es la se˜ nal deseada de la variable controlada. En otras palabras, en los sistemas de control a lazo
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
14/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
1.1 Sistema de Control a Lazo Cerrado
3
cerrado, las se˜ nales r e y son comparadas. La diferencia entre ellas es la se˜ nal de error e, llamada tambi´en se˜nal de desviaci´on. Cuando existe una desviaci´on, es necesario actuar para eliminarla. Esta acci´on incluye el ajuste y la acci´on de una se˜ nal o fuerza de control u, denominada tambi´en la variable manipulada MV (Manipulated Variable), para minimizar el error; es decir, para hacer que la se˜nal y siga a r, cumpliendo ciertas especificaciones de dise˜ no (secci´on 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´on, 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˜ nal 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´on, que en general no es necesario, s´olo es para indicar en este caso que tal controlador forma parte de un sistema de control realimentado. La funci´on del controlador mostrado en la la Fig. 1.1 se logra llevando a cabo tres pasos. El primero consiste en recopilar informaci´on acerca de la variable del proceso que se desea controlar. Luego, usar convenientemente dicha informaci´on para tomar una decisi´on con relaci´on a la condici´on del proceso. Finalmente, tomar una acci´on basada en tal decisi´on, empleando para ello el elemento de control final. Es importante anotar que para mantener el control, la recopilaci´on de informaci´on 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´ectrica de una vivienda, en donde la acci´on de control se realiza conectando o desconectando a la red la resistencia de calefacci´on 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´ on, se decide que es necesario cambiar la condici´on del proceso: aumentar o disminuir la temperatura. Finalmente, se toma la acci´on 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´ atica. En el control manual, decisi´on la La realiza la es persona, en elatico control atico la realiza unladispositivo. terma un casomientras de controlque autom´ de laautom´ temperatura, mientras que la conducci´on de un carro para mantenerlo a una velocidad constante, es un caso de control manual.
El Elemento Final de Control (EFC) El controlador genera una se˜nal que por si misma no posee la potencia necesaria para provocar cambios en el proceso. Por tal raz´on, la se˜ nal de salida del controlador va hacia el elemento final de control (EFC), el cual s´ı posee la capacidad de efectuar cambios en el proceso con el prop´osito de disminuir el error e = r y. Por consiguiente,
−
el EFC es el hardware que implementa la decisi´on tomada por el controlador. La fuente de energ´ıa com´un del EFC puede ser el´ectrica, neum´atica e hidr´aulica.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
15/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
4
Introducci´ on
Ejemplos de EFC el´ectricos son los motores AC y DC, motores paso a paso, v´alvulas de control mot´oricas, solenoides, rel´es, entre otros. Entre los EFC hidr´aulicos y neum´aticos tenemos: v´alvulas neum´aticas, pistones hidr´aulicos y neum´aticos, motores hidr´aulicos y neum´aticos, etc. Dependiendo del tipo de EFC, en muchos casos ser´a necesario incluir un convertidor (o transmisor) de se˜nal entre el controlador y el EFC, tal como se muestra en el ejemplo 1.1.
Los Disturbios Adem´ as de la variable manipulada, otros factores pueden afectar la variable controlada. 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´on de los disturbios, se requiere de una continua circulaci´on de la informaci´on sobre el proceso. En el sistema de control a lazo cerrado de la Fig. 1.1, la informaci´on fluye constantemente hacia los instrumentos. Tal informaci´o n es denotada como realimentaci´on. Todos los instrumentos y dispositivos que intervienen en el control de un proceso son referidos como el lazo de control realimentado.
Ejemplo 1.1 En el sistema de control de flujo mostrado en la Fig. 1.2(a), indicar sus componentes y las se˜ nales normalizadas. Este sistema emplea como sensor de flujo una placa de orificio para producir la ca´ıda de presi´ o n ∆P = P1 P2, con la finalidad de tener una medici´on indirecta del flujo F, pues sabemos que tal flujo es proporcional a la ra´ız cuadrada de ∆P.
−
Soluci´ on: Ver Fig. 1.3(b). Observar que se requiere un primer transmisor para realizar la operaci´on F = C ∆P , donde C es una constante de proporcionalidad, y luego convertir esta operaci´on en una se˜ nal de corriente estandarizada (4 a 20 mA). El signo ra´ız cuadrada a un costado del transmisor indica esta operaci´on. Notar tambi´en que ha sido necesario incluir un segundo transmisor para convertir 4 a 20 mA al rango de 3 a 15 psi, dado que el actuador de la v´alvula trabaja con se˜ nal neum´atica
√
estandarizada.
Ejemplo 1.2 En el sistema de control de temperatura mostrado en la Fig. 1.3, indicar cu´a l es la se˜nal disturbio y porqu´e. Este sistema emplea como sensor una termoresistencia, cuya salida es un valor de resistencia el´ectrica, la cual es proporcional a la temperatura en el interior del tanque. Los valores de resistencia se convierten a se˜ nales estandarizadas de 4 a 20 mA mediante el transmisor. Observar que la v´alvula de control posee un actuador el´ ectrico porque trabaja con una se˜ nal de 4 a 20 mA. Esta se˜nal alimenta a un motor DC (el actuador). El movimiento de rotaci´on del eje del motor se convierte en un movimiento de traslaci´on para hacer desplazar el eje de la v´alvula.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
16/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
1.1 Sistema de Control a Lazo Cerrado
5
CONTROLADOR
TRANSMISOR
TRANSMISOR
ACTUADOR F P1 P2 PLACA DE ORIFICIO
VÁLVULA NEUMÁTICA
(a) 4 − 20 mA
4 − 20 mA
SP CONTROLADOR 4 − 20 mA PV TRANSMISOR
TRANSMISOR
ACTUADOR P
MV
3 − 15 psi
PROCESO
F
EFC: VÁLVULA DE CONTROL NEUMÁTICA
P1 P2 SENSOR: PLACA DE ORIFICIO (b)
Fig. 1.2: (a) Sistema de control de flujo. (b) Soluci´on al ejercicio 1.1.
Sensor (ohm)
Transmisor MV 4−20 mA
Producto
PV 4−20 m
Controlador SP 4−20 mA Agua caliente
Fig. 1.3: Sistema de control de temperatura.
Soluci´ on: El flujo del producto que ingresa al tanque constituye la se˜nal de disturbio. Mientras mas brusca sea la variaci´on del flujo de producto, mayor ser´a la dificultad para que la se˜ nal PV siga a la se˜nal SP.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
17/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
6
Introducci´ on
1.2.
Sistema de Control a Lazo Abierto
La Fig. 1.4 muestra el diagrama de bloques de un sistema de control a lazo abierto, donde podemos observar que no existe un lazo de realimentaci´on. Dicho lazo si est´a presente en el sistema de control de la Fig. 1.1.
SP r
Disturbios MV Controlador anticipativo
u
Elemento final de control
PV y Proceso
Sensor más Transmisor
Sistema de Instrumentación
Fig. 1.4: Sistemas de control a lazo abierto.
Cuando el controlador de la Fig. 1.4 se reemplaza, por ejemplo, por un PLC (Programmable Logic Controller), entonces el sistema de control a lazo abierto se convierte en un mando programable, el cual se emplea en la industria en muchas tareas de automatizaci´on que tienen que ver principalmente con aperturas y cierres temporizados de v´alvulas y otros actuadores. La programaci´on de los tiempos de la entrada en operaci´on de los compresores que conforman un sistema de generaci´on de aire comprimido, es un ejemplo t´ıpico de mando programable. El control a lazo abierto de la Fig. 1.1 se convierte en un sistema de control anticipativo, cuando el controlador es del tipo anticipativo. En esta clase de control, los sensores miden los valores de los disturbios, mientras que la variable manipulada (la se˜ nal de control) se ajusta antes de que ocurran cambios en la variable controlada. La estrategia de control anticipativo se trata en detalle en la secci´ o n 6.3. Sin embargo, cabe mencionar que este esquema de control presenta ventajas y desventajas comparado con el control realimentado. Por una parte, es deseable porque evita la ocurrencia de errores antes de que se reflejen en la variable controlada. Sin embargo, para lograr aquello, se requiere de un an´alisis din´amico complejo de los disturbios para que la estrategia de control trabaje efectivamente. S´olo en muy pocos casos en la industria, el control anticipativo es relevante. Existen otras estrategias de control, adem´as del control anticipativo, tales como control de la raz´on de dos variables, control en cascada, control de rango partido y control selectivo, todas las cuales ser´an abordadas en detalle en el Cap´ıtulo 6.
Ejemplo 1.3 La Fig. 1.5 muestra un tanque empleado en la industria para el soplado (transporte) de un producto en forma de polvo. En dicha Fig., LT y PT son transmisores para medir el nivel del producto y la presi´on dentro del tanque, respectivamente. Este ejemplo es un caso t´ıpico de mando programable, el cual se implementa con un PLC y v´alvulas ON–OFF (de apertura y cierre). La apertura y cierre de tales v´alvulas se realiza con un programa elaborado para tal prop´osito. Este programa se puede elaborar empleando diversos m´etodos. Uno de los m´as populares es el m´etodo de la
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
18/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
1.3 Din´ amica Lineal de los Elementos Ideales
7
escalera. No es prop´osito de este libro entrar en detalles de este m´etodo de programaci´on. Luego de elaborado y probado el programa, ´este se almacena en la memoria del PLC. Para el caso que nos ocupa, tal programa satisface la siguiente secuencia l´ ogica: ESTADO 0 (REPOSO): V2 OFF ESTADO 1 (LLENAR PRODUCTO): V1 ON ´ ESTADO 2 (TANQUE LLENO): LT M AXIMO, V1 OFF, V2 OFF, V3 ON ´ ESTADO 3 (TRANSPORTAR PRODUCTO): PT MAXIMO, V4 ON, V5 ON ´ ESTADO 4 (SOPLAR NITROGENO): PT M´INIMA, V3 OFF, V4 OFF ESTADO 5 (DESFOGUE/REPOSO): V2 ON, V5 OFF TRANSPORTE DESFOGUE V4
V1 V2
V5 SOPLADO ADICIONAL
ENTRADA DE PRODUCTO
LT PT
SOPLADO INFERIOR
V3
Fig. 1.5: Tanque del ejemplo 1.3 para el soplado de un producto.
1.3.
Din´ amica Lineal de los Elementos Ideales
La Tabla 1.1 describe los modelos din´amicos lineales de los elementos ideales, mientras que la Fig. 1.6 muestra los s´ımbolos de los mismos. Tal informaci´o n es de gran utilidad porque explica el comportamiento f´ısico de los diversos elementos que son parte de los procesos. Las unidades de medida empleadas corresponden al Sistema Internacional, la cual usaremos a lo largo de los cap´ıtulos, salvo indicaciones expresas. De todas formas, siempre est´an disponibles las tablas de conversi´on de unidades. En la Tabla 1.1, la energ´ıa se expresa en J (joule), la potencia en W (watt) y el tiempo t en s (segundos). La Fig. 1.6(a) muestra la inductancia el´ectrica L en H (henrio), en donde se cumple que la diferencia de potencial v21 = v2 v1 en V (volt) es proporcional a la variaci´on de la corriente i en A (ampere) con respecto al tiempo.
−
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
19/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
8
Introducci´ on
Tabla 1.1: Modelos din´amicos para elementos ideales. Almacenador o disipador
Elemento f´ısico
Ecuaci´on descriptiva
Energ´ıa E o potencia
Almacenador inductivo
Inductancia el´ectrica L
di v21 = L dt
E = 12 Li2
Almacenador inductivo
Resorte traslacional
v21 =
1 df K dt
E =
1 F 2 2 K
Almacenador inductivo
Resorte rotacional
ω21 =
1 dT K dt
E =
1 F 2 2 K
Almacenador inductivo
Inercia flu´ıdica
p21 = I dq dt
E = 12 Iq 2
Almacenador capacitivo
Capacitancia el´ectrica
i = C dvdt21
2 E = 12 Cv21
Almacenador capacitivo
Masa
f = M dv dt
E = 12 M v 2
Almacenador capacitivo
Momento de Inercia
T = J dω dt
E = 12 Jω2
Almacenador capacitivo
Capacitancia flu´ıdica
q21 = C f dpdt21
2 E = 12 C f p 2
Almacenador capacitivo
Capacitancia t´ e rmica
q = C t dT dt
E = C t T
Disipador de energ´ıa
Resistencia el´ ectrica
i=
1 R v21
Disipador
Amortiguador f =
Bv 21
P
P = R1 v212 2
de energ´ıa Disipador de energ´ıa
traslacional Amortiguador rotacional
Disipador de energ´ıa
Resistencia flu´ıdica
q=
1 Rf p21
P = R1 p221
Disipador de energ´ıa
Resistencia t´ ermica
q=
1 Rt T 21
P = R1 T 21
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
T = Bω 21
Bv 21
P = P = Bω 212 f
t
20/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
1.3 Din´ amica Lineal de los Elementos Ideales
L
i v
f
v2
v1
(a)
v1
θ2
T
v1
(g) f
B
p1 p2
q2
(h)
ω1 T ω2 B T
f
v2 v
v 1
(i)
(j)
q (m)
2
(k)
Rf p1
C f
f
R
i
p2 (d)
ω T
(f)
p1
q
q1
(e) Ct
I
(c)
M
v
ω2
T
θ1
J v2
q
v2
K
(b)
C
i
ω1 T
K
f
9
(l)
Rt p2
T1
q
T2
(n)
Fig. 1.6: S´ımbolos de los elementos ideales.
La Fig. 1.6(b) ilustra el resorte traslacional de constante K, en donde la variaci´on de velocidad v21 en m/s es proporcional a la variaci´on de la fuerza f en N (newton) con respecto al tiempo. Teniendo en cuenta que v21 = dx21 /dt donde x21 = x2 x1 es el cambio de posici´on, es f´acil demostrar que f=Kx21 . Por ello, K est´a en N/m. La Fig. 1.6(c) muestra el resorte rotacional de constante K en N–m/rad, en donde el cambio de velocidad angular ω21 en rad/s es proporcional a la variaci´on del torque con respecto al tiempo dT/dt en N–m/s (newton–metro/segundo). Considerando que ω21 = dθ21 /dt donde θ21 en rad es el cambio de posici´on angular, es f´acil demostrar que T = Kθ21 . Por ello, K est´a en N–m/rad. En la Fig. 1.6(d) se cumple que el cambio de presi´on p21 en N/m2 es proporcional a la variaci´o n del flujo q en m 3 /s con respecto al tiempo. La constante de proporcionalidad I es la inercia flu´ıdica, la cual posee las unidades N–s2 /m5 puesto que la inercia flu´ıdica se expresa como: p21 I = dq/dt
−
La Fig. 1.6(e) ilustra la capacitancia el´ectrica C en F (faradio), en donde la corriente i en A (ampere) que circula a trav´ es de C es proporcional a la diferencia de potencial v21 en V (volt) con respecto al tiempo. La Fig. 1.6(f) muestra la masa M en kg (kilogramo), en donde la fuerza f en N (newton) que act´ ua sobre M produce la aceleraci´on a=dv/dt en m/s2 , donde v en m/s es la velocidad de la masa M. En la Fig. 1.6(g) se cumple que el torque de torsi´on T en N–m es proporcional a la aceleraci´on angular α = dω/dt en rad/s2 . La constante de proporcionalidad J en
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
21/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
10
Introducci´ on
N–m–s2 /rad se denomina momento de inercia y es caracter´ıstico para cada cuerpo dependiendo de su forma. El flujo q en m/s3 de un fluido que existe en un conducto o recipiente (ver Fig. 1.6(h)), es proporcional a la ca´ıda o cambio de presi´ on p21 con respecto al tiempo. La proporcionalidad mencionada define a la capacitancia flu´ıdica C f en m5 /N. El flujo de calor q en J/s (joule/segundo) que circula en un conducto, es proporcional al cambio de temperatura T en grados K (kelvin) con respecto al tiempo. La proporcionalidad mencionada define a la capacitancia t´ermica Ct en J/K, la cual se muestra en la Fig. 1.6(i). La Fig. 1.6(j) muestra una resistencia el´ ectrica R en Ω (ohm), en donde la corriente i en A es proporcional a la ca´ıda de voltaje v21 . Notar que la proporcionalidad es la inversa de R, la cual se denomina conductancia G=1/R y su unidad es (mho). La fuerza f en N que se ejerce en el amortiguador traslacional mostrado en la Fig. 1.6(k), es proporcional al cambio de velocidad v 21 . La proporcionalidad B se denomina la constante de fricci´on viscosa traslacional, cuya unidad es N–s/m. El torque T en N–m que se ejerce en el amortiguador rotacional mostrado en la Fig. 1.6(l), es proporcional al cambio de velocidad angular ω21 . La proporcionalidad B se denomina la constante de fricci´on viscosa rotacional, cuya unidad es N–m–s/rad. La resistencia flu´ıdica Rf se define como la variaci´o n de la presi´on p21 en un conducto o recipiente, con respecto al flujo q del fluido en m 3 /s, tal como se muestra en la Fig. 1.6(m). Por ello, R f = p21 /q se expresa en N–s/m 5 . De igual manera, la resistencia t´ermica Rt se define como la variaci´on de la temperatura T21 en grados K (kelvin) en un conducto, con respecto al flujo q de calor en J/s, tal como se observa en la Fig. 1.6(n). Por ello, R t posee las unidades K/J.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
22/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
Cap´ıtulo 2
El Proceso a Controlar La din´ amica de una gran variedad de procesos a ser controlados se puede describir mediante un conjunto de ecuaciones diferenciales. Tal descripci´on matem´atica se obtiene aplicando las leyes de la f´ısicas y de la qu´ımica en dicho proceso, tales como la conservaci´ on de la energ´ıa y las leyes de Newton. Para construir un modelo adecuado para prop´ositos de control, se requiere conocer bien la din´ amica del proceso. No siempre es mejor que un modelo sea lo m´ as exacto posible a su comportamiento din´amico. Tener en cuenta que mientras m´ as complejo sea el modelo, m´as dificultoso ser´a el an´alisis y dise˜ no del sistema de control. Lo recomendable es que el modelo del proceso mantenga las caracter´ısticas din´amicas de inter´es para el rango de operaci´on del sistema de control a dise˜ nar. En este cap´ıtulo se determinan los modelos din´ amicos de varios procesos con tres prop´o sitos fundamentales. El primero, para que sirvan como una fuente de datos de salida para poder construir curvas de reacci´on; el segundo, para que su din´ amica sea usada en el dise˜ no de controladores avanzados; por ´ ultimo, para verificar la funcionalidad del controlador actuando sobre el proceso.
2.1.
Procesos con Comportamiento Proporcional
Un proceso SISO con comportamiento proporcional se caracteriza por poseer una FT constante (ver Tabla 2.8), es decir, su salida y(t) es proporcional a su entrada u(t):
y(t) = K p u(t)
(2.1)
donde K p es la ganancia proporcional del proceso. Los dos siguientes procesos poseen comportamiento proporcional.
Flujo en una Tuber´ıa La Fig. 2.1(a) muestra un tramo de tuber´ıa secci´ on uniforme por donde circula un flujo y, cuya magnitud est´a gobernada por la abertura u de la v´alvula de control. Las letras FI (Flow Indication) dentro del c´ırculo indican la presencia de un instrumento de indicaci´ on de flujo. La respuesta al escal´on (su curva de reacci´on a lazo abierto) del proceso flujo se ilustra en la Fig. 2.1(b). Consid´ erese que para un tiempo t1 , el flujo que pasa por
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
23/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
12
El Proceso a Controlar
la v´alvula es y1 = A1 vρ, donde A1 es la secci´on transversal correspondiente a la abertura u1 de la v´alvula, v es la velocidad del flujo considerada constante y ρ es la densidad l´ıquido, tambi´en considerada constante. Para un tiempo t2 , incrementamos la abertura de la v´alvula de u1 a u2 . Consecuentemente, el flujo aumenta de y1 a y2 = A2 vρ, sin experimentar retardo, donde A2 es la secci´on transversal correspondiente a la abertura u2 . La ganancia proporcional del proceso flujo es entonces: K p =
∆y y2 = ∆u u2
− y1 − u1
(2.2)
En el dominio de Laplace, la expresi´on gen´ erica de la FT del proceso flujo toma la forma: y(s) = K p u(s) (2.3) donde s es el operador de Laplace. u u FI
2
u
u
1
y y
Válvula de control
∆u
t1
t2
t
y 2
(a)
y
∆y
1 t1
t2
t (b)
Fig. 2.1: (a) Proceso flujo. (b) Respuesta al escal´on (curva de reacci´on a lazo abierto) del proceso flujo.
Ejemplo 2.1 Determinar la ganancia proporcional del proceso flujo mostrado en la Fig. 2.1(a), sabiendo quepor el recorrido de10 la L/min v´alvula(L: es litro). de 10 mm y que el el m´acambio ximo flujo que puede pasar la tuber´ıatotal es de Asumir que de flujo ∆y a trav´es de la v´alvula es proporcional al cambio de abertura de v´alvula ∆u.
Soluci´ on.- La proporcionalidad se refiere a que ∆y = K p ∆u. Empleando la ecuaci´on (2.2), la ganancia K p se calcula como: K p =
∆y y2 = ∆u u2
− y1 = 10 − 0 = 1 L − u1 10 − 0 minmm
♣
Flujo en una Faja de Transporte La Fig. 2.2 muestra una fa ja transportando un flujo de material granulado y. cuya magnitud est´a gobernada por la velocidad u en el eje de salida de una caja reductora.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
24/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
2.2 Procesos de Primer Orden
13
Observar que un motor es el que hace girar los ejes de entrada y de salida de dicha caja. La respuesta al escal´on mostrado en la Fig. 2.1(b) tambi´ en se aplica al proceso flujo de granos. Consid´ erese que para un tiempo t1 , el flujo que pasa por la banda es y1 , correspondiente a la velocidad u1 fijada en la caja reductora. Para un tiempo t2 , incrementamos la velocidad de salida de la caja reductora, fij´andola de u 1 a u2 . Consecuentemente, el flujo aumenta de y1 a y2 , sin experimentar retardo. Entonces, la ganancia proporcional del proceso flujo de granos es la misma obtenida en (2.2) y la correspondiente FT est´a dada por (2.3). Silo de material
Banda transportadora u Caja de reducción
y
Motor
Fig. 2.2: Proceso flujo de granos sobre una banda de transporte.
2.2.
Procesos de Primer Orden
Un procesos SISO de primer orden se caracterizan por poseer una FT que posee 1 una parte proporcional K p m´as un retardo de primer orden T s+1 (ver Tabla 2.8); es decir, su salida y(s) est´a relacionada con su entrada u(s) como sigue: y(s) =
K p u(s) Ts + 1
(2.4)
donde K p es la ganancia proporcional del proceso y T es la constante de tiempo. Los siguientes procesos son de primer orden.
Nivel en un Tanque Cerrado La Fig. 2.3 muestra un tanque cerrado de secci´on uniforme S , en el cual ingresa un flujo de agua qC y sale otro flujo qD a trav´es de un orificio ubicado en la base del tanque. La Tabla 2.1 describe las variables y par´ametros en juego. Aplicando balance de masas en el tanque se tiene que el cambio de volumen de agua acumulado en el interior del tanque se puede modelar como: dh S = S h˙ = qC dt
− qD
(2.5)
donde h es la altura del agua y S ˙h es el cambio de volumen de agua en el tiempo t dentro del tanque. Para variaciones peque˜ nas de h y asumiendo que el flujo de salida
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
25/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
14
El Proceso a Controlar 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.
Tabla 2.1: Par´ametros y variables del proceso nivel en un tanque cerrado. S´ımbolo dS
Descripci´on Di´ametro del tanque
S
Secci´ on circular del tanque
h
Nivel del agua
h
Nivel del agua en estado estacionario
Valor 0.2
Unid. m
0.0314
m2 m
0.4
m 3
qC q C
Flujo de agua fr´ıa hacia el tanque Estado estacionario de qC
qD
Flujo de salida desde el tanque
qD
Estado estacionario de qD
Rh
Resistencia hidr´ aulica del tanque: Rh = h/qD
qD es laminar, entonces: qD =
1.66 10−4
×
2.16 10−4
h Rh
×
m3 /s m /s m3 /s m3 /s s/m2
(2.6)
donde Rh es la resistencia hidr´aulica del tanque, la cual se puede determinar de [13]: Rh =
h qD
(2.7)
donde h y q D son los valores en estado estacionario de h y qD respectivamente. Reemplazando (2.6) en (2.44), se obtiene la ecuaci´ on de estado lineal del nivel: h˙ =
− R1hS h + S 1 qC
(2.8)
En el dominio de Laplace: h˙ = s h h(0), donde s es el operador de Laplace. Si se tiene en cuenta que h(0) = 0 (requisito indispensable para hallar la FT del proceso),
−
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
26/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
2.2 Procesos de Primer Orden
15
(2.8) toma la forma: h(s) = Rh qC (s) SR h s + 1
h(s) =
Rh qC (s) SR h s + 1
(2.9)
Asumiendo que el flujo de entrada es un escal´on de amplitud A, entonces, su transformada de Laplace es: qC (s) = A/s. Por consiguiente, de (2.9) se obtiene: h(s) =
Rh A s(SR h s + 1)
(2.10)
Aplicando los teoremas del valor inicial y del valor final en h(s), los valores inicial y final de h(t) resultan: l´ım h(t) = l´ım sh(s) = 0
t
0
→
l´ım h(t) = l´ım sh(s) = Rh A
s
s
t
→∞
→∞
o
→
La curva de reacci´on a lazo abierto del nivel h se determina resolviendo (2.8) o (2.10). Vamos a intentar tres soluciones. Para una primera soluci´on, descomponemos (2.10) en fracciones parciales:
−
Rh A 1 h(s) = = Rh A s(SR h s + 1) s
1 (s +
1 SR h )
Tomando transformada inversa de Laplace a cada t´ermino de h(s) se obtiene: h(t) = Rh A 1
− e−
1 SRh
Los valores inicial y final de h(t) resultan: l´ım h(t) = 0
t
→0
t
t
(2.11)
l´ım h(t) = Rh A
→inf
Notar que estos valores coinciden con los hallados empleando (2.10). La segunda forma de hallar h(t) es empleando matem´atica simb´olica, tal como se ilustra en el siguiente programa denominado nivel1simb.m: % nivel1simb.m DETRMINACI´ ON 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 tambi´en grafica la curva de reacci´on. Este programa requiere la ecuaci´on de diferencia del proceso nivel. Para ello se debe de discretizar la ecuaci´on de estado dada en (2.8) como sigue: h(k + 1) h(k) 1 1 = h(k) + qC (k) T Rh S S 1 1 h(k + 1) = h(k) + T h(k) + qC (k) Rh S S
−
−
−
h = h + T
−
1 1 h + qC Rh S S
donde k = t/T es el tiempo discreto y T es el tiempo de muestreo. La u ´ ltima notaci´on es m´as conveniente para programaci´on en tiempo real. Ejecutar el programa curvah.m para obtener la curva de reacci´on de la Fig. 2.4.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
27/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
16
El Proceso a Controlar
% curvah.m CURVA DE REACCI´ O N DEL NIVEL DEL AGUA EN EL TANQUE CERRADO clear all; close all; clc; % PAR´ AMETROS DEL PROCESO TANQUE CERRADO S=0.0314; hbar=0.5; qCbar=1.666e-4; qDbar=2.16e-4; Rh=hbar/qDbar; h=0; T=1; M=500; % PERIODO DE MUESTREO Y N´ UMERO DE MUESTRAS M for k=1:M; QC(k)=qCbar; h=h+T*(-(1/(Rh*S))*h+(1/S)*qCbar); H(k)=h; end ejet = linspace(0,M*T,M); subplot(2,1,1), plot(ejet,QC*6e4); grid % CONVERSI´ O N A L/min ylabel(’Flujo qC [L/min]’), xlabel(’TIEMPO [s]’) subplot(2,1,2), plot(ejet,H); grid, ylabel(’NIVEL [m]’), xlabel(’TIEMPO [s]’), print -f -deps curvah % GENERA FIGURA curvah.eps 11 10.5 ] h / L [ C q
10 9.5 9 8.5 0
50
100
150
200 250 TIEMPO
300 [s]
350
400
450
500
50
100
150
200 250 TIEMPO
300 [s]
350
400
450
500
0.4
0.3 ] m [ L 0.2 E I V N
0.1
0
0
Fig. 2.4: Proceso nivel en un tanque cerrado.
Temperatura en un Tanque con Agitador La Fig. 2.5 muestra un proceso t´ermico: temperatura en un tanque con agitador. A este tanque ingresa un flujo q a una temperatura T i y sale el mismo flujo q pero a una temperatura T o . Asumiendo cero p´ erdidas se va a demostrar que la FT T i (s)/T o (s) es de primer orden. La Tabla 2.2 describe las variables y par´ametros en juego. Asumiendo que el l´ıquido en el tanque se agita uniformemente, que los flujos volum´ etricos de entrada y de salida, la densidad y capacidad calor´ıfica del l´ıquido son todos constantes, y que el proceso es adiab´atico (sin p´erdidas) debido a que el tanque posee buen aislamiento, entonces, la ecuaci´on del balance de energ´ıa es: qρC p T i
o − qρC pT o = V ρC v dT dt
(2.12)
En el dominio de Laplace s, (2.12) resulta: qρC p T i (s)
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
− qρC pT o(s) = V ρC v (sT o − T o(0))
28/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
2.2 Procesos de Primer Orden
17
q Ti
q T
Fig. 2.5: Proceso temperatura en un tanque con agitador.
Tabla 2.2: Par´ ametros y variables del proceso temperatura en un tanque con agitador. S´ımbolo q ρ
Descripci´on Flujo de entrada y de salida
Unidades m3 /s kg/m3
Densidad del l´ıquido en q
C p
Capacidad calor´ıfica a presi´on constante
C v
Capacidad calor´ıfica a volumen constante
V
Volumen del l´ıquido en el tanque
J kg K J kg K m3
T i
Temperatura del flujo de entrada
oC
T o
Temperatura del flujo de salida
oC
Sabemos que la determinaci´on de la FT de cualquier proceso requiere que todas las condiciones iniciales sean nulas. En el caso que nos ocupa, tal requerimiento se cumple si: T o (0) = 0. Por lo tanto, su correspondiente FT T i (s)/T o (s) resulta: T o (s) 1 = T i (s) τs + 1
τ =
V C v qC p
(2.13)
La curva de reacci´on del proceso con T i (s) = A/s, la cual es semejante al gr´afico inferior de la Fig. 2.4, posee la forma: T o (t) = A (1
− e−
t τ
)
la cual se halla ejecutando el programa en matem´ atica simb´olica temp1simb.m, donde tau = τ : % temp1simb.m DETRMINACI´ ON DE To(t) USANDO TRANSFORMADA INVERSA DE LAPLACE clear all; close all; clc; syms s tau A; To = ilaplace(A/(s*(tau*s+1))); pretty(simplify(To))
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
29/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
18
El Proceso a Controlar
2.3.
Procesos de Segundo Orden
Circuito con Opamps La Fig. 2.6 muestra un seguidor de voltaje y dos amplificadores operacionales (opamps) inversores conectados en cascada. La ganancia del seguidor de voltaje es uno. Las ganancias de los amplificadores son respectivamente: V x (s) = V i (s)
−R
1 sC 1
1
V o (s) = V x (s)
1 sC 1
+
−R
1 sC 2 2
+
1 sC 2
Este proceso es de segundo orden porque: V o (s) 1 = V i (s) (R1 C 1 s + 1)(R2 C 2 s + 1) C1
R1
C2
C2
R2
C1
Vo Vi Vi Seguidor de voltaje
Vx Opamp inversor
Opamp inversor
Fig. 2.6: Proceso de segundo orden con opamps.
Tanques en Cascada La Fig. 2.7 muestra dos tanques unidos por una tuber´ıa. Los par´ ametros y variables de este proceso se describen en la Tabla 2.3. Las ecuaciones din´amicas que gobiernan este sistema son: q1 =
h1
− h2
R1
C 1
dh1 =q dt
− q1
q2 = h2 C 2 dh2 = q1 q2 R2 dt Pasando al dominio de Laplace con condiciones iniciales nulas, se obtiene:
−
q1 (s =
h1 (s)
− h2(s)
R1
C 1 sh1 (s) = q(s)
h2 (s) C 2 sh2 (s) = q1 (s) R2 Si la entrada es q(s) y la salida es q2 (s), entonces: q2 (s) =
q2 (s) q(s)
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
=
− q1(s)
− q2(s)
1 2
R1 C 1 R2 C 2 s + (R1 C 1 + R2 C 2 + R2 C 1 )s + 1
30/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
2.3 Procesos de Segundo Orden
19
Tabla 2.3: Par´ ametros y variables del proceso temperatura en un tanque con agitador. S´ımbolo
Descripci´on
Unidades
q, q1 , q2
Flujos de entrada, intermedio y de salida
R1 , R2
Resistencias hidr´ aulicas
C 1 , C 2
Capacitancias hidr´aulicas
m3 s s m2 m2
h1 , h2
Niveles en los tanques
m2
q
h1
h2
R1
R2 q2
q1
Fig. 2.7: Proceso de segundo orden con tanques en cascada.
Indicador con N´ ucleo de Fierro M´ ovil La Fig. 2.8 muestra un indicador con n´ucleo de fierro m´ovil, donde K es la constante del resorte, B es la constante de viscocidad del amortiguador, M es la masa del n´ ucleo de fierro encerrado por la bobina, y u es la corriente que circula por la bobina. La fuerza electromagn´etica K m u producida por u produce un movimiento y en el n´ ucleo, cuya direcci´on y magnitud depende de la direcci´on y magnitud de la corriente u. El movimiento y, que es tambi´ en el desplazamiento del indicador, es proporcional a la corriente u. La ecuaci´on que gobierna el movimiento del n´ucleo es: K m u = Ky + B
dy d2 y + M 2 dt dt
En el dominio de Laplace y con condiciones iniciales nulas, la ecuaci´on anterior resulta: K m u(s) = Ky(s) + Bsy(s) + M s2 y(s) La FT y(s)/u(s) toma la forma: y(s) = 2 u(s) s + K p =
K m M
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
K m M B K M s + M
ζ =
=
s2
B 2 KM
√
K p + 2ζωn s + ωn2 ωn =
K
M
31/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
20
El Proceso a Controlar
Fig. 2.8: Proceso: Indicador con n´ucleo de fierro m´ovil.
2.4.
Procesos Integrales
Llenado de un Tanque La Fig. 2.9 muestra un tanque de secci´on A que est´a siendo llenado por un flujo u de entrada. S´olo cuando el tanque alcanza un nivel m´aximo, entonces se prende la bomba de vaciado. El volumen acumulado en el tanque es: A dy = u dt En el dominio de Laplace: Asy(s) = u(s). Por lo tanto, la FT de este proceso es: K p y(s) = u(s) s
K p =
1 A
Fig. 2.9: Faja de transporte con tiempo muerto.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
32/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
2.5 Procesos con Tiempo Muerto
21
Sat´elite El sat´elite mostrado en la Fig. 2.10 se puede modelar como: J θ¨ = u donde J es el momento de inercia del sat´elite, θ es el ´angulo de inclinaci´on y u es el torque generado por los impulsores para corregir el ´angulo de inclinaci´o n. En el dominio de Laplace, el modelo del sat´elite toma la forma: Js2 θ(s) = u(s). Luego, la FT del sat´ elite es un doble integrador: θ(s) K p = 2 u(s) s
K p =
1 J
Por otro lado, si seleccionamos como variables de estado x1 = θ y x2 = θ, ˙ entonces las ecuaciones de estado del proceso resultan: x˙ 1 = x2 y x˙ 2 = u/J , mientras que la salida es: y = x1 . En forma matricial:
x˙ 1 x˙ 2
=
0 1 0 0
x1 x2
y = [1 0]
x1 x2
+
0
1 J
u
θ
J u
Fig. 2.10: Esquema simplificado de un satelite.
2.5.
Procesos con Tiempo Muerto
Faja de Transporte con Tiempo Muerto La Fig. 2.11 muestra una faja transportando granos. Observar que en el intervalo t0 hasta t1 , el flujo de granos y0 es producido por la abertura y0 de la v´alvula de cuchilla. En el tiempo t1 se incrementa la abertura de la v´alvula en un ∆u, lo cual se traduce en un incremento del flujo en un ∆y, s´olo cuando dicho incremento recorra la distancia L. Sabemos que la faja se mueve a una velocidad constante v. Por consiguiente, el tiempo muerto que demora el flujo ∆y en recorrer L es: T t = L v
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
33/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
22
El Proceso a Controlar
La FT de este proceso resulta entonces: y(s) t u(s) = K p e−T s
∆y K p = ∆u
Fig. 2.11: Faja de transporte con tiempo muerto.
Flujos en Tuberias con Tiempo Muerto La Fig. 2.12 muestra dos flujos y1 y y2 que circulan por dos tuber´ıas que luego se juntan en una tuber´ıa, en la cual se ha instalado un sensor de PH. En la tuber´ıa com´ un de longitud L, el flujo suma y1 + y2 circula a una velocidad v. Hasta el tiempo t1 , las aberturas de v´alvulas u10 y u20 producen un flujo de y10 + y20 . En el tiempo t1 se incrementa la abertura de una de las v´alvulas en un ∆u1 , lo cual se traduce en un incremento del flujo total en un ∆y1 + y20 , s´ olo cuando dicho incremento recorra la distancia L (hasta alcanzar la posici´on del sensor de PH). Por lo tanto, el tiempo muerto que demora el flujo ∆y1 en recorrer L es: T t = L v La FT de este proceso toma la forma: y(s) = K p e−T t s u1 (s)
2.6.
K p =
∆y1 ∆u1
Procesos de Orden Superior
Proceso de Enfriamiento de Tercer Orden En la Fig. 2.13(a), Qc es el flujo de agua a una temperatura T c que ingresa a la camisa de enfriamiento del tanque, con el prop´osito de enfriar el flujo q constante que
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
34/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
2.6 Procesos de Orden Superior
23
Fig. 2.12: Faja de transporte con tiempo muerto.
ingresa al tanque a T . unaLatemperatura T i . Este flujo abandona el tanque desborde a una temperatura pared met´alica del tanque se encuentra a una por temperatura T m . El modelo de este proceso fue extra´ıdo de [28]. La Tabla 2.4 muestra las variables y par´ametros del proceso. El balance de energ´ıa en el flujo que se procesa se expresa como: qρC p T i
− hiAiT + hiAiT m − qρC pT = V ρC v dT dt
(2.14)
La ecuaci´on (2.14) tambi´en es v´alida para el estado estacionario: qρC p T i
hi Ai T + hi Ai T m
qρC p T = V ρC v
dT
dt Restando (2.15) de (2.14) y teniendo en cuenta que ti = T i T i , tm = T m t = T T , entonces el modelo lineal residual de (2.14) resulta:
−
−
−
−
qρC p ti
− hiAit + hiAitm − qρC p t = V ρC v dt dt
(2.15)
− T m y (2.16)
Pasando (2.16) al dominio de Laplace y operando, se obtiene: t(s) = K 1 =
qρC p qρC p + hi Ai
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
K 1 K 2 ti (s) + tm (s) τ 1 s + 1 τ 1 s + 1 K 2 =
hi A i qρC p + hi Ai
−
τ 1 =
(2.17) V ρC p qρC p + hi Ai
35/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
24
El Proceso a Controlar
Rebose q T
Agua fría qC TC
TC
ρC
Camisa de enfriamiento Tanque metálico Tm
Producto q Ti
ρ
(a)
ti
K6
K 1
tc i
1
K5
tc
τ s+1 3 K
1
K4
t
K3
7
q
1 τ s+1 1
K2
τ 2 s+1 t m
(b)
c
Fig. 2.13: Proceso de enfriamiento.
El balance de energ´ıa para la pared del tanque se formula como:
− T m) − hoAo(T m − T c) = V mρmC V dT dtm Como en el caso anterior y sabiendo que tc = T c − T c , se encuentra: dtm hi Ai (t − tm ) − ho Ao (tm − tc ) = V m ρm C V dt hi Ai (T
m
(2.18)
m
tm (s) =
K 3 K 4 t(s) + tc (s) τ 2 s + 1 τ 2 s + 1
(2.19)
hi Ai ho Ao V m ρm C vm K 4 = τ 2 = hi Ai + ho Ao hi Ai + ho Ao hi Ai + ho Ao El balance de energ´ıa en la camisa de enfriamiento se formula como: K 3 =
Qc ρc C p T ci + ho Ao (T m
c − T c) − QcρcC pT c = V cρcC v dT dt
(2.20)
La ecuaci´on (2.20) es no lineal debido a los productos Qc T ci y Qc T c , los cuales se pueden linealizar siguiendo el procedimiento de la subsecci´on A.6.1, ejemplo A.49, sabiendo que: qc = Qc Qc . Esto es:
−
Qc T ci = Qc T ci + T ci qc + Qc tci Qc T c = Qc T c + T c qc + Qc tc
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
(2.21)
36/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
2.6 Procesos de Orden Superior
25
Tabla 2.4: Par´ ametros y variables del proceso de enfriamiento en un tanque con camisa de enfriamiento. En la Tabla, C.T.C. significa Coeficiente de Transferencia Calor´ıfica. S´ımbolo Qc , Qc , qc
Descripci´ on Flujo de agua actual, estable y residual
Valor
Unid. m3 /s m3 /s
q
Flujo actual del producto que ingresa
ρ
Densidad de q
kg/m3
ρc
Densidad de Qc
kg/m3
ρm
Densidad de la pared de metal del tanque
kg/m3
C p
Capacidad calor´ıfica de q
C v C vm
J kg K
Capacidad calor´ıfica en el tanque Capacidad calor´ıfica del metal de la pared
m3
V
Volumen del producto en el tanque
V m
Volumen de la pared de metal del tanque
T,T,t T ci , T ci , tci T i , T i , ti T m , T m , tm
− kg J −K J kg −K m3
Temp. actual, estable y residual de q
K
Temp. actual, estable y residual de Qc
K
Temp. actual, estable y residual de q
K
Temp. actual, estable y residual del metal
K
hi
C.T.C. de la cara interna del tanque
ho Ai
C.T.C. de la cara externa del tanque ´ Area interna de transferencia de calor
J m2 s K J m2 s K m2
Ao
´ Area externa de transferencia de calor
m2
−− −−
Reemplazando las ecuaciones de (2.21) en (2.20) se obtiene: dT c dt (2.22) En el estado estacionario todas las variables residuales son nulas. Por consiguiente, (2.22) toma la forma:
− −
ρc C p (Qc T ci +T ci qc +Qc tci )+ho Ao (T m T c ) ρc C p (Qc T c +T c qc +Qc tc ) = V c ρc C v
ρc C p Qc T ci + ho Ao (T m
c − T c) − ρcC pQcT c = V cρcC v dT dt
(2.23)
Restando (2.22) de (2.22) y pasando la resultante al dominio de Laplace se obtiene: tc (s) =
K 5 K 6 K 7 tc + tm + qc τ 3 s + 1 i τ 3 s + 1 τ 3 s + 1
K 5 = Qc ρc C p ho Ao + Qc ρc C p ho Ao
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
K 6 =
(2.24)
ho Ao ho Ao + Qc ρc C p
37/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
26
El Proceso a Controlar
−
ρc C p (T c T ci ) ho Ao + Qc ρc C p
K 7 =
τ 3 =
V c ρc C p ho Ao + Qc ρc C p
La Fig. 2.13(b) muestra el diagrama de bloques del proceso construido con las ecuaciones (2.17), (2.20) y (2.24). Observar que dicho diagrama de bloques es similar al del ejemplo ??, en donde se determinaron la funciones de transferencia t(s)/qc (s) (tipo PT3 ), t(s)/tci (s) (tipo PT3 ) y t(s)/ti (s) (tipo PD2 T3 ).
2.7.
El Motor DC
La Fig. 2.14(a) muestra el circuito equivalente de un motor DC (direct current), donde Rf , Lf , I f y V f son la resistencia, la inductancia, la corriente y el voltaje de campo respectivamente, Ra , La , I a y V a son la resistencia, la inductancia, la corriente y el voltaje de armadura respectivamente, T m , T L y T d son el torque motor, el torque de carga y el torque de disturbio respectivamente, K m es la constante de motor, K b es la constante contraelectromotriz, ω es la velocidad angular, θ es la posici´on angular del eje, J es el momento de inercia del motor m´as carga y B es la constante de fricci´on del motor m´as carga.
Rf
La
Lf
V f I
Vb J
f
Ia
Campo I f
1 R f
Lf s
Km
T d
Tm
B
ω θ
(a)
V f
Va
Ra
Motor más carga
ω
1 TL
Js
θ
1 s
B
(b) Armadura Va
Km Vb
Im
Tm
1 Ra
T d
Motor más carga
ω
1 TL
L as K
Js
B
1 s
θ
b
(c)
Fig. 2.14: (a) Circuito equivalente del motor DC. (b) Motor DC controlado por campo. (c) Motor DC controlado por armadura.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
38/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
2.7 El Motor DC
27
Motor DC Controlado por el Campo Cuando el motor DC est´ campo, entonces la corriente de campo I f es variable, mientras quea controlado la corrientepor de el armadura I a permanece constante. Las ecuaciones en el dominio de Laplace que rigen la din´amica del motor CC en este caso son: V f (s) = (Rf + Lf s)I f (s) T m (s) = K m I f (s) = T L (s) + T d (s) T L (s) = Jsω(s) + Bω(s)
ω(s) = sθ(s)
El diagrama de bloques para este caso se muestra en la Fig. 2.14(b). Considerando que el torque de disturbio T d es despreciable, la FT resulta: G p (s)
θ(s) K m = V f (s) = s(Js + B)(Lf s + Rf )
(2.25)
Si la inductancia de campo Lf es suficientemente peque˜ na, entonces la FT para la posici´on θ y para la velocidad angular ω toman la forma: G p (s) = G p (s) =
θ(s) K = V f (s) s(τ s + 1) ω(s) K = V f (s) τs + 1
∼ ∼
τ =
J B
K =
K m Rf B
(2.26)
Motor DC Controlado por la Armadura Si el motor DC est´a controlado por la armadura, entonces la corriente de armadura I a es variable, mientras que la corriente de campo I f permanece constante. Las ecuaciones en el dominio de Laplace que rigen la din´amica del motor DC en este caso son: V a (s) = (Ra + La s)I a (s) + V b (s)
V b (s) = K b ω(s)
T m (s) = K m I a (s) = T L (s) + T d (s) T L (s) = Jsω(s) + Bω(s) ω(s) = sθ(s)
(2.27)
El diagrama de bloques para esta situaci´on se muestra en la Fig. 2.14(c). Asumiendo que el torque de disturbio T d es despreciable, la FT resulta: G p (s) =
θ(s) K m = V a (s) s[(Ra + La s)(Js + B) + K b K m ]
(2.28)
Si la inductancia de campo La es suficientemente peque˜ na, entonces la FT para la posici´on θ y para la velocidad angular ω toman la forma: G p (s) = G p (s) =
θ(s) K = V a (s) s(τ s + 1) ω(s) K K m ; K = ; = V e (s) τs + 1 Ra B + K b K m
∼
∼
τ =
Ra J (2.29) Ra B + K b K m
Notar que tanto para el motor controlado por campo como por armadura, las FTs para θ y para ω dadas en (2.26) y (2.29) poseen la misma estructura cuando se desprecia ya sea Lf o La .
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
39/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
28
El Proceso a Controlar
Modelo en el Espacio de Estado En ingenier´ ıa de control se emplea m´apresenta s el motorenCC controlado debido a la inherente realimentaci´ on que este caso. Por por tal armadura raz´o n nos ocuparemos del modelo en el espacio de estado para este motor. Si seleccionamos como variables de estado x1 = θ, x2 = ω y x3 = I a y asumimos que T d = 0 en (2.27), se obtienen las siguientes ecuaciones diferenciales de primer orden: x˙ 1 = x2
x˙ 2 =
− BJ x2 + K J m x3
x˙ 3 =
1 b − K x3 + V a La La
Si se elige como salida la posici´on y = x1 y se designa a V a como la entrada u, la forma matricial de la ecuaci´on de estado resulta:
x˙ = Ax + Bu
x˙ 1 x˙ 2 x˙ 3
=
1 0 0
0
0
− BJ − K J − K L − RL
m
b a
a a
y = Cx
0 0
+
u
y=
1 La
(2.30) 1 0 0
x1 x2 x3
Si se considera que la inductancia de armadura La es despreciable, entonces podemos usar las FTs dadas en (2.29). Para el caso posici´on θ, seleccionemos x 1 = θ y x2 = θ˙ como las variables de estado del motor, y = θ como la salida y u = V a como la se˜nal de entrada. Se deja como ejercicio demostrar que partiendo de la primera FT de (2.29), la representaci´on en el espacio de estado resulta:
x˙ = Ax + Bu
x˙ 1 x˙ 2
=
0 0
1
−
1 τ
y = Cx
+
0
K τ
u
y=
(2.31)
1 0
x1 x2
Para el caso velocidad angular ω, seleccionemos x = y = ω como la variable de estado y a la vez salida y u = V a como la se˜ nal de entrada. Se deja como ejercicio demostrar que partiendo de la segunda FT de (2.29), la representaci´on en el espacio de estado toma la forma: x = Ax + Bu y = Cx (2.32) A=
−
1 τ
K B = τ
C = 1
2.8.
Modelo MIMO del Proceso Tanque Cerrado
2.8.1.
Descripci´ on del Proceso
El proceso tanque cerrado con agua estudiado aqu´ı se muestra en la Fig. 2.15. La Fig. 2.16 ilustra el esquema para estudio de este proceso, donde se observa que los flujos de agua fr´ıa qC y de agua caliente qC se mezclan en el interior del tanque con el prop´osito de producir el flujo de salida qC a una temperatura θ. Por consiguiente, el proceso tanque con agua es multivariable cuadrado debido a que posee dos entradas: los flujos qC y qH , y dos salidas: el nivel h del agua dentro del tanque y la temperatura θ que se asume uniforme en el interior del tanque.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
40/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
2.8 Modelo MIMO del Proceso Tanque Cerrado
29
Fig. 2.15: Sistema tanque con agua. El objetivo del sistema de control a dise˜ nar, es determinar adecuadas fuerzas de control qC y qH con la capacidad de estabilizar las salidas controladas h y θ, cumpliendo ciertas especificaciones de dise˜no previamente establecidas. La manipulaci´o n de las fuerzas de control se realizan mediante dos v´alvulas de control neum´ aticas, mientras que el transmisor de nivel LT y el transmisor de temperatura TT se ocupan de medir y transmitir el nivel y la temperatura respectivamente. La Tabla 2.5 describe las variables y los par´ametros valorados del proceso tanque cerrado con agua.
2.8.2.
Modelo Din´ amico No Lineal del Proceso
Balance de Masas Aplicando balance de masas en el tanque, el cambio de volumen de agua acumulado en su interior se modela como: dh A = Ah˙ = qC + qH qD (2.33) dt donde A es la secci´on del tanque, h es la altura del agua, Ah˙ es el cambio de volumen de agua en el tiempo t, qC (agua fr´ıa) y qH (agua caliente) son los flujos de entrada al tanque y qD (agua calentada) es el flujo de salida, el cual se calcula de [14]:
−
qD = CE π d2 4
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
√
2ρD ∆ p = a h;
a = CE π d2 ρD 4
2g
(2.34)
41/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
30
El Proceso a Controlar
Tabla 2.5: Par´ametros, variables y s´ımbolos del sistema tanque con agua. S´ımbolo dA
Descripci´on Di´ametro del tanque
A
Secci´ on circular del tanque
h
Nivel del agua
h qC
Nivel del agua en estado estacionario Flujo de agua fr´ıa hacia el tanque
q C
Estado estacionario de qC
qH
Flujo de agua caliente hacia el tanque
q H
Estado estacionario de qH
qD
Flujo de salida desde el tanque
qD
Estado estacionario de qD
Rh
Resistencia hidr´aulica del tanque: Rh = h/qD
g θC θH
Aceleraci´ on de la gravedad Temperatura del flujo qC Temperatura del flujo qH
θ
Temperatura del flujo qD y en el tanque
θ
Estado estacionario de θ
Valor 0.2
Unid. m
0.0314
m2 m
0.4
m m3 /s
1.66 10−4
m3 /s
×
m3 /s
0.5 10−4
×
m3 /s m3 /s
2.16 10−4
×
m3 /s s/m2
9.81
m/s2
20 +270 50 +270
K K K
35+270
K
ρC
Densidad del agua para qC
998
kg/m3
ρH
Densidad del agua para qH
988
kg/m3
ρD
Densidad del agua para qD
996
kg/m3
d
Di´ametro del orificio de la placa en qD
6.5
mm
D
Di´ametro de la placa de orificio en qD
15.9
mm
C p LT
Calor espec´ıfico del agua Transmisor de nivel
4186.8
kgJ K
TT
Transmisor de temperatura
FT
Transmisor de flujo
PT
Transmisor de presi´ on
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
42/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
2.8 Modelo MIMO del Proceso Tanque Cerrado
31
PT LT= Transmisor de Nivel TT = Transmisor de Temperatura
TT
PT= Transmisor de Presión FT= Transmisor de Flujo LT Reboce Drenaje
Agua Caliente
Agua Fría
FT
FT
Fig. 2.16: Esquema de estudio del sistema tanque con agua.
donde hemos usado el hecho de que la ca´ıda de presi´on ∆ p en la tuber´ıa de di´ametro D provocada por la placa de orificio de di´ametro d se expresa como: ∆ p = ρD gh En la expresi´on (2.34), g es la aceleraci´on de la gravedad, C = 0.6 es el coeficiente de descarga del orificio, ρD es la densidad del agua a una temperatura θ, β = d/D es una relaci´on igual a 0.41 y E es una constante de correcci´on del valor del flujo debido a consideraciones geom´etricas, el cual se expresa como: E = (1
− β 4)−1/2
Despejando h˙ de (2.33), la ecuaci´on de estado para la variable de estado nivel toma la forma:
h˙ =
− Aa √h + A1 qC + A1 qH
(2.35)
Los valores de las densidades del agua en funci´on de la temperatura se pueden obtener de figura 2.17.
Balance de Energ´ıa T´ ermica El balance de energ´ıa t´ermica dentro del tanque se formula como: ΦT =
−ΦD + ΦC + ΦH
(2.36)
donde ΦH es calor entregado por el flujo de agua caliente qH , ΦT es el calor del agua en el interior del tanque, ΦD es el calor que toma el flujo de salida qD y ΦC
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
43/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
32
El Proceso a Controlar
Fig. 2.17: Valores de la densidad del agua versus la temperatura.
es el calor que trae consigo el flujo de entrada de agua fr´ıa qC . Cabe anotar que se est´a despreciando el calor que se libera al exterior del tanque debido a que tal tanque es cerrado y suficientemente aislado. Las relaciones que gobiernan los flujos calor´ıficos descritos anteriormente son: dθ = AhρD C p θ˙ dt = C p ρC θC qC
ΦT = AhρD C p ΦC
ΦH = C p ρH θH qH
√
ΦD = C p ρD θ qD = C p ρD θ a h
(2.37)
Los par´ametros que aparecen en (2.37) se describen en la tabla 2.5. Observar que se asume un valor constante para el calor espec´ıfico del agua C p . La ecuaci´on de estado de la variable de estado temperatura θ se obtiene despejando θ˙ =
a − Ah θ
√
h+
dθ dt
= θ˙ de (2.36):
ρC θC qC ρH θH qH + ρD A h ρD A h
(2.38)
Definamos las siguientes fuerzas de control o variables manipuladas: u 1 = qC , u2 = qH y las siguientes variables de estado: x1 = h, x2 = θ y juntando las ecuaciones (2.35) y (2.38), la ecuaci´on de estado que describe la din´amica del proceso tanque cerrado con agua se formula como:
x˙ = f (x, u) x˙ =
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
x˙ 1 x˙ 2
=
h˙˙ θ
x=
x1 x2
(2.39)
u=
u1 u2
=
qC qD
44/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
2.8 Modelo MIMO del Proceso Tanque Cerrado
f 1
f =
33
− Aa √x1 + A1 u1 + A1 u2
=
− f 2
a x2 A x1
√
+
ρC θC u1 ρD A x1
+
ρH θH u2 ρD A x1
Dado que las variables de estado son las variables medidas del proceso, entonces la ecuaci´on de salida posee la siguiente expresi´on:
y = Cx y=
2.8.3.
y1 y2
=
x1 x2
(2.40)
C=
1 0 0 1
Modelo Din´ amico de Lagrange del Proceso
El modelo din´amico de Lagrange del proceso tanque cerrado con agua se obtiene reordenado las ecuaciones de (2.39) en la forma siguiente:
√
u1 + u2 = Ax˙ 1 + a x1
√
ρC θC u1 + ρH θH u2 = ρD Ax1 x˙ 2 + ρD a x1 x2 Por consiguiente:
1 1 ρc θC ρH θH
u1 u2
=
A 0 0 ρD Ax1
x˙ 1 x˙ 2
+
√ √
a x1 ρD a x1 x2
Operando en la ´ultima ecuaci´o n, es f´acil demostrar que el modelo din´amico de Lagrange del proceso toma la forma:
u = P x˙ + d 1
−ρD Ax1 ρD Ax1 (ρH θH − ρC θC ) − √ √ 1 ρH θH a x1 − ρD a x1 x2 √ √ d= (ρH θH − ρC θC ) −ρC θC a x1 + ρD a x1 x2 P=
2.8.4.
ρH θH A ρC θC A
(2.41)
Modelo Din´ amico Lineal del Proceso
La placa de orificio instalada en la tuber´ıa del flujo de salida qD produce un flujo turbulento que para variaciones peque˜ nas del nivel h se puede aproximar como [13]: 2h qD = (2.42) Rh donde Rh es la resistencia hidr´aulica del tanque, la cual se puede determinar de [13]: Rh =
h qD
(2.43)
donde h y q D son los valores en estado estacionario de h y qD respectivamente. Reemplazando (2.42) en (2.35), se obtiene la ecuaci´on lineal de estado del nivel: h˙ =
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
− R2hA h + A1 qC + A1 qH
(2.44)
45/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
34
El Proceso a Controlar
En funci´on de las variables de estado definidas anteriormente, (2.44) toma la forma: x˙ 1 =
− R2hA x1 + A1 u1 + A1 u2
(2.45)
Asumiendo que la variaci´on del nivel h es m´ınima, entonces podemos hacer las siguientes sustituciones en la ecuaci´on de estado (2.38) correspondiente a la temperatura en el tanque:
√
h=h
qD = a h = a h = q D
donde el valor estacionario q D se calcula de (2.42). Tales reemplazos nos permiten obtener la siguiente descripci´ on lineal de la din´amica de la temperatura: θ˙ =
qD − Ahρ
θ + ρC θC qC + ρH θH qH hρD AhρD
D
(2.46)
Empleando las variables de estado definidas anteriormente, (2.46) toma la forma: x˙ 2 =
qD − Ahρ
x2 + D
ρC θC ρH θH u1 + u2 AhρD AhρD
(2.47)
La ecuaci´on de estado lineal del proceso se obtiene juntando las ecuaciones (2.45) y (2.47): (2.48) x˙ = A x + B u
− −
x= A=
x x12
2 Rh A
0
=
h θ
u=
0
qD AhρD
B=
u u12
=
C qqH
1 A
1 A
ρC θC AhρD
ρH θH AhρD
La ecuaci´on de salida es la misma expresi´on dada en (2.40).
2.9.
Respuesta Transitoria de los Procesos
2.9.1.
Respuesta al Escal´ on
Asumamos que la respuesta de un sistema (su curva de reacci´on) a una entrada tipo escal´on posee la forma mostrada en la Fig. 2.18, el cual es el caso en muchos sistemas industriales denominados autoregulados. Observar en la Fig. 2.18 que la respuesta y0 en el tiempo t1 se debe a la entrada tipo escal´on u0 . Cuando la se˜nal escal´ on de entrada cambia de u0 a u1 , entonces se produce la curva de reacci´on y(t) mostrada, la cual empieza en t1 . Este tipo de respuesta se puede aproximar mediante una FT de primer orden en cascada con una FT del tiempo muerto: G p (s) =
K p y(s) = eτ s u(s) (T s + 1)
K p =
y1 u1
− y0 − u0
(2.49)
donde K p es la ganancia proporcional, T es el retardo de primer orden o la constante de tiempo y τ es el tiempo muerto o retardo puro. Los par´ametros T y τ se obtienen
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
46/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
2.9 Respuesta Transitoria de los Procesos
35
u
y Proceso autoregulado
u1 u u0 t
0
t 1
KP e τs Ts + 1
y1 y
P.T. y
0
τ t
t
t1
0
t
T
Fig. 2.18: Curva de reacci´on de un sistema.
gr´aficamente trazando una tangente que toque el punto de tangencia (P.T.) sobre la curva de reacci´on. La curva de reacci´on mostrada en la Fig. 2.18 tambi´ en se puede aproximar mediante una FT de orden n de la forma: G(s) =
y(s) K p = u(s) (T n s + 1) n
K p =
y1 u1
− y0 − u0
(2.50)
Los par´ametros n y T n de (2.50) se determinan empleando la Tabla 2.6. Tabla 2.6: Determinaci´on de los par´ametro n y T n de (2.50). n τ /T
2 0.104
3 0.218
4 0.320
5 0.410
6 0.493
7 0.591
8 0.641
9 0.709
10 0.775
T n /T
0.368
0.270
0.224
0.195
0.175
0.151
0.148
0.140
0.132
Ejemplo 2.2 Determinar dos modelos din´amicos que describan el comportamiento velocidad frenada de un motor DC a partir de su curva de reacci´on, semejante a la mostrada en la Fig. 2.18. Esta curva se obtuvo manipulando la entrada u del sistema, un generador de voltaje continuo. Los datos le´ıdos fueron: u0 = 10 V, u1 = 20 V, y0 = 400 rpm, y1 = 600 rad/s, el tiempo muerto τ = 2 s y T = 9.2 s. Determinar la ganancia normalizada del sistema sabiendo que la entrada m´axima de voltaje es 40 V y el rango del instrumento de medici´on de rpm a la salida es de 0 a 1000 rpm.
Soluci´ on: El primer modelo din´amico se halla con la ecuaci´on (2.49) donde τ = 2 s y T = 9.2 s: G(s) =
y(s) K p = e−τ s u(s) (T s + 1)
K p =
y1 u1
− y0 = 600 − 400 = 20 rpm − u0 20 − 10 V
El segundo modelo din´amico se refiere a la ecuaci´on (2.50). Con los datos proporcionados en el ejemplo se obtiene: τ /T = 0.217. Empleando la Tabla 2.6 se puede
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
47/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
36
El Proceso a Controlar
determinar: n = 3 y T n /τ = 0.270, lo que implica: T n = 0.54 s. La FT resulta: K p 20 G(s) = y(s) = = (T n s + 1)n (0.54s + 1) 3 u(s) La ganancia normalizada K P n se determina de: K pn =
600 400 1000 0 20 10 40 0
− − − −
=
0.2 = 0.4 0.5
Caso Especial Para el caso especial: 0 < τ/T < 0.104 la din´amica del sistema autoregulado se puede aproximar mediante la siguiente FT de segundo orden: G(s) =
Y (s) K P = (T 1 s + 1)(T 2 s + 1) U (s)
K P =
y1 u1
− y0 − u0
(2.51)
donde T 1 y T 2 son dos constantes de tiempo que se relacionan mediante la ecuaci´on: T 1 = kT 2
k>1
La constante k se determina usando la Tabla 2.7. Tabla 2.7: Determinaci´on de los par´ametro T 1 y T 2 de (2.51). 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
T 1 /T
0.238
0.175
0.140
0.120
0.107
0.097
0.088
0.081
0.074
Ejemplo 2.3 Determinar el modelo que describa la din´amica de un sistema mecatr´onico de velocidad a partir de su curva de reacci´on, semejante a la mostrada en la Fig. 2.18. En este caso, los datos le´ıdos fueron: u0 = 5 V, u1 = 15 V, y0 = 200 rpm, y1 = 300 rpm, τ = 2 s, T = 22 s. amico se refiere a la ecuaci´on (2.51). Dado que τ /T = 0.09, Soluci´ on: El modelo din´ empleando la Tabla 2.51 se determina que k = 2 y T 1 /T = 0.175, lo que implica que T 1 = 3.85 s y T 2 = kT 1 = 7.7 s. Como K P = (300–200)/(15–5) = 10 rpm/V, la FT pedida es: Y (s) K 10 P G(s) = U (s) = (T 1 s + 1)(T = (3.85s + 1)(7.7s + 1) 2 s + 1)
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
48/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
2.9 Respuesta Transitoria de los Procesos
2.9.2.
37
M´ etodo del 28.3 % y 63.2 %
La Fig. 2.19 muestra curva det reacci´ on para el m´etodo 28.3 % y 63.2 %. En este m´etodo se determinan loslatiempos 28.3 % y t63.2 % correspondientes a las magnitudes 0.283∆y y 0.632∆y, respectivamente. En base a estos valores, los par´ametros de la FT dada en la ecuaci´on (2.49) se determinan de: T = 1.5(t63.2 %
− t28.3 %)
τ = t63.2 %
− T
(2.52)
t 63.2%
u
y
u1
Proceso u
u0 t
0
t
autoregulado y KP e τs Ts + 1
t
1
t 23.3%
y 1
∆y
0.632 ∆y y
0
0.283 ∆ y t
0
t1
t
Fig. 2.19: Curva de reacci´on para el m´etodo 28.3 % y 63.2 %.
2.9.3.
Otras Respuestas al Escal´ on y al Impulso
Los sistemas autoregulados presentan una respuesta finita (constante o cero) a entradas de prueba escal´on o impulso. Sabemos que cuando la entrada u(t) es un escal´ on o un impulso de magnitud A, sus correspondientes transformadas de Laplace son u(s) = A/s y u(s) = A respectivamente. El siguiente proceso de segundo orden se emplea para explicar las especificaciones de dise˜ no en el dominio del tiempo como veremos en la siguiente secci´on. La FT de este sistema es: y(s) ωn2 G p (s) = = 2 (2.53) r(s) s + 2ζωn s + ωn2 donde ωn es conocida como la frecuencia natural de oscilaci´on y ζ es el coeficiente de amortiguamiento. Cuando r(s) = A/s (entrada tipo escal´on de magnitud A), y(s) en (2.53) toma la forma: Aωn2 y(s) = (2.54) s(s2 + 2ζωn s + ωn2 ) Tomando la transformada inversa de Laplace (f´ormula (31) de la Tabla A.1) se obtiene: ωn −ζω n t y(t) = A 1 e sen(ωd t + θ) (2.55) ωd
−
La Fig. 2.20 (gr´afico superior izquierda) muestra y(t) para A = 1 y varios valores de ζ . Notar que para ζ 1 la respuesta se vuelve sobreamortiguada. La transformada
≥
inversa de laplace de (2.54) para ζ Tabla A.1.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
≥ 1 se obtiene empleando la f´ormula (32) de la
49/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
38
El Proceso a Controlar
Cuando u(s) = A (entrada tipo impulso), y(s) en la ecuaci´on (2.53) se formula como: Aωn2 y(s) = 2 (2.56) s + 2ζωn s + ωn2 Tomando la transformada inversa de Laplace (f´ ormula (29) de la Tabla A.1) resulta: y(t) =
Aωn2 −ζω n t e senωd t ωd
(2.57)
La Fig. 2.20 (gr´afico superior derecha) muestra y(t) para A = 1 y varios valores de ζ . Notar tambi´en que para ζ 1 la respuesta se vuelve sobreamortiguada. Una forma alternativa de (2.53) incluye un tiempo muerto τ . Esto es:
≥
G(s) =
y(s) ω2 = 2 e−sτ u(s) s + 2ζωs + ω 2
(2.58)
Para una entrada tipo escal´on (u(s) = A/s) en (2.58) y aplicando la propiedad (5) de la Tabla A.2 en (2.55), se obtiene la respuesta y(t) al escal´on correspondiente a (2.58): ωn −ζω n (t−τ ) y(t) = A 1 e sen[ωd (t τ ) + θ] (2.59) ωd
−
−
La Fig. 2.20 (gr´afico inferior izquierda) muestra y(t) para A = 1 y varios valores de ζ . De nuevo, notar que para ζ 1 la respuesta se vuelve sobreamortiguada. Si la entrada es un impulso (u(s) = A) en (2.58) y aplicando la propiedad (5) de la Tabla A.2 en (2.57), se obtiene la respuesta al impulso y(t) correspondiente a (2.58): Aωn2 −ζω n (t−τ ) y(t) = e senωd (t τ ) (2.60) ωd
≥
−
La Fig. 2.20 (gr´afico superior derecha) muestra y(t) para A = 1 y varios valores de ζ . Notar que para ζ 1 la respuesta se vuelve sobreamortiguada. Para obtener la Fig. 2.20, ejecutar el programa r1.m listado abajo.
≥
% r1.m RESPUESTAS AL ESCAL´ ON Y AL IMPULSO DE PROCESOS AUTOREGULADOS clear all; close clc; wn=3; tau=2; s=tf(’s’); subplot(221), forall; z=[0.2:0.4:1.8]; G1=wn^2/(s^2+2*z*wn*s+wn^2); step(G1), hold on, end subplot(222), for z=[0.2:0.4:1.8]; G2=wn^2/(s^2+2*z*wn*s+wn^2); impulse(G2), hold on, end subplot(223), for z=[0.2:0.4:1.8]; G3=wn^2*exp(-tau*s)/(s^2+2*z*wn*s+wn^2); step(G3), hold on, end subplot(224), for z=[0.2:0.4:1.8]; G4=wn^2*exp(-tau*s)/(s^2+2*z*wn*s+wn^2); impulse(G4), hold on, end, print -deps -f r1
Respuesta al Escal´ on en Procesos No Autoregulados Procesos no autoregulados, como es el caso de la posici´on angular del eje de un motor de CC, o el aumento del nivel de un l´ıquido dentro de un tanque sin tuber´ıa de
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
50/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
2.10 Problemas
39
Step Response
Impulse Response
2 e d u t i l p m A
4
1.5
e d u t i l p m A
0.2
1
2
0
0.5
1.8
1.8
1
0
0.2
0
5 Time (sec)
−2
10
0
5 Time (sec)
Step Response
Impulse Response
2 e d u t i l p m A
4
1.5
e d u t i l p m A
0.2
1
2
0.2
0
0.5 0
10
1
0
1.8 1.8
5 Time (sec)
−2
10
0
5 Time (sec)
10
Fig. 2.20: Respuestas al escal´on y al impulso de procesos de segundo orden en funci´on del par´ametro ζ .
salida, poseen una respuesta al escal´on no finita, tal como se ilustra en la Fig. 2.21. La din´ amica de tales procesos se puede modelar como: G p (s) =
K I −τ s e s
R = K I τ
(2.61)
donde τ es el tiempo muerto, R es la raz´on de reacci´on unitaria y K I es la ganancia integral. Los par´ametros R y τ se obtienen gr´aficamente, tal como se ilustra en la Fig. 2.21. A manera de resumen, la Tabla 2.8 muestra la FT (funci´ on de transferencia) de varios procesos en funci´on de su comportamiento.
2.10.
Problemas
Problema 2.1 La Fig. 2.22 muestra un amplificador un seguidor de voltaje y dos opamps inversores. Demostrar que este proceso es proporcional con ganancia K p = Rf /Ri , donde Rf , Ri y R son resistencias.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
51/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
40
El Proceso a Controlar Proceso no autoregulado
u A
u
KI s
e
τs
y y
R = KI τ
τ
R
t
τ
Fig. 2.21: Respuesta al escal´on de un proceso no autoregulado.
Tabla 2.8: FT de varios procesos en funci´on de su comportamiento, donde FT: Funci´on de Transferencia y τ : tiempo muerto. Otras combinaciones son posibles. Proceso
FT
Proceso
Proporcional (P)
K p
Primer orden
Integral (I)
K p s
Segundo orden (primera forma)
Doblemente integral
K p s2
Segundo orden (segunda forma)
Proporcional integral (PI)
K p 1 +
Proporcional derivativo (PD)
K p (1 + T d s)
P+I+D
K p 1 +
1 T i s
Segundo orden (tercera forma)
1 T i s
+ T d s
De orden n (primera forma) De orden n
K p e−τ s
2do orden con τ (1a forma)
Integral con tiempo muerto
K p s
2do orden con τ (2a forma)
1er orden con tiempo muerto
K p T s+1
e−τ s
K p T s+1 K p (T 1 s+1)(T 2 s+1) K p (T s+1)2
2 ωn 2 s2 +2ζω s+ωn
K p (T 1 s+1) (T n s+1)
···
K p (T s+1)n
(segunda forma)
Tiempo muerto
e−τ s
FT
2do orden con τ y derivativo
K p (T 1 s+1)(T 2 s+1)
e−τ s
2 ωn 2 s2 +2ζωs+ωn
e−τ s
2s ωn 2 s2 +2ζωs+ωn
e−τ s
Problema 2.2 La Fig. 2.23 muestra una turbina de agua unido a un generador el´ ectrico. De-
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
52/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
2.10 Problemas
41
R
Rf Ri
R Opamp inversor
Seguidor de voltaje
Vin
Vo Opamp inversor
Fig. 2.22: Generador accionado por una turbina de agua.
mostrar que: M (s) K p ω(s) = T s + 1 donde M (s) es el momento rotacional generado por la turbina gracias a la ecci´on del flujo de agua, ω(s) es la velocidad angular del generador y T su correspondiente constante de tiempo. Asumir conocido cualquier otro par´ametro necesario. Generador eléctrico Turbina Entrada de agua M
ω
Desague
Fig. 2.23: Generador accionado por una turbina de agua.
Problema 2.3 En la subsecci´on 2.8.1 se determinaron el modelo de Lagrange y la ecuaci´ on de estado del proceso tanque cerrado con agua. Ahora consideremos que se desea controlar el flujo de salida qD = a h y la temperatura en el tanque θ. Las fuerzas de control (las entradas), siguen siendo las mismas: qC y qH . Determinar la ecuaci´on de estado y el modelo de Lagrange del proceso para esta situaci´on.
√
Problema 2.4 La Fig. 2.24 muestra un tanque de almacenamiento de gas. Demostrar que: P o (s) = 1 P i (s) Ts + 1
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
T = RC
53/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
42
El Proceso a Controlar
donde P o es la presi´on del gas dentro del recipiente, P i es la presi´on del gas de entrada, R = (P i P o )/Q es el la resistencia neum´atica, Q es el caudal del gas, C = dm/dp (variaci´ on de la masa con respecto a la variaci´on de la presi´on) es la capacitancia neum´atica, m = ρV es la masa del gas, V es el volumen del tanque, ρ es la densidad del gas y T = RC es la constante de tiempo. Se sabe adem´as que la capacitancia C multiplicada por la variaci´on de la presi´on de salida dP o , es igual al gas Q a˜nadido al recipiente en un diferencial de tiempo dt.
−
Pi R Q Po C
ρ
Fig. 2.24: Tanque almacenador de gas.
Problema 2.5 La Fig.que 2.25est´ muestra una proceso anico donde M es la la masa de un cuerpo a accionado por unamec´ fuerza u. traslacional, A esta acci´on se le oponen fuerza f K = Kx en el resorte y la fuerza de p´erdidas f B = Bv en el amortiguador, donde K es la constante del resorte, B es la constante de p´erdidas, v = dx/dt es la velocidad de la masa M y x su posici´on.. La ecuaci´on din´amica de este proceso es: M
dv = f dt
− f K − f B
Determine la FT v(s)/u(s) y la ecuaci´on matricial de estado del proceso sabiendo que x1 = v, x2 = f K , mientras que la salida es: y = x1 /K . x v
K B
f K
M
u
f B
Fig. 2.25: Proceso mec´anico traslacional.
Problema 2.6 : Sistema de Plataformas
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
54/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
2.10 Problemas
43
La Fig. 2.26 muestra dos plataformas P 1 y P 2 de masas m1 y m2 acopladas por resorte y amortiguador. El sistema de plataformas descrito tiene como entradas de control las se˜ nales u1 y u2 generadas por dos actuadores. Las se˜ nales de control son capaces de llevar a cero con suficiente rapidez los errores de posici´on e 2 = r2 y2 , donde r1 y r2 son las se˜ nales de referencia e y1 e y2 , las se˜ nales de salida a controlar, son las posiciones individuales de las plataformas. Asuma Usted los valores de los par´ametros del sistema.
−
a) Determinar las ecuaciones de estado y de salida del sistema. b) Determine el modelo de Lagrange del sistema. ¦
¨ §
¦ §
e1
¦
¨
¨ §
u1
¥
+
¦
¨ §
¤
¥
¦
¨ §
+ ¤
¦ §
¨
¦
¨ §
r1
P1
R1
−
− +
y1
Y1 u2
K1
B1
+
r2
y
P2
©
2
©
R2
©
©
−
−
Y2 K2
©
B2
©
©
e2
¡¢
¡¢ £¢
¡¢ £¢
¡¢ £¢
¡¢ £¢
¡¢ £¢
¡¢ £¢
¡¢ £¢
¡¢ £¢
¡¢ £¢
¡¢ £¢
¡¢ £¢
¡¢ £¢
¡¢ £¢
¡ £¢
£
Fig. 2.26: Plataformas acopladas.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
55/256
5/9/2018
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
ControlDe Proc e sosV3 - slide pdf.c om
56/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
Cap´ıtulo 3
El Sistema de Instrumentaci´ on Este Cap´ıtulo
3.1.
Sensores
Recordemos que la Fig. 1.1 ilustra un sistema de control a lazo cerrado (o realimentado) simple, denominado as´ı poseer un solo lazo de realimentaci´ on. El bloque sistema de instrumentaci´on para el control de procesos SISO (Single Input Single Output), consta de un sensor y de un transmisor. El sensor proporciona la variable medida, la cual representa la condici´on actual de la variable controlada y, mientras que el transmisor cambia tal medici´o n en una se˜nal estandarizada, la cual generalmente es una se˜nal que pueda ser procesada y transmitida. En muchos casos la variable medida y la variable controlada pueden ser la misma. Los temas sensores y transmisores se tratan en forma extensa y especilizada en los textos de instrumentaci´on industrial. En esta publicaci´on, tales temas van a ser tratados con el suficiente nivel que exige un texto de control de procesos. La medici´on del valor actual de la se˜nal a controlar se realiza mediante un sensor, denominado tambi´ en elemento primario de medici´ on, o un instrumento de medici´on que emplea los sensores adecuados para tal o cual medici´on. Un sensor puede estar caracterizado por unacurva curvasedeobtiene reacci´ on la cual relaciona con la se˜ nal generada. Esta aplicando una serie la devariable entradasmedida conocidas al sensor y almacenando las correspondientes respuestas. Un ejemplo t´ıpico est´a constituido por las curvas caracter´ısticas de Temperatura ( ◦ F) vs mV de las termocuplas. Seg´ un el tipo de se˜ nal de salida que proporciona, un sensor se puede clasificar en anal´ogicos (la se˜ nal de salida es continua dentro del rango de medici´on), digital (la se˜ nal de salida es digital), y ON–OFF (la se˜nal de salida var´ıa entre los umbrales ON y OFF). Seg´ un la magnitud a medir, el sensor puede ser de nivel, presi´on, temperatura, proximidad, flujo, etc. Por ejemplo, una termoresistencia proporciona una se˜ nal continua en ohms, la cual es proporcional a la temperatura medida, mientras que un radar proporciona se˜nales discretas que son proporcionales a la magnitud de la variable medida. Por otro lado, las se˜ nales que abren y cierran completamente una v´alvula son del tipo ON–OFF.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
57/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
46
3.1.1.
El Sistema de Instrumentaci´ on
Caracter´ısticas Est´ aticas y Din´amicas
Un sensor posee tanto caracter´ısticas est´aticas: rango, alcance, resoluci´ on, sensibilidad, curva caracter´ıstica, linealidad, saturaci´on, zona muerta, repetibilidad, hist´eresis, precisi´ on y exactitud, como din´amicas: velocidad de respuesta, respuesta en frecuencia, y estabilidad. El rango es el campo de medida de la magnitud de entrada del sensor y var´ıa entre el valor m´aximo y el valor m´ınimo detectables, con una tolerancia de error aceptable. El alcance o span es la diferencia entre el valor m´aximo y el valor m´ınimo de inter´es, mientras que la resoluci´ on es la m´ınima diferencia entre dos valores pr´oximos que el sensor es capaz de distinguir. Supongamos que un volt´ımetro es capaz de medir en el rango de 0 a 500 V, pero nosotros s´olo estamos interesados en medir en la escala de 200 a 300 V, lo cual significa un span de 100 V. El volt´ımetro usado posee una resoluci´on de 0.5 V, es decir, podemos ver sin dificultad lecturas de, por ejemplo, 200.5 V 0 289.5 V. Por otro lado, la sensibilidad es la variaci´o n de la salida producida por una variaci´on de la entrada. El gr´afico de los puntos de sensibilidad define la curva caracter´ıstica o de de calibraci´on. Este gr´afico representa respuesta no lineal. Mientras mayor sea la pendiente de dicha curva, mejor la sensibilidad. En un sensor con curva de respuesta lineal , la variaci´on de la salida producida por una variaci´o n de la entrada es constante; es decir, su sensibilidad es siempre la misma y su curva caracter´ıstica es lineal. Por ejemplo, las curvas caracter´ısticas de los diodos en su zona activa son no lineales porque sus puntos de sensibilidad corriente sobre voltaje no son constantes. En cambio, 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´ on se manifiesta en un sensor debido a la no linealidad producida por la disminuci´on de sensibilidad, t´ıpicamente al principio o al final del rango. En las zonas de saturaci´on, la medici´on no es confiable. La zona muerta de un sensor es el ´area de valores de la variable medida que no hace variar la indicaci´on del instrumento. Un sensor posee repetibilidad cuando se puede repetir el valor de la medici´on de una variable para una u ´ nica direcci´on de medici´on. La hist´erisis en un sensor se parece a la repetibilidad; sin embargo, el proceso de medici´on es en ambos sentidos. Por ejemplo, un term´ometro posee repetibilidad porque siempre mide 49 ◦ C en un objeto de 50◦ C cuando dicho objeto pasa de m´as fr´ı◦o a m´as caliente. Desafortunadamente, este term´ometro posee una hist´ eresis de 1 C porque en un objeto de 50 ◦ C mide ◦ 49 C cuando dicho objeto pasa de m´as fr´ıo a m´as caliente, y mide 51 ◦ C cuando el objeto pasa de m´as caliente a m´as fr´ıo. La exactitud de una medici´o n se refiere a la m´axima desviaci´o n en% del valor medido, con respecto al valor ideal. Por otro lado, un instrumento de medici´o 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´on m´axima en la medici´on es 5 mA con respecto al valor real de 100 mA, la exactitud del instrumento resulta:
±
5 100
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
× 100 = 5 %
58/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
3.1 Sensores
47
La precisi´ on se halla calculando primero la media de las lecturas: 105 + 103 + 105 + 103 + 105 = 104 mA 5 y luego determinando la m´axima desviaci´ o 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´ amico 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´on entre la salida resistencia en ohm y la entrada temperatura en ◦ C es constante, mientras que en un flotador empleado para la medici´on de nivel, la relaci´on entre la salida voltaje en V y la entrada nivel en m es una expresi´on 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´on. La estabilidad en un sensor se explica como la desviaci´on que sufre la medici´on cuando se var´ıan ciertos par´ ametros. La velocidad de respuesta de un sensor es la capacidad para que la se˜nal de salida siga sin retraso a las variaciones de la se˜ nal de entrada. Una velocidad de respuesta r´apida implica una constante de tiempo T peque˜ na y viciversa. Por otro lado, la respuesta en frecuencia de un sensor se determina excitando al sensor con se˜nales senoidales de amplitud constante y frecuencia variable. Si el sensor recibe excitaciones senoidales, entonces en 3.1: s = jω, donde j = 1 es la unidad de n´umeros imaginarios y ω = 2πf es la frecuencia angular. Luego:
±
√−
K Ts + 1
=
s= jω
M (ω) =
K = T jω + 1
√1 +K ω2T 2
√1 +K ω2T 2 arctan(−T ω) = M (ω)∠M (ω)
M B (ω) = 20logM (ω)
(3.2)
∠M = arctan( T ω)
−
donde M (ω) es la magnitud de 3.1 y ∠M (ω) es el argumento o fase para cada freB (ω) es M expresado en dB (decibelios). El gr´ cuencia ω. M ficosensor de M Brepresentado (ω) vs ω en escala logar´ ıtmica es la respuesta en frecuencia en magnitud adel en 3.1, mientras que el gr´afico ∠M = arctan( T ω) vs ω en escala logar´ıtmica es su correspondiente respuesta en frecuencia de su ´angulo o fase. Tales representaciones se denominan los gr´aficos de Bode en magnitud y fase. Un sensor no es estable cuando la medici´ on experimenta desviaciones en los valores medidos debido a la variaci´on de ciertos par´ ametros, tales como K y T (ecuaci´ on 3.2).
−
3.1.2.
Principios de los sensores
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
59/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
48
El Sistema de Instrumentaci´ on
Fig. 3.1: Principios de los sensores.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
60/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
3.1 Sensores
49
Fig. 3.2: Principios de los sensores.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
61/256
5/9/2018
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
ControlDe Proc e sosV3 - slide pdf.c om
62/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
Cap´ıtulo 4
Elementos Finales de Control Este Cap´ıtulo
4.1.
Caracter´ısticas
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
63/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
52
Elementos Finales de Control
Fig. 4.1: Actuadores.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
64/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
4.1 Caracter´ısticas
53
Fig. 4.2: Actuadores.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
65/256
5/9/2018
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
ControlDe Proc e sosV3 - slide pdf.c om
66/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
Cap´ıtulo 5
Control PID SISO El controlador PID SISO procesa la se˜ nal de error e(t) entre la se˜ nal deseada r(t) y la se˜nal controlada y(t) (la salida del sistema) empleando un algoritmo de control ampliamente difundido en el mundo industrial, cuya forma m´ as conocida es: K c u(t) = K c e(t) + T i
e(t)dt + K c T d
de(t) = P (t) + I (t) + D(t) dt
donde K c es la ganancia proporcional, T i es el tiempo integral y T d es el tiempo derivativo. En la expresi´ on anterior se puede ver claramente que el algoritmo PID posee una parte proporcional P (t), una parte integral I (t) y otra derivativa D(t). Este algoritmo posee muchas variaciones, algunas de las cuales vamos a explorar en este cap´ıtulo. Dependiendo de laEsaplicaci´ on, el mencionar controladorque en cuesti´ on puede trabajar P, PI, PD oonPID. importante el algoritmo PID es el decomo mayor aplicaci´ industrial (aproximadamente el 90 %) y su modelo din´ amico es lineal y de segundo orden. Se emplea para controlar sistemas caracterizados por tener una entrada y una salida, como son los casos del control de presi´on, nivel, flujo, entre otros.
5.1.
Sistema de Control SISO
Un sistema de control SISO realimentado o a lazo cerrado, sin presencia de disturbios, tal como el que se muestra en la Fig. 5.1(a), comprende el proceso con FT p (s) cuya salida y (la se˜ G alnPV) se desea controlar, controlador oGnc (s) la se˜ nal de control u (la nse˜ al MV) y el sistema de un instrumentaci´ G mque (s) genera que se ocupa de sensar y transmitir la se˜ nal y. El comparador que genera la se˜nal de error e = r y, donde r es la se˜ nal de referencia deseada o SP, es parte del controlador. El controlador mostrado en las Figs. 5.1(b) y (c) ha sido dividido en dos partes: Gc1 (s) y Gc2 (s). Para algunas configuraciones Gc1 (s) es del tipo PI mientras que Gc2 (s) es del tipo D, tal como se ver´ a m´as adelante. Notar que el sistema a controlar G p (s) mostrado en las Figs. 5.1(a), (b) y (c) es del tipo SISO porque posee una entrada: u y una salida: y. Los controladores mostrados en las Figs. 5.1(a) y (b) son parte de un circuito realimentado. En la Fig. 5.1(c), el controlador Gc2 (s) es del tipo anticipativo, mientras que Gc1 (s) es del tipo de realimentaci´on.
−
El objetivo de control consiste en dise˜nar una se˜ nal de control u, generada por el algoritmo de control, que sea capaz de estabilizar la salida y del sistema con respecto
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
67/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
56
Control PID SISO r
e
u
Gc (s)
G p(s)
y
G m (s) (a) r
e
u
G c1 (s)
G p(s)
y
G c2 (s) G m (s) (b) G c2 (s) r
e
G c1 (s)
u
y G p(s)
G m (s) (c)
Fig. 5.1: Sistemas de control realimentados.
a una se˜ nal de referencia r. En otras palabras, que la se˜ nal de control u sea capaz de minimizar la se˜ nal de error e = r y, cumpliendo ciertas especificaciones de dise˜ no previamente establecidas, ya sea en el dominio del tiempo o en el dominio de la frecuencia.
−
El sistema de control SISO realimentado mostrado en la Fig. 5.2 toma en cuenta la acci´on de los disturbios dy , du y dm actuando en la salida del sistema, en la salida del controlador y en la salida del transmisor, respectivamente, los cuales no fueron considerados en el sistema de la 5.1(a). El objetivo de control del sistema en este caso es m´ ultiple: dise˜ n ar una se˜ nal de control u que sea capaz de estabilizar la salida y con respecto a la se˜nal de referencia r, cumpliendo ciertas especificaciones de dise˜no (ver secci´on 5.2) previamente establecidas, rechazando al mismo tiempo la acci´on de los disturbios que act´uan sobre el sistema. El filtro de entrada sirve para eliminar las componentes de alta frecuencia, cuya presencia puede ser da˜ nina durante el funcionamiento del sistema de control realimentado. Por otro lado, para evitar posibles da˜ nos en el actuador del elemento de control final, se debe de incluir un limitador, tal como el mostrado en la Fig. 5.2. La presencia de dicho limitador puede provocar el efecto denominado windup, el cual ser´a tratado en la secci´on 5.7.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
68/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
5.2 Especificaciones de Dise˜ no
57 du
r
Filtro de entrada
e
dy u
Controlador
Proceso más elemento final de control
y
y
y y
Limitador Sensor y transmisor dm
Fig. 5.2: Sistema de control SISO con filtro de entrada, con limitador de salida y sujeto a la acci´on de disturbios.
5.2.
Especificaciones de Dise˜ no
Todo sistema de control debe de cumplir ciertas especificaciones de dise˜no. Estas especificaciones se establecen tanto en el dominio del tiempo como en el de la frecuencia. las especificaciones m´as usadas en el dominio del tiempo son: error en estado estable ess , tiempo de estabilizaci´on T s , porcentaje de sobrenivel P.O. y tiempo de subida T r . En el dominio de la frecuencia, las especificaciones de m´as aplicaci´on son: ancho de banda ωB , margen de fase M f y margen de ganancia M g .
5.2.1.
Especificaciones de Dise˜ no en el Dominio del Tiempo
Para explicar las especificaciones de dise˜ no en el dominio del tiempo, se acostumbra emplear el sistema de segundo orden con realimentaci´on unitaria mostrado en la Fig. 5.3(a). En la Fig. 5.3(b) se observa la respuesta transitoria a un escal´on de entrada, donde ωn es la frecuencia natural de oscilaci´on, ζ < 1 es el coeficiente de amortiguamiento, A es la magnitud de la entrada tipo escal´on r, M p es el valor m´aximo de la salida y, T r es el tiempo de subida, T p es el tiempo pico, T s es el tiempo de estabilizaci´on y ess es el error en estado estable. El tiempo T s se define como el tiempo necesario para que la amplitud de la salida y se mantenga dentro de una banda de magnitud δ (2δ en total). Para la respuesta mostrada en la Fig. 5.3(b), la magnitud de la banda 2δ se mantiene en 2 % luego de
±
transcurridos 4 veces la constante de tiempo τ del sistema. Esto es: T s = 4τ
τ =
4 ζωn
(5.1)
Para una entrada tipo escal´on de magnitud A, el P O (porcentaje de sobrenivel) del sistema se define como: PO = El error en estado estable ess = r
M p A A
− × 100
(5.2)
− yss es la diferencia entre la se˜nal de referencia
r y el valor en estado estacionario yss de la salida. Este error debe de permanecer dentro de la banda 2δ preestablecida. Para la situaci´on mostrada en la Fig. 5.3(b),
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
69/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
58
Control PID SISO
el error ess se puede determinar empleando el teorema del valor final y teniendo en cuenta que r(s) = A/s, como sigue: G p (s) =
y(s) ωn2 = 2 r(s) s + 2ζωn s + ωn2
y(s) = G p (s)r(s)
A =A ess = r yss = A A = 0 s Sin demostraci´on, las relaciones exactas para T p , M p y P O se expresan como:
−
l´ım y(t) = yss = l´ım sG p (s)
t
→∞
s
→0
P O = 100
√1−ζ
−
M p A = 100e−ζπ/ A
√1−ζ
2
M p = A 1 + e−ζπ/ T r = T p =
−
πω θ d π ωd
(5.3)
ωd = ωn
−
2
(5.4)
− 1
ζ 2
θ = arccosζ
(5.6)
ω2
r
y
n
s (s
(5.5)
2 ζ ωn ) (a)
r
y Mp
A
ω2 n
r s2
0
2 ζω n s
2δ
A
y
yss
ω 2n
τ
0
T r Tp
(b) Zona de estabilidad
τ
Ts
Plano s
j ω d
s1
θ ζω n
j ω
e ss
σ
ωn
Zona de inestabilidad
s2 (c)
Fig. 5.3: Respuesta al escal´on de un sistema de segundo orden autoregulado.
La ecuaci´on caracter´ıstica del sistema de segundo orden es el denominador de la FT mostrada en la Fig. 5.3(b): s2 + 2ζωn s + ωn2 = 0
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
(5.7)
70/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
5.2 Especificaciones de Dise˜ no
59
Sus ra´ıces caracter´ısticas o eigenvalues, ilustradas en la Fig. 5.3(c), se expresan como: s1 = ζωn + jω d s2 = ζωn jω d De la Fig. 5.3(c) es f´acil deducir la relaci´on: θ = arccosζ usada en (5.5). En los sistemas sobreamortiguados, cuyas respuestas al escal´on ocurren cuando ζ 1, tal como se muestran en las partes superior e inferior izquierda de la Fig. 2.20, el tiempo de subida T r se define como el tiempo en que se alcanza el 90 % de la magnitud A de la entrada tipo escal´on, y se calcula de:
−
−
−
≥
T r =
2.16ζ + 0.16 ωn
0.3
≤ ζ ≤ 0.8
(5.8)
Ejemplo 5.1 La Fig. 5.4 muestra un sistema realimentado. Determinar la ganancia K y el polo p para que se cumplan las siguientes especificaciones de dise˜ no: el porcentaje de sobrenivel de la respuesta y(t) a un escal´on unitario debe de ser menor del 3 % y el tiempo para alcanzar el valor estacionario de la respuesta debe de ser menor de 8 s. r
y
K s (s
p)
Fig. 5.4: Sistema realimentado del ejemplo 5.1.
Soluci´ on: La FT y(s)/r(s) en la Fig. 5.4 se expresa como: y(s) K ωn2 = 2 = 2 r(s) s + ps + K s + 2ζωn s + ωn2
K = ωn2
p = 2ζωn
donde ζ se puede determinar de la condici´on P O < 3 %, a saber:
√1−ζ
100e−ζπ/
2
→
ζ>
√1 c+ c2
c=
ln(100/P O) π
de donde resulta: ζ < 0.745. Dado que T s = ζω4n < 8 s, entonces: ωn > (2ζ )−1 = 0.67. Luego se pueden determinar los par´ametros p y K pedidos.
5.2.2.
Especificaciones de Dise˜ no en el Dominio de la Frecuencia
La repuesta en frecuencia de un sistema se define como la respuesta estacionaria del sistema a una se˜ nal sinusoide de entrada. Para determinar la respuesta en frecuencia de un sistema que posee una FT G(s) = y(s)/u(s), basta reemplazar la variable laplaciana s por jω, es decir, G( jω) = y( jω)/u( jω), donde j es la unidad de los n´umeros imaginarios, ω es la frecuencia de la sinusoide de entrada u( jω) = Asenωt, e y( jω) = Bsen(ωt + φ) es la salida. Si se mantiene constante la amplitud A de la entrada, para cada frecuencia ω de esta se˜ nal, la salida y( jω) puede experimentar cambios, tanto en su amplitud B como en su fase φ.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
71/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
60
Control PID SISO
Gr´ aficos de Bode y Nyquist, y Carta de Nichols gr´afico de Bode en magnitud de una FT G( jω) se obtiene graficando la magnitud ElG( jω) dB = 20 log(G( jω)) expresada en dB (decibelios) versus la frecuencia ω log representada en logar´ıtmo vulgar (de base 10). El gr´afico de Bode en fase de una FT G( jω) se obtiene graficando la fase ang(G( jω)) expresada en grados sexagesimales versus la frecuencia ωlog representada en escala logar´ıtmica de base 10 (d´ ecadas) o en escala logar´ıtmica de base 2 (octavas). En general, la FT G( jω) de un sistema se puede representar como G( jω) = u+ jv, donde u es la parte real y v es la parte imaginaria. En un gr´afico de Nyquist se gr´afica la parte real u versus la parte imaginaria v del sistema G( jω). El gr´afico de G( jω ) dB versus ωlog se denomina la carta de Nichols que tambi´ en se emplea en el dise˜no de sistemas de control v´ıa la respuesta en frecuencia.
|
|
|
|
Ejemplo 5.2 Elaborar los gr´aficos de Bode y Nyquist y la carta Nichols del sistema: ωn2 s2 + 2zω n s + ωn2
G(s) =
donde ωn = 1 y el coeficiente de amortiguamiento z es variable.
Soluci´ on: Las Figs. 5.5, 5.6 y 5.7 muestran los gr´aficos pedidos, los cuales se realizaron ejecutando los programas bode1.m, nyquist1.m y nichols1.m Bode Diagram 20
z=0.1 z=0.5
0
) B d ( −20 e d u t i n g −40 a M
z=0.9 z=1.3
−60
−80
0 z=0.1 ) g e d ( e s a h P
z=0.9
−45
z=0.5
z=1.3
−90
−135
−180 −2
10
−1
10
0
10
1
10
2
10
Frequency (rad/sec)
Fig. 5.5: Gr´ aficos de Bode para el ejemplo 5.2.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
72/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
5.2 Especificaciones de Dise˜ no
61
Nyquist Diagram 6
4 z=0.1
2 s i x A y r a n i g a m I
z=0.9
z=0.5
0
−2
z=1.3
−4
−6 −3
−2
−1
0 Real Axis
1
2
3
Fig. 5.6: Gr´afico de Nyquist para el ejemplo 5.2.
Nichols Chart 20 z=0.1
0
) B d ( n i a G p o o L − n e p O
−20
−40
z=0.5
z=0.9
z=1.3
−60
−80
−100 −180
−135
−90 Open−Loop Phase (deg)
−45
0
Fig. 5.7: Carta de Nichols para el ejemplo 5.2.
% bode1.m clear all; close all; clc; s=tf(’s’);
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
73/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
62
Control PID SISO
for z=[0.1:0.4:1.3], G=1/(s^2+2*z*s +1); bode(G), 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), 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), hold on, end
Especificaciones de Dise˜ no en Frecuencia La Fig. 5.8(a) muestra la respuesta del sistema de segundo orden autoregulado a una entrada sinusoide, mientras que la Fig. 5.8(b) muestra su gr´a fico de Bode en magnitud. Sin demostraci´on, el valor pico M ω de la magnitud, el cual se puede emplear como especificaci´ on de dise˜ no, posee la relaci´on: 1 M ω = ζ 0.7 (5.9) 2ζ (1 ζ 2 )
−
≤
−
≤
La frecuencia ωr en la que ocurre M ω se denomina frecuencia de resonancia y se expresa como: ωr = ωn 1 2ζ 2 ζ 0.7 (5.10) El ancho de banda del sistema se refiere a la frecuencia ωB para la cual existe una ca´ıda de 3 dB, tal como se observa en la Fig. 5.8(b) y se calcula de:
−
ωB = ( 1.196ζ + 1.85)ωn
0.3
≤ ζ ≤ 0.8
(5.11)
y(j ω)=Bsen(ωt+φ)
r(jω)=Asen ωt
ω2 n
r(jω)
A t
y(jω)
(jω)2 2 ζ ωn j ω ωn 2
B
φ
t
(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´afico de Bode en magnitud (b).
En el sistema realimentado mostrado en la Fig. 5.10(a), las FTs a lazo abierto y a lazo cerrado se definen como: y(s) = G(s)H (s) = GH (s) e(s
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
y(s) = G(s) r(s) 1 + GH (s)
74/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
5.2 Especificaciones de Dise˜ no
63
En el dominio de la frecuencia, tales FTs se expresan como: y( jω) e( jω = G( jω)H ( jω) = GH ( jω)
y( jω) G( jω) = r( jω ) 1 + GH ( jω)
La ecuaci´on caracter´ıstica del sistema de la Fig. 5.10(a) es: 1 + GH ( jω) = 1 + u( jω) + jv( jω) donde u( jω) y ( jω) son la parte real e imaginaria de GH ( jω), respectivamente. En general: GH ( jω) = GH ( jω) ∠GH ( jω)
|
|GH ( jω)| =
|
u2 + v 2
∠GH ( jω) = arctan
v u
En el l´ımite de estabilidad, la ecuaci´on caracter´ıstica toma la forma: 1 + GH ( jω) = 0
GH ( jω) =
1
− La Fig. 5.9 grafica tal situaci´on, donde u = −1, v = 0, |GH ( jω)| = 1 y ∠GH ( jω) = 180◦ .
jv GH(jω) = 180° 1 u |GH(jω)| = 1
Fig. 5.9: (a) Sistema realimentado. (b), (c) y (d): M´argenes de fase y de ganancia.
|
|
El margen de ganancia M g se define como el rec´ıproco de la ganancia GH ( jω) para la frecuencia en que la fase de GH ( jω) alcanza 180o . Dado que GH ( jω) = u+ jv, dicho ´angulo ocurre cuando v = 0. El M g se puede interpretar como un factor por el cual tiene que aumentarse la ganancia del sistema para que el gr´afico de GH ( jω) pase por el punto cr´ıtico (u, v) = ( 1, 0), tal como se muestra en las Figs. 5.10(b), (c) y (d). Los sistemas estables poseen M g positivos, mientras que el M g es negativo para los sistemas inestables.
−
f El margen de fase define el ´a ngulo de fase GH que( jω) debe =de1,girar gr´afico de GH ( jω) = uM + jvsepara quecomo el punto de magnitud pase ela trav´es del punto (u, v) = ( 1, 0), tal como se muestran en las Figs. 5.10(b), (c) y (d). Los sistemas estables poseen M f positivos, mientras que el M f es negativo para los sistemas inestables.
−
|
|
Ejemplo 5.3 Determinar los m´argenes 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)
Soluci´ on: Ver programa mfmg1.m y Fig. 5.11.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
75/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
64
Control PID SISO
y
r
G(jω)
y
G(jω)
r
G H(jω)
1
H(jω) (a)
GH
GH
dB
M g negativo
dB
ω log
0 dB
ωlog
M g positivo ang GH −90 −180 −270
−90 −180 −270
ωlog M f positivo
ω log M f negativo
(b)
M f negativo
jv M g positivo
1
M g negativo
Mg
γ
1
u
γ
u
1
φ
φ
M f positivo
1 Mg
(c)
GH
jv
GH
dB
dB
M g negativo
M g positivo 0 dB
0 dB M f positivo
−270
−180
M f negativo
−90
−270
−180
−90
(d)
Fig. 5.10: (a) Sistema realimentado. (b), (c) y (d): M´argenes de fase y de ganancia.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
76/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
5.3 Modos de Control
65
% mfmg1.m C´ A LCULO DE LOS M´ ARGENES DE FASE Y DE GANANCIA clear all; close all; clc; s=tf(’s’); G = (1.5)/((s+0.1)*(s+0.3)*(s+0.4)); H = 0.1; GH = series(G,H); [Mg,Mf,wMg,wMf] = margin(GH); % GR´ A FICA BODE DE GH [20*log10(Mg),Mf,wMg,wMf] % [-0.5976 -2.1262 0.4359 0.4499] % SISTEMA INESTABLE PORQUE Mg EN dB Y Mf EN GRADOS SON NEGATIVOS margin(GH); print -f -deps mfmg1
Bode Diagram Gm = −0.598 dB (at 0.436 rad/sec) , Pm = −2.13 deg (at 0.45 rad/sec) 40
20
0 ) B d ( e d u −20 t i n g a M −40
−60
−80
0
) g e d (
−90
e s
a h P
−180
−270 −3
10
−2
10
−1
10
0
10
1
10
Frequency (rad/sec)
Fig. 5.11: M´argenes de fase y de ganancia para el ejemplo 5.3.
5.3.
Modos de Control
??
5.4.
Estructuras del Controlador PID
5.4.1.
Algunas Estructuras B´ asicas
El algoritmo de control PID es el m´as usado en la actualidad por la industria. Se estima que tal algoritmo se aplica en m´as del 90 % de las aplicaciones. Sin embargo, no existe un est´andar industrial de tal algoritmo. Existen varias estructuras del algoritmo PID [29], algunas de las cuales se formulan a continuaci´on.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
77/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
66
Control PID SISO
El controlador PID Ideal El ISA controlador PID Society ideal, denominado en controlador no interactivo, algoritmo (Instrument of America)tambi´ o controlador pararlelo no interactivo se formula como:
u = K C e + e = r
1 T i
t
e dt + T d
0
de dt
−y
(5.12)
donde u es la se˜ nal o fuerza de control, y es la salida controlada del sistema (permanentemente sujeta a medici´on), e es la se˜ nal de error, r es la se˜ nal de referencia deseada o set :point, K c es la ganancia proporcional, T i es la constante de tiempo integral o simplemente tiempo integral, y T d es la constante de tiempo derivativa, o simplemente tiempo Cabe anotar que derivativo. la forma de la se˜ nal de error empleada: e = r y corresponde a una acci´on de control inversa. Para una acci´on de control directa, el error se expresa como: e = y r. Nosotros seguiremos usando la primera forma. Por otro lado, el tiempo integral o tiempo reset T i se expresa a menudo como la tasa integral o reset T r = 1/T i . En el dominio de Laplace, (5.12) se expresa como:
−
−
Gc (s) =
u(s) 1 K c = K c 1 + + T d s = K c + + K c T d s e(s) T i s T i s
(5.13)
El controlador PID Paralelo El controlador PID paralelo, denominado tambi´ en paralelo ideal, no interactivo, independiente o independiente de la ganancia, es una variaci´on del controlador ideal de (5.13) y se formula en el dominio de Laplace como: Gc (s) =
u(s) 1 = K c + + T d s e(s) T i s
(5.14)
Notar que los par´ametros K c , 1/T i y T d del controlador PID paralelo dado en (5.14) corresponden a los par´ametros K c , K c /T i y K c T d del controlador PID ideal de (5.13). Por consiguiente, (5.14) puede ser siempre reemplazado por (5.13).
El controlador PID Ideal Filtrado Muchas veces es necesario introducir un filtro para suavizar se˜ nales ruidosas, antes que se apliquen al algoritmo de control. Para estos casos se recomienda usar el siguiente filtro de primer orden formulado tanto en el dominio del tiempo como en el dominio de Laplace: def (t) 1 = e(t) ef (t) ef (s) = e(s) (5.15) dt 1 + Ts donde T es la constante de tiempo del filtro. Dado que el ruido en el sistema se amplifica principalmente por la acci´ on derivativa, entonces T se puede formular proporcional al tiempo derivativo como sigue:
−
T
T = α T d
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
→
ef (s) =
1 e(s) 1 + α T d s
(5.16)
78/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
5.4 Estructuras del Controlador PID
67
Introduciendo en (5.13) el filtro dado en (5.16), se obtiene el siguiente controlador PID ideal filtrado: Gc (s) =
u(s) = K c e(s)
1 1 + αT d s
1+
1 + T d s T i s
(5.17)
El Controlador PID con Parte Derivativa Filtrada El controlador PID con parte derivativa filtrada posee la expresi´on:
u(s) 1 T d s Gc (s) = = K c 1 + + d e(s) T i s 1 + T N s
3
≤ N ≤ 10
(5.18)
El Controlador PID Cl´ asico El controlador PID cl´asico mostrado se denomina tambi´en controlador en cascada, interactivo, serie, interactuante, an´alogo o comercial y se describe como:
u(s) 1 Gc (s) = = K c 1 + e(s) T i s
1 + T d s d 1 + T N s
3
≤ N ≤ 10
(5.19)
El Controlador PID Cl´ asico Generalizado El controlador PID cl´asico generalizado mostrado, con 3 como:
≤ N ≤ 10 se formula 2
c Gc (s) = u(s) e(s) = K 1 + T 1i s +
T d sd 1 + T N
s
El Controlador PID Dependiente
bf 0
f 1 f 2 1 ++abf 1 ss++abf 2 ss2
(5.20)
El controlador PID dependiente se denomina tambi´ en controlador serie, interactuante o el algoritmo an´alogo y se describe como: Gc (s) =
u(s) 1 = K c 1 + e(s) T i s
1 + T d s
(5.21)
La expresi´ on dada en (5.21) se puede reordenar como:
1 Gc (s) = K c T i + T d 1 + + T i T d s T i T i + T d s T i + T d
La estructura en (5.22) es semejante a la estructura dada en (5.12) con:
K c = K c
T i + T d T i
T i
T d =
− − −
K c = 0.5K c 1 +
1
T i T d T i + T d
(5.22)
(5.23)
4T d /T i
= 0.5T i 1 +
1
4T d /T i
T d = 0.5T d 1 +
1
4T d /T i
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
T i = T i + T d
= K c 1 + 1 + T d s T i s
(5.24)
79/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
68
Control PID SISO
Cuando T d = T i /4 en (5.24), los par´ametros de sintonizaci´on se convierten en:
K c = 0.5K c
T i = 0.5T i
T d = 0.5T d
Para T d > T I /4, el controlador dependiente nunca ser´a similar al controlador ideal, ya que para esta condici´ on los par´ametros en (5.24) se vuelven imaginarios.
El Controlador PID Interactivo El controlador interactivo posee la siguiente estructura (compararla con la estructura del controlador cl´asico): Gc (s) =
u(s) 1 = K c 1 + e(s) T i s
T d s 1+
T d
(5.25)
s
N
El Controlador PID Mejorado
El controlador mejorado posee la siguiente estructura (compararla con la estructura del controlador interactivo): u(s) = K c
1 1+ T i s
e(s)
− K c
T d s d 1 + T N s
y(s)
(5.26)
El Controlador PID con Dos Grados de Libertad El controlador con dos grados de libertad, conocido tambi´ en como controlador m–PID o ISA–PID, posee la siguiente estructura:
−
u(s) = K c (1
5.4.2.
1 (1 β )T d s 1 T d s α) + + e(s) K c 1 + + y(s) (5.27) T d d T i s T i s 1 + T 1 + N s N s
−
−
La Banda Proporcional BP %
En muchos casos pr´acticos no se emplea la ganancia K c del controlador, sino su inversa expresada en porcentaje, la cual se denomina banda proporcional (BP %). Esta banda proporcional se puede definir como la cantidad necesaria de cambio porcentual en la salida, entradadebido del controlador provocar un cambio de completo (100 %) en su a la acci´onpara del control proporcional. La rango entrada del controlador es el error de desviaci´on entre la se˜ nal deseada (set point) y la variable controlada (la salida del sistema), mientras que su salida es la se˜nal de control que ingresa al elemento de control final. Es posible ajustar la cantidad de acci´on proporcional suministrada por el controlador. Este a juste se refiere al cambio del ancho de la PB %, tal como se ilustra en la Fig. 5.12, en donde la acci´on proporcional est´a representada por la palanca y el ajuste del ancho de la PB % se realiza desplazando el punto pivote de la palanca. En la Fig. 5.12(a) el punto pivote est´a ubicado en el centro de la palanca. Observar que es necesario que la se˜ nal de entrada haga un recorrido completo (desde su valor m´ınimo hasta su valor m´aximo) para mover el elemento de control final (la v´alvula de control) desde su posici´on completamente abierta a completamente cerrada. En
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
80/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
5.4 Estructuras del Controlador PID
69
este caso, la PB % es 100 % porque se requiere un cambio de 100 % en la entrada para provocar un cambio de 100 % en la salida (salida de rango completo). La Fig. 5.12(b) ilustra el caso de una PB % igual a 200 % debido a s´ olo un cambio de 200 % en la entrada va a provocar una salida de rango completo (100 %). En un caso real, no es posible cambiar la entrada a 200% debido a que 100% es su m´aximo cambio. Por lo tanto, la v´alvula nunca estar´a ni completamente abierta ni completamente cerrada. Para obtener una PB % de, digamos 50 %, el punto pivote debe de desplazarse hacia la izquierda del punto medio de la palanca, tal como se observa en la Fig. 5.12(c), en donde un cambio de 50 % en la entrada es suficiente para provocar un cambio de 100 % (rango completo) en la salida. Error Máx.
Abertura de válvula
u
v
u
y
y
100%
v
y
u
v
Pivote
w
w
x
x
Mín.
50%
s
s
s
t
t
t
0%
(a) PB% = 100% Error Máx.
Abertura de válvula A
A
A
B
B
B
!
!
!
" E F
E F
E F
E F
E F
E
E
E
E
E
F
F
F
F
F
E
E
E
E
E
E
E
F
F
F
F
F
'
'
(
(
F
% & 3
3
4
4
3
C
4
C
D
G
G
H
H
C
D
C
D
C
D
100%
"
E F
E F
F
!
"
E F
E F
C
D
% &
C
D
D
E F
E F
E F
C
E F
C
D
E F
C
D
E F
C
D
E F
C
D
C
D
C
D
D
E
E
F
E
F
E
F
C
E
F
C
D
E
F
C
D
E
F
C
D
F
C
D
C
D
C
D
D
#
#
$ 5
5
6
6 E
E
F
E
F
C
E
F
C
D
E
F
C
D
F
C
D
C
D
C
D
D
E
E
E
E
E
E
F
F
F
F
F
F
C
C
C
C
C
C
C
D
D
D
D
D
D
D
E
E
E
E
E
E
7
7
C
C
C
C
C
C
C
8
8
D
D
D
D
D
D
D
9 @
Mín.
C
C
C
C
D
D
D
D
)
)
0
0
E
7
9
$
E
F
C
D
E F
8
@
50%
#
$
E F
Pivote C
C
D
D
C
C
C
C
C
C
D
D
D
D
D
D
C D
1
1
2
2
C
0%
D
(b) PB% = 200% Error Máx.
Abertura de válvula e
e
q
e
q
q
q
q
q
q
P
f
f
r
f
r
r
r
r
r
r
Q
q
q
q
q
q
q
q
r
r
r
r
r
r
r
P
q
q
q
q
q
q
r
r
r
r
r
r
Q
T
S
X Y
100%
P
Q
T
q r
S
S
X Y
g
g
g
g
g
g
g
h
h
h
h
h
h
h
q
q
q
q
q
q
q
r
r
r
r
r
r
r
g
g
h
i
i
p
p
g
h
q
q
r
g
h
q
r
g
h
q
r
g
h
q
r
g
h
q
r
h
q
r
r
g
g
h
g
h
g
h
g
h
g
h
g
h
h
R
`
`
q
a
a
r
q
q
r
d
b
b
c
c
d
q
r
q
r
q
r
R
q
r
r
g
g
h
g
h
g
h
g
h
g
h
g
h
h
q
q
q
q
q
q
q
r
r
r
r
r
r
r
g
g
g
g
g
g
h
h
h
h
h
h
q
q
q
q
q
q
r
r
r
r
r
r
g
g
h
h
Pivote
U
U
U
V
V
V
50%
g h
q r
g
g
g
g
g
h
h
h
h
h
d
W g
g
g
g
g
g
g
h
h
h
h
h
h
h
Mín.
W
I
W
I
I
0%
(c) PB% = 50%
Fig. 5.12: Cambio en la PB % para modificar la acci´ on proporcional del controlador. La Fig. 5.13 muestra el diagrama en bloque de un controlador P (proporcional) caracterizado por su ganancia K c , la cual se define como la relaci´on de cambios entre la entrada y la salida: ∆u/u K c = (5.28) ∆e/e donde ∆e es el cambio en el error de control (la entrada del controlador), ∆u es cambio en la se˜ nal de control (la salida del controlador), U es el rango m´aximo de la salida del controlador y E es el rango de medici´o n de la se˜ nal controlada. La banda proporcional en porcentaje, denotada como BP %, se define como la inversa de la
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
81/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
70
Control PID SISO
ganancia K c del controlador: 100 P B % = Kc
∆e
Controlador Proporcional
E
(5.29)
∆u U
Fig. 5.13: Controlador tipo P (proporcional).
Ejemplo 5.4 Determinar la banda proporcional de un controlador PID operando en un sistema de control de temperatura, sabiendo que un cambio de ∆e = 15o C en la entrada del controlador produjo un desplazamiento de ∆u = 3 mm en el v´astago de la v´alvula de control. Se sabe adem´as que el desplazamiento m´aximo del v´astago es de U = 40 mm y que el rango de medici´on de la variable del sistema controlado es de 100 o C a 500o C, lo cual significa que E = 500o C - 100o C = 400o C. ganancia K c del controlador para el punto de operaci´on en estudio se Soluci´ on.-deLa(5.28): determina ∆u/U 3 mm/40 mm K c = = =2 ∆e/E 15o C/400o C mientras que la PB % se calcula de (5.29): PB % =
100 100 = = 50 % Kc 2
que corresponde al caso mostrado en la Fig. 5.12(c).
5.5.
M´ etodos de Sintonizaci´ on de Controladores PID
En un sistema de control realimentado, el controlador PID debe generar la se˜nal de control que actuando sobre el sistema, provoque que la salida de dicho sistema siga a una se˜ nal de referencia, cumpliendo ciertas especificaciones de dise˜no previamente establecidas. Este objetivo de control se logra determinando los valores adecuados de los par´ametros K c , T i y T d del controlador. En otras palabras, sintonizando los par´ametros del controlador. Existen diversos m´etodos de sintonizaci´ on, algunos de los cuales vamos a explorar e ilustrar con aplicaciones. La referencia [29] contiene un lista exhaustiva de las reglas de sintonizaci´on de varias estructuras de controladores PI y PID aplicados a diversos tipos de plantas.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
82/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
5.5 M´ etodos de Sintonizaci´ on de Controladores PID
5.5.1.
71
M´ etodo de la Curva de Reacci´ on (Sistemas Autoregulados)
El m´etodo de la curva de reacci´on usa el hecho de que muchos sistemas industriales poseen una respuesta a lazo abierto a una entrada escal´on (la curva de reacci´on), caracterizada por poseer un estado estacionario. Tales sistemas se conocen tambi´ en como autoregulados. En contraposici´on, los sistemas no autoregulados poseen una respuesta al escal´on que crece continuamente (no estacionaria).
M´ etodo de la Constante de Tiempo del Lazo El m´ etodo de la constante de tiempo del lazo se emplea para plantas que poseen una FT de primer orden: K p G (s) = (5.30) p Ts + 1 donde T es la constante de tiempo de la planta, tiempo que corresponde al al 63.2 % de la magnitud de la ganancia K p . El 100 % de la magnitud de K p se alcanza en aproximadamente 4T . Los par´ametros del controlador PID se sintonizan con las relaciones siguientes: 1 1 K c = T i = T T d = T i (5.31) K p 4 Si la FT de la planta posee la forma: K p
G p (s) =
(5.32)
(T 1 s + 1)(T 2 s + 1) los par´ametros de sintonizaci´on, para una primera aproximaci´on, se calculan de: K c =
1 K p
T i = T 1 + T 2
Sintonizaci´ on de Sistemas con FT
G p (s)
T d =
1 T i 4
= K p e−τ s
La Tabla 5.1 atribuida a Hartree et al. (ver referencias de [29]), se aplica para controlar sistemas que poseen una FT de la forma G p (s) = K p e−τ s . El control se realiza empleando la configuraci´ on de la Fig. 5.1(a). Tabla 5.1: Reglas de sinton´ıa para controlar sistemas tipo G p (s) = K p e−τ s . M´etodo Curva de reacci´on
Controlador Gc (s)
K c 1 +
1 T i s
1+T d s T 1+ N d s
K c
T i
T d
0.7 K p τ
2.66τ
τ
Ejemplo 5.5
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
83/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
72
Control PID SISO
Se desea controlar el siguiente sistema empleando la Tabla 5.1: τs
G p (s) = K p − e donde K p = 2 y τ = 2. Para el control emplear el diagrama de bloques de la Fig. 5.1(a).
Soluci´ on: Usamos la Tabla 5.1 para calcular los par´ametros del controlador PID con N = 3. La Fig. 5.14 muestra el diagrama Simulink del sistema de control (archivo hartree1.mdl), mientras que la 5.15 muestra la salida y(t) controlada y la se˜ nal de control u(t). Este gr´afico se obtuvo ejecutando el archivo hartree1graf.m, cuyo listado se muestra abajo. hartree1 .mdl
Ti .s+1
Td .s+1
Ti.s
Td /N.s+1
Gc1(s)
Gc2(s)
Kp
Kc
r
Kc
rh rh
Clock
Scope tau
Kp
th
uh
yh
th
uh
yh
Fig. 5.14: Diagrama Simulink para el ejemplo 5.5.
% 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 th; load yh; load uh; load rh; subplot(211), plot(th,rh,th,yh), xlabel(’TIEMPO [s]’), ylabel(’SALIDA y(t)’), title(’CONTROL DEL SISTEMA G(s)=Kp*exp(-tau*s)’) subplot(212), plot(th,uh), xlabel(’TIEMPO [s]’), ylabel(’CONTROL u(t)’) print -f -deps hartree1graf, print -s -deps hartree1
M´ etodo de la Curva de Reacci´on de Ziegler y Nichols El m´etodo de la curva de reacci´on de Ziegler y Nichols emplea la curva de reacci´on de la Fig. y seorden aplicadea ganancia sistemas K autoregulados que se pueden modelar como un sistema de2.18 primer p y constante de tiempo T , en cascada con un tiempo muerto τ : K p y(s) G p (s) = = e−τ s (5.33) u(s) Ts + 1 La curva de reacci´on se emplea para obtener los par´ametros τ y T , que luego son usados para determinar los par´ametros K C , T I y T D del controlador PID est´andar, empleando la Tabla 5.2. Las f´ormulas en dicha tabla fueron el producto de intensivos trabajos experimentales realizados por los investigadores Ziegler y Nichols en 1942 [15]. Este m´etodo se aplica a sistemas autoregulados cuya curva de reacci´on se puede aproximar mediante la relaci´on (5.33). En algunos sistemas, el tiempo muerto τ es bastante peque˜ n o, por lo que es dificultosa su cuantificaci´on. Para estos casos, es conocido un m´etodo de c´alculo que
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
84/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
5.5 M´ etodos de Sintonizaci´ on de Controladores PID
73
CONTROL DEL SISTEMA G(s)=Kp*exp(−tau*s) 1.5
1 ) t ( y A D I L A S
0.5
0
−0.5 0
20
40
60
80
100 TIEMPO [s]
120
140
160
180
200
20
40
60
80
100 TIEMPO [s]
120
140
160
180
200
0.6
) t ( u L O R T N O C
0.4
0.2
0
−0.2 0
Fig. 5.15: Salida controlada y se˜ nal de control para el ejemplo 5.5.
Tabla 5.2: M´etodo de la curva de reacci´on de Ziegler y Nichols para determinar los par´ametros K c , T i y T d . Tipo
Controlador Gc (s)
P
K c
PI PID PD
K c =
100 BP ;
K p τ T
T i
T d
1/a
∞
0
K c 1 + T 1i s K c 1 + T 1i s + T d s
0.9/a 1.2/a
10τ /3 2τ
0 0.5τ
K c (1 + T d s)
1.2/a
∞
0.42τ
a=
consiste en localizar en la curva de reacci´on las tazas de cambio m´as altas, las cuales ocurren en los tiempos t1 = τ + T /3 y t2 = τ + T . Estos tiempos corresponden al 28.35 % y 63.2 % del valor m´aximo de la curva de reacci´on, tal como se muestra en la Fig. 5.16. Conociendo t1 y t2 , los par´ametros T y τ se determinan de: T = 3 (t2 2
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
− t1 )
τ = t2
− T
(5.34)
85/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
74
Control PID SISO
y 100% 63.2%
28.3% t t
1
t
2
Fig. 5.16: Tazas de cambio m´as altas de la curva de reacci´on.
Ejemplo 5.6 Se desea controlar el siguiente sistema de quinto orden empleando la t´ ecnica de la curva de reacci´on de Ziegler y Nichols: G p (s) =
K p (s + T a )(s + T b )(s + T c )(s + T d )(s + T e )
donde: [T a , T b , T c , T d , T e ] = [0.5, 1, 1.5, 2, 2.5]. Para prop´ositos de comparaci´on emplear controladores (PID, ecuaci´ on (5.13)), dependiente (PI–D, ecuaci´ oeln (5.21)) ylos mejorado (PI–Dy,ideal ecuaci´ on (5.26)). Para el control PID y PI–D emplear diagrama de bloques de la Fig. 5.1(a), mientras que para el control PI–Dy usar el diagrama de bloques de la Fig. 5.1(b). afico de la Fig. 5.17 muestra la respuesta al escal´on (la curva Soluci´ on: El primer gr´ de reacci´on) del sistema. De esta curva se pueden obtener los par´ametros τ = 1.7 s y T = 6.7 – τ = 5 s. Con estos valores se calculan los par´ametros del controlador PID empleando la Tabla 5.2. El segundo gr´afico de la Fig. 5.17 ilustra la comparaci´on entre las salidas controladas. Tales resultados se obtienen ejecutando el programa zn1.m listado abajo. % zn1.m CONTROL PID, PI-D Y PI-Dy EMPLEANDO LA CURVA DE REACCI´ ON clear all; close all; clc; Kp=10; Ta=0.5; Tb=1; Tc=1.5; Td=2; Te=2.5; s=tf(’s’); Gp=Kp/(s+Ta)/(s+Tb)/(s+Tc)/(s+Td)/(s+Te); % PROCESO subplot(211); step(Gp,’k’); grid; title(’RESPUESTA AL ESCAL´ ON’); xlabel(’TIEMPO’); ylabel(’AMPLITUD’); tau=1.7; T=6.7-tau; % TOMADOS DE LA CURVA DE REACCI´ ON a=Kp*tau/T; Kc=1.2/a; Ti=2*tau; Td=0.5*tau; N=10; % PAR´ AMETROS PID Gc1=Kc*(1+1/Ti/s+Td*s); PID=feedback(Gp*Gc1,1); % CONTROL PID Gc2=Kc*(1+1/Ti/s+Td*s/(1+Td*s/N)); PI_D=feedback(Gp*Gc2,1);% CONTROL PI-D Gci=Kc*(1+1/Ti/s); Gcd=Kc*Td*s/(1+Td*s/N); Gpcd=feedback(Gp,Gcd); PI_Dy=feedback(Gci*Gpcd,1); % CONTROL PI-Dy subplot(212); step(PID,’k’,PI_D,’k’,PI_Dy,’k’); title(’SALIDAS CONTROLADAS’); xlabel(’TIEMPO’); ylabel(’SALIDA’); print -deps -f zn1
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
86/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
5.5 M´ etodos de Sintonizaci´ on de Controladores PID
75
RESPUESTA AL ESCALÓN 6 D U T I L P M A
4 2 0
0
5
10
15
TIEMPO (sec) SALIDAS CONTROLADAS 1.5 A D I L A S
PI
PID
1 0.5 PD
0
0
P
10
20
30 TIEMPO (sec)
40
50
60
Fig. 5.17: Respuesta al escal´on del sistema (gr´afico superior) y respuestas controladas para el ejemplo 5.6 (gr´afico inferior).
Ejemplo 5.7 Se desea controlar el sistema nivel en un tanque de almacenamiento empleando la t´ecnica de la curva de reacci´on de Ziegler y Nichols. El diagrama de bloques del sistema nivel, extra´ıdo de [16], se muestra en la Fig. 5.18(a), donde las funciones de transferencia del actuador hidr´ aulico, del tanque y del flotador se formulan respectivamente: GH (s) = 10 s+1
GT (s) =
3.15 30s + 1
GF (s) =
1 9
1 s2 + 13 s + 1
τ = 1
Para prop´ositos de comparaci´on emplear los controladores ideal (PID, ecuaci´on (5.13)), dependiente (PI–D, ecuaci´on (5.21)) y mejorado (PI–Dy, ecuaci´on (5.26)). Para el control PID y PI–D emplear el diagrama de bloques de la Fig. 5.18(b), mientras que para el control PI–Dy usar el diagrama de bloques de la Fig. 5.18(c). En este sistema, el tiempo muerto τ se puede calcular usando la relaci´on τ = d/v, donde v es la velocidad del flujo que ingresa al tanque y d es es la longitud de tuber´ıa que existe entre la v´alvula de control de flujo y el punto de salida del flujo.
Soluci´ on: El primer gr´afico de la Fig. 5.19 muestra la respuesta al escal´on (la curva de reacci´on) del sistema, de la cual se obtiene τ = 1 y T = 27 τ = 26. Con estos valores se calculan los par´ametros del controlador PID empleando la Tabla 5.2. El
−
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
87/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
76
Control PID SISO Controlador
Actuador
Referencia (set point)
v d Flotador
r
e
GC (s)
u
Controlador
e −sτ
G H(s)
GT (s)
y
Actuador Tiempo muerto Tanque ym
GF (s) Flotador
(a)
r
e
GC (s) Controlador
u
G H(s)
e −sτ
Actuador ym (b)
r
e
G C i(s)
u
G H(s) Actuador
Controlador proporcional integral
GT (s)
y
Tanque GF (s) Flotador e −sτ
GT (s)
y
Tanque
G Cd(s) Controlador derivativo
ym
GF (s) (c)
Fig. 5.18: Diagrama de bloques del sistema de control de nivel; (a) Sistema; (b) estructura para control PID o PI–D; (c) estructura para control PI–Dy.
segundo gr´afico de la Fig. 5.19 ilustra la comparaci´on entre las salidas controladas. Tales resultados se obtienen ejecutando el programa zn1a.m listado abajo. % zn1a.m CONTROL PID, PI-D Y PI-Dy EMPLEANDO LA CURVA DE REACCI´ ON 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); Gtau=exp(-1*s); Gpo=GH*Gtau*GT*GF; % Gpo: PROCESO A LAZO ABIERTO INCLUYENDO GF (FLOTADOR) subplot(211); step(Gpo,’k’); grid % GENERA LA CURVA DE REACCI´ ON ´ title(’RESPUESTA AL ESCALON’); xlabel(’TIEMPO’); ylabel(’AMPLITUD’); tau=2; T=32-tau; % TOMADOS DE LA CURVA DE REACCI´ ON [num,den]=pade(1,3); Gtau=tf(num,den); % APROXIMACI´ ON DEL TIEMPO MUERTO Gp=GH*Gtau*GT; Kp=31.5; % Kp ES EL PRODUCTO DE 10*3.15 a=Kp*tau/T; Kc=1.2/a; Ti=2*tau; Td=0.5*tau; N=10; % PAR´ AMETROS 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); % CONTROL PI-D
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
88/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
5.5 M´ etodos de Sintonizaci´ on de Controladores PID
77
RESPUESTA AL ESCALÓN 40 D U T I L P M A
30 20 10 0
0
20
40
60
80 100 TIEMPO (sec)
120
140
160
180
SALIDAS CONTROLADAS 1.5
PI−Dy A D I L A S
1
PID y PI−D 0.5 0
0
10
20
30 TIEMPO (sec)
40
50
60
Fig. 5.19: Curva de reacci´on del sistema nivel y respuestas controladas para el ejemplo 5.7 (gr´afico inferior).
Gci=Kc*(1+1/Ti/s); Gcd=Kc*Td*s/(1+Td*s/N); Gpcd=feedback(Gp,Gcd); PI_Dy=feedback(Gci*Gpcd,GF); % CONTROL PI-Dy subplot(212); step(PID,’k’,PI_D,’k’,PI_Dy,’k’); grid; title(’SALIDAS CONTROLADAS’); xlabel(’TIEMPO’); ylabel(’SALIDA’); print -deps -f zn1a
M´ etodo de Kessler La Tabla 5.3 muestra las f´ormulas propuestas por C. Kessler [25] para determinar los par´ametros de un controlador PID basado en criterios ´optimos de dise˜ no.
Ejemplo 5.8 La din´amica simplificada de un avi´on–helic´optero se puede representar mediante la siguiente FT: 1 Gp(s) = (1 + 20s)(1 + 10s)(1 + 0,5s) Controlar dicho sistema empleando el m´ etodo de Kessler.
Soluci´ on: La FT del sistema, que es del tipo PT n , se puede formular como: Gp(s) =
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
K p (1 + T 1 s)(1 + T 2 s)
µ (1 + tµ s)
89/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
78
Control PID SISO
Tabla 5.3: M´etodo de Kessler para hallar los par´ametros K c , T i y T d . Sistema G p (s) K p
(1+T 1 s)
µ (1+tµ s)
Tipo
Controlador Gc (s)
PI
K c 1 +
1 T I s
PID
K c 1 +
1 T i s
T σ = Σµ tµ ; T 1 > 4T σ K p (1+T 1 s)(1+T 2 s)
µ (1+tµ s)
T σ = Σµ tµ ; T 1 > 4T σ T 1 > T 2 > T σ
(1 + T d s)
K c
T i
T 1 2K p T σ
4T σ
T 1 2K p T σ
4T σ
T d
T 2
donde: K p = 1, T 1 = 20, T 2 = 10, µ = 1, tµ = t1 = T σ = 0.25, y, T 1 > 4T σ , T 1 > T 2 > T σ . Este sistema se puede estabilizar con un controlador PID, tal como se observa en la Fig. 5.20, resultado que se obtiene ejecutando el programa kessler2.m listado abajo. RESPUESTA AL ESCALÓN 1 0.8 D U T I L P M A
0.6 0.4 0.2 0
0
20
40
60
80 100 TIEMPO (sec)
120
140
160
180
SALIDA CONTROLADA 1.5
A
1
I D L A S
0.5
0
0
2
4
6 TIEMPO (sec)
8
10
12
Fig. 5.20: Respuesta al escal´on (gr´afico superior) y respuesta controlada (gr´afico inferior) empleando un controlador PID de acuerdo al m´etodo de Kessler.
% kessler2.m CONTROL PID EMPLEANDO EL M´ ETODO DE KESSLER
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
90/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
5.5 M´ etodos de Sintonizaci´ on de Controladores PID
79
clear all; close all; clc; Kp=1; T1=20; T2=10; mu=1; tmu=0.5; Tsigma=tmu; s=tf(’s’); Gp=Kp/(1+T1*s)/(1+T2*s)/(1+tmu*s); % PROCESO subplot(211); step(Gp); grid; title(’RESPUESTA AL ESCAL´ ON’); xlabel(’TIEMPO’); ylabel(’AMPLITUD’); KC=T1/(2*Kp*Tsigma); TI=4*Tsigma; TD=T2; Gc=KC*(1+1/TI/s)*(1+TD*s); PID=feedback(Gp*Gc,1); % CONTROL PID subplot(212); step(PID); grid; title(’SALIDA CONTROLADA’); xlabel(’TIEMPO’); ylabel(’SALIDA’); print -deps -f kessler2
M´ etodo de Chien–Hrones–Reswick El m´etodo de Chien–Hrones–Reswick (CHR) [19] ilustrado en la Fig. 5.21(a), se aplica a sistemas que aceptan un modelo din´amico como el de la ecuaci´ on (5.33). Este m´etodo propone un conjunto de reglas de sintonizaci´on para los casos siguientes (ver Tabla 5.4): 1. Respuesta aperi´ odica sin sobrenivel de la salida controlada y a cambios tipo escal´ on de la entrada de referencia r, sin presencia del disturbio d, y para un coeficiente de amortiguamiento ζ > 0.8 , tal como se muestra en la Fig. 5.21(b). 2. Respuesta aperi´ odica sin sobrenivel de la salida controlada yd a cambios tipo escal´ on del disturbio d, sin presencia de la entrada r, y para un coeficiente de amortiguamiento ζ > 0.8, tal como se muestra en la Fig. 5.21(c). Observar que en esta situaci´on existe rechazo al disturbio dado que yd tiende a cero. 3. Respuesta peri´ odica con sobrenivel de 20 % de la salida controlada y a cambios tipo escal´on de la entrada r, sin presencia del disturbio d, y para un coeficiente de amortiguamiento de 0.4 < ζ < 0.8, tal como se muestra en la Fig. 5.21(d). 4. Respuesta aperi´odica con sobrenivel de 20 % de la salida controlada yd a cambios tipo escal´on del disturbio d, sin presencia de la se˜ nal r, y para un coeficiente de amortiguamiento de 0.4 < ζ < 0.8, tal como se muestra en la Fig. 5.21(e). Observar que en esta situaci´on tambi´ en existe rechazo al disturbio dado que yd tiende a cero.
Ejemplo 5.9 Se desea controlar el sistema nivel del ejemplo 5.7 empleando el m´ etodo de Chien– Hrones–Reswick para el caso de rechazo al disturbio (r=0 y d = 0) sin presencia de oscilaciones en la respuesta del sistema (ver Fig. 5.22(a)). Para prop´ositos de comparaci´on emplear los controladores ideal (PID, ecuaci´on (5.13)), dependiente (PI– D, ecuaci´on (5.21)) y mejorado (PI–Dy, ecuaci´on (5.26)), empleando las estructuras (b) y (c) de la Fig. 5.22 respectivamente.
ametros τ = 2 y T = 32 τ = 20 se obtuvieron con el primer gr´afico Soluci´ on: Los par´ de la Fig. 5.19. Con estos valores se calculan los par´ametros del controlador empleando la Tabla 5.4 (caso (c), controlador PID). La Fig. 5.22 ilustra la comparaci´on entre
−
las salidas controladas, las cuales se obtienen ejecutando el programa chrd.m listado abajo.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
91/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
80
Control PID SISO d D r
t r
R
PID
e
t
Proceso
u
(a)
y
y
y R
d
R d=0
d=0 t
t (d)
(b) y d
y d
r=0
r=0
D t
D t (e)
(c)
Fig. 5.21: M´etodo de Chien–Hrones–Reswick.
Tabla 5.4: M´etodo de Chien–Hrones–Reswick para determinar K C , T I y T D . Tipo
Controlador GC (s)
P
K c
PI
PID
K c 1 +
K c 1 +
1 T i s
1 T i s
+ T d s
Caso (b): ζ > 0.8 d=0
Caso (c): ζ > 0.8 r=0
Caso (d): 0.4< ζ < 0.8 d=0
Caso (e): 0.4< ζ < 0.8 r=0
K c = 0.3/a T i = ∞ T d = 0
K c = 0.3/a T i = ∞ T d = 0
K c = 0.7/a T i = ∞ T d = 0
K c = 0.7/a T i = ∞ T d = 0
K c = 0.35/a
K c = 0.6/a
K c = 0.6/a
K c = 0.7/a
T i = 1.2T T d = 0
T i = 4τ T d = 0
T i = T T d = 0
T i = 2.3τ T d = 0
K c = 0.6/a
K c = 0.95/a
K c = 0.95/a
K c = 1.2/a
T i = T T d = 0.5τ
T i = 2.4τ T d = 0.42τ
T i = 1.4T T d = 0.47τ
T i = 2τ T d = 0.42τ
% chrd.m CONTROL PID, PI-D Y PI-Dy POR EL M´ ETODO CHR PARA RECHAZO AL DISTURBIO clear all; close all; clc;
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
92/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
5.5 M´ etodos de Sintonizaci´ on de Controladores PID Actuador
81
Disturbio d
Controlador
v d Flotador
(a)
e
d
G H(s)
GT (s) e −sτ Actuador Tiempo muerto Tanque u
GC (s)
GF (s)
Controlador
Flotador
y
(b)
u
G H(s)
e −sτ
GT (s)
Actuador
y
Tanque
Control D G Cd(s)
Control PI
GF (s)
G C i(s) (c)
Fig. 5.22: Estructuras para el rechazo al disturbio en el control del sistema nivel (Fig. (a)) empleando controladores PID y PI–D (Fig. (b))y PI–Dy (Fig. (c)).
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; % APROXIMACI´ ON DEL TIEMPO MUERTO Gp=GH*Gtau*GT; Kp=31.5; % Kp ES EL PRODUCTO DE 10*31.5 tau=2; T=32-tau; % TOMADOS DE LA CURVA DE REACCI´ ON a=Kp*tau/T; Kc=0.95/a; Ti=2.4*tau; Td=0.42*tau; N=10; % PAR´ AMETROS 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); % CONTROL PI-D Gci=Kc*(1+1/Ti/s); Gcd=Kc*Td*s/(1+Td*s/N); PI_Dy=feedback(Gp,Gci*GF+Gcd); % CONTROL PI-Dy step(PID,’b’,PI_D,’b’,PI_Dy,’b’); grid; title(’SALIDAS CONTROLADAS’); xlabel(’TIEMPO’); ylabel(’SALIDA’); print -deps -f chrd
M´ etodo de Cohen–Coon Otro m´etodo de sintonizaci´ on del tipo Ziegler y Nichols es el desarrollado por los investigadores G.H. Cohen y G.A. Coon [20] que tambi´ en se aplica a sistemas que aceptan un modelo din´a mico como el de la ecuaci´o n (5.33). Las f´ormulas de sintonizaci´ on se muestran en la Tabla 5.5, donde: a = K p τ T
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
L=
τ τ + T
(5.35)
93/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
82
Control PID SISO
SALIDAS CONTROLADAS 1.4 1.2 1 0.8 A D I L A S
0.6 0.4
PI−Dy 0.2
0
PID y PI−D −0.2 −0.4
0
10
20
30 TIEMPO (sec)
40
50
60
Fig. 5.23: Rechazo al disturbio empleando controladores tipo PID, PI–D y PI–Dy.
Notar que las f´ormulas de la Tabla 5.5 se asemejan a las de la Tabla 5.6 cuando L es suficientemente peque˜ no. Tabla 5.5: M´ etodo de Cohen y Coon para hallar los par´ametros K C , T I y T D . Tipo
Controlador GC (s)
P
K C
1 a
1 T I s
PI
K C 1 +
PD
K (1 + T s) C
PID
100 BP 0.35L 1 L
K C =
K C 1 +
1 T I s
D
+ T D s
1+
−
0.9 a 1.24
92L 1 + 01.− L 0.13L 1+
a 1.35 a
18L 1 + 01.− L
1 L
−
T I
T D
∞
0
3.3 3L 1+1.2L
−
τ
−∞
τ
2.5 2L 1 0.39L
−
0 0.27−0.36L τ 1−0.87L 0.37−0.37L 1−0.8L τ
Ejemplo 5.10 Se desea controlar el sistema nivel descrito en el ejemplo 5.7 empleando el m´etodo de Cohen–Coon. El diagrama de bloques del sistema nivel se muestra en la Fig. 5.18(a). Para prop´ositos de comparaci´ on emplear los controladores PID, PI–D y PI–Dy. Para el control PID y PI–D emplear el diagrama de bloques de la Fig. 5.18(b), mientras que para el control PI–Dy usar el diagrama de bloques de la Fig. 5.18(c).
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
94/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
5.5 M´ etodos de Sintonizaci´ on de Controladores PID
83
−
Soluci´ on: Los par´ametros τ = 2 y T = 32 τ = 20 se obtuvieron del primer gr´afico de la Fig. 5.19. Con estos valores se calculan los par´ametros del controlador empleando la Tabla 5.5. La Fig. 5.24 muestra las salidas controladas. SALIDAS CONTROLADAS 1.4
PI−Dy 1.2
1
PID y PI−D A D I L A S
0.8
0.6
0.4
0.2
0
0
5
10
15
20 TIEMPO (sec)
25
30
35
40
Fig. 5.24: Respuestas controladas empleando controladores tipo PID, PI–D y PI–Dy y el m´ etodo de Cohen-Coon.
% cohen.m CONTROL PID, PI-D Y PI-Dy EMPLEANDO EL M ´ ETODO DE COHEN-COON 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; % APROXIMACI´ ON DEL TIEMPO MUERTO Gp=GH*Gtau*GT; Kp=31.5; % Kp ES EL PRODUCTO DE 10*31.5 tau=2; T=32-tau; % TOMADOS DE LA CURVA DE REACCI´ ON a=Kp*tau/T; L=tau/(tau+T); Kc=1.35/a*(1+0.18*L/(1-L)); Ti=(2.5-2*L)*tau/(1-0.39*L); Td=(0.37-0.37*L)*tau/(1-0.8*L); N=10; % 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); % CONTROL PI-D Gci=Kc*(1+1/Ti/s); Gcd=Kc*Td*s/(1+Td*s/N); Gcd=feedback(Gp,Gcd); PI_Dy=feedback(Gci*Gcd,GF); % CONTROL PI-Dy step(PID,’k’,PI_D,’k’,PI_Dy,’k’); grid; title(’SALIDAS CONTROLADAS’); xlabel(’TIEMPO’); ylabel(’SALIDA’); print -deps -f cohen
M´ etodo de Samal El m´etodo de sintonizaci´on de par´ametros de Samal [21] est´a dise˜ nado para rechazar los disturbios que act´ uan principalmente en la se˜nal de control, tal como se muestra en la Fig. 5.25(a), donde el rechazo al disturbio se manifiesta porque la se˜nal
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
95/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
84
Control PID SISO
de salida y controlada tiende a cero para un tiempo de estabilizaci´on T s y un sobrenivel de magnitud M . El sistema al cual se aplican los par´ametros del controlador PID es de la forma: y(s) K p G p (s) = = (5.36) u(s) (1 + T n s)n donde los par´ametros n y T n se determinan de la Tabla 2.6 (ver ejemplo 2.3). En la Fig. 5.25(b), V o = K p K C es la ganancia a lazo abierto del sistema realimentado, donde K C es la ganancia del controlador. En esta figura, los valores de V o para los controladores I y PI se leen en el eje V o de la izquierda, mientras que los valores de V o para los controladores P y PID se leen en el eje V o de la derecha. En la Fig. 5.25(c), T I es el tiempo integral. El eje T I /T ubicado a la izquierda de esta figura permite determinar T I para los controladores I, PI y PID, mientras que el tiempo derivativo T D del controlador se determina empleando la curva PID indicada como T D /T . La Fig. 5.25(d) permite determinar M conociendo la magnitud D del disturbio tipo escal´on, mientras que la Fig. 5.25(e) se emplea para determinar T s .
Ejemplo 5.11 Se desea controlar el siguiente sistema empleando el m´etodo de Samal: Gp(s) =
Kp (s + T b)(s + T c)(s + T d)(s + T e)
donde: [T b , T c , T d , T d ] = [1, 1.5, 2, 2.5]. Para prop´ositos de comparaci´on emplear los controladores PID est´ andar (ecuaci´on (5.13)), PI–D interactivo (ecuaci´ on (5.21)) y PI–Dy (PID mejorado, ecuaci´on (5.26)). 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). on (la curva Soluci´ on: El gr´afico superior de la Fig. 5.26 muestra la respuesta al escal´ de reacci´on) del sistema. De esta curva se pueden obtener los par´ametros τ = 0.8 s y T = 3.9 – τ = 3.1 s. Empleando la Tabla 2.6 se obtiene aproximadamente n = 3 y T n = 0.270. De la Fig. 5.25(b) se determina V o = 2 y K C = V o/K p , mientras que de la Fig. 5.25(c) se calcula T I = 1.8T n y T D = 0.7T n . El gr´afico inferior de la Fig. 5.26 ilustra la comparaci´ on 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´ ETODO 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); % PROCESO subplot(211); step(Gp,’k’); title(’RESPUESTA AL ESCAL´ ON’); xlabel(’TIEMPO’); ylabel(’AMPLITUD’); % tau=0.8; T=3.9-tau=3.1; % tau/T=0.258 => n=3 => Tn/tau=0.270 => % Gm(s)=Kp/(Tn*s+1)^n % MODELO DEL PROCESO SEG´ UN SAMAL Tn=0.216; Vo=2; Kc=Vo/Kp; Ti=1.8*Tn; Td=0.7*Tn; N=10;% PAR´ AMETROS PID Gc1=Kc*(1+1/Ti/s+Td*s); PID=feedback(Gp*Gc1,1); % CONTROL PID Gc2=Kc*(1+1/Ti/s+Td*s/(1+Td*s/N)); PI_D=feedback(Gp*Gc2,1); % CONTROL PI-D Gci=Kc*(1+1/Ti/s); Gcd=Kc*Td*s/(1+Td*s/N); Gcd=feedback(Gp,Gcd); PI_Dy=feedback(Gci*Gcd,1); % CONTROL PI-Dy
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
96/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
5.5 M´ etodos de Sintonizaci´ on de Controladores PID d
D 0 r=0
e
P, I, PI, PID
85
(a) d
t
y
t
(1+Ts) n
u
Ts
0
(b)
PI
M
D
y
Kp
(c)
5
20
5
5
4
16
4
4
P 3
12
3
Vo 2
Vo
8
TI T
3
I 2
PI
PID 1
4
1
0
0
PID
I
PID 1
2
3
4
n
1
2
(d) M
2 T D T 1
3
4
0
n
(e)
1
Kp D 0.8
I
0.6
PI
0.4
Ts
20
T
16
I
12
P PI
8
PID
PID 0.2
4 P
0 1
2
3
4
n
0 1
2
3
4
n
Fig. 5.25: M´etodo de Samal para hallar los par´ametros de un controlador PID.
subplot(212); step(PID,’k’,PI_D,’k’,PI_Dy,’k’); title(’SALIDAS CONTROLADAS’); xlabel(’TIEMPO’); ylabel(’SALIDA’); print -deps -f samal1
5.5.2.
M´ etodo de las Oscilaciones Sostenidas
M´ etodo de las Oscilaciones Sostenidas de Ziegler y Nichols El m´etodo de las oscilaciones sostenidas de Ziegler y Nichols [15] se aplica tanto a sistemas que pueden ser modelados con la ecuaci´on (5.33) y a otros no autoregu-
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
97/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
86
Control PID SISO
RESPUESTA AL ESCALÓN 1.5 D U T I L P M A
1 0.5 0
0
1
2
3
4 5 TIEMPO (sec)
6
7
8
9
45
50
SALIDAS CONTROLADAS 1.5
PI−Dy A D I L A S
1 0.5
PID y PI−D 0
0
5
10
15
20 25 30 TIEMPO (sec)
35
40
Fig. 5.26: Respuesta al escal´on (Fig. inferior) y respuestas controladas (Fig. superior) empleando controladores tipo PID, PI–D y PI–Dy y el m´etodo de Samal.
lados que permiten una respuesta a lazo cerrado que posea la forma de oscilaciones sostenidas, tal como se muestra en la Fig. 5.27. Los par´ametros K c , T i y T d del controlador PID se pueden obtener a partir de tal la respuesta oscilatoria, empleando el siguiente procedimiento. Fijar los par´ametros T i y T d en y 0 respectivamente. Incrementar poco a poco el par´ametro K c hasta obtener una respuesta en forma de oscilaciones sostenidas (ver la Fig. 5.27). En dicha respuesta, medir el per´ıodo de oscilaci´on cr´ıtico T crit y anotar la ganancia cr´ıtica K crit (o ganancia l´ımite) para la cual se obtuvo dicho per´ıodo. Los par´ametros K c , T i y T d se calculan luego usando la Tabla 5.6. Es necesario hacer notar que la magnitud de la oscilaci´on sostenida, lo que es equivalente a decir la magnitud de variaci´on de la variable de salida, debe ser mantenida la m´as peque˜ na posible para evitar problemas de producci´on.
∞
K crit
r
r
e
PID
u
y
y
Proceso R
R
T crit t
t
Fig. 5.27: M´etodo de las oscilaciones sostenidas de Ziegler y Nichols.
Ejemplo 5.12
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
98/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
5.5 M´ etodos de Sintonizaci´ on de Controladores PID
87
Tabla 5.6: M´etodo de las oscilaciones sostenidas de Ziegler y Nichols para hallar los par´ametros K C , T I y T D . Tipo P PI PID
Controlador GC (s)
K C =
T I
T D
0.5K crit
∞
0
0.45 K crit
0.85 T crit
0
0.6 K crit
0.5 T crit
0.125 T crit
K C
K C 1 + K C 1 +
1 T I s
1 T I s
100 BP
+ T D s
Se desea controlar el sistema nivel del problema empleando la t´ecnica de las ??ositos oscilaciones sostenidas de Ziegler y Nichols. Para prop´ de comparaci´ on emplear los controladores PID est´andar, PI–D interactivo y PI–Dy mejorado, empleando las estructuras de la Fig. 5.18. Soluci´ on: El primer gr´afico de la Fig. 5.28 muestra la respuesta al escal´on a manera de una oscilaci´on sostenida que se obtiene empleando un controlador proporcional de ganancia GC (s) = K crit = 0.85 en la Fig. 5.18(b). Notar que la oscilaci´on posee un per´ıodo igual a T crit = 8 s. Con estos valores se calculan los par´ametros del controlador PID empleando la Tabla 5.6. El segundo gr´afico de la Fig. 5.28 ilustra la comparaci´on entre las salidas controladas. Tales resultados se obtienen ejecutando el programa zn2.m listado abajo. % zn2.m CONTROL PID, PI-D Y PI-Dy MEDIANTE LA OSCILACI´ ON SOSTENIDA 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=tf(num,den); % TIEMPO MUERTO: exp(-tau*s) Gp=GH*Gtau*GT; % Gp: PROCESO, GF: FLOTADOR Kcrit=0.85; G_c0=feedback(Kcrit*Gp,GF); subplot(211); step(G_c0,40); grid; title(’OSCILACI´ ON SOSTENIDA’); xlabel(’TIEMPO’); ylabel(’AMPLITUD’); Tcrit=8; % TOMADOS DE LA OSCILACI´ ON SOSTENIDA Kc=0.6*Kcrit; Ti=0.5*Tcrit; Td=0.125*Tcrit; N=10; % PAR´ AMETROS 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); % CONTROL PI-D Gci=Kc*(1+1/Ti/s); Gcd=Kc*Td*s/(1+Td*s/N); Gcd=feedback(Gp,Gcd); PI_Dy=feedback(Gci*Gcd,GF); % CONTROL PI-Dy subplot(212); step(PID,’k’,PI_D,’k’,PI_Dy,’k’); grid; title(’SALIDAS CONTROLADAS’); xlabel(’TIEMPO’); ylabel(’SALIDA’); print -deps -f zn2
Ejemplo 5.13 Se desea controlar un sistema no autoregulado que posee la siguiente FT, empleando la t´ecnica de las oscilaciones sostenidas de Ziegler y Nichols. G p (s) =
1 s(s + 1)4
Para prop´ositos de comparaci´on emplear los controladores PID est´andar, PI–D interactivo y PI–Dy mejorado.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
99/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
88
Control PID SISO
OSCILACIÓN SOSTENIDA 2 D U T I L P M A
Tcrit
1.5 1 0.5 0
0
2
4
6
8 10 12 TIEMPO (sec)
14
16
18
20
SALIDAS CONTROLADAS 2 A D I L A S
1.5
PI−Dy
1 0.5
PID y PI−D 0
0
10
20
30 TIEMPO (sec)
40
50
60
Fig. 5.28: Oscilaciones sostenidas (primer gr´ afico) para K p = K crit y respuestas controladas (gr´afico inferior) para el ejemplo 5.12.
Soluci´ on: El primer gr´afico de la Fig. 5.29 muestra la respuesta al escal´on a manera de una oscilaci´on sostenida que se obtiene empleando un controlador proporcional de ganancia GC (s) = K crit = 0.569. Notar que la oscilaci´on posee un per´ıodo igual a τ crit = 15 s. Con estos valores se calculan los par´ametros del controlador PID empleando la Tabla 5.6. El segundo gr´afico de la Fig. 5.29 ilustra la comparaci´on entre las salidas controladas. Tales resultados se obtienen ejecutando el programa zn2a.m listado abajo. % zn2a.m CONTROL PID, PI-D Y PI-Dy MEDIANTE LA OSCILACI´ ON SOSTENIDA clear all; close all; clc; s=tf(’s’); Gp=1/(s*(s+1)^4); Kcrit=0.569; G_c0=feedback(Kcrit*Gp,1); subplot(211); step(G_c0,50); grid; title(’OSCILACI´ ON SOSTENIDA’); xlabel(’TIEMPO’); ylabel(’AMPLITUD’); Tcrit=15; % TOMADO DE LA OSCILACI´ ON SOSTENIDA Kc=0.6*Kcrit; Ti=0.5*Tcrit; Td=0.125*Tcrit; N=10; % PAR´ AMETROS PID Gc1=Kc*(1+1/Ti/s+Td*s); PID=feedback(Gp*Gc1,1); % CONTROL PID Gc2=Kc*(1+1/Ti/s+Td*s/(1+Td*s/N)); PI_D=feedback(Gp*Gc2,1); % CONTROL PI-D Gci=Kc*(1+1/Ti/s); Gcd=Kc*Td*s/(1+Td*s/N); Gcd=feedback(Gp,Gcd); PI_Dy=feedback(Gci*Gcd,1); % CONTROL PI-Dy subplot(212); step(PID,’k’,PI_D,’k’,PI_Dy,’k’); title(’SALIDAS CONTROLADAS’); xlabel(’TIEMPO’); ylabel(’SALIDA’); print -deps -f zn2a
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
100/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
5.5 M´ etodos de Sintonizaci´ on de Controladores PID
89
OSCILACIÓN SOSTENIDA 2 D U T I L P M A
Tcrit
1.5 1 0.5 0
0
5
10
15
20 25 30 TIEMPO (sec)
35
40
45
50
70
80
90
100
SALIDAS CONTROLADAS 2 A D I L A S
1.5
PI−Dy
1 0.5
PID y PI−D 0
0
10
20
30
40 50 60 TIEMPO (sec)
Fig. 5.29: Oscilaciones sostenidas (primer gr´ afico) para K p = K crit y respuestas controladas (gr´afico inferior) para el ejemplo 5.17.
Sintonizaci´ on de Sistemas con FT
G p (s)
= K p e−τ s
Las siguientes reglas de sintonizaci´on atribuidas a Yu (2006) [?], se aplican al control de sistemas que poseen una FT de la forma G p (s) = K p e−τ s . El control se realiza empleando la configuraci´on de la Fig. 5.1(a). El controlador empleado es el denominado cl´ asico generalizado, cuya FT es:
Gc (s)
u(s) 1 T d s = e(s) = K c 1 + T i s + 1 + T d s N
Las reglas son:
K c = 0.3K crit
T i = 2.3τ crit
bf 0 + bf 1 s + bf 2 s2 1 + af 1 s + af 2 s2
T d = 0
Ejemplo 5.14 Se desea controlar el sistema G p (s) = K p e−τ s empleando la t´ecnica de las oscilaciones sostenidas y las reglas de sintonizaci´on arriba formuladas.
Soluci´ on: El primer gr´afico de la Fig. 5.30 muestra la respuesta al escal´on a manera de una oscilaci´on sostenida que se obtiene empleando un controlador proporcional
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
101/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
90
Control PID SISO
de ganancia GC (s) = K crit = 0.45 en la Fig. 5.27. Notar que la oscilaci´on posee un per´ıodo igual a τ crit = 4 s. Con estos valores se calculan los par´ametros del controlador PID empleando: K c = 0.3K crit
T i = 2.3τ crit
T d = 0
El segundo gr´afico de la Fig. 5.30 ilustra la salidas controlada. Tales resultados se obtienen ejecutando el programa yu1.m listado abajo. OSCILACIÓN SOSTENIDA 5
D U T I L P M A
0
−5
−10
0
10
20
30 TIEMPO (sec)
40
50
60
SALIDA CONTROLADA 1
A D I L A S
0.5
0
−0.5
0
50
100
150
200
250
TIEMPO (sec)
Fig. 5.30: Oscilaciones sostenidas (primer gr´afico) para K p = K crit y respuesta controlada (gr´afico inferior) para el ejemplo 5.14.
% yu1.m CONTROL PI EMPLEANDO OSCILACI´ ON SOSTENIDA clear all; close all; clc; s=tf(’s’); Kp=2; af1=1; af2=1; bf0=1; bf1=1; bf2=1; [num,den]=pade(2,3); Gtau=tf(num,den); % TIEMPO MUERTO: exp(-tau*s) Gp=Kp*Gtau; % Gp: SISTEMA Kcrit=0.45; G_c0=feedback(Kcrit*Gp,1); subplot(211); step(G_c0); grid; title(’OSCILACI´ ON SOSTENIDA’); xlabel(’TIEMPO’);ylabel(’AMPLITUD’); Tcrit=4; % TOMADOS DE LA OSCILACI´ ON SOSTENIDA Kc=0.3*Kcrit; Ti=2.3*Tcrit; Td=0; N=3; % PAR´ AMETROS PID Gc1=Kc*(1+1/Ti/s+Td*s/(1+Td*s/N)); Gc2=(bf0+bf1*s+bf2*s^2)/(1+af1*s+af2*s^2); Gc=series(Gc1,Gc2); PID=feedback(Gp*Gc,1); % CONTROL PID
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
102/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
5.5 M´ etodos de Sintonizaci´ on de Controladores PID
91
subplot(212); step(PID); title(’SALIDA CONTROLADA’); xlabel(’TIEMPO’); ylabel(’SALIDA’); print -deps -f yu1
5.5.3.
M´ etodo del Rel´ e
El m´ etodo de las oscilaciones sostenidas a lazo cerrado puede ser arriesgado, ya que en casos reales fuerza a la planta a operar cerca de la inestabilidad. En la pr´actica, tambi´en, resulta muy dificultoso mantener la amplitud constante. Una variante de este m´etodo se muestra en la Fig. 5.31 [17], en donde se emplea un rel´e para conseguir una oscilaci´on sostenida de per´ıodo T crit pero de peque˜ na amplitud a, para una ganancia 4L K crit = pia , donde L es la ganancia del rel´ e. Teniendo como datos T crit y K crit se puede ahora usar la Tabla 5.6.
r
e
t
y
u
+L −L
a
y
u Gp(s)
e
Tcrit
Proceso
Relé
Fig. 5.31: Diagrama de bloques del sistema realimentado empleado en el m´ etodo de sintonizaci´ on mediante rel´e.
Ejemplo 5.15 Se desea controlar un sistema no autoregulado que posee la siguiente FT, empleando la t´ecnica del rel´e de Astr¨o m y H¨agglund: G p (s) =
1 s(s + 1)4
Para prop´ositos de comparaci´on emplear los controladores PID est´andar, PI–D interactivo y PI–Dy mejorado. Tambi´ en determinar las ecuaciones de estado del sistema.
Soluci´ on: La primera parte del programa relay.m listado abajo, el cual usa el diagrama de bloques de la Fig. 5.31(a), permite obtener el primer y segundo gr´afico de la Fig. 5.33 para una magnitud del rel´e de L = 0.1. El diagrama de bloques de la Fig. 5.32 se emplea para determinar las cinco ecuaciones de estado del sistema: x˙ 1 = x˙ 3 =
−x1 + x2
−x3 + x4
x˙ 2 = x˙ 4 =
−x2 + x3
−x4 + x5
x˙ 5 = u
De la oscilaci´ on sostenida mostrada en el primer gr´afico de la Fig. 5.33 se desprenden los par´ametros: a = 0.25 y T crit = 15, mientras que el segundo gr´afico ilustra la ley de control u = L. Conocido los par´ametros a, T crit y L, ahora se puede calcular la ganancia K crit y los par´ametros PID empleando la Tabla 5.6. El tercer gr´afico de la
±
Fig. 5.33 muestra la comparaci´on entre las salidas controladas. Tales resultados se obtienen ejecutando la segunda parte del programa relay.m listado abajo.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
103/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
92
Control PID SISO u
1 s
x5
1
x4
1 s+1
x3
s+1
1
x
2
s+1
1
x1 = y
s+1
Fig. 5.32: Diagrama de bloques del sistema mostrando sus variables de estado.
2 y A D1 I L A S
Tcrit r
a
0 0
10
20
30
40
50
60
70
80
50
60
70
80
TIEMPO u 0.1 L O R 0 T N O C −0.1 0
10
20
30
40
TIEMPO SALIDAS CONTROLADAS 2
PI−Dy
A D I L A S
1 0
PID y PI−D 0
10
20
30
40 50 60 TIEMPO (sec)
70
80
90
100
1 Fig. 5.33: Respuesta al escal´on del sistema de control del sistema G p (s) = s(s+1) 4 empleando un rel´e (gr´afico superior), ley de control u (gr´afico medio) y respuestas estabilizadas empleando controladores tipo PID, PI–D y PI–Dy (gr´afico inferior).
% relay.m RESPUESTA A LAZO CERRADO CON UN REL´ E COMO CONTROLADOR clear all; close all; clc; % PROGRAMA PARA PRODUCIR LA OSCILACI´ ON SOSTENIDA x1=0; x2=0; x3=0; x4=0; x5=0; % CONDICIONES INICIALES T = 0.01; M = 8000; L=0.1; for k = 1:M r=1; R(k) = r; e=r-x1; % REFERENCIA ESCAL´ O N r Y ERROR e if(e>=0), u=L; else u=-L; end % FUNCI´ O N REL´ E U(k)=u; % LEY DE CONTROL u x1=x1+T*(-x1+x2); x2=x2+T*(-x2+x3); x3=x3+T*(-x3+x4); x4=x4+T*(-x4+x5); x5=x5+T*u; X1(k)=x1; % SALIDA DEL PROCESO end ejet = linspace(0,M*T,M); subplot(311); plot(ejet,R,ejet,X1); grid ylabel(’SALIDA y’); xlabel(’TIEMPO’);
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
104/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
5.5 M´ etodos de Sintonizaci´ on de Controladores PID
93
subplot(312); plot(ejet,U); ylabel(’CONTROL u’); xlabel(’TIEMPO’) % PROGRAMA PARA CONTROLAR EL PROCESO Gp(S) s=tf(’s’); Gp=1/(s*(s+1)^4); % FT DEL PROCESO a=0.25; Tcrit=15; Kcrit=4*L/(pi*a); % TOMADO DE LA OSCILACI´ ON SOSTENIDA Kc=0.6*Kcrit; Ti=0.5*Tcrit; Td=0.125*Tcrit; N=10; % PAR´ AMETROS PID Gc1=Kc*(1+1/Ti/s+Td*s); PID=feedback(Gp*Gc1,1); % CONTROL PID Gc2=Kc*(1+1/Ti/s+Td*s/(1+Td*s/N)); PI_D=feedback(Gp*Gc2,1); %CONTROL PI-D Gci=Kc*(1+1/Ti/s); Gcd=Kc*Td*s/(1+Td*s/N); Gcd=feedback(Gp,Gcd); PI_Dy=feedback(Gci*Gcd,1); % CONTROL PI-Dy subplot(313); step(PID,’k’,PI_D,’k’,PI_Dy,’k’); title(’SALIDAS CONTROLADAS’); xlabel(’TIEMPO’); ylabel(’SALIDA y’); print -deps -f relay
5.5.4.
M´ etodo de las Oscilaciones Amortiguadas
El m´etodo de las oscilaciones amortiguadas propuesto en [18], se conoce tambi´ en como el m´etodo TDQR (Tuning for Quarter Decay Response) o sintonizaci´ on para un decaimiento de un cuarto de la respuesta. Este m´ etodo se aplica a sistemas que pueden ser modelados en la forma dada en la ecuaci´on (5.33) y tambi´ en a otros sistemas no autoregulados. En ambos casos, la respuesta al escal´on a lazo cerrado, debe ser de modo tal que el segundo m´aximo sea un cuarto del primer m´aximo, tal como se ilustra en la Fig. 5.34, en la cual K o es la ganancia del controlador para obtener el decaimiento mostrado y T o es el per´ıodo correspondiente. Los par´ametros de sintonizaci´ on del controlador se obtienen luego de la Tabla 5.7. r
r
e
Ko PID
u
y
Proceso
y
To A
R
R
A/4 t
t
Fig. 5.34: M´etodo de las oscilaciones amortiguadas de Harriot.
Tabla 5.7: M´ etodo de las oscilaciones amortiguadas de Harriot para hallar los par´ametros K C , T I y T D . Tipo P PI PID
Controlador GC (s)
T D
K o
0
1 T I s
∞
K o
T o /1.5
0
+ T D s
K o
T o /1.5
T o /6
K C
K C 1 + K C 1 +
1 T I s
100 BP
T I
K C =
Ejemplo 5.16
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
105/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
94
Control PID SISO
Se desea controlar el sistema nivel del ejemplo 5.7 empleando la t´ecnica de las oscilaciones amortiguadas de Harriot. Para prop´ositos de comparaci´ on emplear los controladores ideal (PID, ecuaci´on (5.13)), dependiente (PI–D, ecuaci´on (5.21)) y mejorado (PI–Dy, ecuaci´on (5.26)), empleando las estructuras (b) y (c) de la Fig. 5.18.
Soluci´ on: El primer gr´afico de la Fig. 5.35 muestra la respuesta al escal´on en donde el segundo m´aximo de la oscilaci´on es un cuarto del primer m´ aximo, la cual se obtiene empleando un controlador proporcional de ganancia G C (s) = K o = 0.55 en la Fig. 5.18(a). Notar que la oscilaci´on posee un per´ıodo igual a T o = 10 s. Con estos valores se calculan los par´ametros del controlador PID empleando la Tabla 5.7. El segundo gr´afico de la Fig. 5.35 ilustra la comparaci´on entre las salidas controladas. Tales resultados se obtienen ejecutando el programa harriot.m listado abajo.
OSCILACIÓN SOSTENIDA 1.5 D U T I L P M A
1
A 0.5 0
A/4 0
2
4
6
8 10 12 TIEMPO (sec)
14
16
18
20
SALIDAS CONTROLADAS 1.5
PI−Dy A D I L A S
1
PI−D PID
0.5 0
0
2
4
6
8 10 TIEMPO (sec)
12
14
16
18
Fig. 5.35: Oscilaciones amortiguadas (gr´ afico superior) para K C = K o y respuestas controladas (gr´afico inferior) para el ejemplo 5.16.
% harriot.m CONTROL PID, PI-D Y PI-Dy MEDIANTE EL M´ ETODO DE HARRIOT 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=tf(num,den); % TIEMPO MUERTO exp(-tau*s) Gp=GH*Gtau*GT; % Gp: PROCESO, GH: FLOTADOR Ko=0.55; G_c0=feedback(Ko*Gp,GF); subplot(211); step(G_c0,20); grid title(’OSCILACI´ ON SOSTENIDA’); xlabel(’TIEMPO’); ylabel(’AMPLITUD’); To=10; Kc = Ko; Ti=To/1.5; Td=To/6; N=10; % PAR´ AMETROS PID Gc1=Kc*(1+1/Ti/s+Td*s); PID=feedback(Gp*Gc1,GF); % CONTROL PID
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
106/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
5.5 M´ etodos de Sintonizaci´ on de Controladores PID
95
Gc2=Kc*(1+1/Ti/s+Td*s/(1+Td*s/N)); PI_D=feedback(Gp*Gc2,GF); % CONTROL PI-D Gci=Kc*(1+1/Ti/s); Gcd=Kc*Td*s/(1+Td*s/N); Gcd=feedback(Gp,Gcd); PI_Dy=feedback(Gci*Gcd,GF); % CONTROL PI-Dy subplot(212); step(PID,’k’,PI_D,’k’,PI_Dy,’k’); title(’SALIDAS CONTROLADAS’); xlabel(’TIEMPO’); ylabel(’SALIDA’); print -deps -f harriot
Ejemplo 5.17 Se desea controlar un sistema no autoregulado que posee la siguiente FT, empleando la t´ecnica de las oscilaciones amortiguadas de Harriot. G p (s) =
1 s(s + 1)4
Para prop´ositos de comparaci´on emplear los controladores ideal (PID, ecuaci´on (5.13)), dependiente (PI–D, ecuaci´on (5.21)) y mejorado (PI–Dy, ecuaci´on (5.26)), empleando las estructuras (b) y (c) de la Fig. 5.18.
Soluci´ on: El primer gr´afico de la Fig. 5.28 muestra la respuesta al escal´on a manera de una oscilaci´ on sostenida que se obtiene empleando un controlador proporcional de ganancia GC (s) = K crit = 0.569. Notar que la oscilaci´ on posee un per´ıodo igual a τ crit = 15 s. Con estos valores se calculan los par´ametros del controlador PID empleando la Tabla 5.6. El segundo gr´afico de la Fig. 5.28 ilustra la comparaci´ on entre las salidas controladas. Tales resultados se obtienen ejecutando el programa zn2.m listado abajo. % harriota.m CONTROL PID, PI-D Y PI-Dy MEDIANTE OSCILACI´ ON AMORTIGUADA clear all; close all; clc; s=tf(’s’); Gp=1/(s*(s+1)^4); Ko=0.3; G_c0=feedback(Ko*Gp,1); subplot(211); step(G_c0,50); grid; title(’OSCILACI´ ON AMORTIGUADA’); xlabel(’TIEMPO’); ylabel(’AMPLITUD’); To=20; % TOMADO DE LA OSCILACI´ ON AMORTIGUADA Kc=Ko; Ti=To/1.5; Td=To/6; N=10; % PAR´ AMETROS PID Gc1=Kc*(1+1/Ti/s+Td*s); PID=feedback(Gp*Gc1,1); % CONTROL PID Gc2=Kc*(1+1/Ti/s+Td*s/(1+Td*s/N)); PI_D=feedback(Gp*Gc2,1); % CONTROL PI-D Gci=Kc*(1+1/Ti/s); Gcd=Kc*Td*s/(1+Td*s/N); Gcd=feedback(Gp,Gcd); PI_Dy=feedback(Gci*Gcd,1); % CONTROL PI-Dy subplot(212); step(PID,’k’,PI_D,’k’,PI_Dy,’k’); title(’SALIDAS CONTROLADAS’); xlabel(’TIEMPO’); ylabel(’SALIDA’); print -deps -f harriota
5.5.5.
M´ etodos Basado en la Minimizaci´ on de un ´Indice
La idea principal en los m´ etodos de sintonizaci´ on basados en criterios ´optimos, es minimizar un determinado ´ındice de rendimiento, en el cual est´ en involucrados el tiempo continuo t y el error e = r y. Los ´ındices de rendimiento m´as usados son: ISE (Integral Squared Error), IAE (Integral Absolute Error), ITAE (Integral Time Absolute Error), ISTE (Integral Square Time weighted Error) e IST 2 E (Integral Square Time–Square weighted Error). Las f´ormulas de dichos ´ındices son:
−
ISE =
∞ e2 (t)dt
0
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
IAE =
| ∞
0
e(t) dt
|
IT AE =
| 0
∞ t e(t)|dt
107/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
96
Control PID SISO
OSCILACIÓN AMORTIGUADA 1.5 D U T I L P M A
1 A
0.5 0
A/4
0
5
10
15
20 25 30 TIEMPO (sec)
35
40
45
50
SALIDAS CONTROLADAS 1.5 A D I L A S
1 PID
0.5 0
0
PI−D
10
20
30 TIEMPO (sec)
40
50
60
Fig. 5.36: Oscilaciones sostenidas (gr´afico superior) para K C = K o y respuestas controladas (gr´afico inferior) para el ejemplo 5.17.
ISTE =
∞
2
t e(t)dt
2
IST E =
0
Sintonizaci´ on de Sistemas con FT
∞
t2 e2 (t)dt
(5.37)
0
G p (s)
= K p e−τ s
La Tabla 5.8 se aplica al control de sistemas que poseen una FT de la forma G p (s) = K p e−τ s . En esta tabla, las reglas de sintonizaci´ on que emplean controladores integral y proporcional–integral, se atribuyen a Shinskey (1994) [ ?]. Las reglas que emplean un controlador PID se atribuyen a Nomura et al. (1993) [ ?]. El control se realiza empleando la configuraci´ on de la Fig. 5.1(a).
Ejemplo 5.18 Se desea controlar el sistema con FT G p (s) = K p e−τ s , con K p = 2 y τ = 2 usando el criterio ITAE y un controlador PI.
Soluci´ on: La Fig. 5.37 muestra la respuesta controlada, resultado que se obtienen ejecutando el programa shinskey.m listado abajo. % shinskey.m CONTROL PI USANDO ITAE clear all; close all; clc; s=tf(’s’); Kp=2; tau=2;
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
108/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
5.5 M´ etodos de Sintonizaci´ on de Controladores PID
97
Tabla 5.8: Reglas de sinton´ıa para controlar sistemas tipo G p (s) = K p e−τ s . M´etodo M´ınimo ITAE M´ınimo ITAE M´ınimo ITAE
Controlador Gc (s)
K c
T i
T d
1 T i s
Indefinido 0.4
1.6K p τ
0
0.5τ
0
0.361τ
0.1911τ
K c 1 + K c 1 +
1 T i s
1 T i s
+ T d s
K p 0.2635 K p
CONTROL DE G(s)=Kp*exp(−tau*s) USANDO ITAE 1.2 1 0.8 0.6
A D I L A S
0.4 0.2 0 −0.2 −0.4 −0.6 −0.8
0
5
10
15
TIEMPO (sec)
Fig. 5.37: Control PI del sistema G p (s) = K p e−τ s usando ITAE (ejemplo 5.18).
[num,den]=pade(tau,3); Gtau=tf(num,den); % TIEMPO MUERTO: exp(-tau*s) Gp=Kp*Gtau; % Gp: SISTEMA Kc=0.4/Kp; Ti=0.5*tau; Td=0; % PAR´ AMETROS PID Gc=Kc*(1+1/(Ti*s)+Td*s); PID=feedback(Gc*Gp,1); % CONTROL PID step(PID); title(’CONTROL DE G(s)=Kp*exp(-tau*s) USANDO ITAE’); xlabel(’TIEMPO’); ylabel(’SALIDA’); print -deps -f shinskey
M´ etodo de Wang–Juang–Chan Las f´ormulas de sintonizaci´on de de Wang–Juang–Chan (citadas en [24]) se basan en el criterio de optimizaci´on de ITAE y se pueden aplicar a sistemas que aceptan
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
109/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
98
Control PID SISO
un modelo din´amico como el de la ecuaci´on (5.33). estas f´ormulas son: (0.7303 + 0.5307T /τ )(T + 0.5τ ) K p (T + τ ) = T + 0.5τ 0.5τ T = T + 0.5τ
K c = T i T d
(5.38)
Metodo de Zhuang y Atherton El m´etodo de Zhuang y Atherton [26] minimiza los criterios ISE , ISTE e IST 2 E . La Tabla 5.9 muestra las f´ormulas de sintonizaci´on aplicadas a sistemas que aceptan un modelo din´amico como el de la ecuaci´on (5.33) y que est´en sujetos a cambios tipo escal´on en la se˜nal de referencia, tal como se muestra en la Fig. 5.1(a). Tabla 5.9: M´etodo de Zhuang y Atherton para determinar K c , T i y T d en un controlador est´andar. Rango de τ /T Tipo
0.1< τ/T <1 ISE
ISTE
IST2 E
ISE
ISTE
IST2 E
a1 b1
0.980 –0.892
0.712 –0.921
0.569 –0.951
1.072 –0.560
0.786 –0.559
0.628 –0.583
a2 b2
0.690 –0.155
0.968 –0.247
1.023 –0.179
0.648 –0.114
0.883 –0.158
1.007 –0.167
a1 b1
1.048 –0.897
1.042 –0.897
0.968 –0.904
1.154 –0.567
1.142 –0.579
1.061 –0.583
a2 b2
1.195 –0.386
0.987 –0.238
0.977 –0.253
1.047 –0.220
0.919 –0.172
0.892 –0.165
a3 b3
0.489 0.888
0.385 0.906
0.316 0.892
0.490 0.708
0.384 0.839
0.315 0.832
Par´ametro a1 Kp
PI
K c =
PI
T i =
PID
K c =
PID
T i =
PID
T d = a3 T
τ b1 T
T a2 +b2 (τ /T )
a1 Kp
τ b1 T
T a2 +b2 (τ /T )
τ b3 T
1.1< τ/T <2
Sin tener en cuenta la ganancia K c en la parte derivativa de la ecuaci´on (5.26) correspondiente al controlador mejorado, entonces este controlador toma la forma: u(s) = K c e(s) +
K c e(s) T i s
− 1 + T T ddss/N y(s) = P (s) + I (s) + D(s)
(5.39)
La Tabla 5.10 muestra las f´ormulas de sintonizaci´on cuando se aplica el controlador descrito en (5.56) a sistemas que aceptan un modelo din´amico como el de la ecuaci´on (5.33) y que est´en sujetos a cambios tipo escal´ o n en la se˜ nal de referencia, tal como se muestra en la Fig. 5.1(a).
Ejemplo 5.19
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
110/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
5.5 M´ etodos de Sintonizaci´ on de Controladores PID
99
Tabla 5.10: M´etodo de Zhuang y Atherton para determinar K c , T i y T d en un controlador cuya acci´on derivativa se encuentra en la realimentaci´on. Rango de τ /T Tipo
0.1< τ/T <1 ISE
ISTE
IST2 E
ISE
ISTE
IST2 E
a1 b1
1.260 –0.887
1.053 –0.930
0.942 –0.933
1.295 –0.619
1.120 –0.625
1.001 –0.624
a2 b2
0.701 –0.147
0.736 –0.126
0.770 –0.130
0.661 –0.110
0.720 –0.114
0.754 –0.116
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
Par´ametro a1 Kp
PID
K c =
PID
T i =
PID
T d = a3 T
τ b1 T
T a2 +b2 (τ /T )
τ b3 T
1.1< τ/T <2
p −τ s, con K p = 2, τ = 2 y T = 20 Se desea controlar el sistema con FT G p (s) = TK s+1 e usando el criterio ITAE y un controlador PID.
Soluci´ on: La Fig. 5.38 muestra la respuesta controlada, resultado que se obtienen ejecutando el programa zh1.m listado abajo. CONTROL PID USANDO ISE 1.5
1
0.5
A D I L A S
0
−0.5
−1
−1.5
0
5
10
15
20 TIEMPO (sec)
Fig. 5.38: Control PID del sistema G p (s) =
K p T s+1
25
30
35
40
e−τ s usando ISE (ejemplo 5.19).
% zh1.m CONTROL PID USANDO ISE
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
111/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
100
Control PID SISO
clear all; close all; clc; s=tf(’s’); Kp=2; tau=2; T=20; % tau/T=0.1 a1=1.048; b1=-0.897; a2=1.195; b2=-0.386; a3=0.489; b3=0.888; N=10; [num,den]=pade(tau,3); Gtau=tf(num,den); % TIEMPO MUERTO: exp(-tau*s) Gp=Kp/(T*s+1)*Gtau; % SISTEMA A CONTROLAR Kc=(a1/Kp)*(tau/T)^b1; Ti=T/(a2+b2*(tau/T)); Td=(a3*T)*(tau/T)^b3; 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 zh1
5.5.6.
Uso de la Curva de Reacci´ on en Sistemas No Autoregulados
El m´etodo de la curva de reacci´on de sistemas no autoregulados emplea tablas de sintonizaci´on de los controladores PID, cada una de las cuales se aplica a una determinada FT del sistema, caracterizada por poseer en ella integradores o polos inestables.
M´ etodo de Kessler La Tabla 5.11 muestra las f´ormulas propuestas por C. Kessler [25] para determinar los par´ametros de un controlador PID basado en criterios ´optimos de dise˜ no. Tabla 5.11: M´ etodo de Kessler para hallar los par´ametros K c , T i y T d . Sistema G p (s)
Tipo
Controlador Gc (s)
PI
K c 1 +
1 T i s
PID
K c 1 +
1 T i s
K p s
µ (1+tµ s)
T σ = Σµ tµ K p s(1+T 2 s) µ (1+tµ s)
T σ = Σµ tµ ; T 2 > T σ
(1 + T d s)
K c
T i
1 2K p T σ
4T σ
1 2K p T σ
4T σ
T d
T 2
Ejemplo 5.20 Se desea controlar un sistema posicionador empleando el m´etodo de Kessler, sabiendo que su FT es: 1 Gp(s) = s(1 + s)(5 + s)
Soluci´ on: La FT del sistema se puede reformular como: Gp(s) =
0,2 K p = s(1 + s)(1 + 0,2s) s(1 + T 2 s) µ (1 + tµ s)
Este sistema, de acuerdo a Kessler, es del tipo PITn con par´ametros K p = 0.2, T 2 = 1, µ = 1, tµ = t1 = T σ = 0.2, y T 2 > T σ , se puede estabilizar con un controlador PID, tal como se observa en la Fig. 5.39 (gr´afico inferior), resultado que se obtiene ejecutando el programa kessler1.m listado abajo. Notar que este sistema es no autoregulado, tal como se observa en gr´afico inferior de la Fig. 5.39.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
112/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
5.5 M´ etodos de Sintonizaci´ on de Controladores PID
101
RESPUESTA AL ESCALÓN 300 250 D U T I L P M A
200 150 100 50 0
0
500
1000
1500
TIEMPO (sec)
SALIDA CONTROLADA 1.5
A D I L A S
1
0.5
0
0
0.5
1
1.5
2
2.5 TIEMPO (sec)
3
3.5
4
4.5
5
Fig. 5.39: Respuesta al escal´on (gr´afico superior) y respuesta controlada (gr´afico inferior) empleando un controlador PID de acuerdo al m´etodo de Kessler.
% kessler1.m CONTROL PID EMPLEANDO EL M´ ETODO DE KESSLER clear all; close all; clc; Kp=0.2; T2=1; mu=1; tmu=0.2; Tsigma=tmu; s=tf(’s’); Gp=Kp/s/(1+T2*s)/(1+tmu*s); % PROCESO subplot(211); step(Gp); grid; title(’RESPUESTA AL ESCAL´ ON’); xlabel(’TIEMPO’); ylabel(’AMPLITUD’); KC=1/(2*Kp*Tsigma); TI=4*Tsigma; TD=T2; Gc=KC*(1+1/TI/s)*(1+TD*s); PID=feedback(Gp*Gc,1); % CONTROL PID subplot(212); step(PID); grid; title(’SALIDA CONTROLADA’); xlabel(’TIEMPO’); ylabel(’SALIDA’); print -deps -f kessler1
Reglas PID para Controlar Sistemas con FT
G(s)
=
K p e τs s
−
La FT del siguiente sistema posee parte proporcional, parte integral y tiempo muerto: Y (s) K p −τ s G(s) = = e (5.40) U (s) s Debido a la presencia del integrador, los controladores PD y PID resultan ser los adecuados para controlar tales sistemas. La Tabla 5.12 muestra los valores de los
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
113/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
102
Control PID SISO
coeficientes empleados por los par´ametros de los controladores PD y PID [27]: ControladorPD :
K c =
ControladorPID :
K c =
a1τ K p a3 K p τ
T d = a2 τ T i = a4 τ
T d = a5 τ
(5.41)
Tabla 5.12: Par´ametros ai para calcular K c , T i y T d para el control de sistemas tipo IPτ (ecuaci´ on (5.41)). Criterio
a1
a2
a3
a4
a5
ISE ITSE ISTSE
1.03 0.96 0.9
0.49 0.45 0.45
1.37 1.36 1.34
1.496 1.66 1.83
0.59 0.53 0.49
Ejemplo 5.21 Se desea controlar el sistema con FT G p (s) = usando el criterio ISE y un controlador PID.
K p s
e−τ s , con K p = 2, T = 20 y τ = 2
Soluci´ on: La Fig. 5.40 muestra la respuesta controlada, resultado que se obtienen 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; % SISTEMA 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
Reglas PID para Controlar Sistemas con FT
G(s)
=
p s(TK s+1) e τ s
−
La FT del siguiente sistema posee parte proporcional, parte integral, parte retardo de primer orden y tiempo muerto: G(s) =
K p y(s) = e−τ s u(s) s(T s + 1)
(5.42)
Debido a la presencia del integrador, los controladores PD y PID resultan los adecuados para controlar tales sistemas. Las f´ormulas para determinar los par´ametros del controlador PD son [27]: K c =
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
2 3K p τ
T d = T τ
(5.43)
114/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
5.5 M´ etodos de Sintonizaci´ on de Controladores PID
103
CONTROL PID USANDO ISE 3
2
1
0 A D I L A S
−1
−2
−3
−4
−5
0
5
10
15 20 TIEMPO (sec)
Fig. 5.40: Control PID del sistema G p (s) =
25
K p s
30
35
e−τ s (ejemplo 5.21).
mientras que para el controlador PID, se tiene: 1.111T K c = K p τ 2
1
1+
2 T 0.65 τ
T i = 2τ 1 +
T τ
0.65
T d =
T i 4
(5.44)
Ejemplo 5.22 Se desea controlar el sistema con FT G p (s) =
K p s(T s+1)
e−τ s , con K p = 2, T = 2 y τ =
2. Soluci´ on: La Fig. 5.41 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; % SISTEMA 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
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
115/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
104
Control PID SISO CONTROL PID 1.6
1.4
1.2
1
A D I L A S
0.8
0.6
0.4
0.2
0
−0.2
0
50
100
150
TIEMPO (sec)
Fig. 5.41: Control PID del sistema G p (s) =
K p s(T s+1)
e−τ s usando ISE (ejemplo 5.22).
Reglas PID para Controlar Sistemas con FT
G(s)
=
K p e τs Ts 1
−
−
La FT del siguiente sistema posee parte proporcional, parte integral, parte retardo de primer orden inestable y tiempo muerto: G(s) =
K p y(s) = e−τ s u(s) Ts 1
(5.45)
−
Debido a la presencia del integrador y a la ra´ız inestable s = 1/T , el controlador PID parece ser el m´as adecuado para controlar tales sistemas. Las f´ormulas para determinar los par´ametros del controlador PID son [27]: a1 K c = K p
τ T
τ T i = a2 T T
−
b2
T d = a3 T 1
b3
τ T
−0.02
τ γ T (5.46) Los par´ametros ai , bi y γ se pueden obtener de la Tabla 5.13 para diferentes criterios. b1
Ejemplo 5.23 Se desea controlar el sistema con FT G p (s) =
K p Ts 1
−
e−τ s , con K p = 2, T = 2 y τ = 2.
Soluci´ on: La Fig. 5.41 muestra la respuesta controlada, resultado que se obtienen ejecutando el programa zh3.m listado abajo.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
116/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
5.5 M´ etodos de Sintonizaci´ on de Controladores PID
105
Tabla 5.13: Par´ametros ai para calcular K c , T i y T d para el control de sistemas tipo IPT1 τ inestables (ecuaci´on (5.45)). Criterio a1 b1 ISE ITSE ISTSE
1.32 1.38 1.35
0.92 0.90 0.95
a2
b2
a3
b3
γ
4.00 4.12 4.52
0.47 0.90 1.13
3.78 3.62 3.70
0.84 0.85 0.86
0.95 0.93 0.97
CONTROL PI−D USANDO ISTSE 6
5
4
3
A D I L A S
2
1
0
−1
−2
−3
0
10
20
30 40 TIEMPO (sec)
Fig. 5.42: Control PI-D del sistema G p (s) =
K p s 1
−
50
60
70
e−τ s usando ISTSE (ejemplo 5.23).
% zh4.m CONTROL PI-D USANDO ISTSE clear all; close all; clc; s=tf(’s’); Kp=2; tau=2; T=2; N=10; a1=1.35; b1=0.95; a2=4.52; b2=1.13; a3=3.7; b3=0.86; gamma=0.97; [num,den]=pade(tau,3); Gtau=tf(num,den); % TIEMPO MUERTO: exp(-tau*s) Gp=Kp/(T*s-1)*Gtau; % SISTEMA A CONTROLAR Kc=(a1/Kp)*(tau/T)^b1; Ti=a2*T*(tau/T)^b2; 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
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
117/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
106
5.6.
Control PID SISO
Control PID del Sistema SDA
La FT del sistema de despegue y aterrizaje SDA mostrada en la Fig. 5.43(a) posee la forma: Gs (s) = ωn2
=
θ(s) K t K t = = 2 I m (s) Js + Bs + K K K B ζ = J 2Jωn
2
× s2 + 2ζωωnns + ω2
n
(5.47)
donde I m y K t son la corriente y constante del sermotor respectivamente, θ, B y K son la posici´on, la constante de p´ erdidas y la rigidez del sistema SDA, ωn es la frecuencia natural de oscilaci´on y ζ es el coeficiente de amortiguamiento. El sistema SDA compensado con un controlador PID mejorado se muestra en la Fig. 5.43(a). El error en estado estable ess , con r(s) = Rs , donde R es la amplitud de la entrada, se determina empleando el teorema del valor final: ess = lims→0 se(s)
e(s) = r(s)
− θ(s)
De la Fig. 5.43 se puede demostrar que: ess
r(s) R = lims→0 s = 1 + Gc Gs (s) 1 + Gc Gs (s)
=0
(5.48)
s=0
Tambi´en, de la Fig. 5.43 se deduce: r(s) = R s
G s (s)
Gc (s) e(s) Kp+
Ki s
I m(s) + Kd s
Kt
θ (s)
Js 2 + Bs + K
Fig. 5.43: (a) Sistema SDA compensado con un controlador PID mejorado. (b) Sistema SDA simplificado.
θ(s) Gc Gs (s) = r(s) 1 + Gc Gs (s) Por consiguiente: K t (K p s + K i + K d s2 ) θ(s) = r(s) Js3 + (B + K d K t )s2 + (K + K t K p )s + K t K i
(5.49)
La ecuaci´on caracter´ıstica est´andar de un sistema de tercer orden se obtiene enseriando un sistema de segundo orden con uno de primer orden (un polo po ): ωn2 (s2 + 2ζωn s + ωn2 )
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
1 ωn2 × (s + p = 3 2 + (ω 2 + 2ζω p )s + ω 2 p ) s + (2ζω )s o n n o o n
(5.50)
n
118/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
5.6 Control PID del Sistema SDA
107
Igualando las ecuaciones caracter´ısticas de (5.49) y (5.50) se obtienen los par´ametros del controlador PID: K c =
J (ωn2 + 2ζωn po ) K t
− K
K i =
ωn2 po J K t
K d =
2ζωn J
− B + poJ K t
(5.51) donde ωn2 y ζ se dan en (5.47). La Fig. 5.44 muestra la salida del sistema controlada. Este resultado se obtiene ejecutando el sdapid1.m cuyo listado se muestra abajo. POSICIÓN ANGULAR CONTROLADA DEL SISTEMA SDA 1
0.9
0.8
0.7
0.6 O L U G N Á
0.5
0.4
0.3
0.2
0.1
0
0
0.1
0.2
0.3 TIEMPO [s] (sec)
0.4
0.5
0.6
Fig. 5.44: Salida controlada del sistema SDA empleando un controlador PID.
´N % sdapid1.m CONTROL PID, PI-D Y PI-Dy EMPLEANDO LA CURVA DE REACCIO clear all; close all; clc; s=tf(’s’); m1=0.068; m2=0.27; mh=0.048; L1=15.6; L2=5.5; Lh=0.0284; po=10; J=0.035; B=0.002; Kt=0.0108; K=0.0373; wn=sqrt(K/J); z=B/(2*J*wn); Kp=(-K+2*po*z*wn*J+wn^2*J)/(Kt); Ki=po*wn^2*J/Kt; Kd=(-B+po*J+2*z*wn*J)/Kt; Gs=Kt/(J*s^2+B*s+K); % SISTEMA Gc=Kp+Ki/s+Kd*s; PID=feedback(Gc*Gs,1); % CONTROL PID step(PID,’k’); title(’POSICI´ ON ANGULAR CONTROLADA DEL SISTEMA SDA’); xlabel(’TIEMPO [s]’); ylabel(’´ ANGULO’); print -deps -f sdapida
Mejora del Control PID del Sistema SDA El control de posici´on del sistema SDA puede ser mejorado incluyendo un actuador, tal como se observa en la la Fig. 5.45(b). El actuador es un control PI de la corriente I m , tal como se muestra en la Fig. 5.45(a). El voltaje de armadura V m del motor CC se formula como: V m = Rm I m + Lm dI m dt
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
→
I m (s) = 1 V m (s) L m s + Rm
119/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
108
Control PID SISO
donde Lm es la inductancia de armadura y Rm es la corriente de armadura. De la Fig. 5.45(a) se deduce: K pp s+K ii I (s) Lm = (5.52) R +K I r (s) s2 + m pp s + K ii Lm
Lm
Igualando la ecuaci´on caracter´ıstica (el polinomio del denominador) de (5.52) con la forma est´andar de la ecuaci´on caracter´ıstica de un sistema de segundo orden: s2 + 2ζωn s + ωn2 se obtienen los par´ametros del controlador PI: K pp =
K ii = ωn2 Lm
−Rm + 2ζωnLm
(5.53)
Cuando (t) siguea auna la corriente referencia I r , entonceson, el actuadorladecorriente corrienteI masemeja gananciade igual a I m /I constante r = 1. En esta situaci´ el resultado mostrado en la Fig. 5.44 sigue siendo v´alida. G i (s)
G pi(s) Ir K pp +
K ii
Vm
s
Im
1 L ms + R m
(a) G a(s)
Gc (s) r(s) = R s
e(s) Kp+
Ki s
G s (s) I m(s)
I r (s) + Kd s
Kt
θ (s)
Js 2 + Bs + K Actuador (b)
Fig. 5.45: (a) Actuador de corriente Ga (s). (b) Sistema SDA mejorado con la inclusi´on del actuador de corriente .
5.7.
El Efecto Windup
En toda implementaci´on pr´ actica, la se˜ nal de salida del controlador debe de estar limitada por dos razones. La primera es que su magnitud no debe de exceder el rango permitido por el sistema de adquisici´on de datos, y la segunda raz´on es que su valor no debe de exceder el rango permitido por el actuador. Por estas razones es que debemos de introducir un limitador a la salida del controlador. Lamentablemente este limitador, el cual es un elemento no lineal, es el causante del efecto denominado en ingl´es windup (saturaci´on), el cual se explica a continuaci´on. La Fig. 5.46 muestra el diagrama en Simulink empleado para explicar el efecto windup. Ejecutando primero el programa windup.mdl y luego el programa windupgraf.m se obtiene la Fig. 5.47, en donde se observa que cuando ocurre un cambio
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
120/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
5.7 El Efecto Windup
109
tipo escal´o n en la se˜ nal de referencia r(t) (primer gr´afico), la se˜ nal de error positiva inicial (1 y(t)) se hace bastante grande, provocando que la se˜nal de control u(t) (segundo gr´ afico) alcance r´apidamente el valor l´ımite de saturaci´on u m . A pesar de que la se˜ nal de salida y(t) iguala al valor de referencia en el tiempo t1 , lo cual genera una se˜ nal de error (1 y(t)) negativa debido al valor grande de la se˜ nal y i en la salida del integrador, la se˜ nal de control u(t) permanece en el valor de saturaci´on m´aximo um . Esto causa que la salida y(t) se incremente continuamente hasta que se alcance el tiempo t2 , y la acci´on negativa de la se˜ nal de error comience a tener efecto. Observar en el primer gr´afico de la Fig. 5.47 que el efecto windup provoca un aumento del sobreimpulso y del tiempo de estabilizaci´on en la se˜ nal controlada y(t). Por otro, si el algoritmo PID empleado es del tipo discreto, el fen´omeno windup no es tan notorio, a´ u n cuando la se˜ nal de control est´e limitada, debido a que el algoritmo discreto no emplea la suma de los errores para generar el t´ermino integral del controlador. Lo que se emplea es el c´alculo recursivo como veremos m´as adelante.
−
−
windup .mdl ILUSTRA EL EFECTO WINDUP
yi u
Step =1
u
1
10
5 1.12s Ti =1.12
Kc=5
Clock
Scope
y
yi
yi
um=3.5
u
4 3 2 s +10s +35s +50s+24
Transfer Fcn
t
y
t
y
Fig. 5.46: Diagrama Simulink para explicar el efecto windup.
Existen diversos m´etodos para eliminar en gran medida el efecto windup en sistemas de control que emplean controladores PID continuos. Uno de estos m´ etodos se muestra en el diagrama SimulinkLos de par´ la Fig. 5.48,del el cual muestrason un controlador PID con mecanismo anti windup. ametros controlador los usuales: tiempo integral T i , tiempo derivativo T d y ganancia proporcional K c . La salida y(t) del sistema controlado y la correspondiente fuerza de control u(t) se muestran en la Fig. 5.49, las cuales se obtienen ejecutando primero el programa antiwindup.mdl y luego el programa antiwindupgraf.m. Por otra parte, cuando el controlador conmuta de manual a autom´atico, el valor de la se˜ nal de control u(t) puede cambiar de un valor a otro, no importando que la se˜nal de error e sea cero. Este salto debe de evitarse y en este caso se dice que la conmutaci´ on de manual a autom´atico debe de ser bumpless (sin saltos). Para lograr conmutaci´ on sin saltos, el algoritmo de control debe de ejecutarse siempre, a´un en el caso en que la operaci´on del sistema de control se encuentre en modo manual. Esta correcci´on se puede realizar en el correspondiente programa en tiempo real.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
121/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
110
Control PID SISO EFECTO WIND UP ) t (
2 t1
y A D I 1 L A S
0
0
2
4
6
8
10
6
8
10
6
8
10
TIEMPO [s] ) t ( 4 u L O R2 T N O C0
t2
0
2
4 TIEMPO [s]
) t ( i y 10 R O D A R G E T N I
5 0
0
2
4 TIEMPO [s]
Fig. 5.47: Gr´aficos para explicar el efecto windup.
1/1.2
tt
rr
REF.
Clock
GANANCIA 1/Ti
rr
tt
1
1/1.2
1/Ti
s
uu
INTEGRADOR
uu
Scope
10 1.3
Kc
1
SATURACIÓN
SISTEMA A CONTROLAR yy
0.1
du/dt
0.5s+1
FILTRO
s4 +10s3+35s2+50s+24
Td
DERIVADOR
yy antiwindup .m CONTROLADOR PID CON MECANISMO ANTI WINDUP. EL FILTRO SE PUEDE SELECCIONAR A VOLUNTAD.
Fig. 5.48: Diagrama Simulink que muestra un controlador PID con mecanismo anti windup.
5.8.
El Algoritmo PID Discreto Modificado
La forma est´andar del algoritmo PID mostrado en (5.12) se puede modificar introduciendo ciertas caracter´ısticas con la finalidad de que su rendimiento mejore sustancialmente. Por ejemplo, no podemos evitar la ocurrencia fortuita de cambios
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
122/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
5.8 El Algoritmo PID Discreto Modificado
111
CONTROLADOR PID CON MECAISMO ANTI WINDUP 1.4 1.2 1
) t ( y 0.8 A D I L 0.6 A S
0.4 0.2 0
0
1
2
3
4
5 TIEMPO [s]
6
7
8
9
10
1
2
3
4
5 TIEMPO [s]
6
7
8
9
10
3
2.5 ) t ( u L O R 2 T N O C 1.5
1
0
Fig. 5.49: Salida controlada y se˜ nal de control correspondiente a la Fig. 5.48.
bruscos del error e, los cuales pueden incrementar el t´ermino derivativo: de(t) d = (r(t) dt dt
− y(t))
Este fen´omeno es conocido en ingl´es como derivative kick (puntapi´ e derivativo) y su efecto se puede apaciguar si es que utilizamos como se˜nal de entrada u ´ nicamente dy(t) la se˜ nal realimentada y en lugar de e. De esta forma, (5.12) con de(t) = dt dt se convierte en: 1 dy u = K d e + edt T d T i dt Otra modificaci´on importante es filtrar la acci´on derivativa del controlador PID original mediante un filtro de primer (o segundo) orden para disminuir el ruido derivativo. Esta caracter´ıstica limita la amplificaci´ on del ruido de medici´on de alta frecuencia en la salida del controlador. La se˜ nal de control ser´a as´ı menos ruidosa y la ganancia en alta frecuencia permanecer´a dentro de cotas apropiadas. Un t´ermino derivativo pr´actico, ya que un derivador puro no es realizable, puede aproximarse mediante un t´ermino de primer orden que posee una constante de tiempo T f , el cual a menudo se normaliza con respecto al tiempo derivativo T d . Por consiguiente, el derivador puro del algoritmo PID se modifica como sigue:
−
T d s
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
T d s 1 + T f s
−
T f = T d N
123/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
112
Control PID SISO
donde N es una constante que var´ıa de 3 a 10 y es conocida como la cota de la ganancia derivativa. Luego, el algoritmo PID toma la forma: u(s) = K c e(s) + P (s) = K c e(s)
K c e(s) T i s
I (s) =
− 1K +cT T dfs s y(s) = P (s) + I (s) + D(s)
K c e(s) T i s
D(s) =
(5.54)
− 1K +cT T dfs s y(s)
T f =
T d N
Los t´erminos P , I y D representan las partes proporcional, integral y derivativa del controlador PID modificado, respectivamente. Sea k el tiempo discreto, el cual est´a relacionado con el tiempo continuo t mediante la relaci´on t = T k, donde T es el tiempo de muestreo o discretizaci´o n. La parte proporcional P = K c e(s) de (5.54) se discretiza directamente, obteni´ endose: P = K c e(k)
(5.55)
K c Para la parte integral I (s) = T e(s), o lo que es lo mismo: I (t) = is empleamos la aproximaci´on trapezoidal (ver ejemplo A.46):
I (k) =
K c T i
k
i=1
T
[e(i) + e(i 2
− 1)]
=
K c T i
I (k) = I (k
k 1
−
T
i=1
[e(i) + e(i 2
K c T i
t 0 e(t)dt
− 1)] + K c
[e(k) + e(k T i T 2
− 1) + K 2T c T i [e(k) + e(k − 1)]
− 1)]
(5.56)
c d f
La parte derivativa D(s) =
K T ss y(s) se puede escribir como: − 1+T (1 + T f s)D(s) = −K c T d s y(s) ˙ D(t) + T f D(t) = −K c T d y(t) ˙
˙ y aproximando las derivadas D(t) e y(t) ˙ por atraso (desplazamiento de k hacia (k 1)), se obtiene:
−
D(k) + T f
D(k)
− D(k − 1) T
=
−K cT d
y(k)
− y(k − 1) T
Despejando D(k), la parte derivativa discreta queda entonces como: T d T D(k) = D(k 1) K c N [y(k) y(k 1)] T f = d N T + T d N
{
− −
−
− }
(5.57)
El algoritmo PID discreto usado en las implementaciones en tiempo real resulta: u(k) = P (k) + I (k) + D(k)
(5.58)
donde P (k), I (k) D(k) se dan en (5.55), (5.56) y (5.57) respectivamente. Tambi´ en se debe de incluir el efecto del limitador, basado en un modelo con presencia de saturaci´on con valores m´aximo y m´ınimo umax y ulow respectivamente: v = P + I + D; if(v < ulow), u = ulow; elseif(v > uhigh), u = uhigh; else u = v;
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
124/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
5.8 El Algoritmo PID Discreto Modificado
113
Tabla 5.14: M´etodo de la curva de reacci´on para determinar los par´ametros PID. K c , K i y K d . Tipo
Controlador Gc (s)
P
K c
PI PID
K i s
K c + K c +
K i s
100 BP 1 T K p τ +T s 0.9 T 0.5K i K p τ +0.5T s 1.2 T 0.5K i K p τ +T s
K c =
− −
+ K d s
K i = K c /T i
K d = K c T d
0
0
0.27 T s T K p (τ +0.5T s )2 T s T 0.6 K p (τ +0.5T s )2
0.5 T K p T s
0
Tabla 5.15: M´etodo de las oscilaciones sostenidas para hallar los par´ametros K , T C I y T D . Tipo
Controlador Gc (s)
P
K C
PI PID
K c + K c +
K i s
K c =
100 BP
0.5K crit
K i s
0.45 K crit
− 0.5K i 0.6 K crit − 0,5K i
+ K d s
K i = K c /T i
K d = K c T d
∞
0
crit 0,54 K T crit
1.2
K crit T crit
0 0.075K crit
T crit T s
Si el tiempo de muestreo T s es suficientemente peque˜ no, entonces se pueden usar las reglas de sinton´ıa para sistemas continuos discutidas anteriormente. Sin embargo, a pesar de que no son tan usadas como en el caso continuo, existen reglas de sinton´ıa para el caso discreto, tal como las mostradas en las Tablas 5.14 y 5.15. Estas tablas K p −τ s del sistema y no son v´alidas si τ /T s 0 ni se emplean la FT G p (s) = 1+T se deben de aplicar si τ /T s < 1/4, donde T s es el tiempo de muestreo.
≈
Ejemplo 5.24 Se desea controlar la posici´on angular x1 de un manipulador empleando un algoritmo de control discreto PID. las ecuaciones de estado del manipulador son: x˙ 1 = x2 2
x˙ 2 =
N B n KE nK act − M x2 − + x2 + u M M Ra Ra M
Soluci´ on: En el listado del programa pidposfijo.m se describen todos los par´ametros empleados en la ecuaci´on de estado. Ejecutando este programa se obtiene la respuesta pedida (Fig. 5.50). Ya se han usado par´ametros PID previamente determinados. % pidposfijo.m CONTROL DE POSICION PID DEL MANIPULADOR MR1 clear all; close all; clc; % PARAMETROS DEL PROCESO NO LINEAL (TABLA 3.3) JL = 3.5e-7; bL = 1e-5; Ro = 0.01; Jm = 1.9062e-6; bm = 1.8338e-6; g = 9.81; E = 31.035e-3; Ra = 7.38; m = 0.06377; Kact = 14.9;
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
125/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
114
Control PID SISO 1 ) d 0.8 a r ( r a l u 0.6 g n a n 0.4 ó i c i s o P0.2
0
0
10
20
30
40
50
60
70
80
90
100
10
20
30
40
50 Tiempo [s]
60
70
80
90
100
0.5 ) 0.4 V ( u l o r 0.3 t n o c e 0.2 d l a ñ e S0.1
0
0
Fig. 5.50: Posici´on angular controlada correspondinte al Ejemplo 5.24.
K = 31.071e-3; n = 19.741; L = 4.64e-3; Lo = 0.776; Mo = 0.045; B = n^2*bm + bL; Jeff = n^2*Jm +JL; M = JeffDE + MUESTREO (1/3)*m*Lo^2 + Mo*Lo^2PID + (2/5)*Mo*Ro^2; N = g*Lo*(Mo+m/2); % PERIODO Y PARAMETROS T = 0.01; Nn = 10; Kp = 0.1; Ti = 0.4; Td = 0.01; Tf=Td/Nn; % CONDICIONES INICIALES 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 SISTMA (DISCRETIZACION DIRECTA) x1 = x1 + T*x2; Y(k) = x1; x2 = x2 + T*( -(N/M)*x1 - (B/M + n^2*K*E/(M*Ra))*x2 + (n*K*Kact/(Ra*M))*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´ on angular (rad)’) subplot(2,1,2); plot(ejex,U); grid; ylabel(’Se~ n al de control u (V)’) xlabel(’Tiempo [s]’); print -f -deps pidposfijo
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
126/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
5.9 Problemas
5.9.
115
Problemas
Problema 5.1 Las FTs Ga (s) hasta G j (s) corresponden a sistemas a ser controlados. Determinar para cada una de ellas los siguientes modelos din´amicos aproximados: GA (s) =
K p −τ s e Ts + 1 GC (s) =
Ga (s) = Gd (s) = Gf (s) = Gi (s) =
2 (s + 1)3
GB (s) =
K p ; (T n s + 1)n
K p ; (T 1 s + 1)(T 2 s + 1) Gb (s) =
4 (s + 1) 5
τ T
≥
0.104
τ < 0.104 T
Gc (s) =
−3s + 2
(s + 1) 3 s2 3s + 6 10s + 4 Ge (s) = e−s/2 (s + 1)(s2 + 3s + 6)(s2 + s + 2) (s + 1) 2 (s + 3)3 6 3 3 Gg (s) = e−s Gh (s) = e−2s 6 (s + 1) (s + 1)(2s + 1) (s + 1)4 7 3s + 6 e−30s G j (s) = e−s/10 3 (17s + 1)(6s + 1) (s + 1)(4s + 1)
−
−
Problema 5.2 Realizar los controles PID, PI–D y PI-Dy de los sistemas Ga (s) al G j (s) en el dominio de s empleando MATLAB. Usar al menos cinco distintas reglas de sintonizaci´on para cada sistema. El objetivo de control es que la se˜nal controlada siga a una referencia constante.
Problema 5.3 Realizar los controles PID, PI–D y PI–Dy de los sistemas Ga (s) al G j (s) empleando SIMULINK. Usar al menos una regla de sintonizaci´on, distinta de las otras, para cada sistema. El objetivo de control es que la se˜nal controlada siga a una referencia constante.
Problema 5.4 Realizar los controles PID, PI–D y PI–Dy de los sistemas Ga (s) al G j (s) en el dominio del tiempo discreto k=t/T (T es el tiempo de muestreo) empleando MATLAB. Usar al menos tres distintas reglas de sintonizaci´on para cada sistema. El objetivo de control es que la se˜ nal controlada (la salida) tienda a cero en presencia de un disturbio tipo escal´ on a la entrada del sistema. En esta situaci´on, denominada rechazo al disturbio, la se˜ nal de referencia es nula.
Problema 5.5
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
127/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
116
Control PID SISO
Realizar los controles PID, PI–D y PI–Dy de los sistemas Ga (s) al G j (s) empleando SIMULINK. Usar al menos una regla de sintonizaci´on, distinta de las otras, para cada sistema. El objetivo de control es que la se˜nal controlada (la salida) tienda a cero en presencia de un disturbio tipo escal´on a la entrada del sistema. En esta situaci´on, denominada rechazo al disturbio, la se˜ nal de referencia es nula.
Problema 5.6 Realizar los controles PI o PID seg´un corresponda, de los sistemas G k (s) al Gt (s) empleando el m´etodo de Kessler. Gk (s) = Gl (s) = Gm (s) = Gn (s) = Go (s) = G p (s) = Gq (s) = Gr (s) = Gs (s) = Gt (s) =
Problema 5.7
(1 + 20s)
2 (1 + 0.1s)3 (1 + 0.3s)3
(1 + 20s)(1 + 30s) 9(1 + 0.2s)4 (1 + 0.5s)2 2 s (1 + s)3 (1 + 2s)2 8 s(1 + 20s) (1 + 0.1s)3 (1 + 0.3s)3 5 (1 + 0.1s)(1 + 0.2s)(1 + 30s)(1 + 0.3s)2 (1 + 0.5s)2 3 s(1 + s)(1 + 2s)(1 + 40s)(1 + 0.2s)4 (1 + 0.5s)3 6 (1 + s)(1 + 2s)(1 + 40s)(1 + 50s)(1 + 0.2s)4 (1 + 0.5s)3 8 (s + 10)(s + 9)(s + 2) 4 2 s (s + 3) (s + 5)(s + 6) 4 2 s (1 + s) (1 + 2s)(1 + 0.9s)
Para el sistema del ejemplo ??, dise˜ nar controladores PID, PI–D y PI–Dy que cumplan el siguiente objetivo de control: la se˜nal controlada x 1 debe de seguir a la se˜ nal en estado estable x1e con un porcentaje de de sobrenivel menor del 5 %, tiempo de estabilizaci´on menor de 8 s y error en estado estable nulo. Tener en cuenta que para la situaci´on descrita, y1 = x1 x1e debe de ser nulo.
−
Problema 5.8 Para el sistema del ejemplo ??, dise˜ nar controladores PID, PI–D y PI–Dy que cumplan el siguiente objetivo de control: la se˜nal controlada y = ω2 debe de seguir una se˜nal de referencia constante con un porcentaje de de sobrenivel menor del 3 %, tiempo de estabilizaci´on menor de 4 s y error en estado estable nulo.
Problema 5.9
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
128/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
5.9 Problemas
117
Para el sistema del ejemplo ??, dise˜ nar controladores PID, PI–D y PI–Dy que cumplan el siguiente objetivo de control: la se˜nal controlada x1 debe de seguir una se˜nal de referencia constante con un porcentaje de de sobrenivel menor del 3 %, tiempo de estabilizaci´ on menor de 4 s y error en estado estable nulo.
Problema 5.10 Para el sistema de la Fig. 2.14(c), dise˜nar controladores PID, PI–D y PI–Dy que cumplan el siguiente objetivo de control: la se˜nal controlada ω debe de seguir una se˜ nal de referencia constante con un porcentaje de de sobrenivel menor del 3 %, tiempo de estabilizaci´ on menor de 4 s y error en estado estable nulo.
Problema 5.11 Para el sistema de la Fig. ??(b), dise˜ nar controladores PID, PI–D y PI–Dy que cumplan el siguiente objetivo de control: la se˜nal controlada ω debe de seguir una se˜ nal de referencia constante con un porcentaje de de sobrenivel menor del 3 %, tiempo de estabilizaci´ on menor de 10 s y error en estado estable nulo.
Problema 5.12 Para el sistema del ejemplo ??, dise˜ nar controladores PID, PI–D y PI–Dy que cumplan el siguiente objetivo de control: la se˜nal controlada q3 debe de seguir una se˜ nal de referencia constante con un porcentaje de de sobrenivel menor del 3 %, tiempo de estabilizaci´ on menor de 4 s y error en estado estable nulo. Problema 5.13 Para el sistema del problema ??, dise˜ nar controladores PID, PI–D y PI–Dy que cumplan el siguiente objetivo de control: la se˜ nal controlada θ debe de seguir una se˜ nal de referencia constante con un porcentaje de de sobrenivel menor del 3 %, tiempo de estabilizaci´ on menor de 4 s y error en estado estable nulo.
Problema 5.14 Para el sistema del problema ??, dise˜ nar controladores PID, PI–D y PI–Dy que cumplan el siguiente objetivo de control: la se˜nal controlada iR debe de seguir una se˜ nal de referencia constante con un porcentaje de de sobrenivel menor del 3 %, tiempo de estabilizaci´ on menor de 4 s y error en estado estable nulo.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
129/256
5/9/2018
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
ControlDe Proc e sosV3 - slide pdf.c om
130/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
Cap´ıtulo 6
Otras Estrategias de Control Este Cap´ıtulo
6.1.
Control en Cascada
La Fig. 6.1(a) muestra un sistema que comprende un tanque cerrado al cual ingresa un producto que queremos calentar a una temperatura r (el valor deseado o set point). Para este prop´osito se emplea el sobrecalentador, el cual recibe la energ´ıa t´ermica que trae consigo el flujo de agua caliente que tambi´ en pasa por la v´alvula de control de tipo neum´atica. En este lazo de control realimentado simple, la temperatura y, medida con una termoresistencia (representada con una T que ingresa al tanque), ingresa al bloque convertidor para ser transformada en una se˜ nal normalizada requerida por el controlador, el cual se supone que es electr´onico. Este controlador genera la se˜ nal de control u, la cual se convierte a una se˜nal neum´atica normalizada, requerida por la v´alvula de control. La Fig. 6.1(b) muestra el diagrama de bloques del circuito de control descrito. Observar la presencia de la se˜nal de error e = r y en este diagrama. De hecho, el algoritmo de control alojado en el bloque Controlador, genera la se˜nal de control u procesando la se˜ nal de error e. En muchas aplicaciones, el control en cascada es una estrategia que mejora sig-
−
nificativamente rendimiento de un lazo de un control realimentado simple, como el de la Fig. 6.1(a).elPara ello, se requiere crear nuevo lazo de realimentaci´ on, tal como se muestra en la Fig. 6.1(c), en la cual, con el primer lazo, se desea que la temperatura y1 del producto siga a una referencia r1 , usando el controlador C1 . Con el segundo lazo, se desea que el flujo de agua caliente y2 siga a una referencia r2 empleando el controlador C2 . Notar que la salida u1 de C1 es la se˜ nal de referencia r2 del controlador C2 . La Fig. 6.1(d) muestra el diagrama de bloques del sistema de control en cascada, donde P1 m´ as P2 forman el proceso, M1 y M 2 son bloques de medici´on, y C1 y C 2 son los controladores que procesan los errores e1 = r1 y1 y e2 = r2 y2 , respectivamente. De las dos variables controladas en la Fig. 6.1(c), la temperatura y1 del producto es
−
−
la m´as importante. El flujo de agua caliente y2 se emplea como una variable para satisfacer los requerimientos de temperatura del producto.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
131/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
120
Otras Estrategias de Control r
Controlador
y
u
r
e Controlador u
Convertidor Producto
Proceso P
y
Medición
Agua caliente
(b)
C1
r1
(a) r1 y1
u2
u 1= r 2
u1 C1
C2 y2
Producto
e1
Agua caliente
u 1= r 2
e
y2
u2
2
C2
P2
y1 P1
M2 M1
(c)
(d)
Fig. 6.1: Circuito de control simple (a) y su diagrama de bloques (b). Circuito de Control en cascada. (c) y su diagrama de bloques (d).
En el control en cascada, el controlador que controla la variable controlada principal, C1 en este caso, es conocido como controlador maestro, externo o principal. El controlador que controla la variable controlada secundaria, C2 en este caso, recibe el nombre de controlador esclavo, interno o secundario. Por lo com´un se prefiere usar la terminolog´ıa primario/secundario para referirse a los lazos de control primario y secundario controlados controladores y secundario, Para sistemas de controlpor conlos m´ as de dos lazosprimario en cascada, la extensi´orespectivamente. n es autom´atica. La filosof´ıa de dise˜no en un sistema de control en cascada consiste en que el lazo de control secundario debe de ser m´as r´ apido (alrededor de cinco veces) que el primario, lo cual es un requisito que cae por su propio peso. Esta filosof´ıa de dise˜ no se puede generalizar para cualquier cantidad de lazos en cascada. Por ejemplo, en un sistema con tres lazos de control en cascada, el lazo terciario debe de ser m´as r´apido que el secundario, y ´este tiene que ser m´as r´apido que el primario. Se sugiere el siguiente procedimiento de dise˜ no: 1. Determinar el modelo din´ amico del proceso o planta a controlar. 2. Construir un lazo de control simple y sintonizar el controlador PID empleando cualquier m´etodo. Realizar post–sinton´ıa si fuera necesario. 3. Construir el sistema de control en cascada definiendo los lazos de control primario y secundario. 4. Sintonizar el lazo de control secundario empleando el m´ etodo de la ganancia l´ımite. Realizar post–sinton´ıa si fuera necesario. 5. Sintonizar el lazo de control primario empleando el m´ etodo de la ganancia l´ımite. Tener en cuenta que el lazo de control secundario es parte del lazo de control primario. Realizar post–sinton´ıa si fuera necesario.
Ejemplo 6.1
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
132/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
6.1 Control en Cascada
121
Determinar la respuesta controlada del sistema realimentado simple de la Fig. 6.1(b) y compararla con la respuesta controlada del sistema de control en cascada ilustrado en la Fig. 6.1(d), sabiendo que los controladores son del tipo PI, que M 1 = M2 = 1, que r = r1 = 50o C, y que: P (s) = P 2 (s) P 1 (s), donde:
×
P 2 (s) =
3 1 (0.2s + 1) (3s + 1)(s + 1))
P 1 (s) =
0.8 (4s + 1)(s + 1)
Cabe anotar que 3/(0.2s + 1) es la FT de la v´alvula de control.
Soluci´ on: El modelo din´amico del proceso ha sido proporcionado en el enunciado del problema. Para controlar el proceso emplearemos el m´etodo de la oscilaci´ on l´ımite de Ziegler y Nichols. El gr´afico superior de la Fig. 6.2 muestra la respuesta al escal´on a manera de una oscilaci´on sostenida que se obtiene haciendo que el controlador C en la Fig. 6.1(b) trabaje en modo proporcional con una ganancia K crit = 2.18. Notar que la oscilaci´on posee un per´ıodo T crit = 12.5. Con tales valores se calculan los par´ametros del controlador PI empleando la Tabla 5.6. El gr´afico inferior de la Fig. 6.2 ilustra la salida y controlada, luego de realizar una postsinton´ıa. Tales resultados se obtienen ejecutando el programa casc1a.m listado abajo. OSCILACIÓN SOSTENIDA 2 1.5 ) t ( y
1 0.5 0
0
5
10
15
20 TIEMPOx60 (sec)
25
30
35
40
SALIDA CONTROLADA 60 C ° A R U T A R E P M E T
50 40 30 20 10 0
0
10
20
30 TIEMPOx60 (sec)
40
50
60
Fig. 6.2: Oscilaciones sostenidas para K crit = 2.18 (gr´afico superior) y respuesta controlada (gr´afico inferior) para el caso control con lazo simple del ejemplo 6.1.
% casc1a.m CONTROL PI DEL LAZO SIMPLE V ´ IA LA OSCILACI´ ON SOSTENIDA
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
133/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
122
Otras Estrategias de Control
clear all; close all; clc; s=tf(’s’); P2=3/((0.2*s+1)*(3*s+1)*(s+1)); P1=0.8/((4*s+1)*(s+1)); P=P1*P2; % P: PROCESO Kcrit=2.18; G_c=feedback(Kcrit*P,1); subplot(211); step(G_c,40); grid, title(’OSCILACI´ ON SOSTENIDA’), xlabel(’TIEMPOx60’), ylabel(’y(t)’) Tcrit=12.5; % TOMADO DE LA OSCILACI´ ON SOSTENIDA CON Kcrit=2.18 Kc=0.65*0.45*Kcrit; Ti=0.85*Tcrit; % PAR´ AMETROS PI CON POSTSINTON´ IA C=Kc*(1+1/(Ti*s)); SIMPLE=50*feedback(C*P,1); % CONTROL LAZO SIMPLE subplot(212); step(SIMPLE,60); grid; title(’SALIDA CONTROLADA’); xlabel(’TIEMPOx60’); ylabel(’TEMPERATURA C’); print -deps -f casc1a ◦
El diagrama de bloques del sistema de control en cascada se muestra en la Fig. 6.1(d). El lazo de control secundario se realiza como sigue. El primer gr´afico de la Fig. 6.3 muestra la respuesta al escal´on a manera de una oscilaci´on sostenida que se obtiene haciendo que el controlador C2 en la Fig. 6.1(d) trabaje en modo proporcional con ganancia K crit2 = 8.53. Notar que la oscilaci´on posee un per´ıodo T crit2 = 2.4. Con tales valores se calculan los par´ametros del controlador PI empleando la Tabla 5.6. El segundo gr´afico de la Fig. 6.3 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˜ no del control PI del lazo primario es similar al del secundario: se genera una oscilaci´on sostenida (tercer gr´afico de la Fig. 6.3) y con los par´ametros K crit1 = 3.4 y T crit1 = 13 determinados, se calculan los par´ ametros del controlador C1 . El gr´afico inferior de la Fig. 6.3 ilustra la salida y1 controlada, luego de realizar una postsinton´ıa. Todos estos resultados se obtienen ejecutando el programa casc1b.m listado abajo. % casc1b.m CONTROL EN CASCADA clear all; close all; clc; s=tf(’s’); P2=3/((0.2*s+1)*(3*s+1)*(s+1)); P1=0.8/((4*s+1)*(s+1)); Kcrit2=8.53; Gs1=feedback(Kcrit2*P2,1); % FT LAZO SECUNDARIO CON Kcrit2 subplot(411); step(Gs1,10); grid, ylabel(’y2(t)’), xlabel(’TIEMPOx60’), title(’OSCILACI´ ON DEL LAZO SECUNDARIO’) Tcrit2=2.4; % TOMADO DE LA OSCILACI´ ON SOSTENIDA CON Kcrit2=8.53 Kc2=0.1*0.45*Kcrit2; Ti2=0.85*Tcrit2; C2=Kc2*(1+1/(Ti2*s)); Gs2=feedback(C2*P2,1); subplot(412), step(Gs2), grid, ylabel(’y2(t)’), xlabel(’TIEMPOx60’), title(’CONTROL DEL LAZO SECUNDARIO’) Kcrit1=3.2; Gp1=feedback(Kcrit1*Gs2*P1,1); % FT LAZO PRIMARIO CON Kcrit1 subplot(413); step(Gp1,40); grid, title(’OSCILACI´ ON DEL LAZO PRIMARIO’), xlabel(’TIEMPOx60’), ylabel(’y1(t)’) Tcrit1=13; % TOMADO DE LA OSCILACI´ ON SOSTENIDA CON Kcrit1=3.2 Kc1=0.45*Kcrit1; Ti1=0.8*0.85*Tcrit1; % PAR´ AMETROS PI C1=Kc1*(1+1/(Ti1*s)); CASCADA=50*feedback(C1*Gs2*P1,1); % CONTROL CASCADA subplot(414); step(CASCADA); grid, title(’SALIDA CONTROLADA EN CASCADA’), xlabel(’TIEMPOx60’), ylabel(’TEMPERATURA C’), print -deps -f casc1b ◦
Observar que el rendimiento del sistema de control en cascada es mejor porque la temperatura se estabiliza en aproximadamente 22 min (gr´afico inferior de la Fig. 6.3), mientras que para el caso de realimentaci´on simple mostrado en el gr´afico inferior de la Fig. 6.2, se estabiliza en 30 min. Se debe notar tambi´ en que el per´ıodo de oscilaci´on cr´ıtica del lazo primario mostrado en el primer gr´afico de la Fig. 6.3, es mayor que la
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
134/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
6.2 Control de la Raz´ on
123 SISTEMA DE CONTROL EN CASCADA
2 ) t ( 2 y
1 0
) t ( 2 y
2
3
4 5 6 TIEMPOx60 (sec) CONTROL DEL LAZO SECUNDARIO
7
8
9
10
1 0
5
10 15 TIEMPOx60 (sec) OSCILACIÓN DEL LAZO PRIMARIO
20
25
2 1 0
C ° A R U T A R E P M E T
1
2
0
) t ( 1 y
0
0
5
10
15 20 25 TIEMPOx60 (sec) SALIDA CONTROLADA EN CASCADA
30
35
40
100 50 0
0
10
20
30 40 TIEMPOx60 (sec)
50
60
70
Fig. 6.3: Resultados para el caso control en cascada del ejemplo 6.1.
del lazo secundario (tercer gr´afico de la Fig. 6.3) en una relaci´on: T crit 13 = = 5.41 T crit1 2.4
6.2.
Control de la Raz´ on
El control de la raz´on se refiere generalmente a controlar (mantener) la raz´on entre dos flujos lo m´as constante posible. En el esquema de raz´on m´as difundido, tal como el mostrado en la Fig. 6.4, el flujo q1 correspondiente al lazo no controlado, es conocido como el flujo salvaje. Por otro lado, el lazo controlado, en donde se ubica el flujo q2 , es denominado lazo secundario. El control de la raz´on encuentra muchas aplicaciones en la industria. Entre ellas: Mezcla o fundici´on de dos o m´as componentes. Control de la raz´on aire–combustible para la combusti´on. Control de la composici´on de un producto, t´ ecnica bastante utilizada en las torres de destilaci´ on.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
135/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
124
Otras Estrategias de Control
Observar en la Fig. 6.4 que los flujos q1 y q2 se miden empleando placas de orificio, las cuales usan el principio de que el flujo es proporcional a la ra´ız cuadrada de la diferencia de presi´on producida por la placa. Por otro lado, la filosof´ıa de control de la raz´on se basa en las relaciones siguientes (ver Fig. 6.4): r2 = V y1
e2 = r2
− y2 = V y1 − y2
El lazo secundario se controla cuando el error e2 tienda a cero. Es decir, cuando: e2 = V y1
V
V =
y2 y1
u
r2 y2
y1
q
− y2 = 0
2
Qemador q1
Horno
Fig. 6.4: Esquema m´as difundido del control de la raz´on.
Ejemplo 6.2 Dise˜ nar y simular el sistema de control que mantenga la raz´on combustible–aire en 10 en la Fig. 6.4. Esto es: q2 /q1 = V = 10.
Soluci´ on: La Fig. 6.5 muestra el diagrama Simulink correspondiente a la Fig. 6.4. Notar que se ha incluido la FT de la v´alvula de control. El proceso flujo y2 se modela como una constante proporcional. Para mantener la raz´o n V en 10, se ha usado un controlador PI con par´ametros P = K c = 1 e I = K c /Ti = 4. El flujo de aire y1 ha sido considerado como un flujo que var´ıa en forma sinusoidal para mayor generalidad. La Fig. 6.6 muestra el resultado de la simulaci´on que se obtiene ejecutando el archivo razon1graf.m cuyo listado se muestra abajo. Observar que la raz´on V(t) se mantiene en el valor 10 previamente establecido. % razon1graf.m clear all; close all; clc; load th; load y1; load y2; load V; plot(th,y1,th,y2,th,V), xlabel(’TIEMPO [s]’), ylabel(’RAZ¨ ON V(t)’), title(’CONTROL DE LA RAZ´ O N V = y2/y1’) print -f -deps razon1r, print -s -deps razon1s
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
136/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
6.3 Control Anticipativo
125
razon1.mdl th
y1 Clock
y1
th
1 u
Aire
1/y1
Inversa
r2
e2
V=y2/y1
V
2 PID
10
0.5s+1
Set V
Producto
PI Controller
y2
Product
Válvula + caudal y 2
Scope
y2
y2
Fig. 6.5: Diagrama Simulink correspondiente a la Fig. 6.4.
CONTROL DE LA RAZÓN V = y2/y1 45 40 35 30 ) t ( V25 N Ö Z A20 R
y2(t)
15 V = 10
10
y1(t) 5 0
0
200
400 600 TIEMPO [s]
800
1000
Fig. 6.6: Resultado de la simulaci´on correspondiente al Ejemplo 6.2.
6.3.
Control Anticipativo
La principal desventaja en los sistemas de control por retroalimentiici´on radica en el hecho de que cuando un disturbio ingresa al proceso, ´este se propaga por todo el proceso forzando que la variable controlada se desv´ıe del punto deseado o de referencia, antes de que aparezca una acci´on correctiva que compense el efecto de tal disturbio. Por cierto, en muchos casos se puede tolerar temporalmente un error entre la se˜ nal controlada y la se˜ nal deseada. Sin embargo, existen aplicaciones en donde el error debe de ser m´ınimo m´ınimo en presencia de disturbios, lo cual no se logra s´olo con el control por realimentaci´ on. Para tales situaciones resulta u ´ 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˜nal de control requerida para mantener
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
137/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
126
Otras Estrategias de Control
la variable controlada en el valor deseado y sin la presencia de disturbios. La Fig. 6.7 muestra el diagrama de bloques de un sistema de control anticipativo donde G p (s), Ga (s) y Gd (s) son las funciones de transferencia del proceso, del controlador anticipativo y del disturbio respectivamente. Adem´as, d, u e y son las se˜nales disturbio, de control y de salida respectivamente. De la Fig. 6.7 se deduce: y = G p (s)u + Gd (s)d = G p (s)Ga (s)d + Gd (s)d = [G p Ga (s) + Gd (s)] d La ecuaci´on anterior ilustra el efecto de la presencia del disturbio d en el sistema. Si queremos eliminar este efecto, entonces dicha ecuaci´on deber´ıa de anularse. Es decir, haciendo y = 0: 0 = G p Ga (s) + Gd (s)
− GG pd(s) (s)
Ga (s) =
Para tener una idea m´as clara de la estructura del controlador anticipativo G a (s) dise˜ nado, asumamos que: G p (s) =
K p e−τ ps T p s + 1
Gd (s) =
K d e−τ d s T d s + 1
Por consiguiente: Ga (s) =
K d T p s + 1 (τ −τ )s − GG pd(s) =− e (s) K p T d s + 1 p
d
En conclusi´on, el controlador anticipativo resulta ser un compensador de adelanto– atraso. d
Gd(s)
Ga(s)
u
y
Gp(s)
Fig. 6.7: Sistema de control anticipativo.
El sistema de control anticipativo trabaja bien siempre que G p (s) y Gd (s) representen lo m´as fiel posible al proceso y al disturbio. Evidentemente, en presencia de errores de modelado, el desempe˜ no 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 G p (s) es mayor que el grado del polinomio del denominador de Gd (s). Por ejemplo, sean: G p (s) =
s2
1 + bs + c
Gd (s) =
1 s + f
donde a, b, c y f son constantes. El controlador anticipativo se calcula como: 2
Ga (s) =
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
(s) = − s − GG pd(s)
+ bs + c s + f
138/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
6.3 Control Anticipativo
127
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: Gd (s) =
1 e−s s2 + bs + c
Entonces: Ga (s) =
G p (s) =
1 e−2s s + f
(s) s + f − GG pd(s) =− 2 es s + bs + c
Notar que el controlador anticipativo resultante es no implementable f´ısicamente debido a que su tiempo muerto es positivo. En el dise˜ n o de Ga (s) puede resultar en una funci´on de transferencia inestable. Esto sucede cuando el modelo G p (s) del proceso no es de m´ınima fase. Es decir, cuando posee al menos un cero positivo. Para ilustrar esta situaci´on asumamos que (notar que G p (s) es de m´ınima fase): G p (s) =
s 1 s+1
−
Gd (s) =
1 4s + 1
que resulta en el siguiente controlador anticipativo inestable: Ga (s) =
Gd (s)
=
s+1
− G p(s) − (s − 1)(4s + 1)
Ejemplo 6.3
Dise˜ nar y simular el sistema de control anticipativo mostrado en la Fig. 6.7 para: Gd (s) =
5 2s + 1
G p (s) =
3 0.5s + 1
Soluci´ on: La Fig. 6.8 muestra el diagrama Simulink correspondiente a la Fig. 6.7. El controlador anticipativo se determina de: Ga (s) =
(s) = − 2.5s + 5 − GG pd(s) 6s + 3
La Fig. 6.9 muestra el resultado de la simulaci´on que se obtiene ejecutando el archivo antic1graf.m cuyo listado se muestra abajo. Observar en el gr´afico inferior que la salida controlada y(t) tiende a cero. Es decir, y(t) no est´a afectada por el disturbio. % 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
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
139/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
128
Otras Estrategias de Control
antic1.mdl
d
d
5
Scope1
2s+1 d
Gd(s)
u
y
−2.5s−5
3
6s+3
0.5s+1
Ga(s)
Gp(s)
th
Clock
th
Fig. 6.8: Diagrama Simulink correspondiente a la Fig. 6.7.
VARIABLES d(t) y u(t) EN EL CONTROL ANTICIPATIVO
2 1 ) t ( u , ) t ( d
0
u
d
−1 −2 0
200
400 600 TIEMPO [s] SALIDA CONTROLADA y(t)
800
1000
200
400 600 TIEMPO [s]
800
1000
−3
2
x 10
0 ) t ( y
−2 −4 −6 0
Fig. 6.9: Resultado de la simulaci´on correspondiente al Ejemplo 6.3.
Control Anticipativo–Realimentado El control anticipativo posee la capacidad de eliminar el efecto de los disturbios medibles que act´ uan sobre la se˜ nal controlada. Por otro lado, el control realimentado puede rechazar el efecto de los disturbios no medibles sobre la se˜nal controlada, as´ı como tambi´ en 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´aneamente control anticipativo y control realimentado , tal como se ilustra en la Fig. ??, donde d1 es un disturbio medible con FT Gd1(s) conocida, mientras que d2 es un disturbio no medible pero con FT Gd1(s) conocida. El disturbio d2 se incluye para dar mayor generalidad al problema, tal como se trata en el el siguiente ejemplo.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
140/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
6.3 Control Anticipativo
d1
129
Gd1(s) G a (s)
r
e
u
G c (s) d2
y G p (s) Gd2(s)
Fig. 6.10: Esquema de control anticipativo m´as control realimentado.
Ejemplo 6.4 Dise˜ nar y simular el sistema de control anticipativo–realimentado mostrado en la Fig. 6.10 cuando: 5e−2s 0.8s + 1
G p (s) =
Gd1 (s) =
3e−3s 5s + 1
Gd2 (s) =
6e−5s 9s + 1
Soluci´ on: La Fig. 6.11 muestra el diagrama Simulink correspondiente a la Fig. 6.10. El controlador anticipativo se determina de: Ga (s) =
(s) = − 3 0.8s + 1 e−s − GGd1 p(s) 5 5s + 1
La Fig. 6.12 muestra el resultado de la simulaci´on que se obtiene ejecutando el archivo anticreal1graf.m cuyo listado se muestra abajo. Observar en el gr´afico inferior que la salida controlada y(t) sigue a la referencia r(t) a pesar de la presencia simult´anea de los disturbios d1 (t) y d2 (t). Es decir, y(t) no est´a afectada por el disturbio. anticreal 1.mdl th 3
Clock
th
5s+1
d1 d1
Gd1(s)
u
Tiempo muerto : 3
y
−4.8 s−0. 6
5
5s+1
0.8s+1
Tiempo muerto : 1
Ga(s)
Gp(s) 6
PID r = 10
Tiempo muerto : 2
Scope r
9s+1
Gc(s)
Gd1(s)1 d2
Tiempo muerto : 5
Fig. 6.11: Diagrama Simulink correspondiente a la Fig. 6.10.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
141/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
130
Otras Estrategias de Control SALIDA y(t) CONTROLADA 14 12 10 ) t ( y
8 6 4 2 0 0
20
40
60
80
100 TIEMPO [s]
120
140
160
180
200
120
140
160
180
200
CONTROL u(t) 3.5 3 2.5 ) t ( u
2 1.5 1 0.5 0
20
40
60
80
100 TIEMPO [s]
Fig. 6.12: Resultado de la simulaci´on correspondiente al Ejemplo 6.4.
% 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
6.4.
Control Selectivo
El control selectivo, es una estrategia de control que consiste en mantener las variables del proceso bajo control dentro de ciertos limites, generalmente para prop´ositos de protecci´on. Limitando la variable de un proceso en un valor alto o bajo, evita que ocurran da˜ nos tanto en el proceso como en el producto. Dichas variables se limitan empleando ciertos tipos de conmutadores de selecci´on, tales como el HSS (High Selector Switch) y el LSS (Low Selector Switch). La Fig. 6.13 muestra una aplicaci´on del control selectivo en un sistema de bombeo de producto. Las Figs. 6.13(a) y (b) ilustran el diagrama de instrumentaci´o n y el diagrama de bloques del sistema de control respectivamente, donde PT representa un transmisor de presi´on, PIC significa indicaci´on y control de la variable presi´on y PY, en este caso, es el conmutador de selecci´on, dado que la letra Y indica realizar un procesamiento relacionado con P (la presi´on).
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
142/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
6.4 Control Selectivo
131
Observar que existen dos lazos de control de presi´on, uno para la aspiraci´on y el otro para la impulsion. En condiciones normales, la presi´on se controla con el lazo de impulsion. Si por alguna circunstancia de falla, cae la presi´on de aspiraci´o n de la bomba por debajo del l´ımite de seguridad, entonces act´ ua el conmutador selector para que entre en funcionamiento el lazo de aspiraci´on en lugar del de impulsi´on. El conmutador selector trabaja como sigue. En principio, el conmutador selecciona la m´ınima de las dos se˜ nales que le llegan. Adem´as, el set point del controlador de aspiraci´on tiene que ser inferior a los valores normales de trabajo. En operaci´on normal, la se˜ nal de salida del controlador de impulsion alcanza sus valores de trabajo. Si la presi´on de aspiraci´on baja demasiado hasta llegar a ser inferior a su set point, entonces el controlador de aspiraci´on genera una se˜ nal que es inferior a la que sale del controlador de impulsion. En esta situaci´on, el conmutador hace que entre en operaci´ on el lazo deSwitch). control de la aspiraci´on. En este caso, el conmutador es del tipo LSS (Low Selector
PIC
PIC
PY LAZO 2
LAZO 1 PT
PT
IMPULSION ASPIRACION
BOMBA (a) TRANSMISOR DE IMPULSION LAZO 1
CONTROLADOR DE IMPULSION CONMUTADOR SELECTOR CONTROLADOR
VALVULA DE CONTROL
PROCESO PRESION IMPULSION
VALVULA DE CONTROL
PROCESO PRESION ASPIRACION
DE ASPIRACION TRANSMISOR
(b)
LAZO 2
DE ASPIRACION
Fig. 6.13: Estrategia control selectivo aplicado al bombeo.
La Fig. 6.14 muestra otra aplicaci´on del control selectivo aplicado a un generador de vapor, en donde el conmutador selector LSS har´a la conmutaci´ o n del lazo de control de presi´on (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´on tambi´ en provoca que se cierre la valvula de control.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
143/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
132
Otras Estrategias de Control
LINEA DE VAPOR
LIMEA DE DESCARGA
PT LAZO 2
LT
LAZO 1
LC
LSS
PC
AGUA
(a)
CALEFACTOR
TRANSMISOR DE PRESION LAZO 1 CONTROLADOR DE PRESION CONMUTADOR LSS CONTROLADOR
VALVULA
PROCESO
DE CONTROL
PRESION
VALVULA DE CONTROL
PROCESO NIVEL
DE NIVEL LAZO 2 TRANSMISOR DE NIVEL
(b)
Fig. 6.14: Estrategia control selectivo aplicado a un generador de vapor.
6.5.
Control de Rango Partido
El control de rango partido, denominado tambi´ en de gama partida o split range en ingl´es, se aplica cuando se desea que la se˜ nal o fuerza de control manipule dos o m´as actuadores (por ejemplo, dos v´alvulas de control). En esta situaci´on, el n´ umero de variables de control es mayor que el n´ umero de variables controladas. Un ejemplo t´ıpico es el caso de un reactor, mostrado en la Fig. 6.15 al cual ingresa un producto gaseoso A, y sale un producto B resultante de la reacci´on. El objetivo de control es mantener constante la presi´on P dentro del reactor mediante la acci´on programada de las v´alvulas VA y VB (ver Fig. 6.15) como sigue. En presencia de presiones: 1. bajas, VA permanece abierta al 100 % y VB cerrada. 2. altas, VA permanece cerrada y VB abierta. 3. intermedias, la abertura de cada v´alvula se determina del gr´a fico de la Fig. 6.15.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
144/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
6.5 Control de Rango Partido
uA
Selector
133
VB
VA
uB
100% Abertura de válvula
Pr 0% P VB
VA Reactor
P 3
7.5
9
15 psig
11.5
u
u
Fig. 6.15: Estrategia rango partido aplicado a un reactor.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
145/256
5/9/2018
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
ControlDe Proc e sosV3 - slide pdf.c om
146/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
Cap´ıtulo 7
Control PID Multivariable El controlador SISO se aplica a sistemas o sub–sistemas caracterizados por tener una entrada y una salida de control, como es el caso del control de velocidad o de posici´on en un motor CC. Dos o m´ as controladores PID SISO tambi´ en forman parte de los sistemas multilazo, por ejemplo en los controles tipo cascada o control de la relaci´o n de dos variables. En general, las variables de salida y de entrada que caracterizan un sistema, pueden presentar cierto grado de interacci´on entre ellas. La t´ecnica para modelar esta interacci´on es emplear modelos din´amicos multivariables o MIMO (Multiple–Input–Multiple–Output). Es claro, que sistemas representados por modelos MIMO requieren tambi´en para su control, controladores MIMO. En este cap´ıtulo se desarrollan tres t´ ecnicas de dise˜ n o de controladores PID MIMO.
7.1.
Control MIMO v´ıa Desacoplamiento
El controlador MIMO a dise˜ nar requiere de la representaci´on lineal en el espacio de estado (ecuaci´ on (7.1)) o en el dominio de Laplace (ecuaci´on (7.3)) del sistema MIMO. Tal dise˜ no debe de cumplir los siguientes requerimientos: 1. No interacci´on. 2. Exactitud est´ atica. 3. Estabilidad. Para explicar cada uno de tales requerimientos, formulemos las ecuaciones de estado y de salida del sistema MIMO:
x˙ = Ax + Bu
y = Cx + Du
(7.1)
donde x es el vector de estado de orden n, u es el vector fuerza de control de orden m e y es el vector de salidas controladas de orden p. La Fig. 7.1 muestra el diagrama de bloques del sistema de control MIMO, de donde se pueden deducir las siguientes relaciones:
y(s) = G p (s)u(s) y(s) = G p Gc (s)e(s)
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
u(s) = Gc (s)e(s) e(s) = r(s) y(s)
−
(7.2) (7.3)
147/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
136
Control PID Multivariable Controlador PID MIMO r(s)
e(s)
G c (s)
Sistema u(s)
G p (s)
y(s)
Fig. 7.1: Diagrama de bloques de un sistema de control PID MIMO.
donde G p (s) es la matriz de transferencia del sistema, Gc (s) es la matriz de transferencia del controlador, e(s) es el vector error del sistema y r(s) es el vector de se˜nales deseadas o set points. En (7.3), el reemplazo de y(s) en e(s) produce:
y(t) = G(s)r(s)
G(s) = (I + Go )−1 Go
Go (s) = G p Gc (s)
(7.4)
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:
G(s) =
G11 (s) G1 p (s) .. .. .. . . . G p1 (s) G pp(s)
··· ···
En el dominio de Laplace y para condiciones iniciales nulas, el sistema representado en (7.1) toma la forma: sx = Ax + Bu
x(s) = (sI
− A)−1Bu
y(s) = Cx(s) + Du(s)
Reemplazando la expresi´ on de x(s) en la expresi´on de y(s), se obtiene la matriz de transferencia G p (s) del sistema en funci´on de las matrices de su descripci´ on de estado A, B, C y D:
y(s) = [C(sI
7.1.1.
− A)−1B + D]u(s)
Gp (s) = C(sI
− A)−1B + D
(7.5)
No Interacci´ on
Los elementos ubicados fuera de la diagonal principal de G(s) determinan el grado de interacci´on entre las diferentes entradas de referencia r i con respecto a las salidas yi . Para obtener desacoplamiento completo entre tales entradas y salidas, se requiere que G(s) sea diagonal, esto es: Gij = 0 para i = j
(7.6)
Una condici´on necesaria y suficiente para no interacci´on en un sistema de control MIMO con realimentaci´on unitaria es que la matriz de transferencia a lazo abierto ´ ltimo requerimiento es f´acil de probar. De la Fig. 7.1, vimos Go (s) sea diagonal. Este u que:
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
G(s) = [I + Go (s)]−1 Go (s)
148/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
7.1 Control MIMO v´ıa Desacoplamiento
137
Despejamos Go (s): 1
(7.7) Go (s) = Gp (s)Gc (s) = G(s)[I G(s)]− Dado que G(s) tiene que ser diagonal por para no interacci´on, entonces, I G(s) tambi´ en debe de ser diagonal. Por consiguiente, su matriz inversa [I G(s)]−1 es tambi´en diagonal y de la forma:
−
−
[I
− G(s)]−1 =
1 1 G11 (s)
0
−
1 1 G22 (s)
−
..
. 1 1 Gpp (s)
0
−
−
Por lo tanto, la relaci´on (7.7) resulta en la siguiente matriz diagonal: G11 (s) 0 1−G11 (s)
Go (s) =
7.1.2.
G22 (s) 1 G22 (s)
−
..
. Gpp (s) 1 Gpp (s)
0
−
(7.8)
Exactitud Est´ atica
Nosotros deseamos que para un vector de entrada de referencia constante r(t), es decir, un vector cuyos elementos sean escalones, el vector de error:
e(t) = r(t)
− y(t)
se aproxime a cero cuando t se aproxime a infinito. En el dominio de s, el error resulta:
e(s) = r(s)
− y(s) = r(s) − G(s)r(s) = [I − G(s)]r(s) = [I − G(s)] |rs|
donde r es la magnitud de r(s), cuya transformada de Laplace es teorema del valor final en la ecuaci´ on anterior se obtiene:
||
l´ım e(t) = l´ım s e(s) = l´ım [I
t
→∞
s
→0
s
→0
|r| . Aplicando el s
− G(s)] = 0
Entonces podemos concluir que para exactitud est´atica (error en estado estable nulo) se requiere: l´ım [G(s)] = I (7.9) s
→0
7.1.3.
Estabilidad
Para el caso de condiciones iniciales nulas, de (7.10) sabemos que:
− A)−1B + D]u(s) G (s) = C(sI − A)−1 B + D La inversa de [sI − A)−1 ] se puede expresar como: [I − A]−1 = Adj (I − A) det(I − A) y(s) = [C(sI
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
p
(7.10)
149/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
138
Control PID Multivariable
donde Adj significa adjunta, det es la operaci´ on determinante y la ecuaci´ on polin´omica: det(I A) = 0 (7.11)
−
es la ecuaci´on caracter´ıstica del sistema y es de gran trascendencia por que sus ra´ıces determinan la estabilidad del mismo como sigue. El sistema (7.1) es estable si todas las ra´ıces caracter´ısticas de 7.11 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´acticos tambi´en es inestable. Es importante anotar que el sistema a controlar puede ser inestable, como es el caso del sistema posici´on angular de un motr CC. Sin embargo, el sistema de control, como el mostrado en la Fig. 7.1 (notar que G p (s) forma parte de este sistem), debe de tener comportamiento estable. A continuaci´on se deduce la ecuaci´on caracter´ıstica del sistema de control. De la Fig. 7.1 se obtiene:
y(s) = [I + Go (s)]−1 Go (s)r(s)
Go (s) = Gp (s) Gc (s)
(7.12)
La inversa de la matriz [ I + Go (s)] se puede expresar como: [I + Go (s)]−1 =
Adj [I + Go (s)] det[I + Go (s)]
Por consiguiente, la ecuaci´on caracter´ıstica del sistema se expresa como: det[I + Go (s)] = 0
(7.13)
Entonces, el sistema MIMO de la Fig. 7.1 es estable si todas las ra´ıces caracter´ısticas de (7.13) 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 de operaci´on del sistema controlado, tambi´ en es inestable.
Ejemplo 7.1 Control PID MIMO del Sistema Tanque Cerrado Dise˜ nar un controlador PID MIMO basado en la t´ ecnica de desacoplamiento para controlar el nivel y la temperatura del sistema tanque cerrado descrito en la subsecci´on no son: 0 % de sobrenivel y error en estado estable nulo ??. Las especificaciones de dise˜ tanto para el nivel como para la temperatura. Tiempos de estabilizaci´on menores de 400 s para el nivel y 1000 s para la temperatura. o el modelo din´amico lineal en el espacio Soluci´ on: En la subsecci´on ?? se determin´ de estado del sistema MIMO tanque, que como sabemos, posee dos entradas y dos salidas. De acuerdo a (7.10), la matriz de transferencia del sistema se determina de:
Gp (s) = C(sI
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
− A)−1B + D =
G p11 (s) G p12 (s) G p21 (s) G p22 (s)
150/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
7.1 Control MIMO v´ıa Desacoplamiento
139
La forma de la MT (matriz de transferencia) del sistema G p (s) se obtiene ejecutando el programa mimopidsimb.m:
Gp (s) =
G p11 (s) G p11 (s) G p21 (s) G p21 (s)
K p11 T p11 s+1
K p11 T p11 s+1
K p21 (T pa s+1) (T pb s+1)(T pc s+1)
K p21 (T pa s+1) (T pb s+1)(T pc s+1)
=
(7.14)
Para dise˜ nar la matriz de control Gc (s), podemos asumir una matriz G(s) de la forma: 1 0 T niv s+1 (7.15) G(s) = 1 0 T temp s+1
la cual cumple los requerimientos del caso: 1. La matriz es diagonal, por lo tanto satisface el requerimiento de no interacci´ on. 2. Dado que G(0) = I, de acuerdo a (7.9), se satisface el requerimiento de exactitud est´ atica. 3. Debido a que los elementos de la diagonal de G(s) son funciones de transferencia de primer orden, cuyas ra´ıces caracter´ısticas se ubican en la parte izquierda del plano s, entonces podemos asegurar que se cumple el requerimiento de estabilidad. Adem´as, cada canal responde exponencialmente con una constante de tiempo igual a T niv para el primer canal (control de nivel) y T temp (control de temperatura) para el segundo canal. Teniendo en cuenta que Go (s) = Gs Gc (s), la matriz de control Gc (s) se obtiene de la ecuaci´on (7.7):
Gc (s) = Gp (s)−1 G(s)[I
− G(s)]−1
(7.16)
La forma de la MT (matriz de transferencia) del controlador Gc (s) resulta de la ejecuci´ on del programa mimopidsimb.m: K c11 1 +
GC (s) =
1 T c11 s
K c12 1 +
1 T c12 s
− − K c21 1 +
1
T c21 s
K c12 1 +
(7.17)
1
T c12 s
La Fig. 7.2 muestra en detalle la interconexi´on de todos los bloques del sistema de control multivariable PID del sistema tanque.
Simulaci´ on del Sistema de Control en el Dominio de s El programa mimopidsimb.m, cuyo listado se muestra abajo, tambi´ en simula el sistema de control del tanque cerrado. En el resultado de la simulaci´on (Fig. 7.3) se observa que el nivel (gr´afico superior izquierda) y la temperatura (gr´afico superior derecha) controlados, cumplen las especificaciones de dise˜no establecidas en el enunciado del ejemplo.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
151/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
140
Control PID Multivariable
e1 K c11
r1
T p11 s+1
1
K p11
K c21 1+
T c12 s
1+
T
T
c21
p11
y1
s+1
K p21 (T pas+1)
1
r2 K c12
K p11
T c11 s
K c12 1+
e2
u1
1
1+
s
(T pbs+1)(T pcs+1) y2
K p21 (T pas+1)
1 T c12 s
u2
(T pbs+1)(T pcs+1)
Fig. 7.2: Diagrama de bloques del sistema de control PID MIMO dise˜nado.
Step Response From: In(1)
From: In(2)
1 0.8
NIVEL
) 1 ( t 0.6 u O : o 0.4 T
0.2
e d t i u l p m A
0 1 0.8 ) 2 ( 0.6 t u O : o T
TEMPERATURA
0.4 0.2 0
0
200
400
600
800
1000 1200 0 Time (sec)
200
400
600
800
1000
1200
Fig. 7.3: Nivel y temperatura del tanque cerrado controlados. % mimopidsimb.m CONTROL PI MULTIVARIABLE DEL TANQUE clear all; close all; clc; % PAR´ AMETROS DEL TANQUE 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=df1dx1, df1/du2=df1u2, etc. df1dx1=-a/(2*A*sqrt(barh)); df1dx2=0;
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
152/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
7.1 Control MIMO v´ıa Desacoplamiento
141
df2dx1=a*bartheta*barh^(-1.5)/(2*A) ... - (rhoC*thetaC*barqC+rhoH*thetaH*barqH)/(rhoD*A*barh^2); df2dx2=-a/(A*sqrt(barh)); df1du1=1/A; df1du2=1/A; df2du1=rhoC*thetaC/(rhoD*A*barh); df2du2=rhoH*thetaH/(rhoD*A*barh); AA=[df1dx1 df1dx2;df2dx1 df2dx2]; BB=[df1du1 df1du2;df2du1 df2du2]; CC=[1 0;0 1]; DD = [0 0;0 0]; I = CC; Tniv=60; Ttemp=100; s=tf(’s’); Gp = CC*inv(s*eye(2) -AA)*BB+DD; G=[1/(Tniv*s+1) 0;0 1/(Ttemp*s+1)]; Gc = inv(Gp)*G*inv(I-G); Go=Gp*Gc; step(feedback(Go,I)) print -deps -f mimopid01 syms s a11 a21 a22 b11 b21 b22 Tniv Ttemp; AA=[a11 0;a21 a22]; BB=[b11 b11;b21 b22]; Gp = CC*inv(s*eye(2) -AA)*BB+DD; G=[1/(Tniv*s+1) 0;0 1/(Ttemp*s+1)]; Gc = inv(Gp)*G*inv(I-G); pretty(simple(Gp)), pretty(simple(Gc)) % Gc = [-a21 b11 - b22 s + b22 a11 s - a22 ] % [---------------------------------------------] % [ (-b22 + b21) b11 s Tniv (-b22 + b21) s Ttemp] % [ ] % [a21 b11 + b21 s - b21 a11 -s + a22 ] % [--------------------------------------------] % [ (-b22 + b21) b11 s Tniv (-b22 + b21) s Ttemp] % Gc11= Kc11*(1+1/(Ti11*s)); Gc12= -Kc12*(1+1/(Ti21*s)); % Gc21= -Kc21*(1+1/(Ti21*s)); Gc22= Kc12*(1+1/(Ti22*s));
Simulaci´ on del Sistema de Control en el Dominio de t De la Fig. 7.2 podemos formular las ecuaciones que gobiernan el controlador MIMO PID: 1 1 u1 = K c11 (1 + ) e1 K c12 (1 + ) e2 T c11 s T c12 s 1 1 u2 = K c21 (1 + ) e1 + K c12 (1 + ) e2 (7.18) T c21 s T c12 s
−
−
donde: e1 = r1
− y1
e2 = r2
− y2
Empleando aproximaci´on rectangular para los t´erminos integrales 1s , la discretizaci´on de (7.18) resulta: K c11 1 c 11 1 u (k) = K e (k) + T c11 u2 (k) = K c21 e1 (k) +
K c21 T c21
k
i=0 k
K c12 T c12
T e1 (i)
− K c12 e2(k) −
T e1 (i)
c12 − K c12 e2(k) − K T c12
i=0
k
i=0 k
T e2 (i) T e2 (i)
i=0
donde k = t/T es el tiempo discreto y T es el tiempo de muestreo o discretizaci´on. Para el tiempo (k 1) las expresiones de u1 (k) y u2 (k) toman la forma:
−
u1 (k
− 1)
= K c11 e1 (k
−
K c11 1) + T c11
k 1
−
T e1 (i)
i=0 k 1
u2 (k
− 1)
= K c21 e1 (k
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
− 1) +
−
− K c12e2(k − 1) − − K c12e2(k − 1) −
c12 K T c12 i=0
−
c21 K T c21 i=0
k 1
K c12 T c12
T e2 (i)
i=0 k 1
−
T e1 (i)
T e2 (i)
153/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
142
Control PID Multivariable
Teniendo en cuenta que:
k
e1 (i) =
i=0
entonces:
k 1
−
k
e1 (i) + e1 (k)
i=0
e2 (i) =
i=0
k 1
−
e2 (i) + e2 (k)
i=0
c11 − e1(k − 1)] + K T e1 (k) T c11 c12 T e2 (k) −K c12[e2(k) − e2(k − 1)] − K T c12 K c21 K c21 [e1 (k) − e1 (k − 1)] + T e1 (k) T c21
u1 (k)
− u1(k − 1)
= K c11 [e1 (k)
u2 (k)
− u2(k − 1)
=
c12 T e2 (k) −K c12[e2(k) − e2(k − 1)] − K T c12
(7.19)
Para programaci´ on en tiempo real prescindimos del argumento k. Por consiguiente, las ecuaciones anteriores toman la forma: K c12 c11 T e1 − K c12 (e2 − e2 p ) − T e2 − e1 p) + K T c11 T c12 K c21 K c12 u2 + K c21 (e1 − e1 p ) + T e1 − K c12 (e2 − e2 p ) − T e2 T c21 T c12
u1 = u1 + K c11 (e1 u2 =
(7.20)
donde e1 p y e2 p son los errores pasados de e1 y e2 respectivamente. La ecuaci´o n de estado del sistema se discretiza como:
∼ x(k) − x(k − 1) = A x(k) + B u(k)
x˙ =
T
x(k) = x(k donde:
x=
− 1) + T (A x(k) + B u(k))
x(1) x(2)
=
y1 y2
=
h θ
u=
u1 u2
=
qC qD
Para programaci´ on en tiempo real, la ecuaci´on de estado discreta del sistema toma la forma: (7.21) x = x + T (A x + B u) La simulaci´on del sistema se logra ejecutando el programa pidmimotanque.m, el cual toma en cuenta las ecuaciones discretas (7.20) y (7.21). El resultado de la simulaci´on se muestra en la Fig. 7.4. Observar que el controlador PID MIMO estabiliza simult´ aneamente el nivel y la temperatura cumpliendo las especificaciones de dise˜no del caso. % pidmimotanque.m CONTROL PID MIMO DEL SISTEMA TANQUE CERRADO CON AGUA clear all; close all; clc; % PAR´ AMETROS 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;
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
154/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
7.1 Control MIMO v´ıa Desacoplamiento
143
1
] m [ L E0.5 V I N
0 ] s / 3
0
1000
1500
2000 TIEMPO
[s]
2000 TIEMPO
[s]
2000 TIEMPO
[s]
2000 TIEMPO
[s]
2500
3000
3500
4000
2500
3000
3500
4000
2500
3000
3500
4000
2500
3000
3500
4000
0.01
m [ A Í R0.005 F A U 0 G A 0 ] C º [
] s /
500
A60 R U T A40 R E P M20 E 0 T
500
500
1000
1000
1500
1500
3
m [ 0 E T N E−0.005 I L A C A −0.01 U 0 G A
500
1000
1500
Fig. 7.4: Resultado de la simulaci´on del sistema de control PID MIMO del tanque: nivel y temperatura controladas.
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) - ... (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´ AMETROS DEL CONTROLADOR: SE SETERMINAN 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´ UMERO 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;
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
155/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
144
Control PID Multivariable
% 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´ AFICOS 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´ IA [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
Ejemplo 7.2 Control PID MIMO del Sistema de Plataformas Dise˜ nar un controlador MIMO PID basado en la t´ ecnica de desacoplamiento para controlar las salidas y1 e y2 del sistema de plataformas propuesto en el problema 2.6 y mostrado en la Fig. 2.26. Las especificaciones de dise˜ no son: 0 % de sobrenivel, error en estado estable nulo y tiempo de estabilizaci´on menor de 20 s para ambas salidas. Valorar todos los par´ametros de la planta en 1.
Soluci´ on: Seleccionemos como variables x4 = y˙2 , como variables de salida y1 = x1 y u2 , esto es: x1 x2 x= y= x3 x4
de estado x1 = y1 , x2 = y2 , x3 = y˙1 y e y2 = x2 y como variables de entrada u1
y1 y2
u=
u1 u2
Se puede demostrar (problema 2.6) que las ecuaciones de estado y de salida son:
x˙ = Ax + Bu
A=
B=
−
0 0
0 0
K 1 m1 K 1 m2
0 0
1 m1
0
− 0 0 0 1 m2
K 1 m1 (K 1 +K 2 ) m2
y = Cx 1 0
0 1
B − mB m − mB − (B m+B ) 1 1 1 2
C=
1 1
1
2
2
1 0 0 0 0 1 0 0
El programa mimopid02.m, cuyo listado se muestra abajo, simula el sistema de control pedido. En el resultado de la simulaci´on (Fig. 7.5) se observa que las salidas controladas y1 (gr´afico superior izquierda) e y2 (gr´afico superior derecha) controlados, cumplen las especificaciones de dise˜no requeridas.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
156/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
7.2 Control PID MIMO con Desacopladores
145
Step Response From: In(1)
From: In(2)
1 0.8 ) 1 ( t
y1 0.6
u O : o 0.4 T
0.2
e d u t i l p m A
0 1 0.8
y2
) 2 ( t 0.6 u O : o 0.4 T
0.2 0
0
20
40
60
0 Time (sec)
20
40
60
Fig. 7.5: Salidas y1 e y2 controlados (Ejemplo 7.2.) % mimopid02.m CONTROL PID MULTIVARIABLE DEL SISTEMA DE PLATAFORMAS clear all; close all; clc; K1=1; K2=1; B1=1; B2=1; m1=1; m2=1; % PAR´ AMETROS ´ % ECUACI ON1DE ESTADO Y DE SALIDA AA=[0 0 0;0 0 0 1;-K1/m1 K1/m1 -B1/m1 B1/m1;K1/m2 -(K1+K2)/m2 -B1/m2... -(B1+B2)/m2]; BB=[0 0;0 0;1/m1 0;0 1/m2]; CC=[1 0 0 0;0 1 0 0]; DD = [0 0;0 0]; II = eye(4); Tniv=4; Ttemp=4; s=tf(’s’); I=eye(2); Gp = CC*inv(s*II -AA)*BB+DD; G=[1/(Tniv*s+1) 0;0 1/(Ttemp*s+1)]; Gc = inv(Gp)*G*inv(I-G); Go=Gp*Gc; step(feedback(Go,I)) print -deps -f mimopid02
7.2.
Control PID MIMO con Desacopladores
En la secci´on anterior, la selecci´on a priori de una matriz de transferencia diagonal que din´amica del sistema realimentado, resolvi´ el problema de interacci´orepresente n existentelaentre las variables de entrada y de salida, esodecir, logr´o desacoplar al sistema. En esta secci´on tambi´ en se va a usar desacoplamiento en el dise˜ no de un controlador PID MIMO. Para este caso, los desacopladores van a formar parte de la configuraci´on del sistema, tal como se observa en la Fig. 7.6, de la cual se obtienen las siguientes relaciones: y1 (s) = G p11 (s)[u1 (s) + D1 (s)u2 (s)] + G p12 (s)[u2 (s) + D2 (s)u1 (s)] y2 (s) = G p22 (s)[u2 (s) + D2 (s)u1 (s)] + G p21 (s)[u1 (s) + D1 (s)u2 (s)] (7.22) El objetivo del bloque desacoplador D1 (s) es compensar el efecto de u2 en la salida y1 , esto es, prevenir cambios en la salida del segundo controlador G c2 que puedan afectar la variable controlada del primer lazo. Para cumplir con este requerimiento,
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
157/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
146
Control PID Multivariable
la primera ecuaci´on de (7.22) se puede expresar como:
∆y1 (s) ∆u 2 (s)
∆u1 =0
= D1 (s)G p11 (s) + G p12 (s) = 0
(7.23)
En forma similar, para que el bloque desacoplador D2 (s) compense el efecto de u1 en la salida y2 , de la segunda ecuaci´on de (7.22) se tiene: ∆y2 (s) ∆u1 (s)
= D2 (s)G p22 (s) + G p21 (s) = 0
(7.24)
∆u2 =0
Por consiguiente, los bloques desacopladores se calculan de: D1 (s) =
(s) − GG p12 p11 (s)
D2 (s) =
(s) − GG p21 p22 (s)
(7.25)
Las ecuaciones que gobiernan la din´amica del sistema mostrado en la Fig. 7.6 son: e1 r1
r2
u
m1
1
G c1(s)
Gp11(s) y1
D 1 (s)
G p12(s)
D 2 (s)
G p21(s) y2
m2 G c2 (s)
e2
G p22(s)
u2
Fig. 7.6: Sistema de control PID MIMO con desacopladores D 1 y D2 .
y1 = G p11 m1 + G p12 m2
m1 = u1 + D1 u2
u1 = Gc1 e1
y2 = G p21 m1 + G p22 m2
m2 = D2 u1 + u2
u2 = Gc2 e2
Por consiguiente:
y=
y1 y2
y(s) = G p (s)m(s)
G p =
G p11 G p12 G p21 G p22
m1 m2
m=
u=
m(s) = D(s)u(s)
D=
y = Go e
1 D1 D2 1
u1 u2
e=
(7.26)
e1 e2
u(s) = Gc (s)e(s)
Gc =
Go = G p DGc
Gc1 0 0 Gc2
(7.27) (7.28)
donde G p es la matriz de la planta o sistema, D es la matriz de desacoplamiento, Gc es el controlador PID MIMO y Go es la MT a lazo abierto del sistema. Cabe anotar que tanto Gc1 (s) como Gc2 (s) son controladores PID, cuyos par´ametros K c , T i y T d tienen que ser sintonizados para cada aplicaci´on.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
158/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
7.2 Control PID MIMO con Desacopladores
147
Ejemplo 7.3 Control PID con Desacopladores del Sistema de Plataformas
Dise˜ nar un controlador PID MIMO con desacopladores para controlar las salidas y 1 e y2 del sistema de plataformas propuesto en el problema 2.6 y mostrado en la Fig. 2.26. Las especificaciones de dise˜no son: 0 % de sobrenivel, error en estado estable nulo y tiempo de estabilizaci´on menor de 20 s para ambas salidas. Valorar todos los par´ametros de la planta en 1.
Soluci´ on: El programa mimopid03.m, cuyo listado se muestra abajo, emplea el modelo del sistema de plataformas del Ejemplo 7.2 y simula el sistema de control pedido. En el resultado de la simulaci´on (Fig. 7.7) se observa que las salidas controladas y1 (gr´afico superior izquierda) e y2 (gr´afico superior derecha) controlados, cumplen las especificaciones de dise˜ no requeridas. Step Response From: In(1)
From: In(2)
1 0.8
y1(t)
) 1 0.6 ( t u O : o 0.4 T
0.2
e d u t i l p m A
0 1
y2(t)
0.8 ) 2 ( t 0.6 u O : o T
0.4 0.2 0
0
20
40
60 0 Time (sec)
20
40
60
Fig. 7.7: Salidas y1 e y2 controlados (Ejemplo 7.2.)
% mimopid03.m CONTROL PID MIMO CON DESACOPLADORES DEL SISTEMA PLATAFORMAS clear all; close all; clc; K1=1; K2=1; B1=1; B2=1; m1=1; m2=1; % PAR´ AMETROS % ECUACI´ O N DE ESTADO Y DE SALIDA AA=[0 0 1 0;0 0 0 1;-K1/m1 K1/m1 -B1/m1 B1/m1;K1/m2 -(K1+K2)/m2 -B1/m2... -(B1+B2)/m2]; BB=[0 0;0 0;1/m1 0;0 1/m2]; CC=[1 0 0 0;0 1 0 0]; DD = [0 0;0 0]; II = eye(4); Kc1=0.25; Ti1=1; Td1=0; Kc2=1; Ti2=1; Td2=0; I = eye(2); s=tf(’s’); Gp=CC*inv(s*II -AA)*BB+DD; D1=-Gp(1,2)/Gp(1,1); D2=-Gp(2,1)/Gp(2,2); D=[1 D1;D2 1]; Gc1=Kc1*(1+1/(Ti1*s)+Td1*s); Gc2=Kc2*(1+1/(Ti2*s)+Td2*s); Gc=[Gc1 0;0 Gc2]; Go=Gp*D*Gc; step(feedback(Go,I)) print -deps -f mimopid03
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
159/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
148
Control PID Multivariable
7.3.
Control P MIMO empleando el Criterio de Hurwitz
La Fig. 7.8(a) representa el diagrama de bloques de un sistema de control MIMO, donde el sistema a controlar G p (s) es una MT (matriz de transferencia) cuadrada de orden n y K es una matriz diagonal de ganancias tambi´en de orden n. En una matriz cuadrada, el n´ umero m de entradas ui es igual al n´ umero de salidas yi . En el caso que G p (s) fuera rectangular, el n´umero de entradas m generadas por el controlador MIMO correspondiente, siempre debe de ser mayor que el n´umero p de salidas. S´olo en esta situaci´on es posible crear salidas ficticias a fin de hacer cuadrada a la matriz G p (s), con la finalidad de poder aplicar el procedimiento de dise˜no de la subsecci´on 7.3.1. Las relaciones siguientes se desprenden de la Fig. 7.8(a): Controlador r(s)
e(s)
P MIMO K
u(s)
Sistema G p (s)
y(s)
r(s)
−1
y(s)
(I+KG p (s)) KG p (s)
(b)
(a)
Fig. 7.8: (a) Sistema de control MIMO con controlador P. (b) Sistema equivalente.
y(s) = G p (s)u(s)
−
y(s) = [I + KG p (s)] 1 KG p (s)
u(s) = Ke(s)
donde I es la matriz identidad. La Fig. 7.8(b) muestra la MT del sistema, en la cual: T(s) = I + KG p (s) (7.29) es conocida como la matriz retorno de la diferencia. Para que el sistema de la Fig. 7.8(a) o (b) sea estable, los ceros del determinante de T(s) deben de poseer parte real negativa. Empleando el criterio de Hurwitz (subsecci´ on 7.3.2), se pueden determinar los rangos de los elementos de la matriz de ganancia K para comportamiento estable del sistema. A continuaci´ on se detalla el procedimiento de dise˜ no.
7.3.1.
Procedimiento de Dise˜ no
El procedimiento para dise˜nar un sistema de control P MIMO empleando el criterio de Hurwitz es como sigue: 1. Formular la matriz T(s) = I + KG p (s) (ver Fig. 7.8(b)), donde:
K = diag[K 1 , . . . , Kn ]
G p (s) =
G p11 (s) .. .
···
G p1n (s) .. .
G pn1 (s)
···
G pnn (s)
..
.
2. Determinar la ecuaci´on caracter´ıstica del sistema a lazo cerrado a partir de: n
D(s) = det[T(s)] = s +
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
n 1
a1 s
−
+
··· + an−1s + an = 0
160/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
7.3 Control P MIMO empleando el Criterio de Hurwitz
149
3. Emplear el criterio de Hurwitz (ver siguiente subsecci´ on) para determinar los rangos de los elementos de la matriz de ganancia K que garanticen un comportamiento estable del sistema de la Fig. 7.8(a). 4. Simular el sistema controlado empleando las ganancias determinadas por el criterio de Hurwitz, hasta que las salidas yi controladas cumplen las especificaciones de dise˜ no previamente establecidas.
7.3.2.
El Criterio de Hurwitz
El criterio de Hurwitz, que es equivalente al conocido criterio de Routh–Hurwitz, se basa en la construcci´on de la matriz Hurwitz a partir de la ecuaci´on caracter´ıstica D(s) del sistema realimentado: D(s) = sn + a1 sn−1 + a2 sn−2 + a3 sn−3 +
H=
a1 a3 1 a2 0 a1 0 1 .. .. . . 0 0
··· + an−1s + an
a5 a4 a3 a2 .. .
... ... ... ... .. .
0 0 0 0 .. .
0 0 0 0 .. .
0
. . . an−2 an
Este criterio de estabilidad establece que para que los ceros de D(s) posean parte real negativa (requisito indispensable del sistema), todos los menores principales diagonales depara H 1 , H 2 , H 3 , . . .estable , Hn , deben de ser positivos, H: comportamiento donde: H 1 = a1
H 2 = det
a1 a3 1 a2
H 3 = det
a1 a3 a5 1 a2 a4 0 a1 a3
H n = detH
Ejemplo 7.4 Control P MIMO de un Sistema Empleando el procedimiento de dise˜ no de la subsecci´on 7.3.1 dise˜ nar un controlador P MIMO para un sistema con:
K=
K 1 0 0 K 2
G p (s) =
3 s 0.05 s
−280 s(s+6)(s+30) −200 s(s+6)(s+30)
las especificaciones de dise˜ no para los dos canales (salidas) son: tiempo de estabilizaci´on menor de 2 s, error en estado estable nulo y porcentaje de sobrenivel tambi´en nulo. no Soluci´ on: Ejecutar el programa pmimo1.m, el cual sigue el procedimiento de dise˜ arriba establecido. La Fig. 7.9 muestra que las salidas controladas del sistema cumplen las especificaciones de dise˜ no para las ganancias K 1 = 2 y K 2 = –1.5. Es necesario anotar que con estos valores de las ganancias, se satisfacen simult´aneamente las condiciones H 1 > 0, H 2 > 0, H 3 > 0 y H 4 > 0 establecidas en el criterio de Hurwitz.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
161/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
150
Control PID Multivariable Step Response From: In(1)
From: In(2)
1 0.8
y1(t)
) 1 0.6 ( t u O : 0.4 o T
0.2 e d u t i l p m A
0 1.5
) 2 ( t u O : o T
1
y2(t) 0.5
0 0
1
2
3 0 Time (sec)
1
2
3
Fig. 7.9: Salidas y1 e y2 controlados (Ejemplo 7.4.) % pmimo1.m CONTROL P MIMO USANDO LA MATRIZ DE RETORNO DE LA DIFERENCIA clear all; close all; clc; I = eye(2); syms s K1 K2; Gp=[3/s -280/(s*(s+6)*(s+30));0.05/s -200/(s*(s+6)*(s+30))]; K=[K1 0;0 K2]; D=det(I+Gp*K); % pretty(D) % D=s^4+a1*s^3+a2*s^2+a3*s+a4 a1=36+3*K1; a2=180+108*K1; a3=-200*K2+540*K1; a4=-586*K1*K2; H=[a1 a3 0 0;1 a2 a4 0;0 a1 a3 0;0 1 a2 a4]; H1=a1; H2=det([a1 a3;1 a2]); H3=det([a1 a3 0;1 a2 a4;0 a1 a3]); H4=det(H); % H1 > 0 => K1 > -12; H2 > 0 CON K = -12 => K2 <3 2.4 % PARA TENER K1 Y K2 EN EL SEMIPLANO IZQUIERDO DE K1 VS K2 SELECCIONAMOS: % 0 <= K1 <= 12, -32 <= K2 <= 0; TOMEMOS: K1=2; K2=-1.5; K=[K1 0;0 K2]; s=tf(’s’); Gp=[3/s -280/(s*(s+6)*(s+30));0.05/s -200/(s*(s+6)*(s+30))]; G=feedback(Gp*K,I); step(G), print -deps -f pmimo1
7.4.
Problemas
Problema 7.1 Sistema Tanque Cerrado Basado en las t´ ecnicas descritas en las secciones 7.2 y 7.3, dise˜ nar los controladores MIMO para controlar el nivel y la temperatura del sistema tanque cerrado descrito en la subsecci´on ??. Las especificaciones de dise˜no tanto para el nivel como para la temperatura son: 0 % de sobrenivel, error en estado estable nulo y tiempos de estabilizaci´on lo m´as rapido posible.
Problema 7.2 Sistema de Plataformas
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
162/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
7.4 Problemas
151
Basado en la t´ecnica descrita en la secci´ on 7.3, dise˜ nar un controlador P MIMO para el sistema de plataformas mostrado en la Fig. 2.26 y descrito en el problema 2.6. Las especificaciones de dise˜ no de las salidas controladas son: 0 % de sobrenivel, error en estado estable nulo y tiempos de estabilizaci´on lo m´as rapido posible.
Problema 7.3 Manipulador Polar Vertical Basado en las t´ ecnicas descritas en las secciones 7.1, 7.1 y 7.3, dise˜ nar los controladores PID MIMO para el manipulador polar vertical mostrado en la La Fig. ?? y descrito en el problema ??. Las especificaciones de dise˜ no de las salidas controladas son: 0 % de sobrenivel, error en estado estable nulo y tiempos de estabilizaci´ on lo m´as rapido posible.
Problema 7.4 Manipulador Polar Horizontal Basado en las t´ ecnicas descritas en las secciones 7.1, 7.1 y 7.3, dise˜ nar los controladores PID MIMO para el manipulador polar horizontal mostrado en la La Fig. ?? y descrito en el problema ??. Las especificaciones de dise˜no de las salidas controladas son: 0 % de sobrenivel, error en estado estable nulo y tiempos de estabilizaci´ on lo m´as rapido posible.
Problema 7.5 Manipulador Rob´ otico Traslacional–Esf´ erico (MRTE) Basado en las t´ ecnicas descritas en las secciones 7.1, 7.1 y 7.3, dise˜ nar los controladores PID MIMO para el manipulador rob´otico traslacional–esf´erico mostrado en la Fig. ?? y descrito en el problema ??. Las especificaciones de dise˜n o de las salidas controladas son: 0 % de sobrenivel, error en estado estable nulo y tiempos de estabilizaci´ on lo m´as rapido posible.
Problema 7.6 Manipulador Rob´ otico Esf´ erico (MRE3) Basado en las t´ ecnicas descritas en las secciones 7.1, 7.1 y 7.3, dise˜ nar los controladores PID MIMO para el manipulador rob´otico esf´erico de 3GDL mostrado en la Fig. ?? y descrito en el problema ??. Las especificaciones de dise˜no de las salidas controladas son: 0 % de sobrenivel, error en estado estable nulo y tiempos de estabilizaci´on lo m´as rapido posible.
Problema 7.7 Motor S´ıncrono de Im´ an Permanente Basado en las t´ ecnicas descritas en las secciones 7.1, 7.1 y 7.3, dise˜ nar los controladores PID MIMO para el motor s´ıncrono de im´an permanente descrito en el problema ??. Las especificaciones de dise˜ no de las corrientes iq e id controladas son: 0 % de sobrenivel, error en estado estable nulo y tiempos de estabilizaci´on lo m´as rapido posible.
Problema 7.8 Manipulador Rob´ otico Traslacional (MRT)
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
163/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
152
Control PID Multivariable
Basado en las t´ ecnicas descritas en las secciones 7.1, 7.1 y 7.3, dise˜ nar los controladores PID MIMO para el manipulador rob´otico traslacional mostrado en la Fig. ?? y descrito en la secci´on ??. Las especificaciones de dise˜ no de las salidas controladas son: 0 % de sobrenivel, error en estado estable nulo y tiempos de estabilizaci´ on lo m´as rapido posible.
Problema 7.9 Manipulador Rob´ otico Esf´ erico (MRE) Basado en las t´ ecnicas descritas en las secciones 7.1, 7.1 y 7.3, dise˜ nar los controladores PID MIMO para el manipulador rob´otico esf´erico mostrado en la Fig. ?? y descrito en la secci´on ??. Las especificaciones de dise˜ no de las salidas controladas son: 0 % de sobrenivel, error en estado estable nulo y tiempos de estabilizaci´o n lo m´as rapido posible.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
164/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
Ap´ endice A
Matem´ atica para Sistemas Continuos Este Cap´ıtulo presenta la matem´atica requerida en los Cap´ıtulos siguientes. Los t´opicos se desarrollan principalmente en el dominio continuo. El t´opico discretizaci´ on directa se desarrolla en el dominio discreto. Los numerosos ejemplos presentados se resuelven en unos casos anal´ıticamente, en otros con ayuda del software MATLAB y en la mayor´ıa de los casos empleando ambos m´etodos. Los temas a tratar son: transformada de Laplace, matrices y determinantes, variable de estado, discretizaci´on directa, sistemas con tiempo muerto y linealizaci´ on de sistemas continuos.
A.1.
La Transformada Unilateral de Laplace
A.1.1.
Definici´ on y Ejemplos
La transformada unilateral de Laplace G(s) de una funci´on g(t) se define como: G(s) = L[g(t)] =
∞
g(t)e−st dt
(A.1)
0
donde el n´ umero complejo s = σ + jω es la variable Laplaciana. La regi´on de s en la cualUn dicha integral converge se onsededenomina Convergencia . cuando su salida sistema representado pordenomina la funci´onRegi´ g(t) causal y(t) depende s´olo de la entrada presente u(t) y de las entradas pasadas u(t t i ), donde t es la variable dependiente tiempo continuo y los ti para i = 0, . . . , n son n´ umeros reales positivo que indican retardos de tiempo. La gran mayor´ıa de los sistemas reales son causales. La Fig. A.1(a) muestra un tanque con agua calentada mediante vapor. La curva de reacci´on del sistema temperatura y(t) mostrado en la Fig. A.1(b) se obtiene variando la abertura u(t) de la v´alvula de vapor. Este sistema es causal porque, por ejemplo, la salida y en el tiempo t3 , depende de la entrada u en t3 (la actual) y de las entradas pasadas en t2 , t1 y t0 .
−
La transformada unilateral de Laplace es ´util para representar en forma algebraica sistemas causales descritos por ecuaciones diferenciales lineales invariantes con el
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
165/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
154
Matem´ atica para Sistemas Continuos u u Agua t y
y Vapor
t t0
t
t
1
t3
2
(b)
(a)
Fig. A.1: Ejemplo de sistema causal: temperatura en un tanque.
tiempo. La Tabla A.1 muestra la transformada unilateral de Laplace de algunas funciones. Varias de sus propiedades se ilustran en la Tabla A.2.
Ejemplo A.1 Hallar la transformada de Laplace de la funci´on escal´ on unitario µ(t) definida como: µ(t) =
≥
1 si t 0 0 si t < 0
Soluci´ on: Usando la definici´on dada en (A.1) con g(t) = µ(t): G(s) = L[µ(t)] =
∞
µ(t)e−st dt =
0
∞
(1)e−st dt =
0
− e−st s
−
∞ 0
=
− e−0 = 1 s −s
e−∞
Ejemplo A.2 Hallar la transformada de Laplace de la funci´on escal´on unitario retardado µ(t donde T es real y positivo. La funci´on µ(t T ) se define como:
−
µ(t
1 si t
T ) =
−
− T )
≥ T
0 si t < T
Soluci´ on: La transformada de Laplace de µ(t T ) se halla empleando la propiedad (5) (desplazamiento en tiempo) de la Tabla A.2 con t0 = T , sabiendo que G(s) = 1/s por el ejemplo anterior. Esto es: L[µ(t
−
−T s
− T )] = e−T sG(s) = e−T s 1s = e s
Ejemplo A.3 Hallar la transformada de Laplace de la funci´on exponencial e−at , donde a y t son reales y positivos.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
166/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
A.1 La Transformada Unilateral de Laplace
155
Soluci´ on: Usando la definici´on dada en (A.1): (s+a)t
L[e−at ] =
Ejemplo A.4
0
∞ e−at e−st dt =
− e− s+a
∞= 0
1 s+a
Hallar la transformada de Laplace de las funciones impulso δ(t) y δ(t la siguiente propiedad fundamental:
∞
g(t)δ(t
0
− T ) empleando
− T )dt = g(T )
(A.2)
donde g(t) es una funci´on arbitraria pero continua en t = T . Se sabe adem´ as que la funci´on impulso unitario o delta de Dirac δ(t) y delta de Dirac retardada δ(t T ) se
−
definen como: δ(t) =
1 si t = 0 0 si t = 0
δ(t
− T ) =
1 si t = T 0 si t = T
(A.3)
Soluci´ on: Aplicando la propiedad fundamental (A.2) con g(t) = e−st y T = 0 se obtiene: ∞ L[δ(t)] = e−st δ(t T )dt = e−sT T =0 = 1
−
0
|
Aplicando ahora la propiedad fundamental con g(t) = e−st y retardo T resulta: L[δ(t
∞
T )] =
−
e−st δ(t
0
T )dt = e−sT = z −1
−
La relaci´on: z = esT constituye la variable discreta de desplazamiento y se emplea para el an´alisis de sistemas lineales discretos con par´ametros invariantes con el tiempo.
Ejemplo A.5 Usando matem´atica simb´olica, hallar la transformada de Laplace de las siguientes funciones: dg(t) g1 (t) = aµ(t) g2 (t) = e−at g3 (t) = dt g4 (t) = asin(t)cos(t)2
t
g5 (t) =
(t2 + cos 2t)
0
donde a es una constante real y positiva, µ(t) es la funci´on escal´on unitario definida en el ejemplo A.1 y g(t) es una funci´on arbitraria dependiente del tiempo.
Soluci´ on: El programa laplace1.m resuelve el problema. % laplace1.m TRANSFORMADA SIMB´ OLICA DE LAPLACE clear all; close all; clc; syms a t s; G1 =laplace(a,t,s); % G1 = a/s G2 = laplace(exp(-a*t),t,s); % G2 = 1/(s+a) G3 = laplace(diff(sym(’g(t)’))); % G3 = s*laplace(g(t),t,s)-g(0) G4 = laplace(a*sin(t)*cos(t)^2,t,s); pretty(G4) % G4 = a*(s^2 + 3)/((s^2 + 9)(s^2+1)) g5 = int(t^2+cos(2*t)); G5 = laplace(g5); % G5 =2/s^4 + 1/(s^2+4)
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
167/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
156
A.1.2.
Matem´ atica para Sistemas Continuos
La Transformada Inversa de Laplace
La transformada inversa de Laplace de una funci´on G(s) se denota como: g(t) = L−1 [G(s)]
(A.4)
Ejemplo A.6 Usando matem´ atica simb´olica, hallar la transformada inversa de Laplace de las siguientes funciones: G1 (s) =
s+3 s2
G2 (s) =
(s
−
Aw a2 ) + w 2
donde w es una constante real y positiva. Soluci´ on: El programa laplace2.m resuelve el problema. % laplace2.m clear all; close all; clc; syms s w a A G1=(s+3)/s^2; g1 = ilaplace(G1); % g1 = 1 + 3*t G2=A*w/((s-a)^2+w^2); g2 = ilaplace(G2); % g2 = A*e^(a*t)*sin(w*t)
Ejemplo A.7 La figura A.2 muestra un m´ovil de masa m = 1000 kg desplaz´andose con una velocidad v gracias a la acci´on de la fuerza u producida por su motor. Si se desprecia la inercia de las ruedas y se asume que la fuerza de fricci´on bv es lo u ´ nico que se opone al movimiento, donde b= 50 N–s/m es el coeficiente de fricci´on, entonces la din´amica del sistema puede modelarse como: mv(t) ˙ + bv(t) = u(t)
v(t) ˙ =
dv(t) dt
Determine la velocidad v(t) y la aceleraci´on v(t) ˙ del carro como respuesta a una fuerza u(t) tipo escal´on 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
Fig. A.2: M´ovil en movimiento.
Soluci´ on: 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´on (2) de la Tabla A.2 en la ecuaci´on din´amica del carro:
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
m(sV (s)
− v(0)) + bV (s) = U (s)
168/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
A.1 La Transformada Unilateral de Laplace
V (s) =
157
1/m v(0) + 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´ on. La salida v(t) se determina usando la Tabla A.1. Para el primer t´ermino de V (s) empleamos la f´ormula (14) con n = 1, mientras que para el segundo t´ermino empleamos la f´ormula (3). Por consiguiente: v(t) = L−1 [V (s)] =
1 (1 b
− e−
b m
t
b
) + v(0)e− m t
La derivada de v(t) produce la aceleraci´on pedida: v˙ =
1 [1 m
− bv(0)] e−
b m
t
Ejemplo A.8 Empleando las propiedades del valor inicial y del valor final de la Tabla A.2, determinar tales valores para la velocidad del m´ovil del problema anterior.
Soluci´ on: El valor inicial de v(t) se determina de: l´ım v(t) = l´ım sV (s) = v(0)
t
→0
s
→∞
El valor final v(t) se obtienen de: l´ım v(t) = l´ım sV (s) = 1 →∞ s→0 b
t
A.1.3.
La Funci´ on de Transferencia
La funci´on de transferencia FT de un sistema SISO (Single Input Single Output) se define como la relaci´on: Y (s) G(s) = U (s) donde Y (s) es su salida y U (s) es su entrada, asumiendo que todas las condiciones iniciales son nulas. La FT se puede interpretar como el sello que caracteriza la din´amica de un sistema, ya que se expresa en funci´on de los par´ametros de dicho sistema. Distintos sistemas pueden poseer una misma forma de la FT, pero con par´ametros completamente diferentes. Por ejemplo, los sistemas velocidad de un motor DC, nivel en un tanque de agua con orificio de salida y un m´ovil con desplazamiento horizontal poseen la siguiente forma de su FT: Y (s) K = U (s) τs + 1
Ejemplo A.9 Determinar la FT del m´ovil del ejemplo A.7. Luego determine la velocidad v(t) del m´ovil partiendo de su FT, como respuesta a una fuerza u(t) tipo escal´o n de 1 N.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
169/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
158
Matem´ atica para Sistemas Continuos
Soluci´ on: La FT del sistema se obtiene aplicando la propiedad de derivaci´on (2) de la Tabla A.2), con v(0) = 0: m[sV (s)
V (s) 1/m = U (s) s + b/m
− v(0)] + bV (s) = (ms + b)V (s) = U (s);
Observar que resulta una FT de primer orden. Como la entrada es un escal´on unitario, entonces U (s) = 1s . La salida se determina de: v(t) = L−1 [V (s)] = L−1
1/m s(s + b/m)
Usando la f´ormula (14) (con n = 0) de la Tabla A.1 resulta: v(t) = 1 (1 b
− e−
b m
t
)
Ejemplo A.10 Empleando las propiedades del valor inicial y del valor final de la Tabla A.2, determinar tales valores para la velocidad del m´ovil del problema anterior.
Soluci´ on: El valor inicial se determina de: l´ım v(t) = l´ım sV (s) = 0 s
t
→0
→∞
El valor final se obtiene de: l´ım v(t) = l´ım sV (s) =
t
→∞
A.1.4.
s
→0
1 b
Fracciones Parciales
Una funci´ on o fracci´on racional de la forma B(s) A(s) es propia cuando el grado del polinomio B(s) del numerador es menor que el grado del polinomio A(s) del numerador. Cualquier funci´on o fracci´on racional propia de la forma como una suma de funciones racionales de la forma: C (as + b)r
Cs + D + bs + c)r
(as2
B(s) A(s)
se puede escribir
r = 1, 2., 3, . . .
Si A(s) y B(s) poseen el mismo grado, entonces: B(s) R(s) =k+ A(s) A(s) donde k es una constante y la fracci´on
R(s) A(s)
resulta propia.
Ejemplo A.11
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
170/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
A.1 La Transformada Unilateral de Laplace
159
Tabla A.1: Transformadas unilaterales de Laplace
No
G(s)
g(t)
(1)
1
δ(t)
(2)
1 s
µ(t)
(3)
1 s+a
e−at
(4)
ω s2 +ω2
sen ωt
(5)
s s2 +ω2
cosωt
(6)
s cos α ωsenα s2 +ω2
cos(ωt + α)
(7)
ω (s+a)2 +ω2
e−at senωt
(8)
(s+a) (s+a)2 +ω2
e−at cosωt
(9)
(s+a)cosα ωsenα (s+a)2 +ω2
e−at cos(ωt + α) [1
(10) (11)
1 s[(s+b)2 a2 ] n! ; n! = sn+1
(12)
1 (s+a)n+1
tn n!
(13)
s (s+a)n+1
tn+1 (n+1)!
(14)
1 s(s+a)n+1
(15)
s s2 (s+a)2
(16) (17)
1 (s+a)(s+b) s (s+a)(s+b)
(18)
s s(s+a)(s+b)
(19)
s s2 (s+a)(s+b)
(20)
1 (s+a)(s+b)(s+c)
(21)
s (s+a)(s+b)(s+c)
−
−
−
bt (cos at+ b a a2 +b2
−
e
−
n(n
− 1) . . .
sen at)]
tn
e−at at at n )e
−
(1 +
n (at)ν at 1− ν=0 ν! e −
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
an+1
[at−2+(2+at)e
at
−
]
a3
at
bt
(e− e− )/(b a) − bt (be ae−at )/(b a)
− − − − 1 be −ae ab 1 − b−a t 1 a 1 1 −at − b1 e−bt ab − a b − b + b−a a e
at
−
2
e at (b a)(c a) −
bt
−
2
bt
−
e
2
2
ct
−
e
− − + (a−b)(c−b) + (a−c)(b−c) −ae at + −be bt + −ce ct (b−a)(c−a) (a−b)(c−b) (a−c)(b−c) −
−
−
171/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
160
Matem´ atica para Sistemas Continuos Transformadas unilaterales de Laplace (continuaci´on) No
G(s)
g(t)
(22)
s2 (s+a)(s+b)(s+c)
a2 e at (b a)(c a) −
−
b2 e bt (a b)(c b) −
+
−
−
−
at
(24)
1 (s+a)(s+b)2
1 (b a)2
(25)
s (s+a)(s+b)2
1 (b a)2
(26)
s2 (s+a)(s+b)2
1 (b a)2
(27)
1 s(s+a)(s+b)2
(28)
1 s[(s+b)2 +a2 ]
1 a2 +b2
(29)
2 ωn 2 s2 +2ζω n s+ωn
ζ < 1;
2 ωn ωd
(30)
2 sωn 2 s2 +2ζω n s+ωn
ζ < 1;
ωn2 e−δt sen (ωd t
(31)
2 ωn 2) s(s2 +2ζω n s+ωn
ζ < 1;
1
(32)
2 ωn 2) s(s2 +2ζω n s+ωn
ζ > 1;
1
1
bce (b a)(c a)
1
−ab2
−
−
−
ae−at + [a + (b
ωd = ωn
−
−
−
b a
e−bt (cosat +
1
a)b2 t]e−bt
2ab a2 +ab(b a)t (b a)2
−
−
−
a)bt]e−bt
b2 + (b
[2ab
b2 e at (b a)2
1+
−
a)t]e−bt
[1 + (b
a2 e−at
−
cae (a b)(c b)
−
e−at
abe ct (a c)(b c)
−
1 abc
−
−
bt
−
1 s(s+a)(s+b)(s+c)
−
−
−
− − − − − − − − − − − − −
(23)
−
c2 e ct (a c)(b c)
+
e−bt
senat)
e−δt senωd t
− ωω
e−δt sen (ωd t + θ)
n d
t/T 1
−
T 1 e
− − 1
− θ)
ζ 2
− −
t/T 2
−
T 2 e T 1 T 2
θ = arccosζ = arc cos (ωd /ωn ) δ = ζ ωn T 1,2 =
1 ωn
(ζ
±
− ζ 2
1)
Los siguientes tres ejemplos ilustran la expansi´on en fracciones parciales: 3s + 2 C D E F = + + + s(4s + 3)(2s + 5) 2 s 4s + 3 (2s + 5) 2 (2s + 5) 7s2 2s + 1 Cs + D Es + F H = 2 + + (s2 + 2s + 4)2 (s + 1) (s + 2s + 4)2 s2 + 2s + 4 s + 1
−
s2 s2
8 −9 = 1− =1− −1 (s + 1)(s − 1)
C D + s+1 s 1
−
A manera de ilustraci´on, 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´on resultante se eval´ ua con la soluci´on de la ecuaci´on (s + 1) = 0; es decir, se eval´ua en
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
172/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
A.1 La Transformada Unilateral de Laplace
161
Tabla A.2: Propiedades de la transformada de Laplace No
Descripci´on
Propiedad
(1)
Linealidad
L[a1 g1 (t) + a2 g2 (t)] = a1 L[g1 (t)] + a2 L[g2 (t)] = a1 G1 (s) + a2 G2 (s)
(2)
Derivaci´ on
(3)
Derivaci´ on de orden n
− − −
dg(t) = sG(s) g(0) dt n L d dtg(t) = sn G(s) sn 1 g(0) n n 2 dg n 1 (0) s dgdtn (0) 2 dtn 1
L
−
−
−
−
−
−
−
(4) (5)
Integral Desplazamiento en tiempo
s L 0t g(t)dt = G(s) L[g(t t0 )] = e−t0 s G(s)
(6)
Desplazamiento en frecuencia
L[e−at g(t)] = G(s + a)
(7)
Escalamiento
L[g(at)] = a1 G( as )
(8)
Valor inicial
l´ımt→0 g(t) = l´ıms→∞ sG(s)
(9)
Valor final
l´ımt→∞ g(t) = l´ıms→0 sG(s)
(10)
Multiplicaci´on por tn
G(s) L[tn g(t)] = ( 1)n d ds n
(11)
Divisi´on entre t
L[g(t)/t] =
n
−
∞ G(t)dt
0
s=
−1 como sigue: (7s2 − 2s + 1)(s + 1) (Cs + D)(s + 1) (Es + F )(s + 1) H = + −
(s2
+ 2s + 4)2 (s + 1)
(s2
− sn−2 dg(0) dt − · · ·
+ 2s + 4)2
s2
+ 2s + 4
= s= 1
−
10 9
Comando para Expandir Fracciones Racionales El comando [r,p,k] = residue(B,A) permite expandir una fracci´on racional en la forma siguiente: B(s)
=
r1
+
−
p2
+
+
rn
+ k(s)
(A.5)
A(s) s s s donde p1 , . . . , pn son los n polos que no se repiten, r1 , . . . , rn son los residuos y k(s) comprime los t´ erminos directos. Los coeficientes de los polinomios A(s) y B(s) se introducen como vectores. Por ejemplo, A(s) = s4 + 5s2 s 3 produce el vector: A = [1 0 5 –1 –3]. Si B(s) A(s) posee polos repetidos, por ejemplo, si su polo p j es de multiplicidad m, entonces la expansi´on incluye t´erminos de la forma: r j r j+1 r j+m−1 + + + 2 s p j (s p j ) (s p j )m
−
p1
r2
···
−
pn
− −
−
−
···
−
donde r j , . . . , r j+m−1 son los correspondientes residuos. Si en (A.5) el grado de B(s) es menor que el de A(s), entonces k(s) = 0. Si son iguales, k(s) es una constante. Todos los polos y los residuos est´an contenidos en los vectores p y r respectivamente.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
173/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
162
Matem´ atica para Sistemas Continuos
Ejemplo A.12 El programa fracp1.m2 descompone en fracciones parciales las expresiones: B(s) s 16 N (s) s+6 s+6 = 2 = = 2 2 A(s) s 1 M (s) (s 2) s 4s + 4
− −
−
−
% fracp1.m DESCOMPOSICION 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 = + A(s) s+1 s 1 +1
N (s) 1 8 = + M (s) s 2 (s 2)2
−−
Ejemplo A.13
−
−
Hallar la transformada inversa de Laplace de: G(s) =
B(s) s4 + 2s3 + 3s2 + 2s + 1 = 4 A(s) s + 4s3 + 7s2 + 6s + 2
Soluci´ on: El programa fracp2.m calcula los vectores r, p y k: r = [ r1 ; r2 ; r j ; r j+1 ] = [
−0.5i ; 0.5i ; −2 ; 1 ]
p = [ p1 ; p2 ; p j ; p j+1 ] = [( 1 + i) ; ( 1
−
i) ;
− −
1;
1]
k=1
− −
Dado que todas las ra´ıces en el vector r son distintas: r1 r2 r j r j+1 G(s) = k + + + + s p1 s p2 s p j (s p j )2 0.5i 0.5i 2 1 = 1+ + + + s + 1 i s + 1 + i s + 1 (s + 1) 2
− −
Es f´acil demostrar que:
−
−
−
−
−
2 1 ωn2 −0.5i + 0.5i = 1 = s+1−i s+1+ i 2 (s2 + 2s + 2) 2 s2 + 2ζωn s + ωn2 √ √ donde, por igualaci´on: ωn = 2, ζ = 1/ 2. Por consiguiente: 1 2 −2 + 1 G(s) = 1 + + 2 (s2 + 2s + 2)
(s + 1) 2
s+1
Empleando los pares (1), (29), (3) y (12) de la Tabla A.1, con n = 1, se obtiene: L−1 [1] = δ(t)
L−1
ωn2 ωn2 −δt = e senωd t s2 + 2ζωn s + ωn2 ωd
1 1 = e−t L−1 = te−t s+1 (s + 1)2 donde, ωd = 1 y δ = 1, se calcularon empleando las f´ormulas al final de la continuaci´on de la Tabla A.1. Por consiguiente, juntando los resultados anteriores se obtiene: L−1
g(t) = δ(t) + e−t sent
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
− 2e−t + te−t
174/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
A.2 Matrices y Determinantes
163
% fracp2.m DESCOMPOSICI´ ON EN FRACCIONES PARCIALES clear all; close all; clc; B = [1,2,3,2,1]; % POLINOMIO B(s) A = [1,4,7,6,2]; % POLINOMIO A(s) [r,p,k] = residue(B,A); % r = [-0.5i;0.5i;-2;1]; p = [-1+i;-1-i;-1;-1]; k = 1
Ejemplo A.14 Resolver la siguiente ecuaci´on diferencial: d2 y(t) dy(t) + 11 + 24y(t) = e−6t dt2 dt con las condiciones iniciales nulas:
dy(0)
= 0, y(0) = 0.
dt
on de la Tabla A.2: Soluci´ on: Empleamos la propiedad de derivaci´
d2 y(t) dy(t) L + 11 + 24y(t) = L e−6t 2 dt dt
2
s Y (s)
− sy(0) −
Y (s) =
A.2.
dy(0) + 11(sY (s) dt
− y(0)) + 24Y (s) = s +1 6
1 3/80 1/60 1/48 = + + (s + 3)(s + 8)(s + 6) s+3 s+8 s+6 3 1 1 y(t) = e−3t + e−8t + e−6t 80 60 48
Matrices y Determinantes
Una matriz A de orden o dimensi´on n m, escrita con letra may´ uscula en negrita, es un arreglo rectangular con sus elementos aij dispuestos en n filas y m columnas. Es decir:
×
A = [aij ] =
a11 . . . a1m .. .. . . an1 . .. anm
i = 1, . . . , n;
j = 1, . . . , m
Los elementos de una matriz pueden ser n´umeros 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:
x(q) =
x1 (q) .. .
y(q) =
xn (q)
y1 (q)
···
yn (q)
Dos formas de denotar los correspondientes vectores fila y columna son:
xT (q) =
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
x1 (q)
···
xn (q)
;
x(q) =
x1 (q)
···
xn (q)
T
175/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
164
Matem´ atica para Sistemas Continuos
yT (q) =
y1 (q) .. y .(q)
y1 (q) .. y .(q)
y(q) =
T
n
n
donde el super´ındice T indica la operaci´ on transpuesta, la cual transforma las columnas en filas y viceversa.
A.2.1.
Operaciones con Matrices
Una matriz A con todos sus elementos aij iguales a cero se denomina matriz cero o nula y se denota como A = 0. Dos matrices A = [aij ] y B = [bij ] son iguales si son del mismo orden y adem´as [aij ] = [bij ]. La suma de dos matrices, denotada como C = A B, s´ olo es posible si A y B son del mismo orden: C = [cij ] = A B = [aij bij ]
±
±
±
La multiplicaci´on de dos matrices, expresada como C = AB, s´olo es posible si el n´umero de columnas de A es igual al n´umero de filas de B. Si A es de orden n m y B es de orden m r, entonces C debe ser de orden n r. Los elementos de C se determinan como sigue:
×
×
×
m
cij =
aik bkj ;
i = 1, 2, . . . , n; j = 1, 2, . . . , m
k=1
Por ejemplo, la siguiente multiplicaci´o n es v´alida: A2×3 B3×1 = C2×1 , tal como se observa a continuaci´on.
a11 a12 a13 a21 a22 a23
b11 b21 b31
=
c11 c21
=
a11 b11 + a12 b21 + a13 b31 a21 b11 + a22 b21 + a23 b31
Si κ es un escalar, entonces κA resulta una matriz en donde cada elemento queda multiplicado por κ, a saber: κA = κ[aij ] = [κaij ] La multiplicaci´on es asociativa:
ABCD = (AB)(CD) = A(BCD) = (ABC)D 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´on no es conmutativa; es decir:
AB = BA Ejemplo A.15
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
176/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
A.2 Matrices y Determinantes
165
Determinar si las matrices A y B conmutan o no.
A=
1 2 0 4 2 6
−32 −9
B=
1 2 0 4 2 6
−32 −9
Soluci´ on: Dado C = AB y D = BA, basta demostrar que C = D, tal como se ilustra en el siguiente programa.
% conmat.m CONMUTACI´ ON DE MATRICES clear all; close all; clc; A = [1 2 3;0 4 -2;2 6 -9]; B = [-1 5 0;1 4 -3;0 -6 -2]; C = A*B; % C = [1 -5 -12;4 28 -8;4 88 0] D = B*A; % D = [-1 18 -13;-5 0 22;-4 -36 30] % A Y B NO SON CONMUTATIVAS PORQUE C ES DIFERENTE DE D
Si AB = 0, implica que A = 0 o B = 0, o que A y B sean singulares. Las matrices A y B son singulares si det(A) = 0 y det(B) = 0 donde det es la operaci´on determinante, la cual se trata m´as adelante. Si AB = AC, no necesariamente implica que B = C. La matriz transpuesta, denotada como AT , es la matriz A con sus filas y columnas intercambiadas. Por consiguiente: (AT )T = A;
(A + B)T = AT + BT ;
(AB)T = BT AT
√ 1 es la unidad son n´ umeros reales. − La operaci´on
Un n´ umero complejo se designa como s = σ + jω, donde j =
de los n´ umeros imaginarios y tanto σ como ω conjugada, denotada como A∗ , toma la conjugada a todos los elementos complejos de A. Para la operaci´on conjugada se cumple: (A∗ )∗ = A;
(A + B)∗ = A∗ + B∗ ;
(AB)∗ = A∗ B∗
La operaci´on hermitiana de A, denotada como AH , toma la conjugada y luego la transpuesta (o toma la transpuesta y luego la conjugada) de la matriz A. Es decir:
AH = (A∗ )T = (AT )∗ Por consiguiente: (AH )H = A;
(A + B)H = AH + BH ;
(AB)H = BH AH
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 Dada la matriz real A y la matriz compleja B hallar A∗ , AH , AT , BT , B∗ y BH .
A=
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
1 2
3
0 4 2 6
−−29
1
B=
− j j 2 − j
3
3 + j
4 6 + j
−2−+ j 9
177/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
166
Matem´ atica para Sistemas Continuos
Soluci´ on:
1
A∗ = A
BT =
1
− j
3 3 + j
AH = AT =
− −
−
BH = (BT )∗ =
A.2.2.
2 j j 4 6 + j 2 + j 9
2 3
B∗ =
1 + j 3 3 j
0
2
−42 −69
−
1 + j 3 j 4 2 + j 6 j
3 j 2 j 9
− − − − −
− j 2 + j 4 6 − j − −2 − j −9
Tipos de Matrices
×
Si el orden de una matriz A es n n, entonces A es una matriz cuadrada de orden n. Esta matriz posee una diagonal principal, o simplemente una diagonal con elementos aii . La traza de una matriz cuadrada se define como: traza(A) = a11 +
··· + ann
Una matriz cuadrada se denomina matriz diagonal cuando los elementos que no pertenecen a su diagonal son todos ceros:
D = [dii ] =
d11 0 0 . . . 0 0 d22 0 . . . 0 .. .. .. .. . . . . 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´en como In (n es el orden de la matriz), es una matriz diagonal que s´olo posee unos. Si A es cuadrada, AI = IA. En general, se cumple que:
A es sim´etrica si: A es antisim´etrica si: A es hermitiana si: A es antihermitiana si: A es ortogonal si: A es unitaria si: A es normal si: A es peri´odica si: A es nilpotente si:
−
−
1
1
A−
(A.6) AT = A T A = A (A.7) H T ∗ ∗ T (A.8) A = (A ) = (A ) = A H (A.9) A = A T T T − 1 AA = A A = I, entonces: A = A (A.10) AAH = AH A = I, entonces: AH = A−1(A.11) (A.12) AAH = AH A κ+1 A = A; κ es un entero positivo (A.13) κ (A.14) A = 0; κ es un entero positivo
es la inversa de A si: A es singular si:
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
A− A = I det(A) = 0
(A.15) (A.16)
178/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
A.2 Matrices y Determinantes
167
Una matriz compleja cuadrada A puede ser escrita como la suma de una matriz hermitiana B = 12 (A + AH ) m´as otra matriz antihermitiana C = 12 (A AH ). Es decir: 1 1 A = B + C = (A + AH ) + (A AH ) 2 2
−
−
Ejemplo A.17 Demostrar que B = 12 (A + AH ) y C = 12 (A AH ) son matrices hermitiana y antihermitiana respectivamente, donde A es la siguiente matriz compleja:
−
A= Soluci´ on:
AH = (A∗ )T = 1 B = (A + AH ) = 2 1 C = (A 2
A.2.3.
1 + j 2 6 + j 5
H
−A
)=
−
−
1 j 6 j 2 + j 5 + j
1 4 j 4 + j 5
−
− j 2
− j − j
2 j
BH = (B∗ )T = B CH = (C∗ )T =
−
−C
Determinantes y Matriz Inversa
Determinantes El determinante de la matriz A = [aij ] de orden 2 es: det
a11 a12 a21 a22
= a11 a22
− a12a21
(A.17)
Para obtener el determinante de una matriz de orden n > 2 podemos emplear el m´etodo de la expansi´on. Si tomamos como base la primera fila, el determinante de una matriz A se obtiene de: n
( 1)1+ j a1 j det(A1 j ) = ( 1)1+1 a11 det(A11 ) + ( 1)1+2 a12 det(A12 ) +
det(A) =
−
−
j=1
−
···
donde A1 j , j = 1, . . . , n es la matriz que resulta luego de eliminar la fila 1 y la columna j de A. Por ejemplo, el determinante de una matriz de orden n = 3 se calcula como: det
a11 a12 a13 a21 a22 a23 a31 a32 a33
−
= ( 1)
a21 a23 a31 a33
( 1)1+2 a12 det
−
1+1
a11 det
a22 a23 a32 a33
−
Con relaci´on a dos matrices cuadradas A y B de orden n:
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
+
a21 a22 a31 a32
+ ( 1)1+3 a13 det
(A.18)
179/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
168
Matem´ atica para Sistemas Continuos
1. Si cada elemento de una fila o columna de A es cero, entonces det(A) = 0. T
2. det(A) = det(A ). 3. Si la constante real κ multiplica una fila o una columna de A, entonces el det(A) queda multiplicado por κ. 4. Si la matriz B se obtiene intercambiando dos filas o dos columnas de A, entonces det(B) = det(A).
−
5. Si dos filas o columnas de A son iguales, entonces det(A) = 0. 6. Si sumamos un m´ultiplo de una fila o una columna de A a cualquiera de sus filas o columnas, el valor del det(A) no cambia. 7. det(AB) = det(BA) = det(A)det(B) 8. Si los eigenvalores de A son λ1 , λ2 , . . . , λn , luego: det(A) = λ1 λ2 . . . λn . La determinaci´on de los eigenvalores o valores propios de una matriz se trata en la subsecci´ on A.2.4.
Matriz inversa Si A y B son dos matrices no singulares; es decir, si det(A) = 0 y det(B) = 0, entonces: (AB)−1 = B−1 A−1 ; (AT )−1 = (A−1 )T
((A∗ )T )−1 = ((A−1 )∗ )T ;
det(A−1 ) =
1 det(A)
Si A es una matriz no singular de orden 2, vale recordar que:
A=
a b c d
;
A−1 =
1 ad
d c
− bc −
−b a
(A.19)
Del mismo modo, si A es una matriz no singular de orden 3:
− − − − A=
A−1 =
1 det(A)
e det h d det g d det g
f i f i e h
a b c d e f g h i
b det h a det g a det g
det(A) = aei + gbf + cdh
c i c i b h
b det e a det d a det d
c f c f b e
(A.20)
− gec − ahf − idb
Ejemplo A.18 Comprobar simb´olicamente las f´ormulas de la inversa y del determinante de A dadas en (A.20).
Soluci´ on: Ejecutar el programa matinv.m mostrado abajo.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
180/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
A.2 Matrices y Determinantes
169
% matinv.m INVERSA Y DETERMINANTE DE UNA MATRIZ EN FORMA SIMB ´ OLICA clear all; close all; clc; syms a b c d e f g h i % COMANDO syms GENERA S´ IMBOLOS A = [a b c;d e f;g h i]; % MATRIZ SIMB ´ OLICA invA = inv(A); pretty(invA) % DEVUELVE INVERSA DE A detA = det(A); pretty(detA) % DEVUELVE DETERMINANTE DE A % aei - a f h - i d b + d c h + g b f - g c e
La Tabla A.3 muestra los comandos para ejecutar operaciones matriciales con MATLAB.
Cantidades Complejas Sea G = Gr + jG i un n´ umero o funci´on compleja donde
e[G] = Gr es su parte
real e m[G] = Gi es su parte imaginaria. El valor absoluto o m´odulo o magnitud de G se denota como G mientras que el ´angulo o argumento de G se expresa como ∠ G. Luego, G se puede formular como:
| |
G = e[G] + j m[G] = G ∠ G
( e[G])2 + ( m[G])2
|G| =
(A.21)
| |
∠ G = arctan
m[G] e[G]
Si G es un vector o matriz compleja con elementos complejos Gij , entonces las operaciones anteriores se ejecutan elemento por elemento; es decir: e[G] = e[Gij ];
m[G] = m[Gij ]
G = |G|∠ G = |Gij |∠ Gij ; |G| = |Gij |;
∠ G = ∠ Gij
Ejemplo A.19 Calcular en forma gr´afica y usando MATLAB el ´angulo y el m´odulo de:
G = [ 1 j
− −
− 3 + 4 j
1
−
√
3 j] = [G11 G12 G13 ]
Soluci´ on: Los elementos de G corresponden a tri´angulos notables mostrados en la Fig. A.3. Ejecutando el programa trnot.m se obtiene la misma soluci´on. 4j
5
127º
−1
1 2
−3
2
−j G 11 =
−60º
−135º
2 −135º
3 j G12 = 5 127º
G = 2 −60º 13
Fig. A.3: Tri´angulos notables para el problema A.19.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
181/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
170
Matem´ atica para Sistemas Continuos
% trnot.m N´ UMEROS COMPLEJOS clear all; close all; clc; G11 = -1-j; G12 = -3+4j; G13 = 1-sqrt(3)*j; G = [G11 G12 G13]; anguloG = angle(G)*(180/pi); % (180/pi) CONVIERTE rad A GRADOS % anguloG = [-135 126.8699 -60] moduloG = abs(G); % moduloG = [1.4142 5 2]; 1.4142 = sqrt(2)
Tabla A.3: Comandos para c´omputo matricial Operaci´on Suma Resta
C´ odigo MATLAB
A+B A B
A + B A - B
Multiplicaci´ oon Multiplicaci´ n Conjugada Transpuesta (A real) Transpuesta (A compleja) Hermitiana Potencia Determinante Inversa Divisi´ on izquierda Divisi´ on derecha
AB κA A∗ AT AT AH An det(A) A−1
A*B kappa*A conj(A) A’ conj(A’); A.’ A’ A^n det(A) inv(A) A*X = B; X = A\ B X*A = B; X = B/A
Valor absoluto ´ Angulo Parte real Parte imaginaria Traza Matriz identidad
|∠AA| e[A] m[n A]
abs(A) angle(A) real(A) imag(A) trace(A) eye(n)
−
In
i=1 aii
Ejemplo A.20 Dada la matriz cuadrada A, calcular B.
A=
B=
(A∗ + AT
− j 2 − j 4 j −2 6 − j 7 − j 1
−
3 j 3 + 5 j 8 + 3 j
− 0,7 j A3)A−1AH |A|∠ A e[A]m[A] (2 j + 1) traza(A)det(A)
1 2 (B +
Luego, comprobar que M = BH ) y N = 12 (B tiana y antihermitiana respectivamente.
− BH ) son sus matrices hermi-
Soluci´ on: El programa calmat.m calcula la matriz B pedida. Adem´as, por ser hermitiana: M H = MH , y por ser antihermitiana: N = que M M = 0 y que N + NH = 0.
−
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
−NH . Entonces basta comprobar
182/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
A.2 Matrices y Determinantes
171
% calmat.m C´ ALCULO MATRICIAL COMPLEJO clear all; close all; clc; A = [1-j 2-j 3- j;4j -2 3+5j;6-j 7-j 8+3j]; % MATRIZ DATO B = (conj(A)+conj(A’)-0.7j*A^3)*inv(A)*A’*abs(A)* ... angle(A)*real(A)*imag(A)/((2*j+1)*trace(A)*det(A)); M = (B + B’)/2; % M ES HERMITIANA PORQUE M=M’ ´ O M-M’=0 N = (B - B’)/2; % N ES ANTIHERMITIANA PORQUE M=-M’ ´ O M+M’=0
Ejemplo A.21 Multiplicaci´ on con Partici´ o n de Matrices.– Dos matrices Anm y Bmp (los sub´ındices indican las dimensiones) pueden ser particionadas como sigue: An1 m1 A=
. Ann m1
An1 mm . Ann mm
··· ···
Bm1 p1
;
B=
. Bmm p1
Bm1 pp
··· ···
. Bmm pp
La condici´on necesaria para realizar el producto Cnp = Anm Bmp empleando particiones, es que las columnas de A y las filas de B sean particionadas en la misma forma. Por lo tanto, n = n1 + + n n , m = m1 + + mm y p = p 1 + + p p .
···
···
···
Ejemplo A.22 Empleando la regla descrita determinar si el producto siguiente es v´alido y si lo es, obtener C = AB.
AB =
A22 A23 A21 A32 A33 A31 A42 A43 A41
B22 B23 B32 B33 B12 B13
Soluci´ on: Podemos notar que para las filas de A: n = 2 + 3 + 4 = 9, mientras que para las columnas de A: m = 2 + 3 + 1 = 6. Del mismo modo, para las filas de B: m = 2 + 3 + 1 = 6, mientras que para las columnas de B: p = 2 + 3 = 5. Por consiguiente, la partici´on es correcta. La multiplicaci´on ahora es directa: C=
A22 B22 + A23 B32 + A21 B12 A22 B23 + A23 B33 + A21 B13 A32 B22 + A33 B32 + A31 B12 A32 B23 + A33 B33 + A31 B13 A42 B22 + A43 B32 + A41 B12 A42 B23 + A43 B33 + A41 B13
Ejemplo A.23
Matriz Aumentada.– Si los vectores x, y, v y w son de orden n, m, p y q respectivamente, obtener una sola ecuaci´on diferencial matricial que reemplace a las dos ecuaciones diferenciales siguientes: dx = x˙ = Ax + Bv; dt
dy = y˙ = Cy + Dw dt
donde ddtx = x˙ y ddty = y˙ denotan las derivadas de x e y con respecto al tiempo, respectivamente.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
183/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
172
Matem´ atica para Sistemas Continuos
Soluci´ on: Es importante notar que si x es de orden n, entonces A debe ser de orden n n. Tambi´en, si v es de orden p, entonces B debe ser de orden n p, y as´ı sucesivamente. La ecuaci´on pedida se muestra a continuaci´on, donde 0 es la matriz nula. Las dimensiones de los vectores y matrices se indican con sub´ındices.
×
×
x˙ y˙
A 0 0 C
=
x y
+
B 0 0 D
v w
x˙ n×1 = An×n xn×1 + 0n×m ym×1 + Bn× p v p×1 + 0n×q wq×1
y˙ m×1 = 0m×n xn×1 + Cm×m ym×1 + 0m× p v p×1 + Dm×q wq×1
A.2.4.
Rango, Eigenvectores y Pseudoinversas
Dependencia e Independencia de Vectores Un conjunto de vectores es linealmente independiente cuando ninguno de ellos se puede escribir como una combinaci´on lineal de los restantes. Al contrario, tal conjunto de vectores es linealmente dependiente cuando alguno de ellos se puede escribir como una combinaci´on lineal de los dem´as.
Ejemplo A.24 Determinar si los siguientes vectores son o no linealmente dependientes.
u=
18 28 29
3 5 7
v=
w=
4 6 5
Soluci´ on: Tal conjunto de vectores es linealmente dependiente si se demuestra que existen dos constantes α y β no nulas que verifiquen: u = αv + β w; es decir: 18 28 29
=α
3 5 7
4 6 5
+ β
3α + 4β 5α + 6β 7α + 5β
=
Resolviendo este sistema de tres ecuaciones y dos inc´ognitas resulta: α = 2 y β = 3. Por lo tanto, el conjunto de vectores u, v y w son linealmente dependientes.
Ejemplo A.25 Determinar si los siguientes vectores son o no linealmente independientes.
u=
1 2 3
v=
3 5 7
w=
4 6 5
Soluci´ on: Tal conjunto de vectores es linealmente independiente si se demuestra que no existen dos constantes α y β no nulas que verifiquen: u = αv + β w. Si suponemos que dichas constantes existen, entonces:
1 2 3
=α
3 5 7
+ β
4 6 5
=
3α + 4β 5α + 6β 7α + 5β
El sistema de tres ecuaciones y dos inc´ognitas resultante es incompatible y sin soluci´on. Entonces, el conjunto de vectores u, v y w es linealmente independiente.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
184/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
A.2 Matrices y Determinantes
173
Rango de una Matriz Si una matriz orden n m, su (o rango, denotado como rango( A es m´ A), es igual al n´ umero aximo r dedesus vectores filas columnas) linealmente independientes. En cualquier matriz, el n´ umero de vectores filas linealmente independientes coincide con el n´ umero de vectores columnas linealmente independientes. Por consiguiente, el valor m´aximo rmax que puede tener el rango r de una matriz de orden n m es: rmax = min(n, m). Si A es una matriz cuadrada de orden n n, su rango es n siempre que A sea no singular; es decir, si det(A) = 0. En otro caso, si det(A) = 0, entonces: rango(A) < n. El rango de una matriz tambi´ en se puede determinar evaluando los determinantes de sus m´ınimos cuadrados, tal como se ilustra en el siguiente ejemplo.
×
×
×
Ejemplo A.26 Determinar el rango de las siguientes matrices empleando varios m´ etodos:
A=
1 2 3 3 5 7 4 6 5
B=
1 3 2 3 8 9 1 2 5
Soluci´ on: La matriz A de orden n = 3 posee rango completo (r = n = 3) por dos razones. La primera es que ning´un vector fila o vector columna es una combinaci´on lineal de las restantes. La segunda raz´on es que A es no singular. La matriz B de orden n = 3 posee rango r = 2, porque los dos primeros vectores filas no son linealmente dependientes, pero el tercer vector fila si lo es, debido a que es igual al segundo vector fila menos el doble del primer vector fila. Por otro lado, se puede comprobar que det(B) = 0, lo que implica que B no posee rango completo por ser singular; es decir: rango(B) < n. Los determinantes de los m´ınimos cuadrados de B son: det([1]) = 1 = 0
det
1 3 3 8
=1=0
det
1 3 2 3 8 9 1 2 5
=0
Por consiguiente, el rango de la matriz B es r = 2 porque el determinante del segundo m´ınimo cuadrado es diferente de 0, mientras que el determinante del tercer m´ınimo cuadrado es nulo.
Propiedades del Rango Si A es una matriz de orden n
× m y B es de orden m × k, se cumple:
rango(AB) = rango(AH ) = rango(AH A) = rango(AAH ) rango(AB) = rango(AT ) = rango(AT A) = rango(AAT ) rango(AB) rango(A); rango(AB) rango(B)
≤
rango(AB) = rango(A), rango(AB) = rango(B),
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
≤
si A y B son no singulares si A y B son no singulares
185/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
174
Matem´ atica para Sistemas Continuos
Ejemplo A.27 Sean las matrices Anm , Bmp y Cmm . Demostrar num´ericamente que: rango(A)
≤
m´ın(n, m)
rango(A) = rango(AH ) rango(AB) min(rango(A),rango(B))
≤
rango(CB) = rango(B)
Soluci´ on: El siguiente programa presenta las demostraciones pedidas. % proprango.m PROPIEDADES DEL RANGO clear all A=[-1+j 3-5j -5+6j-4+2j;-2+3j -2+5j;8-9j 4-2j -1+j -4;-2+3j B=[1+j -3-5j;8+9j -4-6j;-5-6j -2+5j];4-6j -2-5j 7j]; C=[-1+j -2+j 3-j -5-7j;4-2j -1+j -4 2;4-6j -2-5j 7j -j;7j -1 9j 4j]; % DIMENSIONES DE A, B Y C SON (3,4), (2,4) Y (4,4) RESPECTIVAMENTE rA=rank(A); rAH=rank(A’); rB=rank(B); rAB = rank(A*B); rCB=rank(C*B); % rA=3=min(3,4); rAH=rA; rB=2; rAB=2=min(rA,rB); rCB=2=rB;
Eigenvalores y Eigenvectores Un eigenvalor de una matriz de orden n, conocido tambi´ en como valor propio, modo, eigenvalue, o ra´ız caracter´ıstica, es un escalar λ que permite una soluci´on no trivial de la ecuaci´ on:
Ax = λx Factorizando x en (A.22) obtenemos la ecuaci´on caracter´ıstica de A: det(λI
− A) = 0
(A.22)
(A.23)
Asociado con cada eigenvalor λi existe un eigenvector ei de magnitud arbitraria que es soluci´on de (ver (A.22)): (A.24) Aei = λi ei La matriz E de eigenvectores para una matriz A de orden n toma la forma:
E=
e1
··· en
=
e11 .. . en1
Un eigenvector normalizado se define como: ei = calcula como:
e1 e1 = e1
| |
e1 =
e11 .. .
en1
... ··· ···
e1n .. .
enn
ei |ei | . Por ejemplo, el vector e1
|e1| =
e211 +
se
··· + e2n1
Ejemplo A.28
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
186/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
A.2 Matrices y Determinantes
175
Determinar los eigenvalores y eigenvectores del sistema siguiente:
− − x˙ 1 x˙ 2
=
1 2 4 3
x1 x2
Soluci´ on: Los eigenvalores se determinan de (A.23): det(λI
− A) = det
λ 0 0 λ
1 2 4 3
= (λ
1)(λ
− 3) − 8 = 0
−
resultando: λ1 = 1 y λ2 = 5. Los eigenvectores se calculan de (A.24) para λ 1 y λ2 : Ae1 = λ1 e1 y Ae2 = λ2 e2 , obteni´endose: 1
e1
=
λ1 Ae1
=
e11 e11
1
1 1
− − =
e2
e12 2e12
1 2
√ | | | || |
=
λ2 Ae2
=
=
donde las soluciones e11 = 1 y e12 = 1 son arbitrarias. Dado que e1 = 2 y e2 = 5, los eigenvectores normalizados resultan: e1 = e1 / e1 y e2 = e2 / e2 .
| | √
Ejemplo A.29
Determinar los eigenvalores y eigenvectores para la matriz A empleando MATLAB.
−
1 j
2 j 5 j
08
−6 j7 j
−3 − −3 j −−24 −−9 j j 4 4
Soluci´ on: Ejecutar el programa eig1.m.
% eig1.m C ´ ALCULO DE EIGENVALORES Y EIGENVECTORES clear all; close all; clc; A = [1 2j 4 -3;-j 5j -4 -3j;0 -7j -2 -j;8 6j -4 -9j]; [E,D]=eig(A); % E: MATRIZ DE EIGENVECTORES NORMALIZADOS % D: MATRIZ DIAGONAL DE EIGENVALORES
Ejemplo A.30 Si los λi son los eigenvalores de la matriz A de orden n, comprobar num´ericamente: det(A) = λ1 λ2 . . . λn ;
i = 1, . . . , n
Soluci´ on: Ver el programa eig2.m. % eig2.m COMPRUEBA QUE det(A)=L(1)L(2)L(3)L(4) clear all A = [1-j 2-j 3-j -3+8j 4j -2 3+5j 4-2j 6-j 7-j 8+3j 3+j 2 -1 j 0]; L = eig(A); % DETERMINA LOS EIGENVALORES DE A detA = det(A); P = L(1)*L(2)*L(3)*L(4); % SE CUMPLE QUE: det(A) = P
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
187/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
176
Matem´ atica para Sistemas Continuos
Pseudoinversas El concepto pseudoinversa de una es la generalizaci´ on de su inversaeny resulta u ´ til parade encontrar una soluci´ on enmatriz un conjunto de ecuaciones algebraicas donde el n´ umero de variables desconocidas y el n´ umero de ecuaciones linealmente independientes no son iguales. Sea la ecuaci´on:
Ax = b donde A es una matriz de orden n m y de rango n, x es un vector de orden m y b es un vector de orden n. Se supone que n < m. La soluci´on de tal ecuaci´on est´a dada por: xo = AID b AID = AT (AAT )−1
×
ID ID = I . donde es la matriz pseudoinversa derecha (o m´ınima inversa derecha) de A que cumpleAla propiedad: AA n En forma similar, sea la ecuaci´ on: Ax = b, donde A es una matriz de orden m n y de rango m, x es un vector de orden n y b es un vector de orden m. Se supone que n > m. La soluci´on de tal ecuaci´on se obtiene de:
×
xo = AII b
AII = (AT A)−1 AT
donde AII es la matriz pseudoinversa izquierda (o m´ınima inversa izquierda) de A que cumple la propiedad: AII A = Im .
Ejemplo A.31 En pseudoinv.m se resuelven sistemas de ecuaciones empleando pseudoinversas. % pseudoinv.m SOLUCION DE ECUACIONES USANDO PSEUDOINVERSAS clear all; close all; clc; A = [1+i 2+3i 3-i;4-2i 5+i 6]; b = [10-i;20+3i]; % A(2,3)*x(3,1) = b(2,1) C = [1+i 1-i;1 2+3i;1 4-i]; d = [1;2-3i;3+i]; % C(3,2)*y(2,1) = d(3,1) MPID = A’*(A*A’)^(-1); % MATRIZ PSEUDOINVERSA DERECHA x = MPID*b; % VECTOR SOLUCION DE DIMENSI´ ON (3,1) MPII = (C’*C)^(-1)*C’; % MATRIZ PSEUDOINVERSA IZQUIERDA y = MPII*d; % VECTOR SOLUCION DE DIMENSI´ ON (2,1)
Ejemplo A.32 Resolver el siguiente sistema (m´ as inc´ognitas que ecuaciones): (5
− j)x1 + (2 + 3 j)x2 + (3 − j)x3 + (−1 + 4 j)x4 + (−6 + j)x5 4 jx 1 − 2x2 + (3 + 5 j)x3 − 7 jx 4 + (8 − 2 j)x5 (6 − j)x1 + (7 − j)x2 + (8 − 3 j)x3 + (3 − j)x4 + (1 + 4 j)x5
= 2 =
− 9 j 4 − j
= 3 + j
Soluci´ on: Ver el programa miqe.m. % miqe.m SISTEMA DE ECUACIONES: MAS INC´ OGNITAS QUE ECUACIONES clear all; close all; clc; A = [5-j 2+3j 3-j -1+4j -6+j 4j -2 3+5j -7j 8-2j 6-j 7-j 8-3j 3-j B = [2-9j;4-j;3+j]; X = A\B;
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
1+4j];
188/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
A.2 Matrices y Determinantes
177
Ejemplo A.33 Resolver el siguiente sistema (m´as ecuaciones que inc´ognitas): (5
− j)x1 + (2 + 3 j)x2 + (3 − j)x3 4 jx 1 − 2x2 + (3 + 5 j)x3 (6 − j)x1 + (7 − j)x2 + (8 − 3 j)x3 (−1 + 4 j)x1 + (−6 + j)x2 + (3 − j)x3 −7 jx 1 + (8 − 2 j)x2 + (1 + 4 j)x3
= 2 =
− 9 j 4 − j
= 3 + j = =
−3 + 7 j −9
Soluci´ on: Ejecutar el programa meqi.m. % meqi.m SISTEMA DE ECUACIONES: MAS ECUACIONES QUE INCOGNITAS clear all; close all; clc; A = [5-j 2+3j 3-j 4j -2 3+5j 6-j 7-j 8-3j -1+4j -6+j 3-j -7j 8-2j 1+4j]; B = [2-9j;4-j;3+j;-3+7j;-9]; X = A\B;
A.2.5.
Diagonalizaci´ on de Matrices y Formas Can´ onicas
Diagonalizaci´ on de Matrices Si A es una matriz de orden n que posee n eigenvalores distintos λ , entonces su matriz de eigenvectores E = [e1 . . . en ] es unitaria porque: EH = E−i1 . Sea Λ una matriz diagonal formada con los eigenvalores de A. Entonces se cumple:
E−1 AE = Λ =
λ1 0 . . . 0 0 λ2 . . . 0 .. .. .. . . . 0 0 . . . λn
(A.25)
El proceso de diagonalizaci´on arriba mencionado permite transformar un sistema descrito por la denominada ecuaci´on de estado (secci´on A.3) : dx = x˙ = Ax + Bu dt en otro sistema descrito por la ecuaci´on: dx∗ = x˙ ∗ = A∗ x∗ + B∗ u dt donde: x = Ex∗ es una transformaci´ on lineal, A∗ = E−1 AE = Λ y B∗ = E−1 B. Esta transformaci´on se denomina can´onica. Por otro lado, si A es una matriz de orden n de rango completo que posee eingenvalores repetidos, entonces A se puede diagonalizar mediante la relaci´on E−1 AE = Λ. Sin embargo, la matriz de eigenvectores E no es unitaria (EH = E−1 ).
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
189/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
178
Matem´ atica para Sistemas Continuos
Ejemplo A.34 Hallar la transformaci´on can´onica del siguiente sistema: 2 0 1 x˙ = Ax + Bu = x+ 1 1 1
−
−
u
Soluci´ on: Ejecutar el programa trancan.m para obtener la siguiente transformaci´on can´onica: dx∗ = x˙ ∗ = A∗ x∗ + B∗ u dt 0 x˙ ∗1 1 0 x∗1 = + u ∗ ∗ x˙ 2 0 2 x2 2
√
% trancan.m TRANSFORMACI´ O N CAN´ ONICA clear all; close all; clc; A = [2 0;-1 1]; B = [1;-1]; [E,D]=eig(A); % E=[e1 e2]: MATRIZ DE EIGENVECTORES % EIGENVALORES: D = diag(1, 2) Aast=inv(E)*A*E; Bast=inv(E)*B; % Aast=[1 0;0 2]; Bast=[0;1.4142};
Ejemplo A.35 En el programa siguiente se diagonalizan varias matrices de rango completo. % diagmat.m DIAGONALIZACION 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 ´ ICES 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´ ICES 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´ ICES REPETIDAS => inv(E3) ~= E3’
A.3.
Variables de Estado
A.3.1.
Ejemplo de Introducci´ on
El siguiente ejemplo sirve para introducir el concepto de variable de estado. La Fig. A.4 muestra el sistema tanque con agua, donde el volumen de agua acumulado se modela como: dh dh S = S h˙ = qi qo h˙ = (A.26) dt dt donde S es la secci´on uniforme del tanque, h es el nivel del liquido, q1 es el flujo de entrada y qo es el flujo de salida. Considerando que el flujo de salida qo es laminar:
−
qo = h Rh
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
(A.27)
190/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
A.3 Variables de Estado
179
qi
A
h
qo
Sensor de presión
Fig. A.4: Sistema tanque con agua.
donde Rh es la resistencia hidr´aulica, la cual se calcula de la relaci´on: Rh =
H Q
(A.28)
donde H y Q son los valores estacionarios de h y qo , respectivamente. Despejando h˙ de (A.26) se obtiene la ecuaci´on de estado del sistema, la cual es una ecuaci´on diferencial de primer orden de la forma: 1
h˙ =
h+
1
qi
x˙ = A x + B u
(A.29)
S donde x = h es la variable de estado del sistema, u = qi es la variable de entrada, A = SR1 h es la matriz de estado del sistema (en este caso una matriz de orden uno) 1 y B = S es la matriz de distribuci´on de orden uno. La ecuaci´on de salida del proceso toma la forma: y = Cx = [1]x (A.30)
−
SR h
−
donde y es la salida y C es la matriz de salida. Sabiendo que L[ ] es el operador de Laplace, entonces: L[u] = U (s), L[x] = X (s) = Y (s), L[qi ] = Qi (s) y L[x] ˙ = L[y] ˙ = s[Y (s) y(0)], la FT del sistema con y(0) = 0 resulta de (A.29):
−
Y (s) R = Qi (s) SR h sh+ 1
(A.31)
donde el producto SR h es la constante de tiempo del sistema nivel. Por consiguiente, la FT y las ecuaciones de estado y de salida de un determinado sistema SISO (de una entrada y una salida), son dos formas de describir la din´amica del sistema. Sin embargo, la representaci´on en el espacio de estado (variables de estado m´as ecuaciones de estado y de salida), es general porque se puede aplicar tambi´en a sistemas no lineales como se ver´a oportunamente. En cambio, la FT s´olo es aplicable a sistemas lineales. Para sistemas MIMO lineales y con par´ametros invariantes con el tiempo, las ecuaciones de estado y de salida toman la forma:
x˙ = Ax + Bu
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
y = Cx + Du
(A.32)
191/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
180
Matem´ atica para Sistemas Continuos
donde los ordenes de los vectores y matrices se ilustran en la siguiente relaci´on:
x˙ n×1 = An×n xn×1 + Bn×m um×1
A.3.2.
y p×1 = C p×n xn×1 + D p×m um×1
Definici´ on de Variables de Estado
El vector de estado x = [x1 . . . xn ]T de un sistema (donde el super´ındice T indica transpuesta) es el m´ınimo conjunto de variables, las variables de estado x1 . . . xn , las cuales contienen informaci´on suficiente acerca de la historia pasada del sistema. Esta informaci´on permite computar todos los futuros estados del sistema, asumiendo por supuesto, que todas las futuras entradas u son tambi´ en conocidas, como del mismo modo lo son las ecuaciones din´amicas que describen dicho sistema. El n´umero n de variables de estado (el n´umero de ecuaciones diferenciales de primer orden) define el orden la dimensi´ on del es sistema. El oespacio de estado el espacio n-dimensional de todos los estados. Cuando el sistema es de orden n = 2, el espacio de estado es conocido como el plano de fase con coordenadas x1 y x2 . Los puntos de equilibrio o puntos singulares en el espacio de estado de un sistema no forzado; es decir, cuando u = 0, se definen como los puntos en donde los estados del sistema permanecen por siempre. Esto implica, en un caso general, resolver la ecuaci´on x˙ = 0 cuando u = 0. Para sistemas lineales, el punto de equilibrio es siempre el origen 0 porque x˙ = Ax = 0 implica que xe = 0, donde el super´ındice e indica equilibrio.
Ejemplo A.36 La Fig. A.5 muestra un sistema masa–resorte compuesto por una masa M unida a un resorte de constante K . Determinar anal´ıtica y gr´aficamente 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
z
M=1
0
Fig. A.5: Sistema mec´anico masa–resorte.
Soluci´ on: El sistema masa–resorte est´a gobernado por la siguiente ecuaci´on diferencial lineal de segundo orden: M ¨ z + Kz = 0 (A.33) Como el sistema es de orden dos, seleccionemos como variables de estado x 1 = z y x2 = z. ˙ Este modelo din´amico con M = K = 1 produce dos ecuaciones de estado y una ecuaci´ on de salida: x˙ 1 = x2
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
x˙ 2 =
−x1
y = x1
192/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
A.3 Variables de Estado
181
Por consiguiente, las ecuaciones de estado y salida del sistema masa–resorte son:
x˙ =
x˙ = Ax x1 x= x2
x˙ 1 x˙ 2
y = Cx 0 1 A= 1 0
C=
−
1 0
Asumamos que estiramos el resorte hasta que M se encuentre en la posici´on inicial z0 . Luego soltamos el resorte, lo cual produce un movimiento oscilatorio que puede modelarse como z(t) = z0 cost. Es f´acil comprobar que la soluci´on z(t) = z0 cost verifica el modelo din´amico dado en (A.33). Usando las variables de estado definidas anteriormente resulta: x1 (t) = z0 cos t
x2 (t) =
−z0sent
Elevando al cuadrado y sumando se obtiene: x21 + x22 = z02 (cos2 t + sen2 t) = z02 La ´ultima ecuaci´on 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´on inicial de reposo z0 . tales trayectorias se muestran en la Fig. A.6. Para obtener dichas trayectorias de fase, ejecutar el programa pfl.m. Los eigenvalores del sistema masa–resorte se determinan de: det(λI
1 λ
− A) = det −λ1
= λ2 + 1 = 0
Por lo tanto: λ1 = i, λ2 = i, ambas ra´ıces imaginarias, lo cual nos informa del car´acter oscilante de la respuesta del sistema, tal como se discute en la siguiente secci´ on. El u ´ nico punto de equilibrio xe = 0 del sistema se determina de:
−
e
e
x˙ = Ax = 0
e
x =
xe1 xe2
=
0 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 ´ ATICO 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´ ON PARA ESTAS CONDICIONES INICIALES DE y(2) [ts,xs]=ode45(g,[0,10],[0;x20]); % [0,10]: SIMULACI ´ ON 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
A.3.3.
Matriz de Transferencia y Estabilidad
Las ecuaciones de estado y de salida multivariables de un Sistema Lineal e Invariante con el Tiempo (SLIT) sujeto a los vectores de disturbio v en los estados y w en las salidas, los cuales se asumen conocidos, se representan como:
x˙ = Ax + Bu + Ev y = Cx + Du + Fw
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
(A.34)
193/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
182
Matem´ atica para Sistemas Continuos PLANO DE FASE x1 VS x2
1 0.8 0.6 0.4 2 0.2 x D A D I 0 C O L E V−0.2
−0.4 −0.6 −0.8 −1 −1
−0.8
−0.6
−0.4
−0.2
0 0.2 POSICIÓN x1
0.4
0.6
0.8
1
Fig. A.6: Plano de fase mostrando las trayectorias de estado (Ejemplo A.36). Donde E y F son matrices disturbio tambi´ en conocidas. El sistema es invariante con el tiempo porque todas sus matrices son constantes. Si v y/o w fueran vectores estimados o estad´ısticos, entonces el SLIT en cuesti´ on ser´ıa estoc´astico. El sistema SLIT libre de disturbios se determina haciendo v = w = 0 en (A.34):
x˙ = Ax + Bu y = Cx + Du
(A.35)
La matriz de transferencia (MT) del sistema SLIT se halla aplicando la transformada de Laplace en (A.35) con x(0) = y(0) = 0 (condiciones iniciales nulas): sX(s) = AX(s) + BU(s)
Y(s) = CX(s) + DU(s)
(A.36)
Despejamos X(s) de la primera relaci´on de (A.36) y la reemplazamos en la segunda relaci´on. El resultado es:
Y(s) = [C(sI
− A)−1B + D]U(s) = G(s)u(s)
(A.37)
donde s es la variable laplaciana, I es la matriz identidad y G(s) es la MT:
G(s) = C(sI
− A)−1B + D
Ejemplo A.37 Determine la MT del sistema siguiente, empleando matem´atica simb´olica: x˙ 1 =
x1 + x2 + 2u1
−
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
y1 = x1
u2
−−5u2
x˙ 2 = 2x1 y2 =
3x2 + u1
−x2 −− 3u1
2u2
−
194/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
A.3 Variables de Estado
183
Soluci´ on: Las ecuaciones de estado y de salida correspondientes son: x˙ = Ax + Bu
x=
A=
y = Cx + Du
− − − − − − − − − − 1 2
1 3
;
x1 x2
B=
;
2 1
y1 y2
y= 1 2
;
;
C=
u1 u2
u=
1 0
0 1
;
D=
0 3
5 0
El programa mtrans.m determina la MT pedida. El resultado es:
G(s) = C(sI
A)−1 B + D =
2s+7 s2 +4s+1
5s2 +21s+10 s2 +4s+1
3s2 +13s+8 s2 +4s+1
2s+4 s2 +4s+1
% mtransf.m C ´ ALCULO DE LA MATRIZ DE TRANSFERENCIA clear all; close all; clc; syms s; A=[-1 1;2 -3]; B=[2 -1;1 -2]; C=[1 0;0 -1]; D=[0 -5;-3 0]; I = [1 0;0 1]; G = C*inv(s*I-A)*B + D; pretty(simplify(G))
Estabilidad Cuando las se˜ nales y y u son unidimensionales, la ecuaci´on (A.37) se convierte en la FT del sistema SLIT y se puede representar como la relaci´on entre dos polinomios
A(s) y B(s) como sigue:
y(s) = G(s) = [C(sI u(s)
− A)−1B + D] = AB(s) (s)
(A.38)
En general, la ecuaci´ on caracter´ıstica del sistema SLIT (ecuaci´on (A.35)) se obtiene de: (s) = det(sI A) = 0 (A.39)
A
−
Las ra´ıces de (A.39) son los eigenvalores de la matriz de estado A, tal como se trat´o en (A.23). Los eigenvalores de un sistema SLIT determinan la estabilidad del sistema alrededor de un punto de equilibrio xe en el espacio de estado como sigue: El sistema SLIT no forzado x˙ = Ax (ecuaci´ on (A.35) con u = 0 es estable, siempre que todos sus eigenvalores (ra´ıces de (A.39)) posean parte real negativa. Cuando al menos uno de tales eigenvalores posea parte real positiva o cero, entonces el sistema es inestable. Notar que todas las funciones de transferencia de la matriz G del ejemplo A.37 poseen un mismo denominador com´ un: el polinomio (s) = s2 +4s+1. Este polinomio es tambi´en la ecuaci´on 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 x˙ = Ax posee un solo punto de equilibrio: el origen, debido
A
e
a que la soluci´on de x˙ = Ax = 0 es x = 0. Por consiguiente, un SLIT no forzado es estable, cuando el estado x del sistema tiende al estado de equilibrio xe = 0
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
195/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
184
Matem´ atica para Sistemas Continuos
para cualquier estado inicial finito x(t0 ), donde t0 es el tiempo inicial. Por ejemplo, el sistema de primer orden x˙ = a x donde a > 0, es inestable porque su soluci´on x(t) = x(0)eat no tiende al estado de equilibrio xe = 0 cuando t para cualquier estado inicial x(0).
→∞
Tipos de Puntos Singulares en SLITs de 2do Orden Un SLIT de orden dos no forzado se describe mediante la siguiente ecuaci´on matricial: x˙ 1 a11 a12 x1 = Ax = x˙ = x˙ 2 a21 a22 x2
Para este sistema, el u ´ nico punto singular o de equilibrio es xe = 0 (el origen). Los dos eigenvalores λ1 y λ2 de la matriz de estado A se determinan de su ecuaci´on caracter´ıstica: det(λI A) = 0. Dependiendo de la ubicaci´on de los eigenvalores λ1 = σ1 + jω 1 y λ2 = σ2 + jω 2 en el plano σ versus jω, el punto de equilibrio correspondiente presenta ciertas caracter´ısticas, tal como se ilustra en la Fig. A.7, en donde los puntos negros sobre los gr´aficos jω versus σ representan tales eigenvalores. Por ejemplo, si λ1 < 0 y λ2 > 0 (caso (c)), las trayectorias en el plano de fase forman una figura denominada silla de montar. El punto singular silla de montar es inestable debido a la presencia del eigenvalor positivo. El caso (f ), analizado tambi´ en en el ejemplo A.36, corresponde a un sistema oscilante porque los eigenvalores son imaginarios puros. Las trayectorias de estado en este caso forman un punto centro.
−
A.3.4. Controlabilidad y Observabilidad Controlabilidad Completa Se dice que un SLIT continuo es controlable si es que existe un vector u(t) de orden m realizable y capaz de trasladar el estado x(t) de orden n del sistema, desde un estado inicial x(t0 ) hacia cualquier estado final x(tN ) en un tiempo finito tN . Si todos los estados son controlables, se dice que el sistema es completamente controlable o que posee controlabilidad completa. Sin demostraci´on se establece que en general, para que el sistema x˙ = Ax + Bu sea completamente controlable, la siguiente matriz M de orden n nm:
×
M=
B AB
···
An−1 B
(A.40)
denominada matriz de controlabilidad, debe ser de rango n. Para ahondar un poco en el tema de controlabilidad, a continuaci´on se analiza un caso especial.
Caso Especial: Eigenvalores de A no se Repiten Si los eigenvalores de A son distintos, entonces reemplazando la transformaci´on lineal x = Ex∗ en x˙ = Ax + Bu, donde E es la matriz de vectores propios (ver subsecci´ on A.2.5), y despejando x∗ se obtiene: 1
x˙ ∗
=
1
E− AEx∗ + E− Bu = Λx∗ + B∗ u
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
(A.41)
196/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
A.3 Variables de Estado
185
jω
jω
x2
x2
x1
σ
x1
σ
λ1 λ 2
λ1 λ 2 (b)
(a) jω
x2
jω
λ1
λ1
x1
σ
x2
x1
σ
λ2 λ2 (c)
jω
λ1
(d) jω
x2
x2
λ1 x1
σ
x1
σ λ2
λ2
(f) (e)
Fig. A.7: 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.
x˙ ∗1 x˙ ∗2 .. . x˙ ∗n
=
λ1
0 λ2 ..
0
. λn
x∗1 x∗2 .. . x∗n
+
b∗11 b∗21 .. .
b∗12 b∗22 .. .
··· ···
b∗1m b∗2m .. .
b∗n1 b∗n2
···
b∗nm
.. .
u1 u2 .. . um
De la ecuaci´on (A.41) podemos aseverar que para controlabilidad completa, ninguna fila de B∗ = E−1 B debe de ser nula. Si por ejemplo, la variable de estado x2 (la cual est´a asociada a x∗2 y al eigenvalor λ2 ) es no controlable, entonces la segunda fila de
B∗ tiene que ser nula. Si este es el caso, de la ecuaci´on (A.41) se obtiene: x˙ ∗2 = λ2 x∗2 + 0u1 + 0u2 +
··· + 0um
de donde claramente se observa que ninguna fuerza de control est´a actuando sobre la variable x∗2 .
Controlabilidad Completa a la Salida El sistema SLIT descrito en (A.44) con dimensiones Ann , Bnm , C pn y D pm es completamente controlable en la salida si el rango de la siguiente matriz de orden p (n + 1)m iguala al orden p del vector de salida y del sistema:
×
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
[CB CAB CA2 B
···
CAn−1 B D]
(A.42)
197/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
186
Matem´ atica para Sistemas Continuos
Observar que (A.42) requiere la presencia del t´ermino Du en la ecuaci´on de salida dada en (A.35).
Ejemplo A.38 En el programa cont1.m se determina la controlabilidad completa y de la salida de un SLIT con ecuaci´on de estado x˙ = Ax + Bu y ecuaci´on de salida y = Cx + Du. % cont1.m CONTROLABILIDAD COMPLETA DE UN SLIT clear all; close all;clc; A = [2 2 -1;2 3 0;-1 0 2]; B = [0 2;-1 0;2 1]; C = [1 0 1;-2 3 0]; D = [1 -1;0 3]; % n = 3; p = 2; M = ctrb(A,B); % M = [A A*B A^2*B]: MATRIZ DE CONTROLABILIDAD rankM = rank(M); % rankM = 3 = n => SISTEMA COMPLETAMENTE CONTROLABLE CS = [C*B C*A*B C*A^2*B D]; rankCS = rank(CS); % rankCS = p = 2 => SISTEMA COMPLETAMENTE CONTROLABLE A LA SALIDA
Observabilidad Completa Un sistema SLIT es completamente observable si alg´un estado x(t), incluyendo el estado inicial x(t0 ), se puede determinar partiendo de la observaci´on 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´on se establece la condici´on de estabilidad completa. Para que un sistema sea completamente observable, es necesario que el rango de la denominada matriz de observabilidad N de dimensi´on np p :
≤ ≤
×
N=
C CA .. . CAn−1
=
CH AH CH
···
(AH )n−1 CH
H
(A.43)
posea rango n (rango completo). En (A.43), el super´ındice H indica operaci´on hermitiana. Se sabe que si todas las matrices son reales, entonces la operaci´on hermitiana se reemplaza por la operci´on transpuesta. Si existe una transformaci´on lineal x = Ex∗ de modo tal que E−1 AE = Λ, donde Λ es la matriz diagonal cuyos elementos λi son los eigenvalores de A, entonces (??) toma la forma:
x∗ = eΛt x∗ (t0 )
x˙ ∗ = E−1 AEx∗ = Λx∗
Luego:
y = CEx∗ = CEeΛt x∗ (t0 ) = CE
eλ1 t
0 eλ2 t ..
0
. eλn t
x∗1 (t0 ) x∗2 (t0 ) .. . x∗n (t0 )
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´on de observabilidad completa.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
198/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
A.3 Variables de Estado
187
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
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
A.3.5.
Soluci´ on de la Ecuaci´ on de Estado de SLITs Continuos
En la subsecci´on A.3.3, ecuaci´ on (A.35), vimos que la din´amica linealizada de un sistema (sin la presencia de disturbios) se representa en el espacio de estado mediante sus ecuaciones de estado y de salida:
x˙ = Ax + Bu;
y = Cx + Du
(A.44)
La soluci´on de la ecuaci´on de estado anterior, dado un estado inicial x(t0 ), es:
x(t) = eA(t−t0 ) x(t0 ) +
t
eA(t−τ ) Bu(τ )dτ
t0
t
= Φ(t
− t0)x(t0) +
Φ(t
t0
− τ )Bu(τ )dτ
(A.45)
donde:
−
Φ(t t0 ) = e
A(t t0 )
−
=
∞ Aν (t − t )ν 0
−
= I + A(t t0 )+
ν !
ν =0
A2 (t
− t0)2 + A3(t − t0)3 +···
2!
3!
(A.46) es la matriz de transici´on o exponencial. La derivada total de eA(t−t0 ) resulta: deA(t−t0 ) dt
3
= A
2
− to) + A (t2!− to) + ··· A2 (t − t0 )2 + + ··· I + A(t − t0 ) + 2!
= A + A2 (t
= AeA(t−t0 ) = eA(t−t0 ) A
(A.47)
Derivando ahora (A.45) con respecto al tiempo t se obtiene: A(t t0 )
x˙ = Ae
− x(t0 ) +
t
d At e dt
t0
t
= AeA(t−t0 ) x(t0 ) + AeAt
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
t0
e−Aτ Bu(τ )dτ
e−Aτ Bu(τ )dτ + eAt e−At Bu = Ax + Bu
199/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
188
Matem´ atica para Sistemas Continuos
De esta forma se demuestra que (A.45) es la soluci´on de la ecuaci´on de estado (A.44). La representaci´on de la ecuaci´on de estado en el dominio laplaciano toma la forma: sx(s)
− x(t0)
= Ax(s) + Bu(s)
x(s) = (sI A)−1 x(t0 ) + (sI A)−1 Bu(s) = Φ(s)x(t0 ) + Φ(s)Bu(s)
−
y(s) = Cx(s) + Du(s) = C(sI
−
(A.48)
− A)−1x(t0) + [C(sI − A)−1B + D]u(s)
(A.49)
Comparando (A.48) con (A.45) podemos afirmar que:
Φ(t
A(t t0 )
− t0 ) = e
−
= L−1 [(sI
− A)−1]
(A.50)
La matriz Φ(t t0 ) se denomina la matriz de transici´on. Para incluir el tiempo inicial t0 , las integraciones en L−1 [(sI A)−1 ] se deben de hacer de t0 a t. La matriz de transferencia definida en (A.37) tambi´ en se obtiene haciendo x(t0 ) = 0 en (A.49).
−
−
Ejemplo A.40 Graficar la respuesta x(t) del sistema: x˙ = tiene la forma mostrada en la Fig. A.8.
−2x + 5u con x(0) = 3. La entrada u(t)
u(t)
1
t 0
1
2
3
4
Fig. A.8: Entrada u(t) para el ejemplo A.40.
Soluci´ on: Emplearemos la soluci´o n dada en (A.45) con A = 0 t 1, u(t) = 0, t0 = 0 y x(t0 ) = 3. Luego:
≤ ≤
x(t) = 3e−2t ;
−2 y B
= 5. Para
x(1) = 3e−2
≤ t ≤ 3, u(t) = 3−2 t , t0 = 1 y x(t0) = x(1). Luego: t 3 − τ 5 x(t) = 3e−2 e−2(t−1) + e−2(t−τ ) 5 dτ = 3e−2t + e−2t
Para 1
1
5 x(t) = 3e−2t + [7 8 Para t
2
− t − 6e2(1−t)];
8
7e2τ
5 x(3) = 3e−6 + (4 8
− e2τ τ τ τ ==t1
− 6e−4)
≥ 3 , u(t) = 0, t0 = 3 y x(t0) = x(3). Luego: x(t) = x(3)e−2(t−3)
El gr´afico de x(t), obtenido con el programa C2rpta.m se muestra en la Fig. A.9.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
200/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
A.3 Variables de Estado
189
3
2.5
2 ) t ( x A T S E1.5 U P S E R
1
0.5
0 0
1
2
3
4
5
6
7
8
9
10
TIEMPO EN SEGUNDOS
Fig. A.9: Respuesta x(t) de un SLIT de primer orden a una entrada arbitraria u(t).
% C2rpta.m RESPUESTA DE UN SLIT A UNA ENTRADA ARBITRARIA clear all; close all; clc; x_3 = 3*exp(-6)+5*(4-6*exp(-4))/8; k=1; T=10; for t=0:0.01:T x(k)=3*exp(-2*t); if t>1; x(k)= 3*exp(-2*t)+5*(7-t-6*exp(2-2*t))/8; end if t>3; x(k)= x_3*exp(-2*(t-3)); end k=k+1; end ejex = linspace(0,T,T/0.01); plot(ejex,x(1:T/0.01)); grid ylabel(’RESPUESTA x(t)’); xlabel(’TIEMPO [s]’); print -deps -f rptarb
Ejemplo A.41 Dado u(t) = 3e−t , determinar la respuesta de un sistema descrito por las siguientes ecuaciones de estado y de salida: x˙1 = 7x1 + x2 + 2u; x˙2 = 12x1 u y = 3x1 4x2 2u Condiciones iniciales: x1 (0) = 6, x2 (0) = 1. Graficar la respuesta y(t) y compararla con las respuestas obtenidas mediante discretizaci´on para los tiempos de muestreo de 0.1 s y 0.04 s.
−
−
−
−
−
−
Soluci´ on: Es f´acil determinar que las ecuaciones de estado y de salida del sistema poseen la forma x˙ = Ax + Bu y y = Cx + Du respectivamente, donde:
− − − − − − 7 1 12 0
A=
C=
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
3
4
;
;
B=
D = [ 2];
2 1
x(0) =
6 1
201/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
190
Matem´ atica para Sistemas Continuos
Seg´ un la Tabla A.1: u(s) = L[3e−t ] = 3/(s + 1). Luego, x(s) (ecuaci´ on (A.48)) e y(s) (ecuaci´on (A.49)) toman la forma:
x(s) =
s+7 12
−1 s
1 s2 + 7s + 12
=
=
− − − − − − −1
6 1
+
s 1 12 s + 7
s+7 12
6 1
1 s
−1
+
2 1
u(s)
3 s+1
2 1
6s2 +s 2 (s+1)(s+3)(s+4) s2 +77s 14 (s+1)(s+3)(s+4)
−
− −
6s2 +s 2
y(s) = Cx(s) + Du(s) =
− 3
4
(s+1)(s+3)(s+4) s2 +77s 14 (s+1)(s+3)(s+4)
−
−−
− 2
31 s+
−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 e + e + e , t≥0
= y(t) =
6
2
3
Las respuestas mostradas en la Fig. A.10 se realizaron con el programa crpta.m. Notar que se emplea la siguiente aproximaci´on de la derivada:
x(k + 1) x˙ = T
∼
x(k)
−
= Ax + Bu
→ x = x + T (Ax + Bu) ≤
donde T es el tiempo de muestreo y k = t/T es el tiempo discreto. Para T 0.04 s, las respuestas y(t) e y(kT ) pr´acticamente coinciden. Conforme T aumenta (por ejemplo para T = 0.1 s), la diferencia entre y(t) e y(kT ) es m´as notoria, lo cual nos indica que los sistemas muestreados dependen de T . Se deja como ejercicio resolver este ejemplo usando MATLAB. % crpta.m COMPARACI´ ON DE RESPUESTAS PARA DIFERENTES TIEMPOS DE MUESTREO clear all; close all; clc; A = [-7 1;-12 0]; B = [2;-1]; Cc = [3 -4]; Dc = [-2]; x = [-6;1]; T1=0.1; T2=0.04; % CONDICION INICIAL Y TIEMPOS DE MUESTREO for k = 1:100 u(k) = 3*exp(-k*T1); x = x + T1*(A*x + B*u(k)); y1(k) = Cc*x + Dc*u(k); end for k = 1:250 u(k) = 3*exp(-k*T2); x = x + T2*(A*x + B*u(k)); y2(k) = Cc*x + Dc*u(k); end t = 0:0.1:10; y = 297*exp(-t)/6 - 767*exp(-3*t)/2 + 918*exp(-4*t)/3; % GR´ AFICOS t=linspace(0,10,101); t1=linspace(0,10,100); t2=linspace(0,10,250); plot(t,y,t1,y1,’--’,t2,y2,’:’); grid ylabel(’RESPUESTAS ’); xlabel(’TIEMPO [s]’); print -deps -f crpta
Ejemplo A.42
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
202/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
A.3 Variables de Estado
191
20 T1 = 0.1 s 10
0 T2 = 0.04 s
S A T −10 S E U P S−20 E R
y(t)
−30
−40
−50
0
2
4
6
8
10
TIEMPO [s]
Fig. A.10: Respuestas para el ejemplo A.41. 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´aficamente (ver figura A.11) los principios de proporcionalidad: y2 (t) = 2y1 (t), y de superposici´ on: y3 (t) = y1 (t) + y2 (t). % C2prosup.m PRINCIPIOS DE PROPORCIONALIDAD Y SUPERPOSICI´ ON clear all; close all; clc; A = [-7 1;-12 0]; B = [2;-1]; Cc = [3 -4]; Dc = [-2]; T = 0.04; M = 100; x1 = [0;0]; x2 = x1; x3 = x1; for k= 1:M u1(k)=3; x1 = x1 + T*(A*x1 + B*u1(k)); y1(k) = Cc*x1 + Dc*u1(k); u2(k)=2*u1(k); x2 = x2 + T*(A*x2 + B*u2(k)); y2(k) = Cc*x2 + Dc*u2(k); u3(k)=u1(k)+u2(k); x3 = x3 + T*(A*x3 + B*u3(k)); y3(k) = Cc*x3 + Dc*u3(k); end t=linspace(0,M*T,M); plot(t,y1,t,y2,’--’,t,y3,’:’); grid ylabel(’RESPUESTAS’), xlabel(’TIEMPO
[s]’), print -deps -f C2prosup
Ejemplo A.43 En el sistema de la Fig. A.12 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´on de estado y su ecuaci´on 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.50) para determinar su matriz de transici´on con t 0 = 0. (f) Determinar y(t) para x(t0 ) = 0 usando (A.49). (g) Graficar las respuestas y1 (t) e y2 (t) a entradas tipo escal´on unitario.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
203/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
192
Matem´ atica para Sistemas Continuos
80 70
y3 = y1 + y2
60 50 S A T S E U P S E R
y2 = 2y1 40 30 20
y1
10 0 −10 −20
0
0.5
1
1.5
2
2.5
3
3.5
4
TIEMPO [s]
Fig. A.11: Respuestas de un sistema lineal a entradas arbitrarias. Observar que y2 (t) = 2y1 (t) (proporcionalidad) e y3 (t) = y1 (t) + y2 (t) (superposici´ on) x1
1 s+1
u1
4 s+4
x2
2
u
2 s+2 5 s+5
u3
3 s+3
x4
y1
x5
y2
x3
Fig. A.12: Sistema del ejemplo A.43
Soluci´ on: (a) Del diagrama de bloques se puede comprobar que las salidas y e y 1 2 poseen las expresiones: y1 = x2 + x3 + x4
− x5 + u3
y2 = x1
− x2 + x5 + u2
(A.51)
Operando en el bloque que tiene como salida la variable de estado x1 , se obtiene: x1 =
1 (u1 s+1
− y1 ) →
(s + 1)x1 = x˙ 1 + x1 = u1
− y1
Reemplazando y1 de (A.51) en la u ´ ltima expresi´on, se obtiene: x˙ 1 =
−x1 − x2 − x3 − x4 + x5 − u3
(A.52)
Operando del mismo modo con los otros bloques resultan: (s + 2)x2 = 2(u2
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
− x2) →
x˙ 2 =
−4x2 + 2u2
204/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
A.3 Variables de Estado (s + 3)x3 = 3(u3
193
− x5 ) →
(s + 4)x4 = 4(x1 + u2
−3x3 − 3x5 + 3u3
x˙ 3 =
x2 )
x˙ 4 = 4x1
5(x2 + u3 − − x3 + x→ → 3)
(s + 5)x5 =
4x2
4x4 + 4u2
x˙ 5 =−5x2 −−5x5 + 5x3
(A.53)
Las ecuaciones en (A.52) y (A.53) forman la ecuaci´on de estado x˙ = Ax + Bu mientras que las ecuaciones en (A.51) forman la ecuaci´on de salida y = Cx + Du, tal como se muestra a continuaci´on.
−
x˙ 1 x˙ 2 x˙ 3 x˙ 4 x˙ 5
1 0 0 4 0
=
y1 y2
=
− −
−1 −1 −1 1 −4 0 0 0 0 −3 0 −3 −4 0 −4 0 5 0 0 5 − 1 1
0 1 1 1 0 0
−
1 1
x1 x2 x3 x4 x5
x1 x2 x3 x4 x5
1 0 0 0 0
+
+
0 2 0 4 0
1 0 3 0 5
u1 u2 u3
u1 u2 u3
0 0 1 0 1 0
La MT G(s) toma la forma (ver archivo va.m):
G11 (s) G12 (s) G13 (s) G21 (s) G22 (s) G23 (s)
G(s) = s+8 G11 (s) = 2 s + 5s + 8
G13 (s) = G21 (s) =
s+4 2 s + 5s + 8
−
−
(s2 + 10s + 24)2 (s + 5)(s + 3)(s2 + 5s + 8)
G22 (s) =
G23 (s) =
−
4s4 + 14s3 4s2 139s 120 G12 (s) = 2 (s + 5s + 8)(s2 + 9s + 20)(s + 3)
s5 + 15s2 + 93s3 + 291s2 + 510s + 480 (s2 + 5s + 8)(s2 + 9s + 20)(s + 3)
4s3 + 30s2 + 91s + 120
(s + 5)(s3 + s2 + 23s + 24) Los elementos y1 (t) e y2 (t) del vector de salida y (calculados en va.m) resultan: 5 y1 = 2
y2 =
1 2
−
13 −3t 17 −5t e + e 4 16
−
5 −4t 51 − 5 t e + e 2 cos 2 16
− 394 e−3t + 165 e−5t − 32 e−4t + 183 e− 16
5 2t
√ − √ −
cos
7 t 2
7 t 2
√
5 111 7e− 2 t sen 112
√
√ √
5 99 7e− 2 t sen 112
7 t 2
7 t 2
Por otro lado, la Fig. A.13 muestra las respuestas y1 (t) e y2 (t) (Out(1) y Out(2) en el gr´afico) a los escalones u1 = 1, u2 = 1 y u3 = 1 (In(1), In(2) e In(3) en el gr´afico) obtenidas con el comando step de MATLAB. Ejecutar el archivo va.m.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
205/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
194
Matem´ atica para Sistemas Continuos
% va.m VARIOS C´ ALCULOS PARA EL EJEMPLO 2.43 clear all; close all; clc; % (a) ECUACIONES DE ESTADO Y DE SALIDA A = [-1 -1 -1 -1 1;0 -4 0 0 0;0 0 -3 0 -3;4 -4 0 -4 0;0 5 0 0 -5]; B = [1 0 -1;0 2 0;0 0 3;0 4 0;0 0 5]; C = [1 0 1 1 -1;1 -1 0 0 1]; D = [0 0 1;0 1 0]; I = eye(5); n = 5; p = 2; syms s; % (b) MATRIZ DE TRANSFERENCIA G = C*inv(s*I-A)*B + D; pretty(simplify(G)) % (c) ESTABILIDAD [E,DD]=eig(A); % DD = diag(-2.5000+1.3229i, -2.5000-1.3229i, -3.0000, -5.0000, -4.0000) % SISTEMA ESTABLE PORQUE LA PARTE REAL DE LAS RA´ ICES SON NEGATIVAS % (d) CONTROLABILIDAD Y OBSERVABILIDAD
%
% % %
M = ctrb(A,B); % MATRIZ DE = CONTROLABILIDAD M =COMPLETAMENTE [A A*B A^2*B A^3*C A^4*B] rankM = rank(M); % rankM 5 = n => SISTEMA CONTROLABLE CS = [C*B C*A*B C*A^2*B C*A^3*B C*A^4*B D]; rankCS = rank(CS); rankCS = p = 2 => SISTEMA COMPLETAMENTE CONTROLABLE A LA SALIDA N = obsv(A,C); % MATRIZ DE OBSERVABILIDAD N=[C; C*A; C*A^2; C*A^3; C*A^4] rankN=rank(N); % rankN=5=n => EL SISTEMA ES COMPLETAMENTE OBSERVABLE (e) MATRIZ DE TRANSICI´ ON Phi(t)=L^(-1)[(sI-A)^(-1)] Phi = ilaplace(inv(s*I-A)); pretty(simplify(Phi)) (f) RESPUESTAS y1(t) e y2(t) U = [1/s;1/s;1/s]; Y = G*U; y = ilaplace(Y); pretty(simplify(y)) (g) GR´ AFICOS DE LAS SALIDAS step(A,B,C,D), print -deps -f va
A.3.6.
Formas Can´ onicas SISO en el Espacio de Estado
La ecuaci´on diferencial que describe a un sistema SISO con par´ametros constantes toma la forma: dn y(t) dn−1 y(t) + a + 1 dtn dtn−1
n
n 1
−
d u(t) + b1 + ··· + bn u(t) ··· + any(t) = b0 d dtu(t) n dtn−1
(A.54)
La FT correspondiente al sistema (A.54) es: G(s) = y(s) = b0nsn + b1 snn−−1 1 + u(s) s + a1 s +
+ bn b0 + b1 s−1 + ··· + bn s−n + an s−n ······+ an = 1 + a1s−1 + ···
(A.55)
En (A.38) vimos que la FT tambi´en se puede formular como: y(s) = G(s) = [C(sI u(s)
− A)−1B + D]
que corresponde al sistema SLIT en el espacio de estado: x˙ = Ax + Bu; y = Cx + Du. Tal sistema posee diversas representaciones notables en el espacio de estado. Dichas representaciones se denominan formas can´onicas. La transformaci´on can´onica tratada en el ejemplo A.34 es una de ellas. Otras formas can´onicas se describen a continuaci´on.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
206/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
A.3 Variables de Estado
195 Step Response
From: In(1)
From: In(2)
From: In(3)
1.5 1
) 1 ( t u O : o T
0.5
0
−0.5 e d u t i l p m A
−1 1.5
) 2 ( t u O : o T
1
0.5
0
0
1
2
3
0
1
2 Time (sec)
3
0
1
2
3
Fig. A.13: Respuestas y1 (t) e y2 (t) a los escalones u1 = 1, u2 = 1 y u3 = 1 (ejemplo A.43) .
Primera Forma Can´ onica Controlable:
x ˙ = y=
0 0 .. .
1 0 .. .
0
0 1 .. .
··· ··· ··· ···
0
0
−an
−an
−an
b
− an b0
n
1
−
2
−
bn
− an
1
−
0 0 .. .
1 2
1
n−1
−a1
1 b0
···
−
x x ... x
xn
x ˙ =
0 0 .. .
1 0 .. .
0 −an
0 1 .. .
0
0
−an
1
−
−an
y=
donde: β 0 = b0 , β 1 = b1
··· ···
2
−
1
··· ···
0 0 .. .
a1 β 0 , β 2 = b2
2
1
0 ··· 0
x x ... x
1
n−1
−a1
1
b1 − a1 b0
Segunda Forma Can´ onica Controlable:
xn
0 0 + ... u 0 x+ b u
(A.56)
0
β β + ... β
1 2
n−1
β n
u
x + β u
a1 β 1
0
(A.57)
a2 β 0 , etc. Generalizando:
− − a1β n−1 −−· · · − a−n−1β 1 − anβ 0
β n = bn
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
207/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
196
Matem´ atica para Sistemas Continuos
Tercera Forma Can´ onica Controlable:
−a 1 0 x ˙ = ... 0 y= b 1
−a2
··· ··· ···
−an
0
···
1
0 1 .. .
1
− a1 b0
−an
−
1
0 0 .. .
0 0 .. .
1 2
n−1
0
b2 − a2 b0
x x ... x
xn
bn − an b0
···
1 0 + ... u 0 0 x +b u
(A.58)
0
Primera Forma Can´ onica Observable:
0
0 1 0
··· ···
x ˙ = . 0
. 0 0 0
0 0 0 0
n−1
xn
0 ··· 0
bn − an b0 bn 1 − an 1 b0 −
. x
. −a2 −a1
0
x1 x2
−
. . ··· 1 0 ··· 0 1 y=
−an −an 1
+
−
u
. b2 − a2 b0 b1 − a1 b0
x +b u
1
(A.59)
0
Segunda forma can´ onica observable:
−a −a ... x ˙ = −−aa
1 2
n−1 n
1 0 ··· 0 1 ··· .. .. . . 0 0 ··· 0 0 ··· y=
1
x x ... xx
0 0 0 0 .. .. . . 0 1 0 0 0
b b + b b 0··· x + b u 1 2
.. . 1 − an 1 b0 n − an b0
n−1
n−
n
···
0
− a1 b0 2 − a2 b0 1
−
u (A.60)
0
Forma Can´ onica Diagonal (eigenvalores no repetidos) Formulando (A.55) como: G(s) =
+ bn−1 s + bn y(s) b0 sn + b1 sn−1 + = = b0 + u(s) (s p1 )(s p2 ) (s pn )
··· − ··· −
−
n
− i=1
ci s pi
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: ci = l´ım [(s s pi
→
− pi)G(s)]
Luego, la forma can´onica diagonal es:
x˙ x˙ ... x˙
1 2
n−1
x˙ n
λ0 = . .. 0
1
y=
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
c
1
0 λ2 .. .
··· ···
0 0 .. .
0
···
λn
c2
···
cn
1 1 + ... u
x1 x2 .. . xn
1
x+ b u 0
(A.61)
208/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
A.3 Variables de Estado
197
Forma Can´ onica de Jordan (eigenvalores repetidos) Describiremos la forma can´ onica de Jordan con un ejemplo. Supongamos que (A.55) toma la forma: G(s) =
y(s) b0 sn + b1 sn−1 + + bn−1 s + bn B(s) = = u(s) (s p1 )3 (s p4 )2 (s p6 ) (s pn ) A(s)
−
··· − ··· −
−
c1 c2 c3 c4 c5 = b0 + + + + + + 3 2 2 (s p1 ) (s p1 ) s p1 (s p2 ) s p2
−
−
−
−
−
8
− i=6
ci s pi
donde los eigenvalores p1 y p2 se repiten tres y dos veces respectivamente, y el resto, p6 , p7 y p8 no lo son. Las constantes b0 , ci , i = 1, . . . , 8 y los eigenvalores p1 , p2 , p6 , p7 y p8 se calculan empleando el comando [r,p,k] = residue(B,A) (ver ecuaci´on (A.5)). La forma can´onica de Jordan es (notar la ubicaci´on de los ceros y unos en el vector que multiplica a u):
x˙ =
p1 1 0 0 0 0 0 0 0 p1 1 0 0 0 0 0 0 0 p1 0 0 0 0 0 0 0 0 p2 1 0 0 0 0 0 0 0 p2 0 0 0 0 0 0 0 0 p6 0 0 0 0 0 0 0 0 p7 0 0 0 0 0 0 0 0 p8
y=
x1 x2 x3 x4 x5 x6 x7 x8
c1 c2 c3 c4 c5 c6 c7 c8 c9
+
−
−
−
u
x + b0 u
y(s) c1 c2 c3 c4 c5 = b0 + + + + + + 3 2 2 u(s) (s p1 ) (s p1 ) s p1 (s p2 ) s p2
−
− 0 0 1 0 1 1 1 1
−
8
i=6
(A.62)
ci (A.63) s pi
Ejemplo A.44 En el programa C2forca1.m se determinan varias formas can´onicas para: G(s) =
− 2.8s−1 − 0.65s−2 + 6.8s−3 − 4.25s−4 − 1.3s−5 + 1.2s−6 1 2 3 4 5 6 1 + 1.3s− − 1.69s− − 0.345s− + 0.49s− + 0.02s− − 0.04s− ´ 1
% C2forca1.m FORMAS CANONICAS clear all; close all; clc; b0=1; b1=-2.8; b2=-0.65; b3=6.8; b4=-4.25; b5=-1.3; b6=1.2; a1=1.3; a2=-1.69; a3=-0.345; a4=0.49; a5=0.02; a6=-0.04; B = [b0 b1 b2 b3 b4 b5 b6]; % B(s): POLINOMIO DEL NUMERADOR A =[1 a1 a2 a3 a4 a5 a6]; % A(s): POLINOMIO DEL DENOMINADOR roots(A); % RA´ I CES DE A(s): 0.5, 0.5, 0.5, -0.4, -0.4, -2 % EL SISTEMA ES INESTABLE DEBIDO A LA RA´ IZ TRIPLE 0.5 % 2DA FORMA CAN´ O NICA CONTROLABLE: dx/dt = Acc*x + Bcc*u; y = Ccc*x + Dcc*u beta0 = b0; beta1 = b1-a1*beta0; beta2 = b2-a1*beta1-a2*beta0; beta3 = b3-a1*beta2-a2*beta1-a3*beta0;
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
209/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
198
Matem´ atica para Sistemas Continuos
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´ O 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 0 1 1 0 0 0 0 0 -a3 -a4 0 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´ O NICA DE JORDAN: dx/dt = Aj*x + Bj*u; y = Cj*x + Dj*u [c,p,k] = residue(B,A); % EXPANSI´ ON 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 Conocido el sistema x˙ = Ax + Bu, y = Cx + Du, determinar la ecuaci´ on de estado y la ecuaci´on de salida en su forma can´onica de Jordan: x˙ = A j x+ B j u, y = C j x+ D j u. Demuestre que las matrices A y A j poseen los mismos eigenvalores y que ambas representaciones de estado generan la misma funci´on de transferencia.
Soluci´ on: El siguiente programa resuelve las preguntas planteadas. % C2forca2.m FORMA CANONICA DE JORDAN DE dx/dt + A*x + B*u; y = C*x + D*u clear all; close all; clc; A = [0 1 0 3;0 -1 1 1;0 0 0 1;0 0 -1 -2]; B = [1;0;-4;0]; C = [1 0 0 0]; D = [-2]; [num,den] = ss2tf(A,B,C,D); eigA = eig(A); % EIGENVALORES DE A: eigA = [-1, -1, -1, 0] [c,p,k] = residue(num,den); % EXPANSION EN FRACCIONES % c = [-8 -8 0 9]’; p = [-1 -1 -1 0]; k = -2; c1=c(1); c2=c(2); c3=c(3); c4=c(4); p1=p(1); p2=p(2); p3=p(3); p4=p(4);
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
210/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
A.4 Discretizaci´ on Directa
199
% dx/dt = Aj*x + Bj*u; y = Cj*x + Dj*u Aj = [p1 0 0 0;0 p1 1 0;0 0 p1 0;0
0
0
p2];
Bj = [0;1;1;1]; Cj = [c1 c2 c3 c4]; Dj = [k]; [numj,denj] = ss2tf(Aj,Bj,Cj,Dj); % SE VERIFICA: num=numj, den=denj eigAj = eig(Aj); % EIGENVALORES DE Aj Y A SON IGUALES: [-1, -1, -1, 0]
A.4.
Discretizaci´ on Directa
Discretizaci´ on de la Integral Es bastante u ´ til discretizar directamente modelos din´ amicos que contengan integrales y derivadas. La integral de una curva e(t); es decir, el ´area debajo de dicha curva, se puede aproximar empleando una sumatoria de rect´ a ngulos de la forma T e(iT ) (Fig. A.14(a)) o trapezoides de la forma: e(T i) + e(T i + T ) T 2 tal como se observa en la Fig. A.14(b), donde T es el tiempo de muestreo. Los siguientes ejemplos ilustran tal aproximaciones. e(t)
e(t)
e(iT)
t=iT
T
e(iT+T)
e(iT)
t=iT
T
(a)
(b)
Fig. A.14: (a) Aproximaci´o n del ´area bajo la curva e(t) mediante rect´angulos. (b) Mediante trapezoides.
Ejemplo A.46 Determinar la ecuaci´on de diferencias de la siguiente integral usando tanto aproximaci´on rectangular como trapezoidal.
t
u(t) =
e(τ )dτ
0
Soluci´ on: Si empleamos sumatoria de rect´angulos para aproximar el ´area debajo de la curva e(t), se obtiene: k
u(kT )
≈
k
T e(iT ) = T
i=0
k 1
e(iT ) = T
i=0
−
e(iT ) + T e(kT ) = u(kT
i=0
u(kT )
u(kT
T ) = T e(kT )
− − u(k) = u(k − 1) + T e(k)
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
− T ) + T e(kT ) (A.64)
211/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
200
Matem´ atica para Sistemas Continuos
donde k = t/T es el tiempo discreto. En la expresi´on (A.64), denotada como la ecuaci´on discreta de la integral, hemos omitido en el argumento su dependencia con el tiempo de muestreo T , ya que todos los t´erminos se discretizan empleando dicho tiempo. Para el otro caso, empleamos sumatoria de trapecios para aproximar el ´area debajo de la curva e(t): k
u(kT )
≈ T
e(iT
k 1
− T ) + e(iT )
= T
2
i=1
−
− T ) + e(iT ) + T e(kT − T ) + e(kT ) 2
i=0
= u(kT u(kT )
e(iT
2
− T ) + T e(kT − T )2 + e(kT )
− u(kT − T ) = T 2 [e(kT − T ) + e(kT )]
u(k) = u(k
− 1) + T 2 [e(k − 1) + e(k)]
(A.65)
Discretizaci´ on de la Derivada T´ erminos que contengan derivadas pueden discretizarse empleando diferencias por atraso: de(t) dt de(t) ˙ dt
e(kT ) − e(kT − T ) e(k) − e(k − 1) = = ≈ ∆e(kT ) T T T ∆e(kT ) ˙ e(t) ˙ − e(t ˙ − T ) ∆e(kT ) − ∆e(kT − T ) e¨(t) ≈ = = T T T 2 e(k) − e(k − 1) − [e(k − 1) − e(k − 2)] = e(k) − 2e(k − 1) + e(k − 2) T 2 T 2
= e(t) ˙ = = .. .
(A.66)
Si la discretizaci´on de la derivada se realiza por adelanto, entonces las diferencias son de la forma: de(t) dt de(t) ˙ dt
e(kT + T ) − e(kT ) e(k + 1) − e(k) = = ≈ ∆e(kT ) T T T ∆e(kT ) ˙ e(t ˙ + T ) − e(t) ˙ ∆e(kT + T ) − ∆e(kT ) e¨(t) ≈ = = T T T 2
= e(t) ˙ =
e(k + 1) = .. .
e(k)
−
[e(k)
−T 2
e(k
−
1)]
−
e(k + 1) =
−
2e(k) + e(k T 2
1)]
− (A.67)
Ejemplo A.47 El controlador PID se emplea en m´as del 90 % de los circuitos de control existentes en la industria. Este controlador se formula en la ecuaci´on (A.68), donde K c es la ganancia proporcional, T i es el tiempo integral y T d es el tiempo derivativo. Determinar la ecuaci´on de diferencias de dicho controlador. En un primer caso emplear aproximaci´ on rectangular y luego usar aproximaci´on trapezoidal. t
u(t) = K c e(t) + 1 T I
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
0
e(t)dt + T D de(t) dt
(A.68)
212/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
A.5 Sistemas con Tiempo Muerto
201
Soluci´ on: Empleando las relaciones (A.64) y (A.66) en (A.68) se obtiene: u(k) = K c
u(k
− 1) = K c
e(k) +
e(k
−
T T I
k
e(i) +
i=0
T 1) + T I
k 1
−
i=0
T D [e(k) T
− e(k − 1)]
T D e(i) + [e(k T
− 1) − e(k − 2)]
k k−1 Teniendo en cuenta que: i=0 e(i) = i=0 e(i) + e(k), restamos las expresiones anteriores y despejamos u(k) para obtener la siguiente ecuaci´on de diferencias del controlador PID:
u(k) = u(k
1) + q e(k) + q e(k 0
−
donde:
T T D q0 = K c 1 + + ; T i T
1
q1 =
1) + q e(k 2
−
2)
T D K c 1 + 2 ; T
−
(A.69)
− q2 = K c
T D T
Si la integraci´on emplea el m´etodo trapezoidal, entonces: u(k) = K c
u(k
1 e(k) + T I
− −
− 1) = K c
e(k
− − − k
T
e(i
1) + e(i) T D + [e(k) 2 T
i=1
k−1 1) + 1 T e(i T I
− e(k − 1)]
1) + e(i) + T D [e(k 2 T
i=1
− 1) − e(k − 2)]
Restando las expresiones anteriores teniendo en cuenta que: k
[e(i
k 1
1) + e(i)] =
i=1
−
[e(i
1) + e(i)] + e(k
i=1
− 1) + e(k)
y despejando u(k) obtenemos una expresi´on similar a (A.69), donde: q0 = K c 1 +
A.5.
T D T
+
T 2T I
;
q1 =
K c 1 + 2
−
T D T
Sistemas con Tiempo Muerto
T
− 2T I
;
q2 = K c
T D T
En algunos sistemas industriales, el tiempo muerto se debe de tomar en cuenta cuando por ejemplo existe un retardo considerable hasta que la se˜nal de control llegue al actuador. En otro caso, dicho retardo aparece cuando el punto de medici´on est´a lejos de la zona de inter´es, por ejemplo, cuando en la planta s´ olo se pueden instalar sensores lejos de la zona de inter´es para la medici´ on. Este tiempo muerto puede existir en la entrada u(t), en la salida y(t) o en el vector de estado x(t) del sistema, tal como se ilustra a continuaci´on:
x˙ (t) = Ax(t
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
− τ x) + Bu(t − τ u)
y(t
− τ y ) = Cx(t) + Du(t)
(A.70)
213/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
202
Matem´ atica para Sistemas Continuos
Donde τ x , τ u y τ y son los tiempos muertos. En el dominio continuo, el tiempo muerto τ se modela mediante la siguiente expresi´on de la transformada de Laplace: e−τ s . Si τ = d T , donde d = 1, 2, . . . y T es el tiempo de muestreo, y definiendo la unidad de desplazamiento discreto como: eτ s = z, entonces, en el dominio discreto, el tiempo muerto toma la forma z −d . Este tiempo muerto puede existir en la entrada, en la salida o en el vector de estado del sistema, tal como se ilustra a continuaci´on:
x(k + 1) = Gx(k
− dx) + Hu(k − du)
y(k + dy ) = Cx(k)
(A.71)
donde los tiempos muertos dk , du y dy toman valores enteros positivos. Resulta u ´ til emplear la aproximaci´on de Pad´ e para modelar el tiempo muerto en el dominio continuo: e−τ s = 1
− sτ + !21 (sτ )2 − !31 (sτ )3 + ··· = num(s) den(s)
Con una aproximaci´on de tercer orden podemos acomodar retardos de fase de hasta 200o (3.5 rad) [12], lo cual es suficiente para capturar el efecto del tiempo muerto en muchas aplicaciones. Tal aproximaci´on tiene la forma: e−τ s
1 − τ s/2 + (τ s)2 /10 − (τ s)3 /120 ≈ num(s) = den(s) 1 + τ s/2 + (τ s)2 /10 + (τ s)3 /120
La principalelventaja unadado aproximaci´ on en racional para el es transformar modelode delusar sistema en (A.70) otro modelo sintiempo tiemposmuerto muertos.
Ejemplo A.48 Comparar la respuesta a un escal´on del sistema: y(s) 10 −5.8s = e u(s) 2s + 1 con respecto la respuesta el sistema cuando el tiempo lamuerto aproxima conauna relaci´on deoriginada Pad´ e de por tercer orden. Luego, determinar ecuaci´ osen de estado aproximada del sistema.
Soluci´ on: El programa ejpade.m resuelve el problema planteado y los resultados se ilustran en la Fig. A.15. % ejpade.m SISTEMAS CON TIEMPO MUERTO D Y CON APROXIMACI ´ O N DE PAD´ E clear all; close all; clc; s = tf(’s’); % HABILITA FT D = 5.8; numD=-D^3*s^3/120+D^2*s^2/10-D*s/2+1; denD=D^3*s^3/120+D^2*s^2/10+D*s/2+1; % exp(-s*D) = numD/denD Gp=10/(2*s+1); G1=Gp*exp(-s*D); G2=Gp*(numD/denD); step(G1,G2,’--’) print -deps -f ejpades; sis=ss(G2); % sis: MODELO EN EL ESPACIO DE ESTADO
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
214/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
A.6 Linealizaci´ on de Sistemas Continuos
203
Step Response 10
8
6 e d u t i l p m A
4
2
exp(−sD) 0
Padé de 3er orden −2
0
5
10
15
20
25
Time (sec)
Fig. A.15: Comparaci´on de las respuestas a un escal´on del sistema y de su modelo aproximado mediante una aproximaci´on de Pad´ e de tercer orden (ejemplo A.48).
A.6.
Linealizaci´ on de Sistemas Continuos
A.6.1.
Caso SISO
El desarrollo de la serie de Taylor permite expandir una expresi´on no lineal continua Y = f (X ) alrededor de un punto de operaci´on (o estado de equilibrio) X como sigue: Y = f (X ) = f (X ) +
df dX
(X
− X ) + 1!
d2 f dX 2
(X
2!
(X=X)
− X )2 + ···
(A.72)
(X=X)
Si la expresi´on de Y depende de las n variables X 1 , . . . , Xn , entonces el desarrollo de Taylor, despreciando los t´erminos de orden m´as alto, produce:
∂f Y = f (X 1 , . . . , Xn ) = f (X 1 , . . . , X n ) + ∂X 1 +
∂f ∂X 2
Ejemplo A.49
(X 2 (X2 =X 2 )
∂f − X 2) + ··· + ∂X n
(X 1
(X1 =X 1 )
(Xn =X n )
(X n
− X 1)
− X n)
(A.73)
Linealizar la siguiente taza de reacci´on rA para el punto de operaci´on (T , C A ): E
rA = k0 e− RT C A
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
215/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
204
Matem´ atica para Sistemas Continuos
donde k0 , E y R son constantes.
Soluci´ on: Aplicando (A.73) con X 1 = T y X 2 = C A se obtiene: rA = rA + C 1 t + C 2 cA t = T T cA = C A rA = C 1 =
−
E k0 e− RT C A
∂r A ∂T
∂r A C 2 = ∂C A
(T =T )
− C A (A.74)
(C A =C A )
Las variables t y cA se denominan variables residuales o de desviaci´on.
A.6.2.
Caso MIMO
Un sistema MIMO no Lineal invariante con el tiempo de orden n se puede representar como: ˙ = f (X, U) (A.75) X Y = g(X, U)
˙1 X .. . ˙n X
=
f 1 (X, U) .. . f n (X, U)
Y 1 .. .
=
Y p
g1 (X, U) .. . g p (X, U)
U=
U 1 .. .
U m
donde f (X, U) es la ecuaci´on de estado del sistema, mientras que g(X, U) es la ecuaci´on de salida. Tanto f como g son funciones vectoriales de las variables vectoriales X y U. El desarrollo de Taylor para la ecuaci´on de estado de este sistema, resulta: ¯ X ˙ = f (X, U) + ∂ f (X, U) (X X) + ∂ f (X, U) (U U) + ∂ X ∂ U
1 ∂ 2 f (X, U) (X 2! ∂ x2
−
−
2 ¯ ¯ ) + 2 ∂ f (X, U) (X X ∂ X∂ U 2
−
− X)(U −
∂ 2 f (X, U) U ) + (U ∂ U2
− U)
− U)
2
Despreciando los t´erminos de orden dos se obtiene:
−
˙ = f (X, U) = f (X, U) + ∂ f X ∂ X ˙ X
−
f (X, U) = x˙ =
∂ f ∂ X
(X
(X,U)
∂ f ∂ U
x+
(X,U)
∂ f X) + ∂ U
u
(U (X,U)
··· +
(A.76)
(X,U)
Del mismo modo, la ecuaci´on de salida del sistema se puede formular como:
y=
∂ g ∂ X
x+
(X,U)
∂ g ∂ U
u
(A.77)
(X,U)
Por consiguiente, las formas linealizadas de (A.76) y (A.77) se puede expresar como:
x˙ = Ax + Bu
y = Cx + Du
(A.78)
donde A es la matriz de estado de orden n n, B es la matriz de distribuci´o n de orden n m, C es la matriz de salida de los estados de orden p n y D es la matriz
×
×
×
de salida de las entradas de orden p m, x = X X es el vector residual (o de desviaci´ on) de estados, u = U U es el vector residual de control, e y = Y Y es
−
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
×
−
−
216/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
A.6 Linealizaci´ on de Sistemas Continuos
205
el vector residual de la salida. Los estados estacionarios o de equilibrio de X y U son X y U respectivamente, mientras que el estado estacionario del vector de salida Y, cuando el sistema est´a controlado, es el vector de referencias o set points R; es decir: Y = R. El procedimiento de linealizaci´on significa entonces que estamos asumiendo variaciones peque˜ n as de la din´amica del sistema alrededor del estado estacionario o de equilibrio. Las matrices A, B, C y D se determinadas evaluando las siguientes matrices jacobianas:
A =
C =
∂f 1 ∂X 1
∂f 1 ∂X n
···
.. .
..
∂f n ∂X 1 ∂h 11 ∂X
.. .
∂h r ∂X 1
.. .
.
··· ··· .
∂f n ∂X n
..
.. .
···
∂h r ∂X n
∂h 1n ∂X
B=
(X,U)
D=
(X,U)
∂f 1 ∂U 1
···
.. .
..
∂f n ∂U 1 ∂h 11 ∂U
.. .
∂h r ∂U 1
.
∂f 1 ∂U m
.. .
··· ··· .
∂f n ∂U m
..
.. .
···
∂h r ∂U m
1 ∂hm ∂U
(X,U)
(A.79)
(X,U)
Ejemplo A.50 La Fig. A.16 muestra dos tanques id´ enticos colocados en cascada. La secci´on horizontal S =9 m2 de cada tanque es constante. El objetivo de control es estabilizar (controlar) la altura H 2 empleando como fuerza de control el flujo de alimentaci´on Qo . Determinar el modelo linealizado de este sistema hidr´aulico, su estabilidad y su funci´on de transferencia. Q
p 0
H1
0
ρ p
Tanque 1
γ
1
p
Q 0
g 1
ρ H2
p
Tanque 2
γ
2
Q 2
Fig. A.16: Sistema hidr´aulico.
Soluci´ on: Los flujos de salida Q1 y Q2 de los tanques se pueden modelar como:
−
Q1 = γ P 1
P 0 ;
−
Q2 = γ P 2
P 0
donde P 1 , P 2 y P 0 son las presiones en el fondo de los tanques y en el exterior respectivamente, y γ =0.4 es una constante que depende de la geometr´ıa del orificio. Si ρ=1.23 kg/m3 es la densidad del l´ıquido y g=9.81 m/s2 es la aceleraci´o n de la gravedad:
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
P 1
− P 0 = ρgH 1
P 2
− P 0 = ρgH 2
217/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
206
Matem´ atica para Sistemas Continuos
El flujo acumulado en cada tanque es: Q0
1 − Q1 = S dH dt
Q1
2 − Q2 = S dH dt
Definiendo las variables de estado X 1 = H 1 y X 2 = H 2 y la entrada U = Q0 , y resolviendo las ecuaciones anteriores para X 1 y X 2 , obtenemos: ˙ 1 = 1 U X S
√
√
− γ ρg S
−
˙ 2 = γ ρg [ X 1 X S y su correspondiente ecuaci´on de salida:
X 1 = f 1 (X, U ) X 2 ] = f 2 (X, U )
Y = h(X, U ) = X 2 Observar que las ecuaciones anteriores poseen las formas dada en (A.75)): ˙ = f (X, U ) X
Y = h(X, U ) = X 2
donde la salida Y (la funci´on g) y la entrada U son en este caso escalares, y: ˙ = X
˙1 X ˙2 X
f =
f 1 f 2
Definamos las siguientes variables residuales: x1 = X 1
X 1
x2 = X 2
− 3
X 2
u = U
−
U
−
Conociendo que U = 3 m /s, el estado estable del sistema se puede obtener de: ˙ = 1 U X 1 S
√
˙ = γ ρg X 2 S lo que resulta en:
√ − γ S ρg
−
X 1 = 0
X 1
X 2 = 0
2
X 1 = X 2 =
U γ 2 ρg
(A.80)
Aplicando el jacobiano, el sistema linealizado resulta: x˙ = A x + B u y = h(x, u) = x2 = C x
D = [0]
donde:
x=
B=
x1 x2
∂f 1 ∂U ∂f 2 ∂U
;
A=
=
(X 1 ,X 2 ,U )
∂f 1 ∂X 1 ∂f 2 ∂X 1
∂f 1 ∂X 2 ∂f 2 ∂X 2
1/S ; 0
− √ √ √
=
(X 1 ,X 2 ,U )
C=
∂h ∂X 1
γ ρg ¯1 2S X γ ρg
√
2S X 1
∂h ∂X 2
0
√
− 2S γ √ρgX
2
= [0 1]
(X 1 ,X 2 ,U )
La estabilidad y la funci´on de transferencia del sistema se computan con el programa C2tqh.m.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
218/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
A.7 Problemas
207
% C2tqh.m SISTEMA HIDR´ AULICO clear all; close all; clc; S = 9; gamma = 0.4; rho = 1.23; g = 9.81; Qoinf = 3; % PARAMETROS X1bar = Ubar^2/(gamma^2*rho*g); X2bar = X1bar; % PUNTOS DE EQUILIBRIO a11 = -gamma*sqrt(rho*g)/(2*S*sqrt(X1bar)); a21 = -a11; a22 = -gamma*sqrt(rho*g)/(2*S*sqrt(X2bar)); A = [a11 0;a21 a22]; B = [1/S;0]; C = [0 1]; D = [0]; % SISTEMA LINEAL eigA = eig(A); % EINGENVALORES: -0.0358 Y -0.0358 => SISTEMA ESTABLE [P,Q] = ss2tf(A,B,C,D); % P = [0 0 0.004]; Q = [1 0.0715 0.0013] % FUNCION DE TRANSFERENCIA: P(s)/Q(s)=0.004 /(s^2 + 0.0715s + 0.0013)
A.7.
Problemas
Problema A.1 Demostrar que AB = BA, cuando:
A= Problema A.2
− −
1 2 2
−1 2 1
− 1 1 0
B=
1 2 3 2 4 8 1 2 3
Demostrar que AB = AC, lo cual no necesariamente implica que B = C, , cuando: 1
A=
2 4
−3 2 −13 −−31
Problema A.3
B=
1
4
1 0
2 1
−12
1 1 1 2
En general: (A B)2 = A2 2AB + B2 y A2 que (A B)2 = A2 + B2 cuando:
±
±
A= Problema A.4
−
2 1 1
±
−3 −5 4 5 −3 −4
2
C=
3 2
1
−1 −2 −−25 −−11 −01
− B2 = (A + B)(A − B). Demostrar B=
− −
1 1 1
3 3 3
−
− 5 5 5
Una matriz M es idempotente cuando M2 = M. Demostrar que A2 = A y B2 = B.
A= Problema A.5
−
2 1 1
−3 −5 4 5 −3 −4
B=
− −
1 1 1
3 3 3
−
− 5 5 5
Demostrar que la siguientes matriz es peri´odica, con per´ıodo igual a 2:
A=
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
1 3 2
−2 −6 2 9 − 0 −3
219/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
208
Matem´ atica para Sistemas Continuos
Problema A.6 Demostrar que la siguientes matriz es nilpotente: 1 3 4 1 3 4 A= 1 3 4
−
Problema A.7 Dada las matrices:
A=
− − − −
−
1
1 + i 2 + 3i 1 i 2 i 2 3i i 0
− −
B=
− − −
−
i 1 + i 2 3i 1+i 2i 1 2 3i 1 0
−
demostrar que A, iB y A∗ son hermitianas, y que B y B∗ son antihermitianas.
Problema A.8
Empleando matem´atica simb´olica demostrar que: n
λ 1 0 λ
=
λn nλn−1 0 λn
Problema A.9 Empleando matem´atica simb´olica demostrar que las matrices:
A=
a2 a 1 bcd b2 b 1 acd c2 c 1 abd d2 d 1 abc
poseen el mismo determinante: (a
B=
a3 a2 a 1 b3 b2 b 1 c3 c2 c 1 d3 d2 d 1
− b)(a − c)(a − d)(b − c)(b − d)(c − d).
Problema A.10 Empleando matem´atica simb´olica hallar la derivada con respecto a x del determinante de la matriz: x 1 2 x3 A = x2 2x + 1
Problema A.11
0
3x
−2
x2 + 1
Examine la dependencia o independencia lineal del siguiente conjunto de vectores. Si el conjunto es dependiente, seleccione el m´aximo subconjunto linealmente independiente y exprese cada uno de los vectores dependientes como una combinaci´on lineal de los independientes.
x1 =
−
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
2 1 3 2 1
;
x2 =
− 4 2 1 2 3
;
x3 =
− 0 0 5 6 5
;
x4 =
− − 6 3 1 6 7
220/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
A.7 Problemas
209
Problema A.12 Si la matriz A es antisim´etrica e I + A es no singular, entonces B = (I es ortogonal. Obtenga la matriz ortogonal B de:
A= Problema A.13
− −
0 1 2
1 2 0 3 3 0
−
− A)(I + A)−1
Demostrar que los siguientes vectores son linealmente independientes y mutuamente ortogonales: T
T
x1 = [1 + i i 1] ; Problema A.14
x2 = [i 1
−i
T
0] ;
x3 = [1
−i
1 3i]
Si la matriz A es antihermitiana e I + A es no singular, entonces B = (I A)(I + A)−1 es unitaria. Obtenga la matriz unitaria B de:
−
A=
−
0 i 1+i i 0 i 1+i i 0
Problema A.15 Demostrar que el producto xH Ax es definida positiva y que el producto xH Bx es semidefinida positiva, donde:
− − 1
A=
1
1
i
1+i 6 3 i
− −
Problema A.16
−1
−3 + i 11
B=
1
1 + i 1 + 2i 1 i 3 5 1 2i 5 10
− −
Para cada ecuaci´on integro–diferencial, elaborar un programa en MATLAB para graficar la salida y(t) cuando u(t) es un escal´on unitario. Luego, elaborar un programa en Simulink para visualizar la se˜ nal y(t). Todas las condiciones iniciales son nulas. (a) = (b) = (c) =
−
(d) =
−
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
−
t dy(t) + 2y(t) 5y(t) + 4 y(τ )dτ = u(t) dt 0 d2 y(t) dy(t) + y(t) = u(t) dt2 dt t dy(t) + 2y2 (t) + 4 y(τ )dτ = u(t) dt 0 t d2 y(t) 3 y(τ )dτ = u(t) dt2 + 7y (t) 0
221/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
210
Matem´ atica para Sistemas Continuos
Problema A.17 Determinar la ecuaci´ on de estado y la ecuaci´on de salida de los sistemas:
− 5x3 = 4u1 − 3u2 + x˙ 1; x˙ 2 − x1 + 8x2 − 2x3 = −u1 2x2 − 5x3 = −3u2 − 4u2 − x˙ 3 y1 = x1 − 3x2 − u2 ; y2 = −3x1 + 7x3 + u1 − 5u2 −x1 − 8x2 + x3 + x˙ 1 = u1; 2x1 + 4x2 − 2x3 = −3u2 − u2 + x˙ 2 2x2 − 5x3 = −3u1 + 3u2 + x˙ 3 y1 = 3x1 − x2 + u1 ; y2 = −x1 − 5x3 − 5u2 6x1 + 7x2 + x˙ 1 = 4u2 ; x˙ 2 − 3x1 + 5x2 + 62x3 = −u1 − 7u2 x 6x = x˙ u + 9u 2− 3 3− 1 2 y1 = 4x1 x2 − u1 + u2 ; y2 = −3x1 + 7x2 − 5u2 3x2 − 5x3 + x˙ 1 = −3u1 + 3u2 ; x˙ 2 − 6x1 + 5x2 − 7x3 = −3u2 x1 − 2x2 − 5x3 + x˙ 3 = −3u1 y1 = x1 − u2 + 8u2 ; y2 = −3x2 + 7x3 − 9u1 − 2u2
(a)
2x1 + 3x2
(b)
(c)
(d)
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 alimentadodi(0) por una bater´ıa E de 12 V, sabiendo que R = 100 Ω, C = 1 F, L = 2 H, i(0) = 5 A y dt = 5 A/s. Partiendo de la ecuaci´on caracter´ıstica del circuito, determine la estabilidad, la frecuencia natural de oscilaci´on 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´on G(t) de respuesta al impulso δ(t), es evaluando la siguiente condici´on para estabilidad:
∞
G(τ ) dτ <
| ∞ | | | | −∞ |
t
Por ejemplo, para un integrador y(t) = 0 x(τ )dτ con y(0) = 0, su respuesta al t impulso es: y(t) = G(t) = 0 δ(τ )dτ = µ(t), que es la funci´on escal´on, la cual es igual a 1 para t 1. El sistema es inestable porque:
≥
∞
−∞
∞
G(τ ) dτ =
0
1 dτ =
∞
Aplicando este principio, determine G(t) y la estabilidad del sistema: y˙ + 2y = x.
Problema A.20 Hallar la transformada inversa de: G(s) = (s3 + s2 + 2s + 1)/(s3 + 3s2 + 2s + 3).
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
222/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
A.7 Problemas
211
Problema A.21 Graficar para varios valores del cero c, la respuesta al escal´on 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 Determine la transformada inversa de: 3s3 + 20 G(s) = s2 (s + 1)
Problema A.23 Determine la matriz de transici´on, la ecuaci´on caracter´ıstica, la estabilidad, la controlabilidad, la observabilidad (el primer elemento del vector de estado v es la salida) y la FT del sistema siguiente:
v˙ =
0 0
1
−2
v+
3
−4
u
Problema A.24 Hallar varias ecuaciones de estado y de salida can´onicas para el sistema: y(s) s3 2s + 1 = 3 u(s) s 2s2 + 3s 4
−
−
−
Problema A.25 Un motor DC empleado en los sistemas de control de posici´on angular θ y de velocidad angular θ˙ = ω, se describe mediante la relaci´o n: ω˙ = ω + u, donde u es el voltaje
−
de entrada al motor que se asume constante y de magnitud A para el intervalo 2T t 3T . Hallar θ(t) anal´ıticamente.
≤ ≤
Problema A.26 El siguiente diagrama de bloques corresponde al sistema de control autom´atico de la profundidad y de un submarino, el cual se logra generando un ´angulo de control a adecuado. Suponga que el submarino debe de navegar manteniendo una profundidad de r = 250 m. Empleando Simulink, determinar el valor de K usando el m´etodo de prueba y error que haga que la salida y siga a la referencia r con suficiente rapidez y con m´ınimo error e = r y.
−
−
Problema A.27
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
223/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
212
Matem´ atica para Sistemas Continuos r
e
a K
(s − 1)
2
y
1 s
2
s +1
Fig. A.17: Sistema de control de la profundidad de un submarino (problema A.26).
At
Sabiendo que: dedt de transici´ on es:
t=0
= A, hallar la matriz de estado A de un sistema cuya matriz 2e−t 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 Las ecuaciones que rigen el calentamiento de un cuarto son: qR = qa
− q p
qR = Ri2
qa = C t
dT i dt
q p =
T i
− T a
Rt
donde C t = 4184 J/o C es la capacitancia t´ermica, R = 20 Ω es la resistencia el´ectrica, Rt = 0.1 o C/J es la resistencia t´ermica, i(t) es una corriente de entrada tipo escal´on de magnitud 0.5 A y de duraci´on 2000 s, cuyo valor inicial es 1 A. T a es la temperatura ambiente que act´ ua como una entrada tipo escal´on de duraci´on 6000 s, cuyo valor inicial es 20 o C y su valor final es 15 o C, qR es el flujo de calor en J/s producido en R, q p es el flujo de calor en J/s que va al exterior y T i es la temperatura en o C en el interior. Elaborar un programa en Simulink para graficar las se˜ nales i(t), T a (t) y T i (t). Considerar que la temperatura T i (0) inicial en el integrador es 22 o C.
Problema A.29 En la Fig. A.18, R es un escal´on unitario y N es un disturbio escal´on de magnitud 0.1R. Emplear Simulink y usar el m´ etodo de prueba y error para determinar los par´ametros K c y K i que hagan que la salida Y siga a la referencia R con suficiente rapidez. N R
(s+7)(s+8)(s+9) Kc + Ki/s
Y
(s+1)(s+2)(s+3)(s+4)(s+5)
Fig. A.18: Sistema realimentado para el problema A.29.
Problema A.30
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
224/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
A.7 Problemas
213
Graficar las salidas usando Simulink en el siguiente sistema de ecuaciones diferenciales acopladas: dT = A(T dt
dT a = C (T a dt
− T o1)F o − B(T − T a)
− T o2)F o + D(T a − T )
donde A = C = 0.08, B = D = 0.05. Tambi´en, F o = 0.01 m3 /min, T o1 = 280K y T o2 = 350 K son perturbaciones tipo escal´on.
Problema A.31 En la Fig. A.19, R es un escal´on unitario y N es un disturbio escal´on de magnitud 0.1R. Emplear Simulink y usar el m´ etodo de prueba y error para determinar los par´ametros K c y K i que hagan que la salida Y siga a la referencia R con suficiente rapidez. N R
−3t 10e
Kc + Ki/s
Y
4s+1
2e
−2t
Fig. A.19: Sistema realimentado para el problema A.31.
Problema A.32 Para el sistema mostrado en la Fig. A.20 investigar empleando Simulink si es posible hallar las ganancias K 1 , K 2 y K 3 que hagan que y1 siga a r1 y que y2 siga a r3 con suficiente rapidez.
r1
r2
K1
K2
u
1
u2
x1
1 s+1
2
x2
4 s+4
s+2 5 s+5
r3
K3
u3
3 s+3
x4
y1
x5
y2
x3
Fig. A.20: Sistema del problema A.32
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
225/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
214
Matem´ atica para Sistemas Continuos
Problema A.33 La funci´on de transferencia de un sistema tiene la forma: y(s) 5s2 0.9167s 0.5417 G(s) = = 3 u(s) s + 0.5833s2 + 0.0417s + 0,0417
−
−
V´ıa Simulink determine: (a) su respuesta ye (t) a un escal´on unitario, (b) su respuesta yi (t) al impulso, (c) la salida y( ) para la parte (b) usando el teorema del valor final, y (d) varias ecuaciones de estado y de salida can´onicas.
∞
Problema A.34 Las poblaciones P 1 , P 2 y P 3 de tres especies en un ´area restringida est´a gobernada por las ecuaciones: ˙1 = 2P 1 + 3P 2 + 6P 3 + c1 u P ˙2 = P 3P 1 + 3P 2 + 8P 3 + c2 u ˙ P 3 = P 1 3P 2 + 2P 3 + c3 u
−
0
≤
c1
−
0
0
≤ c2
≤ c3
c<
−1 + c2 + c3
Elaborar un programa en MATLAB para graficar las respuestas P 1 (t), P 2 (t) y P 3 (t).
Problema A.35 Dada la siguiente ecuaci´on de estado: x(t) ˙ =
−4x(t) + 2u(t)
graficar x(t) sabiendo que x(0) = 1 y u(t) es la rampa mostrada en la Fig. A.21. u(t)
1
0
1
t
Fig. A.21: Funci´on rampa.
Problema A.36 Para el punto de operaci´on: x1 =
−1,
x2 =
−1,
u1 =
−2,
u2 =
−1
hallar las ecuaciones de estado y de salida lineales del siguiente sistema no lineal y determinar su estabilidad. x˙ 1 =
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
−2x21 + 3x1x2 − u31 + u2
226/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
A.7 Problemas
215 x˙ 2 =
−4x31 + 6x21x2 − 4u31 − 2u22 y1
= y2 =
3x1 3x21
−
−
4u1
2 + 6u2
+ 4x2 + 2u1
Problema A.37 En el sistema de la Fig. A.22: (a) Determinar su ecuaci´on de estado y ecuaci´on de salida. (b) Hallar su matriz de transferencia. (c) Determinar su estabilidad. (d) Hallar la controlabilidad completa, la controlabilidad completa a la salida y la observabilidad completa. (e) Determinar la matriz de transici´on con t0 = 0. (f) Hallar y1 (t) e y2 (t) donde u1 (t) y u2 (t) son entrada rampa unitaria. (f) Graficar y1 (t) e y2 (t). Se sugiere hacer un programa. u1
1 s+1
u2
2 s+2
y
1
4
y2 6
Fig. A.22: Sistema del problema A.37.
Problema A.38 Para los sistemas de control mostrados en la Fig. A.23, elabore los respectivos programas en Simulink. Por tanteo, determine los valores de P, I y D que debe de poseer el bloque PID para que la salida y(t) siga a la se˜nal escal´on deseada r(t) en presencia de la carga (o disturbio) n(t). Tambi´ en debe de verificar que cuando r(t) es nulo, la salida y(t) debe de tender a cero. La magnitud de r(t) es 10 veces la magnitud de n(t). (a) G(s) = (b) G(s) = (c) G(s) = (d) G(s) =
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
4(s + 1)(s + 2) e−2s (s + 3)(s + 4)(s + 5)(s + 6) 2(s + 1) e−3s (s + 3)(s + 4)(s + 5)(s + 6)(s + 8) s2 + 2s + 1 −s e (s + 3)4 8 e−4s (s + 3)(s + 4)(s + 5)(s + 6)(s + 7) 2 (s + 8)
227/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
216
Matem´ atica para Sistemas Continuos
n(t) r(t) PID
G(s)
y(t)
Fig. A.23: Sistema de control con presencia de disturbio.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
228/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
Ap´ endice B
Fundamentos de MATLAB y Simulink MATLAB es un lenguaje t´ecnico de c´omputo de alto nivel e interactivo que puede ser empleado para el desarrollo de algoritmos, visualizaci´on y an´alisis de datos y computaci´ on num´erica. MATLAB se emplea mundialmente en diversas aplicaciones que incluyen procesamiento de se˜ nales e im´ agenes, telecomunicaciones, dise˜ no de sistemas de control, pruebas y mediciones, modelado y an´ alisis financiero y biolog´ıa computacional. MATLAB tambi´en cuenta con una colecci´on herramientas (Toolboxes) para prop´ ositos espec´ıficos, disponibles por separado, los cuales permiten resolver ciertas clases de problemas en el ´area de su aplicaci´on. Simulink empleacontinuos, un lenguaje en bloques y se usa para modelar, simular El y analizar sistemas din´amicos discretos o h´ıbridos (combinaci´ o n de ambas). 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´ amicos existentes o aquellos construidos desde cero. En este Ap´ endice, una secci´ o n est´a dedicada a MATLAB y la otra a Simulink. Todos los archivos de esta publicaci´o n se pueden descargar del link DESCARGAS de www.ctlima.com.
B.1.
Fundamentos de MATLAB
B.1.1.
El Entorno de Trabajo de MATLAB
Luego de instalar el programa MATLAB, aparece un icono caracter´ıstico del mismo en el escritorio. Para iniciar MATLAB hacer doble click en tal ´ıcono para hacer aparecer la Fig. B.1. La interacci´on de MATLAB con el usuario es a trav´ es de ventanas. Las principales son (ver Fig. B.1): Ventana de comandos (Command Window).- Aqu´ı se ejecutan las instrucciones. Historial de comandos (Command History).- Ventana que muestra el historial de las instrucciones introducidas a trav´ es de la ventana de comandos. Directorio actual (Current Directory).- Ventana que muestra los directorios y archivos actuales.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
229/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
218
Fundamentos de MATLAB y Simulink Espacio de trabajo (Workspace).- Ventana donde aparecen las variables almacenadas en memoria. Ventana de figuras.- Las figuras aparecen cuando el usuario las realiza.
−
Para cerrar el programa, seleccionar en el men´u: File > Exit MATLAB o tipear quit en la ventana de comandos. Para obtener informaci´on detallada de cualquier t´opico relacionado con MATLAB, hacer click en el icono s´ımbolo de interrogaci´on ?, ubicado debajo de la l´ınea del men´ u de la Fig. B.1, para que aparezca la ventana Help. En el espacio Search for de tal ventana, tipear el t´opico del que desea informaci´on. Por ejemplo, si tipea save y hace click en Go, entonces la informaci´ on detallada y ejemplos sobre este comando aparecer´an en la parte derecha de la ventana Help.
Fig. B.1: El entorno de trabajo de MATLAB.
B.1.2.
Comandos y Funciones Generales
Tener en cuenta que MATLAB NO HACE la distinci´ on entre may´ usculas y min´ usculas en sus comandos. Se sugiere usar siempre letras min´usculas para los comandos. El s´ımbolo >> que aparece en la ventana de comandos es el prompt de
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
230/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
B.1 Fundamentos de MATLAB
219
MATLAB. Los comandos escritos despu´ es del prompt requieren de un ENTER para que MATLAB los procese. El formato siguiente: >> help roots ENTER , es u ´til cuando se desea tener informaci´on de un determinado comando. En este caso particular, luego de presionar la tecla ENTER, la VC (Ventana de Comandos) muestra la ayuda correspondiente al comando roots. En lo que sigue, la introducci´on de la tecla ENTER ser´a sobreentendida. El comando format long le dice a MATLAB que se quiere traba jar con 15 d´ıgitos para doble precisi´on y 5 d´ıgitos para simple precisi´on. 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, multiplicaci´on a*b, divisi´on derecha a/b, divisi´on izquierda a\b y exponenciaci´on a^b. La divisi´ on izquierda se emplea m´as con matrices. El resultado de la operaci´on a/b es igual al resultado de b\a. El orden de precedencia en las operaciones fundamentales es: ejecutar primero el par´entesis m´as interno, luego los exponentes, despu´ es la multiplicaci´ on o divisi´on (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´ ua en la siguiente l´ınea. MATLAB reconoce a las letras i y j como n´ umeros imaginarios. Es decir: i = 1yj= 1. Por ejemplo, >> 4i - 2j devuelve 0 + 2.0000i, mientras que >> 8i-j4 devuelve Undefined function or variable ’j4’. Sabemos que la divisi´on sobre cero es infinito, mientras que la divisi´o n 0/0 es indeterminada. En notaci´on MATLAB >> 20/0 devuelve Inf , mientras que >> 0/0 devuelve NaN, donde NaN est´ a por Not a Number. A continuaci´ on se describen otros comandos de utilidad general. Se recomienda leer el help del comando antes de usarlo.
√−
√−
help help Lista t´ opicos de ayuda. what Lista archivos con extensi´ on m, MAT y MEX. type Lista archivos tipo m. lookfor Busca archivos m desde el teclado. which Localiza funciones y archivos. demo Ejecuta un demo de MatLab. helpwin Ayuda en l´ınea. Se muestra en la ventana de ayuda. who Lista las variables actuales. whos Lista las variables actuales en forma extendida. load Carga variables del disco al espacio de trabajo. save Salvar variables del espacio de trabajo al disco. clear Limpia variables y funciones de la memoria. clc Despeja (limpia) la ventana de comandos.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
231/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
220
Fundamentos de MATLAB y Simulink
pwd Muestra el directorio de trabajo actual. size Muestra el tama˜ no de una matriz. length N´ umero de elementos de un vector. disp Muestra los valores de una matriz o texto. exist Chequea si est´ an definidas las variables o funciones. Devuelve 1 si x es finito y cero en otro caso. finite(x) isinf(x) Devuelve 1 si x es o , y cero en otro caso. isnan(x) Devuelve 1 si x es indeterminado y cero en otro caso. computer Devuelve el tipo de computadora. version Devuelve la versi´ on actual de MATLAB. why Devuelve respuestas breves a casi cualquier interrogante. lasterr Devuelve el u ´ ltimo mensaje de error. diary Guarda el texto de la sesi´ on de trabajo actual. unix Ejecuta comandos del sistema operativo Unix. ver Informa sobre la versi´ on de MATLAB, Simulink y Toolboxes. on acerca de la empresa Mathworks. info Da informaci´ whatsnew Informa acerca de lo nuevo de MATLAB. hostid Identifica el n´ umero del servidor host. Proporciona la fecha. date clock Proporciona el vector: [a˜ no, mes, d´ıa, hora, minuto, segundo]. calendar Proporciona el mes en curso. fix(clock) Proporciona lo mismo que clock. cd Cambiar el directorio actual de trabajo. dir Muestra el directorio actual. delete Borra un archivo u objeto gr´ afico.
∞ −∞
Por ejemplo, ingresando: >> clear, a = magic(3); b = ones(1, 3)*-5.7; >> save -ascii mydata.dat >> clear, load mydata.dat, mydata mydata = 8.0000 1.0000 6.0000 3.0000 5.0000 7.0000 4.0000 9.0000 2.0000 -5.7000 8.0000
-5.7000 6.0000
c = [8 6 4];
-5.7000 4.0000
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 u ´ ltima fila corresponde al vector c=[8 6 4 2].
B.1.3.
Creaci´ on de Archivos Tipo m
La forma m´as conveniente de procesar informaci´on en MATLAB es mediante los archivos m. Un archivo m se genera como sigue: Crear un directorio de trabajo, en donde deben de estar todos sus archivos de de trabajo, tales como archivos m, archivos de datos, etc.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
232/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
B.1 Fundamentos de MATLAB
221
Ubicarse en tal directorio de trabajo creado empleando el browser de MATLAB (el icono cuadrado con tres puntos ubicado en el extremo superior derecho de la Fig. B.1. Hacer click en el icono hoja de papel en blanco ubicado en el extremo superior izquierdo de la Fig. B.1, para abrir el editor de MATLAB. Escribir el contenido usando lenguaje MATLAB y guardarlo con un nombre arbitrario. El programa genera autom´aticamente la extensi´on m del archivo. Hay tres formas de ejecutar el archivo m generado: (1) presionando la tecla F5; (2) haciendo click en Debug Run en el men´ u 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´ u del editor.
→
Si el programa posee errores, ´estos ser´an mostrados en la ventana de comandos. Corregir tales errores y ejecutar el programa. Esta operaci´on puede repetirse pocas o varias veces dependiendo de la magnitud del programa y experiencia del programador. La ejecuci´on de un archivo m se puede parar en cualquier momento presionando simult´ aneamente las teclas Ctrl + C. El siguiente archivo de nombre miarchivom.m contiene informaci´on adicional. % miarchivom.m GENERACI´ O N DE UN ARCHIVO m. % MATLAB NO PROCESA LO QUE EST´ A A LA DERECHA DEL S ´ IMBOLO: % clear all; close all; clc; % clear: LIMPIA VARIABLES Y FUNCIONES DE LA MEMORIA. % close: CIERRA FIGURAS. % clc: LIMPIA LA VENTANA DE COMANDOS (VC) DE MATLAB % TAMBI´ E N ES V´ A LIDO ESCRIBIR: clear all, close all, clc a=7; b=-4; % DATOS, DONDE EL S´ I MBOLO ; IMPIDE QUE LA VC % MUESTRE a Y b LUEGO DE EJECUTAR miarchivom.m r=a-b; m = a*b; d = a/b; e = a^b; % OPERACIONES ARITM ´ ETICAS s=a+b % LA VC DEVUELVE s=3 LUEGO DE EJECUTAR miarchivom.m
En lo que sigue, s´olo emplearemos archivos m para explicar mediante numerosos ejemplos las bondades del lenguaje MATLAB. En tales ejemplos emplearemos tanto los comandos listados en la subsecci´on B.1.2 as´ı como otros m´as especializados.
B.1.4.
Matem´ aticas
Funciones Matem´ aticas Comunes % funcionesmat.m FUNCIONES MATEM´ ATICAS COMUNES clear all; close all; clc; % APROXIMACIONES x1=5.92; r1=ceil(x1);
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
% r1=6 (ceil REDONDEA HACIA INFINITO)
233/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
222
% %
%
%
Fundamentos de MATLAB y Simulink
r2=fix (x1); % r2=5 (fix REDONDEA HACIA CERO) r3=floor (x1); % r3=5 (floor REDONDEA HACIA MENOS INFINITO) r4=round([19.54646 13.656 -2.1565 0.78]); r4=[20 14 -2 1] (round REDONDEA HACIA EL ENTERO M´ A S PR´ OXIMO) TRIGONOMETR´ IA r5=sin(pi/2); % r5=1 (´ ANGULO EN RADIANES) r6=sind(-90); % r6=-1 (´ ANGULO EN GRADOS) r7=cosd(60); % r7=0.5 ( ´ ANGULO EN GRADOS) ´ r8=asind(1); % r8=90 (ANGULO 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´ AXIMO COM´ U N DIVISOR ENTRE 9 Y 12, r11=3 r12=lcm (10,25); % M´ INIMO COM´ UN M´ U LTIPLO ENTRE 10 Y 25, r12=50 r13=mod (-12,5); % M´ ODULO, SI y~=0, n=floor(x./y)=-3, r13=x-n.*y=3 r14=rem (12,5); % RESTO DE LA DIVISI´ O N ENTRE 12 Y 5, r14=2 ´ ´ r15=nthroot (8,3); % RAIZ CU BICA DE 8, r15=2 CON N´ UMEROS COMPLEJOS x=3+4i; r16=sign(x); % r16=x/abs(x)=(3+4i)/5=0.6+0.8i
Vectores y Matrices % vectoresymatrices.m Y MATRICES. ELEM = ELEMENTOS clear all; close all;VECTORES clc; % C´ OMO 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); r2=x(end); r3=x(2:4); r4=x(1:3:5); r5=x([3 5 1]); r6=A(2,1); r7=A(2,:); r8=A(2,2:3); r9=A(2,[3 1]); r10=A([2 1],2:3); %
% % % % % % % % % %
r1=7 r2=-6 r3=[7 -2 4] r4=[5, -2 y -6] r5=^[-2, -6, 1] r6=4 r7=[4 5 6] r8=[5 6] (2da FILA, COLUMNAS DE 2 A LA 3) r9=[6 4} r10=[5 6] (FILAS 2 y 1, COLUMNAS DE 2 A LA 3) [2 3]
r11=A(end,[1 % r11=[4 6] ´N 3]); % CONSTRUCCIO ABREVIADA DE ALGUNOS VECTORES
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
234/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
B.1 Fundamentos de MATLAB
% %
% %
% % % %
%
% % % % % % %
223
r12=(1:7); % r12=[1 2 3 4 5 6 7] r13=[1:7]; % r13=[1 2 3 4 5 6 7] r14=(1:3:10); % r14=[1 4 7 10] (ENTRE 1 Y 10 CON INCREMENTO 3) r15=(1:4:10); % r15=[1 5 9] (ENTRE 1 Y 10 CON INCREMENTO 4) r16=(50:-7:1); % r16=[50 43 36 29 22 15 8 1] r17=linspace(2,6,3); % r17=[2 4 6] (LINEAL ENTRE 2 Y 6, 3 ELEM.) r18=linspace(2,6,4); % r17=[2.0000 3.3333 4.6667 6.0000] r19=linspace(2,6); % VECTOR LINEAL ENTRE 2 Y 6 CON 100 ELEM. r20=logspace(0,2,4); % r20=[1.0000 4.6416 21.5443 100], VECTOR LOGAR´ I TMICAMENTE ESPACIADO 10^0 Y 10^2 CON 4 ELEM. EQUIDISTANTES r21=logspace (0,2); % VECTOR LOG. ENTRE 10^0 Y 10^2 CON 50 ELEM. CONSTRUCCI´ O N DE ALGUNAS MATRICES r22=zeros(3); % MATRIZ CUADRADA DE 3x3 LLENA DE CEROS r23=zeros(2,5); % MATRIZ 2 x 5 DE CEROS r24=ones(2,3); % MATRIZ 2 x 3 DE CEROS r25=rand(2,4); % MATRIZ 2 x 4 DE N ´ U MEROS ALEATORIOS ENTRE 1 Y 0 ´ CON DISTRIBUCION UNIFORME r26=randn (2,5); % MATRIZ 2 x 5 DE N´ UMEROS ALEATORIOS, DISTRIBUCI´ ON ´ NORMAL, MEDIA 0 Y DESVIACION 1: NORMAL(0,1) r27=eye(2); % MATRIZ IDENTIDAD 2 X 2 r28=eye(4,2); % MATRIZ 4 X 2 DE 1s EN LA DIAGONAL, 0s EN EL RESTO r29=magic(3); % MATRIZ M´ A GICA 3 x 3, CONTIENE N´ U MEROS 1 AL 3^2, DONDE: SUMA ELEM FILAS = SUMA ELEM COLUMNAS = SUMA ELEM DIAGONAL: 8 1 6 3 5 7 4 9 2 r30=hilb(3); % MATRIZ DE HILBERT 3 x 3 r40=invhilb(3); % INVERSA DE LA MATRIZ DE HILBERT 3 x 3 OPERACIONES B´ ASICAS CON MATRICES P=[1 2;3 4]; Q=[1 1;0 1]; R=[1+i 2+2i;3+i 4+7i]; r41=P*Q; % r41=[1 3;3 7] r42=P.*Q; % r42=[1 2;0 4] (MULTIPLICACI´ ON ELEMENTO A ELEMENTO) r43=R’; % CONJUGADA Y TRANSPUESTA DE R Y VICIVERSA r44=R.’; % TRANSPUESTA DE R r45=P+2; % SUMA 2 A CADA ELEMENTO DE A FUNCIONES PARA OPERAR CON VECTORES SEAN LOS VECTORES: x = [x1 x2 x3]; y = [y1 y2 y3]; PRODUCTO VECTORIAL: cross(x,y)=[(x2*y3-y2*x3) -(x1*y3-y1*x3) (x1*y2-y1*x2)] x1 = [1 2 3]; y1 = [4 5 6]; xcy=cross(x1,y1); % xcy=[-3 6 -3] PRODUCTO ESCALAR: dot(x,y)=x1*y4+x2*y5+x3*y6 xdy=dot(x1,y1); % xdy=32 FUNCIONES PARA EL AN´ ALISIS DE MATRICES v = [1 2 3]; >> diag (v) % CREA MATRIZ DIAGONAL CON ELEMENTOS 1, 2 Y 3 M = [1 2 3 4; 7 8 9 2; 2 4 6 8]; r46=diag(M); % r46=[1;8;6]: VECTOR CON ELEMENTOS DE LA DIAGONAL
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
235/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
224
% % % %
%
% % %
Fundamentos de MATLAB y Simulink
r47=size(M); % r47=[3 4]: DIMENSIONES DE M (3 FILAS Y 4 COLUMNAS) r48=length(M); % DEVUELVE 4 (LA DIMENSI´ O N MAYOR DE LA MATRIZ M) r49=rank(M); % r49=2 (2 ES EL RANGO DE M, VER help rank) r50=rref(M); % REDUCCI´ ON MEDIANTE GAUSS r50 = 1 0 -1 -4.6667 0 1 2 4.3333 0 0 0 0 % rank(M)=2 PORQUE EXISTEN DOS FILAS NULAS r51=tril(M); % CREA MATRIZ TRIANGULAR SUPERIOR r52=triu(M); % CREA MATRIZ TRIANGULAR INFERIOR OTRAS OPERACIONES CON MATRICES A1=[1 0 0 2 3 4 5 0 2 4 0 0]; r52=find(A1); % DEVUELVE VECTOR COLUMNA DE ´ INDICES [1;2;3,5;6;8;10] r54=reshape(A1,2,6); % r54: MATRIZ 2 X 6 A PARTIR DE COLUMNAS DE A1 r54= 1 2 4 0 0 0 3 0 4 5 2 0 r55=rot90(A1); % A1 GIRA 90 , r55 TOMA LA FORMA: 2 0 0 0 5 0 0 4 4 1 3 2 r56=rot90(A1,3); % A1 gira 270 ( 90 x 3 = 2 7 0 ) FORMEMOS LA MATRIA A2: A2=[A1 2 4 6 3]; r57=funm(A2,@sin); % CALCULA SENO DE CADA ELEMENTO DE A2 r58=expm(A2); % CALCULA MATRIZ EXPONENCIAL DE A2 DIVISI´ O N C/D RESUELVE EL SISTEMA Cx=D Y ES EQUIVALENTE A inv(C)*D. DIVISI´ O N C\D RESUELVE EL SISTEMA xD=C Y ES EQUIVALENTE A C*inv(D). 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´ O N ASCII DE a r62=abs(a); % r62=[99 97 115 97], REPRESENTACI´ O N ASCII DE a r63=double(a); % r63=[99 97 115 97], REPRESENTACI´ O N ASCII DE a r64=setstr([99 97 115 97]); % r64=casa r65=abs(’a’)-abs(’A’); % r65=32, RESTA MIN´ USCULAS MENOS MAY´ USCULAS 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 o
% % % %
o
%
% % %
o
o
Polinomios % polinomios.m POLINOMIOS
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
236/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
B.1 Fundamentos de MATLAB
225
clear all; close all; clc; % NOTACI´ O N: 5x^4 - 9x^3 + 13x^2 + 9x - 14 ==> [1 -9 13 9 -14] x = [1 -9 13 9 -14]; rx=roots(x); % rx CONTIENE RA´ I CES DE x xx = poly(rx); % DEVUELVE xx GENERADO POR RA´ I CES DE rx (xx=x) p = [1 2 7]; q = [1 3 6]; 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´ U 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´ U A p PARA CADA FILA % em= % 7 10 15 % 6 7 10 % 31 7 70
Operaciones Relacionales y L´ ogicas % operaclogicas.m OPERACIONES RELACIONALES Y L ´ OGICAS clear all; close all; clc; % OPERADORES RELACIONALES: < <= > >= == ~= % OPERADORES L´ OGICOS: & (AND) | (OR) ~ (NOT) % ORDEN DE PRECEDENCIA: ~= == <= >= < >
% % % %
a =1:9; b=5-a; % a=[1 2 3 4 5 6 7 8 9], b=[4 3 2 1 0 -1 -2 -3 -4] r1=a<6; % r1=[1 1 1 1 1 0 0 0 0], r(i)=1 SI a<6, 0 si a >= 6 r2=a==b; % r2(i)=1 SI a(i)==b(i) ES VERDADERO, 0 SI ES FALSO r3=a~=b; % r3(i)=1 SI a(i)~=b(i) ES VERDADERO, 0 SI ES FALSO r4=(a>b)&(b>-3); % r4(i)=1 SI (a(i)>b(i))&(b(i)>-3), 0 SI ES FALSO c = [Inf 0 5 -8 NaN 94]; >> exist(’c’) % DEVUELVE 1 PORQUE c EXISTE >> isnan(c) % DEVUELVE 1 SI c(i) ES NaN Y 0 SI NO ES NaN >> isinf(c) % DEVUELVE 1 SI c(i) ES Inf Y 0 SI NO ES Inf >> isfinite(c) % DEVUELVE 1 SI c(i) ES FINITO Y 0 SI NO LO ES
Creaci´ on de Funciones La forma general de una funci´on de dos variables es: function[a,b]=nombre_funci´on(x,y)
Por ejemplo, se desea crear la funci´on de nombre calculos para calcular la suma y la resta de dos n´umeros, 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 calculos.m se muestran a continuaci´on. S´olo es necesario ejecutar el archivo usacalculos.m para obtener los resultados. % calculos.m
FUNCI´ ON calculos
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
237/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
226
Fundamentos de MATLAB y Simulink
clear all; close all; clc; function[suma,resta] = calculos(x,y) suma = x + y; resta = x - y; % usacalculos.m USA FUNCI´ ON CONTENIDA EN calculos.m clear all; close all; clc; x = [1 5; 3 -2; 3 7; 4 -1; 0 2]; y = [16 -1; 0 4; 1 5; -1 0; -1 3]; [a,b] = calculos(x,y); a, b % LA VENTANA DE COMANDO VC DEVUELVE a = x+y, b = x-y
Programaci´ on ´ % programacion.m PROGRAMACI ON 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´ ON L´ OGICA 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 % GENERACI´ O N DE N´ U MEROS PRIMOS MENORES DE 100 disp(’Estos son los n´ u meros primos menores de 100’) disp(2) for i=2:100 n=2; while n <= sqrt(i) if rem(i,n)==0 n=i;
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
238/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
B.1 Fundamentos de MATLAB
227
else n=n+1; end end if n~=i disp(i) end end
An´ alisis Num´erico y de Datos % analisisnumerico.m AN´ ALISIS NUM´ ERICO clear all; close all; clc; ds=diff(’sin(7*x) ’); % DEVUELVE DERIVADA RESPECTO A x dp=diff(’(exp(x)*cos(3*x*y))’,’y’); %DEVUELVE DERIVADA PARCIAL EN y dd=diff(’(sin (x^2))’,2); % DEVUELVE SEGUNDA DERIVADA RESPECTO A x ec=feval(’cos’,pi); % EVAL´ U A EL COSENO EN pi ep=feval(’cos’, [0 pi/3 pi] ); % EVAL´ U A EL COSENO EN VARIOS PUNTOS em=feval(@cos,[0 pi/3 pi] ); % EVAL´ U A EL COSENO EN VARIOS PUNTOS fm=fminbnd(@sind,0,360); % VALOR ENTRE 0,360, sind TOMA EL M ´ INIMO ´ ´ fz=fzero(’sind’,100); % VALOR MA S PRO XIMO A 100 DONDE sind=0 fq=quad(’sin’,0,pi); % INTEGRAL DEL SENO DE 0 A pi, APROX. RECT. % analisisdatos.m AN´ A LISIS DE DATOS clear all; close all; clc; % % % % % % % % % % % % % % % % % % % %
X [5 7 9 2 9; >>= cumprod(X) % >> cumsum(X) % >> mean(X) % >> sort(X) % >> sum(X) % >> var(X) % >> max (X) % >> min (X) % >> iqr (X) % >> range(X) %
3 1 7 5 1 ;MATRIZ 3 9 2 DE 7 5PRODUCTOS ; 1 5 5 1 ACUMULADOS 8]; DEVUELVE DEVUELVE MATRIA DE SUMAS ACUMULADAS DEVUELVE LA MEDIA DE CADA COLUMNA ORDENA LOS VALORES DE CADA COLUMNA DEVUELVE SUMA DE LOS ELEMENTOS DE CADA COLUMNA DEVUELVE VARIANZA DE LOS ELEMENTOS DE C/COLUMNA DEVUELVE VALOR M´ A XIMO DE CADA COLUMNA DEVUELVE VALOR M´ I NIMO DE CADA COLUMNA DEVUELVE RANGO intercuart´ ı lico DE CADA COLUMNA DEVUELVE RANGO DE CADA COLUMNA: DIFERENCIA ENTRE ´ ´ EL M AXIMO Y EL M Y = [5 7 9 2 9 3 1 7 5 1 3 9 2 7INIMO 5 1 5 5 1 8]; >> tabulate(Y) % DEVUELVE: Value Count Percent 1 4 20.00% (EL N´ U MERO 1 APARECE 4 VECES) 2 2 10.00% (EL N´ U 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 % 9
1 3
5.00% 15.00%
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
239/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
228
B.1.5.
Fundamentos de MATLAB y Simulink
Gr´ aficos
% graficas2D.m GR´ A 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 ´ I 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)’) subplot(2,2,4), plot(x1,y4), title (’-exp(x1)’) figure(3) plot(x1,y1), title (’x1*seno(x1)*’), hold on plot (x1,y2), title (’cos(x1)’), plot (x1,y3), title (’sen(x1)*exp(x1)’), hold off figure(4) subplot(221), fplot(’sind(x)’,[0 180]), title(’sen(x) de 0 a 360 grados’) subplot(222), fplot(’x^2*sin(1/x)’,[-0.05 0.05]), title(’x^2 * sin(1/x)’) subplot(223), ezplot(’exp(x)’) % EASY PLOT DE exp(x) subplot(224), ezplot(’sin(t)’,’cos(t)’,[0 pi]) figure(5) subplot(2,1,1), ezplot(’x^2 - y^2 - 1’) x3=[-2 0 2 0 -2]; y3=[4 8 4 0 4]; subplot(2,1,2), plot(x3,y3), fill(x3,y3,’r’) % r=RED % graficas3D.m GR´ A FICAS EN 3 DIMENSIONES clear all; close all; clc; figure(6) x3=[-2 0 2 0 -2]; y3=[4 8 4 0 4]; z3=[3 5 10 5 3]; subplot(311), fill3(x3,y3,z3,’b’) % plot en 3D, b=blue subplot(312), ezsurf(’sin(x*y)’,[-2 2 -2 2]) subplot(313), x4=-720:720; y4=sind(x4); z4=cosd(x4); plot3(x4,y4,z4) figure(7) x = -10:0.5:10; y = -10:0.5:10; subplot(3,1,1), [X,Y]=meshgrid(x,y); % CREA MATRICES PARA LA MALLA Z=sin(sqrt(X .^2 + Y .^2))./ sqrt (X .^ 2 + Y .^ 2 + 0.1); mesh (X,Y,Z) % DIBUJA LA GR´ AFICA subplot(3,1,2), [X,Y] = meshgrid (-10:0.5:10); Z=sin(sqrt(X .^2 + Y .^2))./sqrt(X .^ 2 + Y .^2 + 0.1); mesh(X,Y,Z)
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
240/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
B.1 Fundamentos de MATLAB
229
subplot(3,1,3), surf (X,Y,Z) figure(8) x = -10:0.5:10; y = -10:0.5:10; [X,Y] = meshgrid(x,y); % CREA MATRICES PARA HACER LA MALLA Z = sin(sqrt(X .^2 + Y .^2))./ sqrt (X .^ 2 + Y .^ 2 + 0.1); subplot(2,2,1), contour (X,Y,Z) % DIBUJA L´ INEAS DEL CONTORNO subplot(2,2,2), pcolor(X,Y,Z) % TRANSFORMA ALTURA EN COLORES subplot(2,2,3), surf(X,Y,Z), view(10,70) % AZIMUT 10, ELEVACI´ O N 70 subplot(2,2,4), surf(X,Y,Z), view(10,-12.2), colorbar % colorbar A~ N ADE BARRA DE COLOR % >> surf (X,Y,Z), [az,el]=view % DEVUELVE AZIMUT=-37.5, ELEVAC=30 figure(11) x=-10:0.5:10; y = -10:0.5:10; [X,Y] = meshgrid(x,y); % CREA MATRICES PARA HACER LA MALLA Z=sin(sqrt(X .^2 + Y .^2))./ sqrt (X .^ 2 + Y .^ 2 + 0.1); subplot(2,1,1), [C,h]=contour(X,Y,Z); clabel(C,h) % A~ NADE ALTURAS A CONTORNOS subplot(2,1,2), M = [0 0 0; 1 0 0; 0 1 0; 0 0 1; 1 1 0]; % MATRIZ DE COLORES NEGRO, ROJO, VERDE, AZUL, AMARILLO colormap(M), surf (X,Y,Z) 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´ ON 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
B.1.6.
Matem´ atica Simb´ olica
% simbolica.m MATEM´ ATICA SIMB´ OLICA clear all; close all; clc % 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
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
241/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
230
%
% %
%
%
% %
%
%
% % %
%
Fundamentos de MATLAB y Simulink
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´ o 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 expand: DISTRIBUYE PRODUCTOS EN SUMAS Y APLICA IDENTIDADES DE SUMAS f17 = a*(x+y); r17=expand(f17); % r17=a*x + a*y f18 = (x-1)*(x-2)*(x-3); r18=expand(f18); % r18=x^3-6*x^2+11*x-6 f19 = x*(x*(x-6)+ 11)-6; r19=expand(f19); % r19=x^3-6*x^2+11*x-6 f20 = exp(a + b); r20=expand(f20); % r20=exp(a)*exp(b) f21 = cos(x + y); r21=expand(f21); % r21=cos(x)*cos(y)-sin(x)*sin(y) f22 = cos(3*acos(x)); r22=expand(f22); % r22=4*x^3 - 3*x f23 = 3*x*(x^2-1)+x^3; r23=expand(f23); % r23=4*x^3 - 3*x horner: TRANSFORMA UN POLINOMIO SIMB´ O LICO EN SU FORMA ENCADENADA f24 = x^3-6*x^2+11*x-6; r24=horner(f24); % r24=x*(x*(x-6)+11)-6 f25 = 1.1+2.2*x+3.3*x^2; r25=horner(f25); r25=x*((33*x)/10+11/5)+11/10 factor: EXPRESA f COMO UN PRODUCTO DE POLINOMIOS DE GRADO BAJO f26 = x^3-6*x^2+11*x-6; r26=factor(f26); % r26=(x-3)*(x-1)*(x-2) f27 = x^3-6*x^2+11*x-5; r27=factor(f27); % r27=x^3-6*x^2+11*x-5 f28 = x^6 + 1; r28=factor(f28); % r28=(x^2 + 1)*(x^4 - x^2 + 1) simplify: HERRAMIENTA PODEROSA PARA SIMPLIFICAR f29 = x*(x*(x-6)+11)-6; r29=simplify(f29); % r29=(x-1)*(x-2)*(x-3) f30 = (1 - x^2)/(1 - x); r30=simplify(f30); % r30=x + 1 f31 = (1/a^3+6/a^2+12/a+8)^(1/3); r31=simplify(f31); r31=((2*a+1)^3/a^3)^(1/3) f32 = exp(x)*exp(y); r32=simplify(f32); % r32=exp(x + y) f33 = cos(x)^2 + sin(x)^2; r33=simplify(f33); % r33=1 simple: ENCUENTRA UNA EXPRESI´ O N CON M´ INIMA CANTIDAD DE CARACTERES syms a positive x; f34 = (1/a^3 + 6/a^2 +12/a + 8)^(1/3); r34=simplify(f34); r34= (8*a^3 + 12*a^2 + 6*a + 1)^(1/3)/a f35 = (1/a^3+6/a^2+12/a+8)^(1/3); r35=simple(f35); % r35=1/a+2 f36 = cos(x) + i*sin(x); r36=simplify(f36); % r36=cos(x) + sin(x)*i f37 = cos(x) + i*sin(x); r37=simple(f37); % r37=exp(x*i) f38 = cos(x)^2 -sin(x)^2; r38=simple(f38); % r38=cos(2*x) f39 = cos(x) + i*sin(x); r39=simple(f39); % r39=exp(x*i) f40 = cos(3*acos(x)); r40=simple(f40); % r40=4*x^3 - 3*x pretty: HACE M´ A S VISIBLE LAS EXPRESIONES SIMB´ OLICAS
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
242/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
B.1 Fundamentos de MATLAB
231
% >> pretty(f34)
El comando pretty(f34) devuelve:
B.1.7.
1 6 12 + 2+ +8 3 a a a
1/3
Simulaci´ on de un Sistema de Control
El siguiente programa simula el sistema de control de posici´on backstepping del prototipo MRE (Manipulador Rob´otico Esf´erico). El modelo din´amico de Lagrange del MRE deducido en la subsecci´on ??, ecuaci´on (??), posee la forma:
M(q)q ¨ + P(q, q˙ )q˙ + d(q) = u
q=
q1
u=
q2
donde:
M=
M 11 0 0 M 22 M 11 = M 22 = P 11 = P 12 = P 21 = P 22 = d21 =
P=
Ra nK m K A Ra nK m K A Ra nK m K A Ra nK m K A Ra nK m K A Ra nK m K A Ra nK m K A
u2
P 11 P 12 P 21 P 22
− −
u1
d=
1 J 1 + J eq + m2 L2 sen2 q2 4 1 J 2 + J eq + m2 L2 4
Beq + n2 K m K b Ra 1 m2 L2 q˙1 senq2 cos q2 2 1 m2 L2 q˙1 senq2 cos q2 4 n2 K m K b Beq + Ra 1 m2 L2 gsenq2 2
0 d21
El dise˜ no de un controlador backstepping emplea el procedimiento descrito en la secci´ on ??, que en forma breve establece hasta el nivel de simulaci´on: (1) Definir las especificaciones de dise˜no y determinar el modelo no lineal del sistema a controlar en la forma dada en (??). (2) Determinar la ley de control backstepping dada en (??). Para ello, definir el vector de referencias deseadas qd , formular el vector de error e y el vector q˙ r :
e = z1 = q
− qd
q˙ r = q˙ d
− Kz1
donde K es una matriz diagonal con elementos k positivos. El observador se expresa como:
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
q˙ = q˙ d + Ld (q
− q)
243/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
232
Fundamentos de MATLAB y Simulink donde Ld es una matriz diagonal con elemento positivos. El vector q se puede calcular integrando q˙ . La ley de control backstepping posee la forma:
u = M(q)q ¨ + P(q, q˙ )q˙ r + d(q)
−K
˙
−
d (q
q˙ r )
−K
1
z1
en donde Kd y K1 son matrices diagonales con elementos kd y k1 positivos, respectivamente. (3) Simular el sistema de control backstepping empleando los par´ ametros de sintonizaci´on kd , k1 y d . La Fig. B.2 muestra el diagrama de flujo empleado en esta publicaci´o n para simular los sistemas de control. El archivo bscmrer.m muestra el programa en c´odigo MATLAB para simular el el control simult´aneo de las posiciones de los brazos del MRE empleando un controlador backstepping. Este archivo, que es autoexplicativo, emplea el diagrama de flujos de la Fig. B.2. El resultado de la simulaci´on se muestran en la Fig. B.3. Inicio Parámetros del sistema Parámetros de sintonización Condiciones iniciales
Lazo de control
k=1 Señales de referencia Algoritmo de control Almacenamiento de datos
¿k < N?
SI
NO Gráficos de resultados
Fig. B.2: Diagrama de flujo para la simulaci´on de un sistema de control.
% bscmrer.m CONTROL BACKSTEPPING DEL MANIPULADOR MRE. % CASO: REGULACI´ O N (REFERENCIA CONSTANTE EN EL TIEMPO) clear all; close all; clc;
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
244/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
B.1 Fundamentos de MATLAB
233
% DATOS DEL SUB-SISTEMA MEC´ ANICO d = 0.01; rd = 0.06; b = 0.25; a = 0.044; La = 0.3; Lh = 0.05; md = 0.55; mb = 0.9; ma = 0.8; mh = 0.15; g =9.81; n = 12.5; m1 = md + mb; m2 = ma + mh; L1=(mb*b+md*d)/(mb+md); L2=La+Lh; Jm = 0.0003; Jg = 0.053; Jd = md*rd^2/2; Jb = mb*a^2/6; J1 = Jd+Jb; J2 = m2*L2/3; Jeq = n^2*Jm+Jg; Bm = 0.0001; Bg = 0.01; Beq = n^2*Bm+Bg; % DATOS DEL SUB-SISTEMA EL´ ECTRICO Km = 0.0421; Kb=0.0564; Larm = 0; Ra = 5.3; KA = 12.5; % PAR´ AMETROS DE CONTROL K = 5; K1=8; Ld=10; Kd=8; % VALORES INICIALES q1 = 0; q2 = 0; dq1 = 0; dq2 = 0; qe1 = 0; qe2 = 0; % TIEMPO DE MUESTREO T (segundos) Y N´ U MERO DE ITERACIONES N T= 0.01; N=4000; A = 1; % A: MAGNITUD DE LAS REFERENCIAS DESEADAS % LAZO DE CONTROL for k=1:N; % REFERENCIAS DESEADAS qd1 Y qd2 if(k >= 0 && k <= N/4), qd1 = 0.5*A; qd2 = 0.1*A; elseif(k >= N/4 && k <= N/2), qd1 = 0.2*A; qd2 = 0.7*A; elseif(k >= N/2 && k <= 3*N/4), qd1 = 0.8*A; qd2 = 0.3*A; elseif(k >= 3*N/4 && k <= N), qd1 = 0.3*A; qd2 = 0.5*A; end Qd1(k) = qd1; dqd1 = 0; ddqd1 = 0; Qd2(k) = qd2; dqd2 = 0; ddqd2 = 0; % ERROR DE SEGUIMIENTO e1 = q1 - qd1; e2 = q2 - qd2; z11 = e1; z22 = e2; dqr1 = dqd1 - K*z11; dqr2 = dqd2 - K*z22; % OBSERVADOR dqe1 = dqd1 + Ld*(q1 - qe1); qe1 = qe1 + T*(dqe1); dqe2 = dqd2 + Ld*(q2 - qe2); qe2 = qe2 + T*(dqe2); % CONTROL M11e = Ra*(J1 + Jeq + m2*L2*sin(qe2)^2/4)/(n*Km*KA); M22 = Ra*(J2 + Jeq+m2*L2/4)/(n*Km*KA); P11 = Ra*(Beq + n^2*Km*Kb/Ra)/(n*Km*KA); P12e = Ra*m2*L2*dqe1*sin(q2)*cos(q2)/(2*n*Km*KA); P21e = -Ra*m2*L2*dqe1*sin(q2)*cos(q2)/(4*n*Km*KA); P22 = Ra*Beq + n^2*Km*Kb/Ra/(n*Km*KA); d11 = 0; d21e = -Ra*m2*L2*g*sin(qe2)/(2*n*Km*KA); u1 = M11e*ddqd1+P11*dqr1+P12e*dqr2+d11- Kd*(dqe1-dqr1) - K1*z11; u2 = M22*ddqd2+P21e*dqr1+P22*dqr2+d21e-Kd*(dqe2-dqr2) - K1*z22; U1(k) = u1; U2(k) = u2; % MODELO DEL SISTEMA CONTROLADO M11 = Ra*(J1 + Jeq + m2*L2*sin(q2)^2/4)/(n*Km*KA); P12 = Ra*m2*L2*sin(q2)*cos(q2)*dq1/(2*n*Km*KA);
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
245/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
234
Fundamentos de MATLAB y Simulink
P21 = -Ra*m2*L2*dq1*sin(q2)*cos(q2)/(4*n*Km*KA); d21 = -Ra*m2*L2*g*sin(q2)/(2*n*Km*KA); dq1 = dq1 + T*(u1 - P11*dq1 - P12*dq2- d11)/M11; dq2 = dq2 + T*(u2 - P21*dq1 - P22*dq2- d21)/M22; q1 = q1 + T*dq1; Q1(k) = q1; q2 = q2 + T*dq2; Q2(k) = q2; end % FINALIZA EL LAZO DE CONTROL % GR´ AFICOS ejex=linspace(0,N*T,N); % EJE DE TIEMPO subplot(411) plot(ejex,Qd1(1:N),ejex,Q1(1:N)), grid on ylabel(’POSICI ´ O N q1 [rad]’) subplot(412) plot(ejex,U1(1:N)),grid on xlabel(’TIEMPO [S]’) ylabel(’CONTROL u1 [v]’) subplot(413) plot(ejex,Qd2(1:N),ejex,Q2(1:N)), grid on ylabel(’POSICI ´ O N q2 [rad]’) subplot(414) plot(ejex,U2(1:N)), grid on xlabel(’TIEMPO [S]’) ylabel(’CONTROL u2 [v]’) print -f -deps dfsimr % GENERA FIGURA dfsimr.eps
B.2.
Fundamentos de Simulink
Simulink se ejecuta dentro del entorno de MATLAB y depende de este programa para definir y evaluar el modelo a simular y los bloques de par´ametros. Simulink tambi´en usa algunas caracter´ısticas de MATLAB, tales como: definici´on de las entradas del modelo, almacenamiento de las salidas del modelo para an´alisis y visualizaci´on, y realizar operaciones y funciones propias de MATLAB dentro del modelo. Se recomienda los siguientes 6 pasos para modelar un sistema: (1) definir el sistema, (2) identificar los componenetes del sistema, (3) modelar el sistema con ecuaciones, (4) elaborar el diagrama de bloques en Simulink, correr la simulaci´on, y (6) validar los resultados de la simulaci´on.
B.2.1.
Fundamentos del Software Simulink
Para mostrar la biblioteca de bloques (Simulink Library Browser, Fig. B.4): 1. Abrir MATLAB, luego tipear simulink en el prompt. 2. Click el bot´on Start (extremo inferior izquierdo de la ventana MATLAB) y luego seleccionar: Simulink > Library Browser. 3. Click en el icono Simulink:
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
ubicado en la barra de menus de MATLAB.
246/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
B.2 Fundamentos de Simulink
235
] d a 1 r [ 1 q N0.5 Ó I C I S O 0 0 P
5
10
15
20
] v [ 50 1 u L O 0 R T N O−50 C 0
5
10
15
20 TIEMPO
] d a 1 r [ 2 q N0.5 Ó I C I S O 0 0 P
5
10
15
20
] v [ 50 2 u L O 0 R T N O−50 C 0
5
10
15
20 TIEMPO
25
30
35
40
25
30
35
40
25
30
35
40
25
30
35
40
[S]
[S]
Fig. B.3: Resultado de la simulaci´on del sistema de control backstepping del MRE: las posiciones de los brazos del manipulador siguen las se˜nales de referencia deseada.
Para crear un nuevo modelo, seleccionar en el men´u de la ventana Simulink Library Browser (SLB): File > New > Model. El software abre una ventana vac´ıa (Fig. B.5) en donde construir el modelo. Para abrir un modelo existente: 1. En el men´ u de la ventana SLB, seleccionar File > Open. En la ventana Open buscar el archivo con extensi´on .mdl a abrir. Ubicado el archivo, seleccionarlo y click Abrir. El software abre el archivo buscado en una ventana que tiene como etiqueta el nombre del archivo. 2. En la VC (ventana de comandos) de MATLAB, hacer click en el icono [...] (tres puntos seguidos) ubicado en la parte superior derecha, para que aparezca la ventana Buscar carpeta. En esta ventana ubicarse en el directorio donde est´ a el archivo .mdl. Luego, en el prompt de MATLAB, escribir el nombre del archivo sin extensi´on, para que aparezca el modelo buscado. La ventana SLB, Fig. B.6, muestra la biblioteca de bloques de Simulink instaladas en su sistema. Los bloques se pueden copiar o arrastrar desde esta ventana a una ventana vac´ıa. Cuando use la ventana SLB, notar lo siguiente: Los bloques de una biblioteca se pueden ver seleccionando el nombre de la
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
247/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
236
Fundamentos de MATLAB y Simulink
Fig. B.4: Librer´ıa de bloques (Simulink Library Browser).
Fig. B.5: Nueva ventana para construir un modelo.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
248/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
B.2 Fundamentos de Simulink
237
biblioteca en la parte izquierda de la ventana SLB, o haciendo doble click en el bloque seleccionado. Cuando se selecciona un bloque, su descripci´on aparece en la parte inferior de la ventana SLB. Para obtener mayor informaci´on de un bloque, seleccionar el bloque en la ventana SLB, y en su men´ u ir hacia Help > Help on the Selected Block. Los par´ametros de un bloque se pueden visualizar y cambiar haciendo click derecha sobre el bloque. Se puede buscar un determinado block en la ventana SLB, insertando el nombre del block en el campo de b´usqueda ubicado a la derecha del icono Luego, hacer click sobre tal icono.
.
La forma m´as r´apida de obtener ayuda en un bloque de una biblioteca, es hacer click derecho y luego seleccionar Help.
Fig. B.6: Biblioteca de bloques en la ventana Simulink Library Browser (SLB).
Simulink proporciona una gran variedad de demos para ilustrar las bondades de este software. Para ingresar a los demos, hacer click en el bot´on Start ubicado en el extremo inferior izquierdo de la ventana MATLAB y luego ir a Start > Simulink > Demos.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
249/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
238
B.2.2.
Fundamentos de MATLAB y Simulink
Creaci´ on de un Modelo Simulink
problema a resolver v´ıa un Simulink, es controlar la posici´ n angular de un brazo rob´oEl tico de 1GDL empleando controlador por linealizaci´ onode la realimentaci´ on y un observador de estados. Primero, seleccionar un directorio de trabajo para alojar los archivos Simulink disnl2.mdl y MATLAB disnl2p.m. La Fig. B.7 muestra el diagrama de bloques Simulink que se obtiene tipeando disnl2 en el prompt de MATLAB. Observar que los bloques Proceso no lineal, Observador no lineal, Conversi´on de x a z, Se˜ n al u y Se˜ nal v, son en realidad subsistemas que alojan, cada uno, una porci´on del programa de control. disnl2_u u Mux Señal u Señal v
Proceso no lineal
gráfico
Mux
disnl2_x1 x1
Referencia r
disnl2_r ConversiónObservador de x a z no lineal
r
Fig. B.7: Diagrama de bloques del archivo Simulink disnl2.mdl. Por otro lado, el bloque Referencia r es una se˜nal sinusoide que se arrastra desde su ubicaci´on en la ventana SLB: Simulink > Sources > Sine Wave (Fig. B.8), hacia la ventana de trabajo. Haciendo doble click en cualquier subsistema, aparece una ventana con el contenido del mismo. Por ejemplo, la Fig. B.9 muestra el contenido del subsistema Proceso no lineal. Sus componentes se arrastran desde la ventana SLB a la ventana de la Fig. B.9. Observar en dicha Fig. que los c´ırculos x1, x2 y x3 son las variables de salida del sistema, mientras que el c´ırculo u es la entrada. La entrada u se genera arrastrando la elipse In1 ubicada en la ventana SLB: Simulink > Commonly Used Blocks > In1, mientras que para las tres salidas se requiere arrastrar tres veces la elipse Out1 ubicada en la ventana SLB: Simulink > Commonly Used Blocks > Out1. El subsistema Proceso no lineal se crea seleccionando con el click derecho todo el contenido de la Fig. B.9 y luego tipeando Ctr + G o seleccionando en el men´u de MATLAB: Edit > Create Subsystem. Los rect´angulos u, x1 y r mostrados en la Fig. B.7, que sirven para almacenar datos, se crean arrastrando tres veces el rect´angulo To File ubicado en la ventana SLB: Simulik > Sinks > To File. Haciendo doble click en cada rect´ angulo, se introduce un nombre a elecci´on por ejemplo, disnl2_u, disnl2_x1 y disnl2_r. En la Fig. B.7, Scope es un graficador que se obtiene de la ventana SLB: Simulink > Sinks > Scope. El procedimiento para obtener el resultado de este programa: los gr´aficos de la salida x1 controlada u la fuerza de control u, es el siguiente: 1. Ejecutar el archivo disnl2p.m para introducir datos al sistema. El archivo no se
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
250/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
B.2 Fundamentos de Simulink
239
Fig. B.8: Ubicaci´on del bloque Sin Wave.
1 u
Kact
3
2
x3
x2
1
gan5
L.s+R sum1
subsistema eléctrico
1
n*K
1 s
M.s+B
gan6
subsistema
sum2
Integrador
1 x1
mecánico n*E
gan2
N
gan3
MATLAB Function seno
Fig. B.9: Contenido del subsistema Proceso no lineal.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
251/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
240
Fundamentos de MATLAB y Simulink ejecuta completamente porque reci´en se van a crear los archivos de datos.
2. correr el programa Simulink disnl2.mdl haciendo click en el tri´ angulo negro ubicado en la parte superior de la Fig. B.7. 3. Tipear: save disnl2_x1, save disnl2_r, save disnl2_u en el el prompt de MATLAB. Estos comandos almacenan los datos en los archivos tipo *.mat: disnl2_x1.mat, disnl2_r.mat y disnl2_u. 4. Ejecutar nuevamente el archivo disnl2p.m para obtener la Fig. B.10 1 ) s e n a i d a r (
0.5 0
n ó i c i s o −0.5 P
−1
0
2
4
6
8 10 12 Tiempo en segundos
14
16
18
20
0
2
4
6
8 10 12 Tiempo en segundos
14
16
18
20
2.5 ) s o i t l o v ( l o r t n o c e d l a ñ e S
2 1.5 1 0.5 0 −0.5
Fig. B.10: Salida controlada y fuerza de control correspondiente.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
252/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
Bibliograf´ıa [1] Murray R. Spiegel, Mathematical handbook , Shaum’s Outline Series, McGrawHill,Inc., 3ed Edition, New York et. al. 2008. [2] W. F. Hughes and J. A. Brighton, Theory and Problems of Fluid Dynamics, Shaum’s outline series, McGraw-Hill, 3ed edition, Inc., 1999. [3] H. Goldstain, John L. Safko and Charles P. Poole Classical mechanics, 3ed. Addison Wesley, 2001. [4] James Curry, Hamiltonian and Lagrangian Mechanics. AuthorHouse, 2005. ISBN-10: 1420858564. ISBN-13: 978-1420858563. [5] Katsuhiko Ogata, Sistemas de Control en Tiempo Discreto. Prentice Hall Hispanoamericana S.A., M´exico, segunda edici´on, 1996 [6] Murray R. Spiegel, An´ alisis Vectorial , serie de compendios Schaum, McGrawHill M´exico Panam´a Bogot´a y otras, 1973 (o ediciones m´as recientes). [7] Murray R. Spiegel, C´ alculo Superior , serie de compendios Schaum, McGraw-Hill M´exico Panam´a Bogot´a y otras, 1973 (o ediciones m´as recientes). [8] Donald M. Wiberg, Espacio de Estado y Sistemas Lineales, serie de compendios Schaum, McGraw-Hill M´exico Panam´a Bogot´a y otras, 1973 (o ediciones m´as recientes). [9] Frank Ayres Jr., Matrices, serie de compendios Schaum, McGraw-Hill M´exico Panam´ a Bogot´a y otras, 1973 (o ediciones m´as recientes). [10] Alan V. Oppenheim y Alan S. Willsky, Se˜ nales y Sistemas Prentice-Hall Hispanoamericana, S.A., M´ exico-Englewood Cliffs-Londres-Sidney y otras, 1983. [11] Murray R. Spiegel, Transformada de Laplace, serie de compendios Schaum, McGraw-Hill M´exico Panam´a Bogot´a y otras, 1973 (o ediciones m´as recientes). [12] A. Rojas-Moreno, Design of Self-tuning Controllers for Processes Having Multiple Unknown Time-varying Delays, Ph.D. Thesis, Utah State University, Logan, UT, 1995. [13] Katsuhiko Ogata, Modern Control Engineering (5th Edition), Prentice Hall, 2009.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
253/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
242
BIBLIOGRAF´ IA
[14] TecQuipment Ltd, TE37 Control and Instrumentation Study Station, User Guide, 2009. [15] J.G. Ziegler y N.B. Nichols, “Optimum Setting for Automatic Controllers”, Transactions of the American Society Mechanical Engineering, Vol 64, pp. 759768, 1942. [16] Richard C. Dorf y Robert H. Bishop, Sistemas de Control Moderno (10ma Edici´ on), Pearson Prentice Hall, 2005. [17] K.J. ˚ Astr¨o m y T. H¨agglund, “PID Controllers: Theory, Design, and Tuning”. Instrument Society of America, 1995. [18] P. Harriot, Process Control , McGrawHill Book Co., 1964. [19] 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. [20] G. H. Cohen and G. A. Coon, “Theoretical consideration of retarded control,” Trans. ASME, vol. 75, pp. 827-834, 1953. [21] Erwin Samal, Grundriss der Praktischen Regelungstechnik (11. durchsehene Au flage, R. Oldenbourg Verlag Muenchen Wien 1980. [22] A. M. Lopez, J. A. Miller, C. L. Smith, and P. W. Murrill, “Tuning controllers with error-integral criteria,” Instrumentation Technology, vol. 14, pp. 57–62, 1967. [23] A. Rovira, P. Murrill y C. Smith, “Tuning controllers for setpoint changes”. Instruments and Control Systems, 42(12): 67–69, diciembre de 1969. [24] 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. [25] C. Kessler, C., “Das symmetrische Optimum”, part 1, rt, No.11, pp. 395-400 and part 2, rt, No.12, pp. 432-436, (1958) [26] M. Zhuang y D. P. Atherton, “Automatic tuning of optimum PID controllers”, IEE Proceedings–Part D: Control Theory and Applications, Vol. 140, No. 3, pp. 216–224, 1993. [27] D. Xue, Y. Q. Chen y D. P. Atherton, Linear Feedback Control: Analysis and Design with Matlab, SIAM, 2007. [28] C.A. Smith y A.B. Corripio, Control Autom´ atico de Procesos, Limusa Noriega Editores, 1996. [29] A. O’Dwyer, Handbook of PI and PID Controller Tuning Rules, 3rd edition , Imperial College Press, 2009. [30] National Instruments, NI Developer Suite: NI LabVIEW 8.5 and Device Drivers, Third Quarter 2008.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
254/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
BIBLIOGRAF´ IA
243
[31] Eduardo F. Camacho y Carlos Bordons, Model Predictive Control , SpringerVerlag London Limited, 2004. [32] Alberto Isidori, Nonlinear Control Systems, 3ed, Springer-Verlag Berlin, 1995. [33] A. Barrientos, L. F. Pe˜ nin, C. Balaguer, and R. Aracil, Fundamentos de Rob´ otica , 2nd Edition, McGraw-Hill/Interamericana de Espa˜ na, S. A., Madrid, Buenos aires, Caracas, and others, 2007. [34] S. Kilicaslan, S.P. BanksLocalizaci´ on, “A separation theorem for nonlinear systems”, A journal of IFAC, ISSN 0005-1098, Vol. 45, N . 4, pags. 928-935 , 2009. o
[35] M. G. Sofonov, Stability and Robustness of Multivariable Feedback Systems, The MIT Press Cambridge, MA, and London, England, 1980. [36] Jeffrey B. Burl , Linear Optimal Control , Prentice Hall, 1998. [37] D. E. Koditschek, “Natural Motion for Robot Arms´´Proc. 23rd I.E.E.E. Conf. on Decision and Control , Las Vegas, p. 733, 1984. [38] Jean-Jacques E. Slotine and Weiping Li, Applied Nonlinear Control , Prentice Hall, 2006, ISBN: 0130408905, ISBN-13: 9780130408907, 978-0130408907. [39] Asif Sabanovic, Variable Structure Systems: From Principles to Implementation , The Institution of Engineering and Technology; illustrated edition, 2004. [40] E. Bailey and A. Arapostathis, “Simple sliding mode control scheme applied to robot manipulators,” Int. J. Control , vol. 45, No. 4, p. 1197–1209, 1987. [41] Lin, Y. and E.D. Sontag, Lin, Y. and E.D. Sontag, “A universal formula for stabilization with bounded controls”, Report 90-10, SYCON-Rutgers Center for Systems and Control , July 1990. [42] Jie Yu, Ali Jadbabaie, James Primbs and Yun Huang, “Comparison of nonlinear control design techniques on a model of the Caltech ducted fan”, Automatica Volume 37, Issue 12, Pages 1971-1978 , December 2001. [43] Fang-Shiung Chen and Jung-Shan Lin, “Nonlinear backstepping design of robot manipulators with velocity estimation feedback,”5th Asian Control Conference, July 2004, vol. 1, no. 6, pp 351–356. New Jersey 07632, 1989. [44] M. Vidyasagar, Nonlinear Systems Analysis (Second Edition), Society for Industrial and Applied Mathematics Philadelphia, PA, USA , 2001, ISBN:0898715261. [45] Joseph La Salle and Solomon Lefschetz, Stability by Liapunov’s Direct Method With Applications, Academic Press new York, London, 1961. [46] National Instruments, NI Developer Suite: NI LabVIEW 8.5 and Device Drivers, Third Quarter 2008.
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
255/256
5/9/2018
ControlDe Proc e sosV3 - slide pdf.c om
´ Indice alfab´ etico Determinante, 151 de una matriz, 151 propiedades, 152 Discretizaci´on directa, 178 Ecuaci´on caracter´ıstica, 168 Eigenvalor, 159 Eigenvector, 159 Estabilidad de sistemas, 183 Forma can´onica controlable, 174 de Jordan, 176 diagonal, 175 observable, 175 Formas can´onicas, 174
Sistema estable e inestable, 168 Sistema PLIT, 183 Soluci´on de la ecuaci´on de estado, 170 Transformada de Laplace F´ormulas de, 142 inversa, 140 Propiedades de la, 145 unilateral, 138 Variables de estado, 163
Fracciones parciales, 142 Linealizaci´on de sistemas, 183 Matrices, 148 diagonalizaci´on de, 162 multiplicaci´ on de, 148 similares, 162 Matriz de transferencia, 167 diagonal, 150 eigenvalor de una, 159 identidad, 150 pseudoinversa de una, 160 rango de una, 157 traza de una, 150 triangular inferior, 150 triangular superior, 150 Par´ ametros, variables y s´ımbolos del sistema Tanque con Agua, 27 Procesos con tiempo muerto, 181 Puntos singulares en PLITs, 168
http://slide pdf.c om/re a de r/full/c ontrolde proc e sosv3
256/256