Extends from Buildings.BaseClasses.BaseIconExamples (Icon for Examples packages).
| Name | Description |
|---|---|
| TwoRooms | Thermal model of two rooms that will be linked to Ptolemy which models the controls |
| Type | Name | Default | Description |
|---|---|---|---|
| Time | tau | 2*3600 | Room time constant [s] |
| HeatFlowRate | Q_flow_nom | 100 | Nominal heat flow [W] |
| ThermalConductance | UA | Q_flow_nom/20 | Thermal conductance of room [W/K] |
model TwoRooms
"Thermal model of two rooms that will be linked to Ptolemy which models the controls"
import Buildings;
parameter Modelica.SIunits.Time tau = 2*3600 "Room time constant";
parameter Modelica.SIunits.HeatFlowRate Q_flow_nom = 100 "Nominal heat flow";
parameter Modelica.SIunits.ThermalConductance UA = Q_flow_nom / 20
"Thermal conductance of room";
Modelica.Thermal.HeatTransfer.Components.HeatCapacitor C1(C=tau*UA, T(start=
283.15)) "Heat capacity of room";
Modelica.Thermal.HeatTransfer.Components.ThermalConductor UA1(G=UA)
"Heat transmission of room";
Modelica.Thermal.HeatTransfer.Sources.FixedTemperature TOut1(T=278.15)
"Outside air temperature";
Modelica.Thermal.HeatTransfer.Sources.PrescribedHeatFlow Q_flow_1
"Heat input into the room";
Modelica.Blocks.Math.Gain GaiQ_flow_nom1(k=Q_flow_nom)
"Gain for nominal heat load";
Modelica.Thermal.HeatTransfer.Components.ThermalConductor UA2(G=UA)
"Heat transmission of room";
Modelica.Thermal.HeatTransfer.Components.HeatCapacitor C2(C=2*tau*UA, T(start=
283.15)) "Heat capacity of room";
Modelica.Thermal.HeatTransfer.Sources.FixedTemperature TOut2(T=278.15)
"Outside air temperature";
Modelica.Thermal.HeatTransfer.Sources.PrescribedHeatFlow Q_flow_2
"Heat input into the room";
Modelica.Blocks.Math.Gain GaiQ_flow_nom2(k=Q_flow_nom)
"Gain for nominal heat load";
Modelica.Thermal.HeatTransfer.Sensors.TemperatureSensor TRoo1
"Room temperature";
Modelica.Thermal.HeatTransfer.Sensors.TemperatureSensor TRoo2
"Room temperature";
Buildings.Utilities.IO.BCVTB.BCVTB bcvtb(
samplePeriod=60,
nDblWri=2,
nDblRea=2,
xmlFileName=
"P:\\bcvtb\\task1-supVis\\code\\bcvtb\\trunk\\bcvtb\\examples\\roomPtDymola\\socket.cfg");
Modelica.Blocks.Routing.Multiplex2 multiplex2_1;
Modelica.Blocks.Routing.DeMultiplex2 deMultiplex2_1;
Modelica.Blocks.Math.Add add;
Modelica.Blocks.Math.Add add1;
Modelica.Blocks.Sources.Constant uniCon(k=-273.15) "Unit conversion";
equation
connect(TOut1.port, UA1.port_a);
connect(UA1.port_b, C1.port);
connect(TOut2.port, UA2.port_a);
connect(UA2.port_b, C2.port);
connect(Q_flow_1.port, C1.port);
connect(Q_flow_2.port, C2.port);
connect(C1.port, TRoo1.port);
connect(C2.port, TRoo2.port);
connect(GaiQ_flow_nom1.y, Q_flow_1.Q_flow);
connect(GaiQ_flow_nom2.y, Q_flow_2.Q_flow);
connect(bcvtb.yR, deMultiplex2_1.u);
connect(deMultiplex2_1.y1[1], GaiQ_flow_nom1.u);
connect(deMultiplex2_1.y2[1], GaiQ_flow_nom2.u);
connect(multiplex2_1.y, bcvtb.uR);
connect(uniCon.y, add.u2);
connect(uniCon.y, add1.u1);
connect(TRoo1.T, add.u1);
connect(TRoo2.T, add1.u2);
connect(add1.y, multiplex2_1.u2[1]);
connect(add.y, multiplex2_1.u1[1]);
end TwoRooms;