8 ELECTRÓNICA – UNMSM, VOL. 19, NO.
1, JUNIO 2016
Obtención de Modelos de los Procesos
Continuos Utilizando el Toolbox de
Identificación de Sistemas de Matlab
Obtaining Continuous Process Models Using Matlab Systems Identification Toolbox
Bruno Vargas Tamani
Facultad de Ingeniería Electrónica y Eléctrica, Universidad Nacional Mayor de San Marcos, Lima, Perú
Resumen— El presente trabajo explora como el Keys words— differential traction, kinematic model,
Toolbox de Identificación de Sistemas de Matlab, dynamic model, equilibrium point, orientation.
permite con bastante facilidad obtener un modelo de
proceso en prueba para su posterior control, en base a I. INTRODUCCIÓN
los datos registrados de entrada y salida. Estos datos
experimentales adquiridos mediante un osciloscopio o un
sistema de adquisición de datos, sirven para obtener el
modelo del proceso, pero antes se debe procesar
E l modelo de la planta con fines de control, es una
tarea necesaria para el diseño del controlador.
Existen varias formas de modelar, desde plantear
mediante algoritmos de identificación de sistemas. Para
la obtención de modelos continuos se ha explorado la
ecuaciones, realizar diagramas de bloques, reducir el
opción: Process Models y Transfer Functions Models del diagrama de bloques, espacio de estado, etc. Sin
Toolbox de Identificación de Sistemas de Matlab. Se ha embargo, en el lugar de trabajo, es difícil utilizar estos
comprobado para nuestros datos de prueba que la mejor métodos (ellos son un referente, por ejemplo, para
la opción resultó ser el Process Models. Adicionalmente, conocer a priori el orden del sistema), por el
se obtuvo otras opciones de este Toolbox que nos ha desconocimiento de sus parámetros o porque se
permitido en forma segura la obtención del modelo que requiere actualizar esa información, así como, por el
mejor se aproxima a la planta de prueba, siendo la poco tiempo que se tiene disponible la planta en la
validación con datos diferentes a la identificación, industria. Lo más práctico en los sistemas reales de
gráficos de entrada y salida, gráficos de entrada y salida
control automático, es realizar la tarea de obtener un
de validación, y otros.
modelo continuo del proceso, adquiriendo datos de la
entrada del proceso y de su salida. Estos datos
Abstract— The present work explore with Matlab
System Identification Toolbox, it allows quite easily to registrados se utilizan mediante una de las técnicas
obtain a model of the process to be tested for its llamadas de identificación de sistemas, que
subsequent control, based on the registered data of input normalmente se programa en computadora. El
and output. These experimental data acquired by an producto de software Matlab, permite en base a su
oscilloscope or a data acquisition system serve to obtain Toolbox (existen muchos de ellos: procesamiento de
the model of the process, but must first be processed señales, control, redes neuronales, lógica difusa,
using system identification algorithms. To obtain telecomunicaciones, control óptimo, etc.), desarrollar
continuous models, we have explored the option: Process aplicaciones diversas. Una opción muy útil, para
Models and Transfer Functions Models of the Matlab obtener un modelo que se aproxime a los datos
Systems Identification Toolbox. It has been proven for
registrados, es utilizar el Toolbox de Identificación de
our test data that the best option was Process Models. In
addition, other options were obtained from this Toolbox, Sistemas de Matlab, el cual tiene diversas funciones
which has allowed us to securely obtain the model that para obtener el modelo de la planta, con mucha
best approaches the test plant, being the validation with facilidad.
data different from the identification, input and output
charts, input and exit graphics validation, and others. II. TOOLBOX DE IDENTIFICACIÓN DE SISTEMAS DE
MATLAB
Palabras clave— Identification of systems, transfer
function models, temporal response, pols and zeros, delay. Para poder establecer un controlador para un
1
Bruno Vargas Tamani, e-mail: bvargast@[Link] proceso, se requiere conocer las características del
Recibido: Abril 2016 / Aceptado: Junio 2016
VARGAS: OBTENCIÓN DE MODELOS DE LOS PROCESOS CONTINUOS UTILIZANDO TOOLBOX 9
proceso a controlar, esto se manifiesta con un modelo B. Graficar datos para identificar y validar
continuo de ese proceso. Uno de los métodos para
Se han obtenido los datos de un proceso simulado,
conocer ese proceso mediante un modelo, es registrar
con un período de muestreo de T = 0.1msg. Se cargan
datos de entrada y salida de ese proceso y mediante
esos datos tanto de entrada y de salida para
una técnica llamada de identificación de sistemas,
identificarlos, así como los datos tanto de entrada y de
obtener el modelo que mejor se acerquen a los datos
salida para validarlos, y se han grabado en el área de
registrados.
trabajo, en variables de una columna llamadas:
El Toolbox de Identificación de Sistemas de Matlab
entrada, salida, entrada validar y salida validar.
(System Identification Tool); es una herramienta de
Las primeras señales se utilizarán para obtener el
Matlab que permite obtener varios modelos: transfer
modelo de la planta simulada y las últimas se usarán
function, process control, etc. [1]. Dentro de cada uno
para validar el modelo obtenido. La validación, se
de ellos, se tienen opciones de seleccionar sus
realiza con datos diferentes a los utilizados para
características y realizar pruebas con ellos; por
identificar; de tal manera que se pruebe el modelo
ejemplo de respuesta temporal, respuesta del modelo,
obtenido con otros datos y se vea si ese modelo resulta
etc. El usuario puede elegir diferentes configuraciones
en una generalización para otras señales y se pueda
de un mismo tipo de modelo y el decide el modelo a
predecir su respuesta.
utilizar en representación de la planta.
La Fig. 1, muestra la pantalla inicial de Matlab. El
A. Uso del Toolbox de Identificación de Sistemas sector superior derecho muestra las variables que se
de Matlab. Acciones Previas ubican en el área de trabajo. Allí, se observan las
variables entrada y salida. Para confirmar, si se trata de
Previamente al uso del Toolbox de Identificación de
señales para trabajar la identificación, vamos a
Sistemas de Matlab, se requiere que los datos de
graficarlas. Hacer doble click en la variable entrada, se
entrada y de salida del sistema a tratar de obtener el
aprecia el vector correspondiente, luego seleccionar la
modelo que más se asemeja a esos datos medidos, se
señal y en la barra de tareas seleccionar plot
ubiquen en el workspace de Matlab. El workspace, es
mostrándose luego el gráfico de esa entrada que se
la memoria de trabajo de Matlab. Ud. puede acceder a
usará para identificar. Ver Fig. 2.
esta área, escribiendo el comando who en el prompt de
También seleccionar desde el sector superior
Matlab y verá todo lo registrado en memoria como
derecho, la variable salida. Repetir lo anterior, para ver
variables. Cada entrada y salida, deben estar en
el gráfico de la variable de salida que se usará para
memoria en un vector columna (de dimensión n x 1,
identificar. Ver Fig. 3.
donde n es el número de datos), ambos deben tener la
misma dimensión o el número de datos [2].
Previamente, entonces se deben prepara los datos y
que se ubiquen en el área de trabajo. Dependiendo del
sistema de adquisición de datos, estos se registran en
formatos, por ejemplo: excell, texto, etc. Además, en
un archivo de esos datos se puede registrar
información adicional, también es normal que se
registren en dos columnas, una es el vector de tiempos
y la otra es el de los datos propiamente dicho. Como se
verá, se debe realizar la tarea previa de organizar los
datos originales al formato que requiera el Toolbox de
Identificación de Sistemas de Matlab.
Normalmente, se graba cada archivo de entrada y de
salida, en n archivos que contiene una columna
(utilizar el comando: save nombre_archivo).
Así, se crea el archivo con nombre_archivo.mat;
los archivos con extensión mat son propios de Matlab.
Luego en cada sesión de Matlab estarán disponibles
esos archivos, que solo basta cargarlos en la memoria
de trabajo (workspace). Para ello, bastará al usuario Fig. 1. Pantalla inicial de Matlab.
con sólo invocar al comando: load
nombre_archivo. Así, se cargará la variable en Realizar la misma secuencia, con las señales
nombre_variable_a_guardar, en la memoria entradavalidar y salidavalidar. Se
de trabajo, estando disponible para ser utilzada por el observarán los gráficos de las señales a utilizar para la
Toolbox de Identificación de Sistemas de Matlab [3]. validación; ver Fig. 4 y 5.
10 ELECTRÓNICA – UNMSM, VOL. 19, NO. 1, JUNIO 2016
C. Arrancar el Toolbox de Identificación de
Sistemas de Matlab e Inicio de Variables
Desde el prompt de Matlab, escribir ident o
desde la barra de tareas seleccionar APPS y dentro de
ella seleccionar System Identification. Se
presenta la pantalla del Toolbox de Identificación de
Sistemas de Matlab. La Fig. 6, muestra esa pantalla.
Fig. 2. Gráfico de los datos de entrada para identificar.
Fig. 5. Gráfico de los datos de salida para validar.
Fig. 3. Gráfico de los datos de salida para identificar.
Fig. 6. Pantalla de arranque del Toolbox de Identificación de
Sistemas de Matlab.
En la parte superior izquierda, seleccionar Import
data, luego seleccionar Time domain data. Se
abre la pantalla para seleccionar las variables de
Fig. 4. Gráfico de los datos de entrada para validar. entrada y de salida para identificar. También se debe
VARGAS: OBTENCIÓN DE MODELOS DE LOS PROCESOS CONTINUOS UTILIZANDO TOOLBOX 11
escribir en la opción Data name: En la pantalla del ident, se observa que en la parte
datosidentificar (que agrupa las variables de izquierda abajo hay una opción: Time Plot.
entrada y de salida), además del inicio del vector de Seleccionar esa opción y se verán los datos de entrada
tiempos y el período de muestreo utilizado. La Fig. 7, y salida para identificar, en un gráfico. Ver Fig. 9.
muestra esa pantalla de configuración de señales para
identificar. La Fig. 8, muestra esa pantalla de
configuración de señales para identificar, luego de
seleccionar import.
Observe que, en la zona de estimación, se cargan los
datos agrupados en datosidentificar, también
en la zona de validación se cargan ese mismo grupo de
datos.
Fig. 9. Opción: Time Plot. Gráfica de los datos de
entrada y salida para identificar.
D. Seleccionar el Modelo a Identificar
En la zona de estimación (parte central),
seleccionar Process Models, aparece la pantalla
Fig. 7. Pantalla de configuración de señales para identificar.
mostrada en la Fig. 10.
Fig. 8. Pantalla de configuración de señales para identificar,
luego de seleccionar import. Fig. 10. Pantalla para seleccionar Process Models.
12 ELECTRÓNICA – UNMSM, VOL. 19, NO. 1, JUNIO 2016
Configurar en esa pantalla, para que el modelo a Arrastre la variable P1, a la zona del workpace,
identificar sea de primer orden sin retardo y sin un para ver el modelo identificado resultado de la
cero. Pulsar Estimate, en la última pantalla. La Fig. identificación, con la opción Process Models. Ver
11, muestra el resultado de esa identificación. Observe, Fig. 13.
que la pantalla advierte que el modelo será llamado P1.
Fig. 13. Resultado de la identificación, con la opción
Process Models.
Fig. 11. Configuración de Process Models (modelo para E. Configuración de otros en opción Modelos con
modelo de primer orden sin retardo y sin ceros) y Process Models
pantalla luego de pulsar Estimate.
Repetir lo anterior configurando la opción
Luego de estimar el modelo, en la pantalla se crea a Process Models, para dos polos, tres polos y tres
la parte superior derecha la variable P1. Ahora polos con un cero. Se crean las variables P2, P3 y P3Z,
seleccione en la nueva pantalla el modelo P1, pruebe el respectivamente. En la Fig. 14, se observa la prueba
resultado de esa identificación seleccionando la opción del modelo P2 con Models output. La Fig. 15,
Model output. Ver la Fig.12. muestra el modelo de P2, la Fig. 16 muestra el modelo
de P3 y la Fig. 17 el modelo de P3Z.
Fig. 12. Pulsar P1 y opción Model Output, para probar Fig. 14. Prueba de P2 con Model Output.
el modelo identificado.
VARGAS: OBTENCIÓN DE MODELOS DE LOS PROCESOS CONTINUOS UTILIZANDO TOOLBOX 13
Fig. 15. Resultado del modelo obtenido P2. Fig. 17. Resultado del modelo obtenido P3Z.
F. Iniciar variables para validar Arrastre los datos agrupados en datosvalidar, a
la zona de validación. Pulsar la opción Model
Se cargan las variables llamadas Output. La Fig 18, muestra el resultado de la
entradavalidar y salidavalidar, en el área validación con los datos diferentes a la identificación.
de trabajo. En la parte superior izquierda, seleccionar
Import data, luego seleccionar Time domain
data. También debe escribirse en la opción Data
name: datosvalidar, además del inicio del vector
de tiempos y el período de muestreo utilizado.
Fig. 18. Resultado de la validación con los datos diferentes
a la identificación.
G. Selección de un Modelo diferente a Identificar:
Transfer Functions Models.
Para el mismo grupo de datos de entrada:
datosidentificar; se selecciona ahora otra
Fig. 16. Resultado del modelo obtenido P3. opción de estimación del modelo, seleccionar en
estimate la opción: Transfer Function
14 ELECTRÓNICA – UNMSM, VOL. 19, NO. 1, JUNIO 2016
Model. Se abre la pantalla mostrada en la Fig. 19, Ahora arrastre el icono de tf1 al workspace, ahora se
para configurar el modelo de función de transferencia a crea en memoria esa variable. Escriba en el prompt de
estimar; selecciona: Continuos-time, number Matlab, tf1 y se muestra el modelo de función de
of poles: 1, number of ceros: 0. Se trata de transferencia y sus características adicionales. Ver Fig.
un modelo de primer orden sin retardo. Observe que en 21.
la parte superior, se refiere a que la variable del
modelo a crear es llamada: tf1.
Fig. 19. Opción de Estimate, un modelo de función de
transferencia, configuración del modelo de primer Fig. 21. Resultado del modelo de función de transferencia
orden sin retardo. tf1 y sus características adicionales.
Observe como automáticamente en la pantalla Para la validación se utilizan las mismas señales
principal del ident se activa el resultado de la agrupadas en datosvalidar. No se olvide de
función de transferencia tf1. Seleccióne y luego pulse arrastrar al área de validación, este grupo de datos.
la activación de la opción: Model output. Así, Pulse la opción: Model Output y verá el resultado
observará el resultado de la identificación. Ver Fig. 20. de la validación, con los datos datosvalidar,
diferentes a los de identificación. Ver Fig. 22.
Fig. 20. Función de transferencia tf1. Resultado de la Fig. 22. Resultado de la validación para el modelo de
identificación realizada. Opción: Model output. función de transferencia tf1.
VARGAS: OBTENCIÓN DE MODELOS DE LOS PROCESOS CONTINUOS UTILIZANDO TOOLBOX 15
identificación, probándose que generaliza la predicción
Así como hicimos con la opción de Estimate: de respuestas con otras señales.
Process Model, con la opción Transfer La validación del modelo de primer orden con
Function Model, también podemos probar otros datos diferentes a los de identificación, permite probar
modelos de función de transferencia. Probemos ahora, el modelo obtenido con señales diferentes a las de
un modelo de función de transferencia, con dos polos identificación, probándose que generaliza la predicción
(ningún cero, sin retardo). La pantalla de configuración de respuestas con otras señales.
indica que el modelo se va a guardar en la variable La opción la opción: Transfer Function
llamada: tf2. Model, resulta en un modelo identificado de primer
Pulsar estimate, seleccionar tf2 en la pantalla orden sin retardo, que es idéntico al modelo obtenido y
ident, seleccionar la opción: Model output, para validado en la opción: Process Model. Sin
probar el modelo de segundo orden y el resultado se
embargo, cuando en la opción: Transfer
muestra en la Fig. 23.
Function Model, probamos con un modelo de
segundo orden sin retardo, la identificación (así como
la validación) no resulta en un adecuado modelo.
VII. CONCLUSIONES
El Toolbox de Identificación de Sistemas del
programa Matlab, es una aplicación de ese programa
que se puede utilizar con gran facilidad para fines de
encontrar un modelo continuo, de función de
transferencia de la planta, con fines de diseño de un
controlador tanto analógico o digital.
Las opciones adicionales, antes de obtener el
modelo identificado: time plot, validación del
modelo mediante la opción: Model output (tanto
con los datos de identificación, como con los datos de
validación), transient resp, etc. Nos permiten
asegurar que el proceso de identificación ha sido el
adecuado.
REFERENCIAS
Fig. 23. Resultado de configurar un modelo de función de
transferencia de segundo orden. [1] C. Osorio. ``Extracción de Modelos Dinámicos
Directamente de Datos Experimentales usando
Identificación de Sistema´´. MathWorks.
[Link]
VI. ANÁLISIS DE RESULTADOS dynamic-models-from-experimental-data-using-system-
identification-spanish-
Como resultados de las pruebas para la obtención [Link]?requestedDomain=[Link]
del modelo mediante la opción: Process Model,
reflejan que el modelo obtenido que mejor se mapean [2] O. F. Avilés, P. A. Niño y L. Solaque. ``Identificación
de parámetros de sistemas dinámico´´. Ciencia e
con los datos identificados es el modelo de primer
Ingeniería Neogranadina, 2002, ISSN: 0124-8170.
orden sin retardo. Los modelos obtenidos por estos Sistema de Información Científica Redalyc Red de
métodos de orden superior: segundo orden sin retardo, Revistas Científicas de América Latina y el Caribe,
tercer orden sin retardo, tercer orden sin retardo con un España y Portugal.
cero. Crean parámetros adicionales, pero cuyas
[Link]
constantes de tiempo y el cero adicional son muy
pequeños comparados con la constante de tiempo [3] C. Kunusch. ``Identificación de Sistemas Dinámicos´´.
dominante del proceso identificado como de primer Universidad de la Plata. Facultad de Ingeniería. Dpto.
orden. de Electrotecnia. Cátedra de Control y
Servomecanismos. Año 2003.
La validación del modelo de primer orden con
datos diferentes a los de identificación, permite probar [Link]
el modelo obtenido con señales diferentes a las de [Link]