Documentos de Académico
Documentos de Profesional
Documentos de Cultura
PROYECTO UNIDAD 1
Integrantes:
Araque Edison
Cajamarca Alex
Paredes Daniela
Segovia Jenny
Tumbaco William
1. TEMA
Modelación de Sistema No Lineal MIMO de tres tanques para el proceso de
producción de gaseosa.
2. OBJETIVO
Desarrollar un entorno virtual que represente un proceso industrial, a fin de analizar las
características dinámicas de comportamiento del proceso.
3. MARCO TEÓRICO
Sistemas de control multivariable
En muchos de los procesos industriales el objetivo consiste en mantener una variable
en su set-point o valor de referencia, la mayoría de los procesos industriales son
multivariables en los que una entrada afecta a más de una salida, y recíprocamente una
salida es afectada por más de una entrada, ellos necesitan de una configuración más
compleja, que permita desarrollar un control más eficaz.[ CITATION Gut161 \l 1033 ]
Sistemas de control de nivel
Un sistema de control de nivel es una estructura de instrumentación cuyo objetivo es
garantizar el nivel o flujo de líquido en un rango de operación preestablecido.
El control tiene la función de mantener el nivel de líquido a la altura deseada,
garantizar el bienestar de las estructuras y de evitar el desperdicio de líquido.
Modelación Matemática del sistema
Muchos fenómenos o sistemas que desarrollan determinada actividad en la naturaleza
o la industria. La modelación matemática permite representar y predecir de manera
rápida y a bajos costos mediante algoritmos.
Ecuación de Bernoulli
El principio de Bernoulli describe la dinámica de un fluido a lo largo de una corriente.
Considerando un fluido ideal que transcurre por un conducto cerrado, la energía que
posee el fluido permanece constante a lo largo de su recorrido.
La ecuación de Bernoulli tiene tres componentes:[ CITATION Gut161 \l 1033 ]
Cinética: Es la energía debida a la velocidad que posea el fluido.
Potencial o gravitacional: Es la energía debido a la altitud que un fluido posea.
Energía de presión: Es la energía que un fluido contiene debido a la presión que
posee.
v2
P gz cte
2 (0)
Donde
v : Es la velocidad del fluido en la sección de análisis.
: Densidad del fluido.
se debe cumplir que, el caudal en el punto (e) Qe es igual que el caudal en el punto (s)
Qe Qs (0)
Ley de Torricelli
Si un tanque presenta un orificio en su parte inferior y es alimentado por un flujo en su
parte superior, tal como muestra la figura 2. Entonces la velocidad del flujo en el
punto (ii) es descrita por la Ley de Torricelli.[ CITATION Gut161 \l 1033 ]
Figura 2: Tanque de análisis
Donde:
a : Área transversal de los ductos a la salida de cada tanque (descarga).
S : Área transversal de cada tanque.
La ecuación para representar la velocidad de descarga a la salida de un tanque, que se
utiliza en el modelo matemático es la siguiente:
vii 2 gh
(0)
1 d2
F x F x F x x ...
2 dx 2 x *
(0)
Jacobiana:
F x x
, donde es la primera derivada de la serie de Taylor, evaluada en el punto
de equilibrio.
f x
Si es una función vectorial del estado (n - dimensional), también llamada campo
f
x
f n
f n
x1 xn
3.1.1. Unity
Unity es una herramienta de desarrollo de videojuegos creada por la empresa Unity
Technologies. También es utilizado para crear experiencias de Realidad Virtual
interactivas.
Unity es un sistema de desarrollo único. Es enfocado en los assets y no en el código, el
foco en los assets es similar al de una aplicación de modelado 3D. Un trabajo
construido en Unity se compondrá de un proyecto. Contiene todos los elementos de su
proyecto, tales como los modelos, guiones, planos, menús, entre otros. Normalmente,
un archivo único contendrá todos los elementos del proyecto. Cuando se inicia Unity,
lo primero que hace es abrir un archivo de proyecto. Cada proyecto contiene uno o
más documentos llamados "Escenas". Una sola escena contendrá un nivel de juego y
elementos principales como una interfaz de usuario. [ CITATION GCa13 \l 12298 ]
Una memoria compartida es aquel tipo de memoria que puede ser accedida por
múltiples
programas, ya sea para comunicarse entre ellos o para evitar copias redundantes. La
memoria compartida es un modo eficaz de pasar datos entre aplicaciones.
Dependiendo del contexto, los programas pueden ejecutarse en un mismo procesador o
en procesadores separados.[ CITATION CCF \l 12298 ]
Para comunicar unity3D con Matlab es necesario crear un script con la librería
Dynamiclink – library, dll. En el que se implementa el método de memoria
compartida, SM, en RAM. En la figura 4 se ilustra la implementación de la memoria
compartida, donde el dll gestiona el espacio SM, además de proporcionar permisos
para las aplicaciones, etiquetar el espacio de memoria, proporcionar funciones para
modificar/obtener la información almacenada y liberar el espacio cuando la aplicación
finaliza.
4. DESARROLLO
Descripción del proceso a ser modelado
Proceso para la elaboración de bebidas gaseosas para un control multivariable MIMO
de 2 entradas y 3 salidas. Sistema con tanque en cascada y a la vez en serie.
Las entradas son las bombas que proporcionan los ingredientes y las salidas son las
alturas de los 3 tanques.
Para la elaboración de bebidas gaseosas, la empresa utiliza las siguientes materias
primas. Desde el tanque 1 de almacenamiento, el jarabe simple clarificado es
distribuido al tanque 2.
El tanque dos tiene una entrada de agua (tratada y esterilizada) y el jarabe. Estos
líquidos se mezclan en el mismo y pasa al tanque 3 el jarabe ya homogéneo, listo el
jarabe pasa a un reservorio de almacenamiento del producto.
Modelación
Para empezar, se plantea la ecuación de Bernoulli y se considera que el flujo es ideal,
lo que significa que:
No hay fricción
No se considera retardos
No hay torbellinos en el flujo de agua
Ahora bien, se presentan dos estados lo que se describe como entrada y salida. Aquí se
puede analizar que, si se toma una partícula del líquido y se analiza su
comportamiento a la entrada y luego a la salida, se dice que va a presentar una
velocidad inicial al ingresar al tanque, es decir está experimentando energía cinética.
Al salir ha recorrido una distancia, por lo tanto, se dice que la partícula experimenta
energía potencial gravitacional.
Las variables aquí son:
R1 , R2 , R3 y R4 : apertura de la válvula
k1 , k 2 , k 3 y k 4 : constante de válvula
A1 , A2 y A3 : área transversal del tanque
qi : flujo de entrada
q0 : flujo de salida
a : área de paso
g : gravedad
h : altura del líquido
m : masa
v : velocidad de las partículas
Se considera que la presión manométrica entre los puntos 1 y 2 son cero. Donde m es
la masa de las partículas del fluido entre el punto 1 y 2. Y que v es la velocidad de
salida de las partículas.
1
m v 2 mgh
2 (0)
v 2 gh (0)
qi1 K1 R1 v1 (0)
q01 a1 2 g h1
(0)
dh1
A1 K1 R1 v1 a1 2 g h1
dt (0)
dh2
A2 qi 2 q01 q02
dt (0)
qi 2 K 2 R2 v2 (0)
q02 k3 R3 2 g h2 h3
(0)
dh2
A2 K 2 R2 v2 a1 2 g h1 k3 R3 2 g h2 h3
dt (0)
dh3
A3 q02 q03
dt (0)
q03 k4 R4 2 g h3
(0)
dh3
A3 K3 R3 2 g h2 h3 k4 R4 2 g h3
dt (0)
dh2
dt
1
A2
K 2 R2 v2 a1 2 g h1 k3 R3 2 g h2 h3
(0)
dh3
dt
1
A3
K 3 R3 2 g h2 h3 k4 R4 2 g h3
(0)
a
1 2 g h1
h
1 K1 R1 0
A A1
1
a1 2 g h K 3 R3 2 g h h v
h2 A 1 2 3 K 2 R2 1
2 A2 0 A2 2
v
h K 3 R3 K 4 R4 0
3
2 g h2 h3 2 g h3 0
A3 A3
1 0 0 h1
y 0 1 0 h2
0 0 1 h3
Puntos de equilibrio
Para esta parte se considera contante las alturas de todos los tanques, por lo cual la
derivada de un valor constante es cero.
d h1 d h2 d h3
0
dt dt dt (0)
Tanque 1
d h1
A1 k1 R1 V1 a1 2 g h1
dt
0 k1 R1 V1 a1 2 g h1eq
2
k R V
h1eq 1 1 1
a 2 g
1 (0)
Tanque 2
d h2
A2 k2 R2 V2 a1 2 g h1 k3 R3 2 g h2 h3
dt
Tanque 3
d h3
A3 k3 R3 2 g h2 h3 k 4 R4 2 g h3
dt
0 k3 R3 2 g h2 eq h3eq k4 R4 2 g h3eq
k4 R4 2 g h3eq k3 R3 2 g h2 eq h3eq
(0)
h1eq
Se remplaza
2
k R V
k2 R2V2 a1 2 g 1 1 1
h3eq
a1 2 g
k4 R4 2 g
(0)
h2eq
Para obtener la ecuación de la altura de equilibrio del tanque dos, se despeja
h2 eq k3 R3 h3eq k3 R3 k4 R4 h3eq
2 2 2
h3eq k4 R4 k3 R3 h2 eq k3 R3
2 2 2
k4 R4 2 k3 R3 2 h3eq
h2eq
k3 R3
2
(0)
h3eq
Y finalmente se remplaza
2
k1 R1 V1
k4 R4 k3 R3
2 2 k 2 R2V2 a1 2 g
a1 2 g
h2 eq
k3 R3
2
k 4 R4 2 g
(0)
F1
1
A1
k1 R1 V1 a1 2 g h1
(0)
F2
1
A1
k2 R2 V2 a1 2 g h1 k3 R3 2 g h2 h3
(0)
F3
1
A1
k3 R3 2 g h2 h3 k4 R4 2 g h3
(0)
Se detalla cada una de las derivadas parciales que conforman la matriz. Se considera
las variaciones de alturas, porcentaje de voltajes y porcentaje de apertura de cada una
de las válvulas como se indica a continuación.
hi hi hi eq
con i 1, 2,3 , es decir la variación de la altura del taque menos la
altura de equilibrio.
Vi Vi Vi eq
con i 1, 2,3 , es decir la variación del porcentaje de voltaje menos
el porcentaje de voltaje en equilibrio.
Ri Ri Ri eq
con i 1, 2,3 , es decir la variación del porcentaje de apertura de la
válvula menos el porcentaje de apertura de la válvula en equilibrio.
d F2 d a1 a1 2 g
2 g h1
d h1 d h1 A1 2 A1 h1eq
d F2 d k3 k3 R3eq 2 g
R3 2 g h2 h3
d h2 d h2 A2 2 A2 h2 eq h3eq
d F2 d k3 k3 R3eq 2 g
R3 2 g h2 h3
d h3 d h3 A3 2 A3 h2 eq h3eq
(0)
d F3 d k3 k3 R3eq 2 g k 4 R4 eq 2 g
R3 2 g h2 h3 k4 R4 2 g h3
d h3 d h3 A3 2 A3 h2eq h3eq 2 A3 h3eq
(0)
d F1 d k1 R1 V1 k1 R1eq
d V1 d V1 A1 A1
(0)
d F1
0
d V2 (0)
d F2 1
d V2 A2
k2 R2eq
(0)
d F2
0
d V1 (0)
d F3 d F3
0
d V2 d V1 (0)
d F2 k
3 2 g h2eq h3eq
d R3 A2
d F2 d F2
0
d R1 d R4
d F3 d k3 k3
2 g h2 h3 R3 2 g h2 eq h3eq
d R3 d R3 A3 A3
d F3 k
4 2 g h3eq
d R4 A3 (0)
d F1 d k1 R1 V1 k1 V1eq
d R1 d R1 A1 A1
(0)
d F1
0
d R2 (0)
d F2 d k2 R2 V2 k2 V2 eq
d R2 d R2 A2 A2
(0)
d F2 k
3 2 g h2 eq h3eq
d R3 A2 (0)
d F2 d F2
0
d R1 d R4 (0)
d F3 d k3 k3
2 g h2 h3 R3 2 g h2 eq h3eq
d R3 d R3 A3 A3 (0)
d F3 k
4 2 g h3eq
d R4 A3 (0)
d h2 k2 R2eq a 2 g k R 2 g k R 2 g k V k
V2 1 h1 3 3eq h2 3 3eq h3 2 2eq R2 3 2 g h2eq h3eq R3
dt A2 2 A2 h1eq 2 A2 h2eq h3eq 2 A2 h2eq h3eq A2 A2
(0)
k R 2 g k R 2 g
d h3 k3 R3eq 2 g h k3 2 g h h R k4 2 h R
h2 3 3eq 4 4eq
dt 2 A h h 2 A h h 2 A3 h3eq
3
A3
2 eq 3eq 3
A3
3 eq 4
3 2 eq 3eq 3 2 eq 3 eq (0)
V1
k1 R1eq 0
k1 V1eq
0 V
A1 0 2
A1 0
k2 R2 eq k2 V2 eq k R1
0 0 3 2 g h2 eq h3eq 0
0
A2
0
A2 A2
k4 R2
0 0 k3 2 h3eq R3
2 g h2 eq h3eq A3
A3 R4
Esta matriz representa las alturas de los tanques, que se va a controlar.
1 0 0 h1
y 0 1 0 h2
0 0 1 h3
2 g h1 2 g h2 h3 2 g h3
- Tiene un parámetro no lineal dado por , ,
- La altura del tanque 2 va a ser mayor que la altura del tanque 3, por lo cual si el
tanque dos aumenta de altura le cederá líquido al tanque 3, en función de la
válvula de apertura que comparten R3
- El vector a , representa la relación de las alturas entre los distintos tanques su
dimensión es de 3x1.
Modelado Linealizado.
5. RESULTADOS
Para validar las dimensiones de la estructura del diseño de los tanques acoplados se
realizan simulaciones, ejecutando diferentes cambios en las variables físicas que
afectan el comportamiento del sistema y observando cada una de sus respuestas, hasta
obtener resultados aceptables. Una vez realizadas las simulaciones del sistema se
seleccionan las dimensiones que cumplan de mejor forma con las condiciones de
diseño. Con esto, se obtiene la siguiente Tabla 1.
Tabla 1: Parámetros de simulación
Sin perturbación
Análisis de la figura 7
En el sistema de tres tanques interconectados se observa que el sistema lineal y no
lineal llegan hasta el punto de equilibrio, considerando que no tiene ninguna
perturbación y que los voltajes de entrada y los porcentajes de voltajes de
equilibrio de cada una de las bombas son los mismos, por lo cual los dos modelos
se aproximan.
El tanque dos siempre tiene una altura mayor que la del tanque 3, ya que el tanque
2 tiene dos entradas de caudal, la entrada de la bomba 1 y la salida del tanque 1.
Las entradas de caudal de los tanques 1 y 2, afectan a la altura del tanque 3.
Figura 8: Gráfica con disminución de voltaje 1
En la figura 8, se puede observar que al existir una variación del porcentaje de voltaje
v1(de 0.95% a 0.9%), el sistema evoluciona y el modelo no lineal y lineal se
aproximan. Por lo tanto afecta directamente al tanque 1 y en menor medida al tanque 2
y 3.
En la figura 9, se puede observar que al existir una variación del porcentaje de voltaje
v1(de 0.95% a 0.9%), el sistema evoluciona y el modelo no lineal y lineal se
aproximan. Por lo cual afecta directamente al tanque 2 y al tanque 3 ya que están
interconectados entre sí.
Análisis de la figura 10
Se observa que el sistema no lineal se encuentra en las cercanías del punto de
equilibrio, al igual que el modelo lineal, hasta que exista una variación grande del
porcentaje de voltaje o una perturbación.
Cuando el modelo linealizado se aleja del punto de equilibrio, este no se asemeja al
modelo no lineal, a este modelo le afecta grandes perturbaciones.
Al aumentar o disminuir el porcentaje del voltaje en la bomba 1, afecta
directamente a la altura del tanque 1, y en menor medida a la altura del tanque 2 y
3, ya que el tanque 1 proporciona líquido al tanque 2 y el tanque dos está
interconectado con el tanque 3.
Siempre se considera que el tanque 2 va a tener mayor altura que el tanque 3,
debido a que el tanque 2 tiene dos entradas de caudal.
Análisis de la figura 11
Al tener una mayor variación de las perturbaciones, el modelo no lineal y lineal se
alejan de los puntos de equilibrio.
Cuando el porcentaje de voltaje de la bomba 1 es muy pequeña, afecta a la altura
del tanque 2 y 3, ya que el tanque 1 no tendría líquido.
Si el porcentaje de voltaje de la bomba 2 aumenta, se afecta directamente a la
altura del tanque 2 y 3, ya que están relacionados entre sí.
x k 1 Ax k bu k
y k cx k du k
(0)
H z c zI A b d
1
(0)
Para los sistemas de tiempo continuo, las matrices de espacio de estado relacionan el
vector x de estado, la entrada u y la salida y mediante:
x Ax bu
y cx du (0)
(0)
Mínimos Cuadrados.
Para estimar los parámetros que mejor se ajusten al modelo dinámico del sistema el
mismo que debe procesar los datos medidos, se utiliza el método de Mínimos
Cuadrados MC, puesto que brinda mayor aproximación al sistema real, el mismo que
se define como: [ CITATION MJe16 \l 12298 ]
N
MC ei2
i 1 (0)
Donde:
ei y i i (0)
(0)
(0)
MC
Por tanto, el mínimo de esta dada por:
1
θ φT φ φT y
(0)
R1V1 2 2 gh1 0 0 0 0 0
3
0 4
h2 0 R2V2 2 gh1 R3 2 g h2 h3 0 0
h 0 0 0 0 0 R3 2 g h2 h3 R4 2 gh3 5
3 6
7
y θ
1
θ T T y
(0)
K1 a K a K K K
1 2 1 3 2 4 1 5 3 6 3 7 4
A1 , A1 , A2 , A2 , A2 , A3 , A3 (0)
Implementación en Matlab
Tanque 1-V1
2.5
1.5
T1
0.5
Modelo original
Modelo identificado
0
0 50 100 150 200 250 300 350 400 450 500
Tiempo[s]
T1 0
-1
-2
-3 Modelo original
Modelo identificado
-4
200 250 300 350 400 450 500
Tiempo[s]
Para iniciar con el proceso de exportación del archivo DWG del Plant 3D al software de Unity
3D, se deben realizan en varios procesos empezando se realiza el diseño del proceso de nivel
en un software CAD que para este laboratorio se ha considerado el uso del software el Plant
3D de Autodesk.
Figura 16. Diseño del proceso de nivel de elaboración de gaseosa en el Plant 3D.
Una vez se tiene diseñado el proceso de nivel como se observa en la figura 1, se procede a
exportar el archivo, para realizarlo, se debe presionar clic derecho sobre el archivo de diseño
y se despliega una lista como se visualiza en la figura 2
Figura 17. Exportación del archivo de diseño del Plant 3D.
Una vez presionado “Export AutoCAD” aparece una ventana, donde se debe seleccionar el
tipo de archivo, que en este caso se escoge un dibujo nativo de AutoCAD, el cual es un
formato binario compacto que describe el contenido de los datos del diseño en 3D, posterior a
esto se coloca un nombre para el archivo y se guarda como se muestra en la figura 3.
Una vez que ya se tiene el archivo nativo exportado desde el software Plant 3D, se procede a
abrir el software 3ds Max, el mismo ayudará a obtener el archivo “FBX” que es reconocido
por el software Unity 3D. Dentro del 3ds Max, se tiene que importar el archivo nativo
guardado anteriormente como se observa en la figura 4.
Figura 19. Importación del archivo nativo hacia 3ds Max.
Cuando ya se haya importado el archivo van a aparecer por defecto las vistas superior, frontal,
izquierda y la perspectiva total del diseño como se muestra como en la figura 5.
Figura 21. Layers del diseño de la planta.
En el diseño del proceso de nivel dentro de la vista de perspectiva se tiene que exportar
presionando un clic en File, dirigirse hasta “Export” como se tiene en la figura 7.
Figura 23. Selección del archivo tipo FBX y guardado.
Se debe tener en cuenta que el archivo legible por el software Unity 3D es un archivo tipo
FBX, por lo tanto, se escoge este tipo y se coloca un nombre para guardarlo como se visualiza
en la figura 8.
Cuando se haya exportado arrojará una ventana de la preselección actual donde se mostrará lo
que incluye en dicha exportación como por ejemplo la geometría, la animación, luces, entre
otros, como se observa en la figura 9.
Tanque 1
1
h1[m]
0.5
0 50 100 150
Tiempo[s]
Tanque 2
1.8
h2[m]
1.7
1.6
0 50 100 150
Tiempo[s]
Tanque 2
0.9
h3[m]
0.85
0.8
0 50 100 150
Tiempo[s]
El tiempo que se demora en realizar los cálculos en Unity de cada una de las alturas y enviar a
Matlab para ser graficadas se muestra a continuación.
Tiempo de Muestreo
0.17
0.16
0.15
0.14
0.13
Tiempo[s]
0.12
0.11
0.1
0.09
0.08
0.07
0 200 400 600 800 1000 1200 1400 1600
6. CONCLUSIONES
El modelo linealizado se asemeja al modelo no lineal, siempre y cuando esté en las
cercanías del punto de equilibrio. Pero el modelo linealizado no se asemeja al
modelo no lineal, frente a grandes perturbaciones.
En este trabajo se ha presentado el modelamiento, identificación y validación de un
sistema mimo no lineal así también la comunicación entre la plataforma Unity que
permite enviar datos y mediante el HMI desarrollado tanto en esta plataforma, así
como también en Matlab, permite la visualización de los datos para el control de
nivel en un proceso de tres tanques el cual se ha demostrado la eficacia del sistema
verificando en el software las curvas de respuesta de las salidas, en tiempo real.
Mediante la plataforma Unity permite representación del proceso de forma virtual,
el cual se asemeja a la vida real, simulando efectos especiales como el movimiento
dl agua, explosiones, movimientos de personajes dentro de un espacio, incluso
sonidos.
El uso de las memorias compartidas permite una comunicación eficiente entre
MATLAB y UNITY y viceversa lo cual hace posible el intercambiar los datos del
proceso, teniendo un tiempo de alrededor de los microsegundos.
A medida que exista mayor animación y objetos 3D, consume más recursos
computacionales, algunos objetos se obtuvo en páginas de código libre las cuales
permite descargar objetos 3D con buena definición.
REFERENCIAS