Sie sind auf Seite 1von 21

CURSO: SIMULINK - MATLAB

INSTRUCTOR: ING. HERNAN VICENTE AQUINO TARQUI


CLASE: I PARA CONTROL DE PROCESOS

TIPO DE MODELO: CONTROL DE LA TEMPERATURA EN UNA HABITACIÓN


(MathWorks, 2015)

1 Sistema de calefacción de una casa (MathWorks, 2015).

1.1 Objetivos del Modelo

Antes de diseñar el modelo matemático, se debe considerar los objetivos y los


requerimientos. Los objetivos para el modelado del sistema de calefacción de la casa son:

 Observar cómo afecta los cambios de la temperatura exterior a la temperatura interior de


la casa.
 Utilizando valores experimentales de la temperatura exterior e interior, compararlos con
los resultados obtenidos en la simulación.

1.2 Identificar los componentes del sistema.

Las características de la casa y del ambiente define un sistema de calefacción y su relación


con la habitación. Esto incluye:

 Características térmicas de la casa


 Características térmicas del Calefactor
 Un termostato para controlar el Calefactor
 Ambiente exterior
 Ambiente interior

Después de seleccionar las características del termostato, el termostato debe regular el


calefactor en “on” y “off” dependiendo la diferencia entre la temperatura exterior y la
temperatura interior de la habitación.
CURSO: SIMULINK - MATLAB

INSTRUCTOR: ING. HERNAN VICENTE AQUINO TARQUI

Figura 1. Sistema de calefacción de una casa.


Fuente: Manual Simulink

El modelo para este sistema incluye tres componentes: calefactor, termostato y la habitación.

1.3 Ecuaciones del sistema

Tres variables definen el modelo de calefacción de la casa:

 Energía térmica transferida desde el calefactor (Qgain) a la habitación


 Energía térmica transferida desde la habitación (Q loss) al exterior de la habitación
 Temperatura de la habitación (Troom)

Una ecuación diferencial define cada una de las variables, pero la transferencia de calor está
definida en términos de cambio de temperatura, solo la temperatura de la habitación es una
variable de estado.

1.4 Ecuación de la velocidad de flujo de calor ganado

La temperatura del aire en el calefactor es Theater y la temperatura de la habitación es Troom.

El calor ganado por la habitación es por convección del aire calentado proveniente del
calefactor. El calor ganado por la masa de aire en el calefactor mheaterair es:

Qgain  mheateraircair Theater  Troom (1)

El ventilador toma aire de la habitación, y pasa a través del calefactor y vuelve a la


habitación. El flujo de calor ganado desde el calefactor es:
CURSO: SIMULINK - MATLAB

INSTRUCTOR: ING. HERNAN VICENTE AQUINO TARQUI


dQgain
cair Theater  Troom  (2)
dmheaterair

dt dt

Puesto que la masa de aire por unidad de tiempo proveniente del calefactor es constante, se
dmheaterair
remplaza con una constante Mheaterair y simplificando la ecuación (2) queda:
dt

dQgain
 M heateraircair Theater  Troom  (3)
dt

1.5 Ecuación de la velocidad de flujo de calor perdido.

El calor perdido de la habitación es por conducción a través de las paredes y las ventanas:

kATroom  Toutsidet
Qloss  (4)
D

El flujo de calor perdido es:

dQloss kATroom  Toutside


 (5)
dt D

Reemplazando kA/D por una resistencia térmica R, simplificando la ecuación:

dQloss Troom  Toutside


 (6)
dt R

1.6 Ecuación de cambio de temperatura de la habitación

La velocidad de cambio de temperatura de la habitación se define por la diferencia de la


velocidad de calor perdido Qloss y el calor ganado Qgain.

dTroom 1  dQgain dQloss 


    (7)
dt mroomaircair  dt dt 

1.7 Recolección de datos

Enlistar las variables y coeficientes de las ecuaciones y realizar la compatibilidad de


unidades.
CURSO: SIMULINK - MATLAB

INSTRUCTOR: ING. HERNAN VICENTE AQUINO TARQUI


1.7.1 Variables y constantes de las ecuaciones

Se puede utilizar los nombres y valores de esta tabla para construir el modelo

Variable o Descripción Valor Unidades


constante
Awall Área de la pared 914 m2
Awindow Área de la ventana 6 m2
Dwall Espesor de la pared 0.2 m
Dwindow Espesor de la ventana 0.01 m
Q Calor transferido Variable Joule
dQ/dt Velocidad de flujo de Variable Joule/hour
energía transferida
k Conductividad térmica J/mhoC

Kfiberglass 136.8
Kglass 2808
r Resistividad térmica r mhoC/J
=1/k
R Resistencia térmica hoC/J
R=D/kA=(T1-T2)Q
Rwall 1.599*10-6
Rwindow 5.935*10-7
Requivalent = 4.329*10-7
Rwall*Rwindow/( Rwall+Rwindow)
m Masa de aire en la 1470 Kg
habitación o calefactor
Mroomair
Masa del calefactor No es
Mheaterair necesario en
este modelo
dm/dt Velocidad de masa de Kg/h
aire que pasa a través del
calefactor
M Velocidad constante de 3600 Kg/h
masa de aire que pasa a
través del calefactor
Mheaterair
c Capacidad calorífica 1005.4 J/KgoC
Cair
o
Theater Temperatura constante 50 C
del calefactor
o
Troominicial Temperatura de aire de la 20 C
habitación
Valor inicial
CURSO: SIMULINK - MATLAB

INSTRUCTOR: ING. HERNAN VICENTE AQUINO TARQUI


1.8 Construcción del modelo

1.8.1 Estructura principal

Para la estructura principal del modelo, utilizar bloques denominados Subsystem. El modelo
incluye los subsistemas Thermostat, Heater y Room.

1. Adicionar bloques de Subsystem al editor de simulink.

2. Abrir el primer bloque Subsystem con doble click.

Cada subsistema consta de dos bloques: un puerto de entrada (In1) y uno de salida
(Out1). Estos bloques definen la interface con el nivel superior en un modelo
jerarquico. Se puede crear bloques de salida y entrada adicionales, estos se
encuentran en la misma librería del bloque Subsystem.
CURSO: SIMULINK - MATLAB

INSTRUCTOR: ING. HERNAN VICENTE AQUINO TARQUI


3. En la barra de herramientas del editor se puede hacer click en el botón para subir
de nivel. Por otro lado también se debe etiquetar cada subsistema.

1.8.2 Modelo del Heater

El componente heater debe:

 Tomar como entradas la temperatura de la habitación T room y la señal de control del


Thermostat.
 Calcular el calor ganado Qgain del calefactor
 Como salida el calor ganado Qgain cuando la temperatura de la habitación T room está
más baja que la temperatura seleccionada o deseada para la habitación.

Para el subsistema Heater se debe construir el modelo de la ecuación de flujo de calor


ganado ec (3).

dQgain
 M heateraircair Theater  Troom 
dt

1.8.2.1 Restar la temperatura del aire de la habitación de la temperatura de aire del


calefactor.

Lo primero que se construirá en esta parte es la diferencia Theater  Troom de la ecuación

mencionada anteriormente.

1. Abrir el subsistema Heater.


CURSO: SIMULINK - MATLAB

INSTRUCTOR: ING. HERNAN VICENTE AQUINO TARQUI


2. De la librería Math Operations adicionar el bloque Sum al subsistema Heater, cambiar
los signos en las propiedades del mismo a – y +.
3. Añadir un bloque Constant al modelo, doble click, asignar el parámetro Theater en
Constant value. Dicho parámetro debe estar ya definido en la ventana workspace de
MatLab.
4. Añadir un bloque Inport para conectar la señal de la temperatura de la habitación
Troom de otra parte del sistema.
5. Conectar los bloques como se indica en la figura y etiquetar las señales:

1.8.2.2 Multiplicar la diferencia de temperaturas por la capacidad calorífica y el flujo


de masa.

1 El flujo de masa está definido por Mheaterair y la capacidad calorífica por cair en
workspace. Escribir en los parámetros de Gain Mheaterair* cair.
2 Conectar la salida del bloque Sum a la entrada del bloque Gain.
3 Renombrar el bloque Gain a Heat Gain/degree
CURSO: SIMULINK - MATLAB

INSTRUCTOR: ING. HERNAN VICENTE AQUINO TARQUI


1.8.2.3 Insertar un Switch al Heater

El Thermostat manda una señal on/off igual a 1 (on) o 0 (off) al Heater. Debido a que la señal
es binaria, se puede utilizar un bloque Multiplier para el switch.

1. Borrar la conexión entre In1 y Out1.


2. Añadir un bloque Product. Conectar el bloque In1 a la primera entrada y el bloque
Out1 a la salida.
3. Conectar la salida del bloque Gain a la segunda entrada del bloque Product.
4. Etiquetar las señales y bloques restantes.

1.8.2.4 Definir parámetros del modelo

Los valores de la tabla se lo deben transcribir a workspace

1.8.2.5 Preparar el modelo para la simulación

Si la temperatura de la habitación Troom fuera 25 oC y si la salida del Thermostat fuera 1, el


calor calculado sería: (50-25)*3600*1005.3=9.05*107. Para poder realizar esta prueba de
subsistema se debe seguir los siguientes pasos:

1. Subir un nivel del subsistema Heater.


CURSO: SIMULINK - MATLAB

INSTRUCTOR: ING. HERNAN VICENTE AQUINO TARQUI

2. Añadir un bloque Constant para representar (momentáneamente) el valor de la


temperatura de la habitación igual a 25 oC. añadir un bloque Step para representar de
forma momentánea a la señal on/off como entrada al Heater. Definir el Step time a 4.
3. Añadir un bloque Scope y conectarlo a la salida del Heater y conectar el resto de los
bloques como se indica en la figura:

1.8.2.6 Simular el modelo y evaluar resultados

1. Abrir la ventana de configuración de parámetros Simulation >Model Configuration


Parmaters.
Verificar si: Stop time está en 10, Type a Variable-step, y Solver a ode45.
2. Abrir el bloque Scope con doble click. Y añadir un bloque Display a la salida del
subsistema.
3. Simular el modelo. Y comprobar el valor calculado anteriormente.
CURSO: SIMULINK - MATLAB

INSTRUCTOR: ING. HERNAN VICENTE AQUINO TARQUI

Entonces cuando la señal on/off cambia de 0 a 1 a las 4 horas, se comprueba que el valor
cambia a 9.05*107 J/h. La simulación valida el valor esperado.

1.8.3 Modelo del thermostat

Se puede modelar un termostato sin utilizar sistemas de ecuaciones. Los requerimientos


para este componente:

 Cuando la temperatura de la habitación esta debajo de la requerida (set), la señal del


control es igual a 1
 Cuando la temperatura de la habitación está por encima de la requerida (set), la señal
del control será 0.
 Existe una histéresis de 2 segundos (oC) respecto el set point (temperatura requerida).
Si el Thermostat está en off, la temperatura de la habitación debe incrementarse 2
grados por encima del set point antes de que cambie a on.

Este componente debe determinar cuando el calor del sistema está en on o en off. Esto lo
controla un bloque Relay que lógicamente representa el modelo del Thermostat.

1.8.3.1 Restar la temperatura del set point de la temperatura de la habitación

Si la temperatura set point es más caliente que la temperatura de la habitación, el


Thermostat enviará una señal “on” al Heater. Para determinar si este es el caso, empezar
restando la temperatura de la habitación de la temperatura set point.
CURSO: SIMULINK - MATLAB

INSTRUCTOR: ING. HERNAN VICENTE AQUINO TARQUI


1. Abrir el subsistema Thermostat. Añadir un bloque Sum, la lista de signos debe estar
de la siguiente manera +-.
2. Conectar el bloque Inport a la entrada + del bloque Sum. Este bloque Inport
representa a la temperatura set point.
3. Añadir un segundo bloque Inport y conectarlo a la entrada – del bloque Sum. Este
segundo bloque Inport representa a la temperatura de la habitación.
4. Etiquetar los bloques como sigue:

1.8.3.2 Señal del Thermostat

La señal del Thermostat debe tener un valor de histéresis de 2 grados Celsius.

1. En el subsistema Thermostat añadir un bloque Relay. En el Switch on point


modificar el parámetro a 2, y el Switch off point a -2.
2. Conectar y etiquetar los bloques.
CURSO: SIMULINK - MATLAB

INSTRUCTOR: ING. HERNAN VICENTE AQUINO TARQUI

1.8.3.3 Preparar el modelo para simulación.

Preparar el subsistema Thermostat para la simulación. Se debe pensar en el


comportamiento esperado del Thermostat y como se puede simular esto. Cuando la
temperatura de la habitación se incrementa arriba de los 2 grados (designados), la salida del
thermostat es 1. Cuando la temperatura de la habitación está por debajo de los 2 grados
(designados) la salida del termostato es 0.

1. Volver a la estructura principal del modelo.

2. Añadir un bloque Constant y modificar el parámetro Constant a 25 (grados Celsius)


3. Añadir un bloque Sine Wave que representará la temperatura de la habitación. En el
parámetro Bias cambiar a 20 y la Amplitude a 10. Estos parámetros dan una
variación por encima y debajo de la temperatura de 25 (set point).
4. Añadir un bloque Floating Scope.
5. Conectar los bloques como se muestra en la figura.
CURSO: SIMULINK - MATLAB

INSTRUCTOR: ING. HERNAN VICENTE AQUINO TARQUI


6. Doble click en Floating Scope. De la barra de herramientas hacer click al botón
Signal Selection. En el cuadro de dialogo seleccionar Constant, Sine Wave y
Thermostat. Y luego click en Close.

1.8.3.4 Simular el modelo y evaluar los resultados.

Utilizar la simulación por defecto.

1. Verificar en Configuration Parameters que Stop time sea 10, Type a Variable–step,
y Solver a ode45.
2. Simular el modelo. A medida que la simulación corra, el Floating Scope nos mostrara
los resultados.

3. Entonces se debe comprobar que cuando la temperatura de la habitación está por


encima del set point (+ 2 grados Celsius) el Relay se mantendrá apagado mandando
una señal de 0 al Heater y si la temperatura está por debajo del set point (-2 grados
Celsius) el Relay mandará una señal de 1 al Heater.
CURSO: SIMULINK - MATLAB

INSTRUCTOR: ING. HERNAN VICENTE AQUINO TARQUI


1.8.4 Modelo de la Habitación.

Las entradas del subsistema Room son el flujo de calor desde el Heater y la temperatura de
aire externa. El subsistema Room utiliza las entradas para calcular el calor perdido a través
de las paredes, ventanas y la temperatura actual de la habitación.

Para diseñar el subsistema Room, se debe utilizar la ecuación de velocidad de calor perdido
(ec 6) y la ecuación de cambio de temperatura de la habitación (ec 7).

1.8.4.1 Modelo cambio de temperatura en la habitación.

La ecuación que define este modelo es la ecuación 7:

dTroom 1  dQgain dQloss 


   
dt mroomaircair  dt dt 

El término dQgain/dt es una señal proveniente del subsistema Heater.

1. Abrir el subsistema Room. Añadir el bloque Sum. Cambiar los parámetros a + - en


List of signs.
2. Conectar el bloque In1 a la entrada +. Esta representa (dQ gain/dt) del Heater. La
entrada – se conecta a calor perdido (dQloss/dt) desde la habitación.
3. Añadir un bloque Gain. Y cambiar el parámetro Gain a 1/(mroomair*Cair). Conectar la
salida al bloque Sum a la entrada del bloque Gain. Etiquetar las señales como se
muestra.
CURSO: SIMULINK - MATLAB

INSTRUCTOR: ING. HERNAN VICENTE AQUINO TARQUI


1.8.4.2 Modelo de la temperatura de la habitación.

La salida del bloque Gain representa el cambio de temperatura en la habitación (dTroom/dt).


Para obtener la temperatura de la habitación instantánea (Troom), se integra la señal.

1. Añadir un bloque Integrator. Cambiar el parámetro Initial condition a Troominicial.


2. Conectar el valor de la salida del bloque Integrator a Out1 como se ve:

1.8.4.3 Modelo de calor perdido a través de las paredes y ventanas.

La ecuación que representa la velocidad de calor perdido a través de las paredes y las
ventanas es (ec 6)

dQloss Troom  Toutside



dt R

1. En el subsistema Room añadir un bloque Sum. Cambiar List of signs a +-. Hacer
click derecho al bloque y seleccionar Format > Flip Block.
2. De la señal de Troom jalar y conectar al input + del bloque Sum.
3. Añadir un bloque Inport y conectarlo al input – del bloque Sum. Renombrarlo como
Temperatura exterior.
4. Añadir otro bloque Gain. Y cambiar el parámetro Gain a 1/Requivalente. Click
derecho al bloque y Format > Flip Block.
5. Conectar los bloques como se muestra:
CURSO: SIMULINK - MATLAB

INSTRUCTOR: ING. HERNAN VICENTE AQUINO TARQUI

1.8.4.4 Parámetros del modelo

Crear las variables en workspace:

mroomair = 1470 (Kg)

Troominicial = 20 (oC)

Requivalente = 4.329e-7 (hoC/J)

1.8.4.5 Preparar modelo para simulación I

Se debe pensar en cómo probar el comportamiento con una simulación previa. Cuando el
Heater está en off (calor ganado = 0) y la temperatura inicial de la habitación (20) está por
encima de la temperatura del exterior (10), el calor perdido debe continuar hasta que la
temperatura de la habitación sea igual a la exterior.

1. Del subsistema Room volver a la estructura principal.


Añadir un bloque Constan y conectarlo a la entrada de Calor ganado. Cambiar
Constant value a 0 (que significa que el Heater está en off.
2. Añadir otro bloque Constant y conectarlo a la entrada de temperatura del exterior.
Cambiar Constant value a 10.
3. Añadir y conectar un bloque Scope y ver los cambios de la temperatura de la
habitación.
CURSO: SIMULINK - MATLAB

INSTRUCTOR: ING. HERNAN VICENTE AQUINO TARQUI

4. Determinar si el resultado es el esperado.

1.8.4.6 Preparar modelo para simulación II

Cambiar el valor de la temperatura exterior a un valor por encima de la temperatura inicial de


la habitación (20).

1. En el bloque Constant que está conectado a la entrada de la temperatura exterior,


cambiar el valor a 30 (oC).
2. Simular el resultado.

3. Determinar si los resultados son los esperados.


Este resultado es inesperado debido a que la temperatura en la

1.8.5 Integrar el Heater y Thermostat

Para simular el Heater y Thermostat sin el Room, se necesita una señal variable de la
temperatura de la habitación. Utilizar un bloque Constant y un bloque Sine Wave para la
temperatura exterior.
CURSO: SIMULINK - MATLAB

INSTRUCTOR: ING. HERNAN VICENTE AQUINO TARQUI


1.8.5.1 Preparar el modelo para la simulación

1. Abrir el modelo con la estructura principal

2. Conectar la señal del Heater (on/off) a la entrada correspondiente del Heater

3. Añadir un bloque Constant para asignar el set point de la temperatura a la habitación.


Cambiar el parámetro Constant a 20 (grados Celsius).

4. Añadir un bloque Sine Wave que represente el cambio de temperatura variable de la


habitación, con los siguientes parámetros: Amplitude a 10 (grados Celsius), Bias a
15 y Frequency a 0.5.

5. Añadir y bloque Floating Scope y conectar todo como se muestra:

6. Abrir el Floating Scope y de la barra de herramientas seleccionar Signal Selector


7. En el cuadro de dialogo, darle un check a Heater
8. De nuevo en la barra de herramientas hacer click en el botón Parameters. En la
pestaña General en Number of axes cambiar a 2, presionar apply y aparecerán las
dos gráficas.
9. Click en la segunda gráfica y click en Signal Selector. Darle un check a Constant y
Sine Wave.
10. Click derecho en el Floating Scope, seleccionar Axes properties. Cambiar Y-min a 0
y Y-max a 35.

1.8.5.1.1 Simular y evaluar resultados

Simular el modelo con Stop time 10 y Solver ode45.


CURSO: SIMULINK - MATLAB

INSTRUCTOR: ING. HERNAN VICENTE AQUINO TARQUI


1. Simular el modelo
2. Abrir el Floating Scope y ver los resultados de la simulación.

1.8.6 Integrando el subsistema Room

Para simular el Heater y el Thermostat con el Room, se necesita una señal para el cambio
de temperatura del exterior. Simulando el modelo nos permite observar como las
propiedades del Thermostat y la temperatura externa afectan a la temperatura interna
(habitación).

1.8.6.1.1 Preparar para la simulación

1. Abrir la estructura principal.


2. Conectar los subsistemas como se muestra:

3. Añadir un bloque Constant para representar la temperatura de la habitación. Cambian


Constant value a 20 (grados Celsius)
4. Añadir un bloque Sine Wave que representará los cambios de la temperatura exterior.
Cambiar: Bias a 12, Amplitude a 5, Frequency a 2*pi/24, y Phase a 180.
CURSO: SIMULINK - MATLAB

INSTRUCTOR: ING. HERNAN VICENTE AQUINO TARQUI


5. Añadir un floating scope.

6. En el Floating Scope, hacer click en Signal Selector. En el cuadro de dialogo


seleccionar Room (room temperatura) y Sine Wave (temperatura externa).
7. En Axes properties. Y-min a 5 y Y-max a 25

1.8.6.1.2 Simular y evaluar resultados.

1. Stop time a 24 (horas)


2. Simular modelo y ver resultados.

1.8.6.1.3 Perfeccionar los parámetros del modelo.

Con el modelo en simulink se puede cambiar los parámetros y observar los cambios en el
comportamiento del modelo. Esta aproximación permite evaluar el modelo rápidamente y
validar su diseño.

Cambiar la temperatura externa en bloque Sine Wave, elevar el valor por encima de la
temperatura del Thermostat.

1. En el cuadro de dialogo de Sine Wave cambiar los valores de: Bias a 19 y


Amplitude a 5, estos cambios mostrarán lo que ocurre cuando la temperatura
exterior es más alta que la interior de la habitación.
2. Simular el modelo y ver los resultados.

2 Bibliografía

MathWorks. 2015. MATLAB&SIMULINK getting started guide. 2015.


CURSO: SIMULINK - MATLAB

INSTRUCTOR: ING. HERNAN VICENTE AQUINO TARQUI

Das könnte Ihnen auch gefallen