Buildings.Fluids.Examples.BaseClasses

Package with base classes for example models

Package Content

NameDescription
Buildings.Fluids.Examples.BaseClasses.ControlSignals ControlSignals Generate ramp signal
Buildings.Fluids.Examples.BaseClasses.RoomLeakage RoomLeakage Room leakage model
Buildings.Fluids.Examples.BaseClasses.Suite Suite Model of a suite consisting of five rooms of the MIT system model


Buildings.Fluids.Examples.BaseClasses.ControlSignals Buildings.Fluids.Examples.BaseClasses.ControlSignals

Generate ramp signal

Buildings.Fluids.Examples.BaseClasses.ControlSignals

Information



Parameters

TypeNameDefaultDescription
IntegerNSig4Number of signals
Realh[NSig]{0.7*22.333,0.7*8,-20/90,-30...Height of ramps
Realdur[NSig]0.25*{1,1,1,1}Durations of ramp
Realy0[NSig]{0.3*22.333,0.3*8,55/90,55/90}Offset of output signal
TimestaTim[NSig]0.25*{0,0,1,2}Output = offset for time < startTime [s]

Connectors

TypeNameDescription
output RealOutputySupFanFan control signal
output RealOutputyOSAOutside air mixing box control signal
output RealOutputyVAVVAV damper control signal
output RealOutputyRetFanFan control signal

Modelica definition

block ControlSignals "Generate ramp signal" 
  parameter Integer NSig=4 "Number of signals";
  parameter Real h[NSig]={0.7*22.333, 0.7*8, -20/90, -30/90} "Height of ramps";
  parameter Real dur[NSig](min=Modelica.Constants.small) = 0.25 *{1, 1, 1, 1} 
    "Durations of ramp";
  parameter Real y0[NSig]={0.3*22.333, 0.3*8, 55/90, 55/90} 
    "Offset of output signal";
  parameter Modelica.SIunits.Time staTim[NSig]=0.25*{0, 0, 1, 2} 
    "Output = offset for time < startTime";
  output Real y[NSig] "Control signal";
  
  extends Modelica.Blocks.Interfaces.BlockIcon;
  
  Modelica.Blocks.Interfaces.RealOutput ySupFan "Fan control signal";
  Modelica.Blocks.Interfaces.RealOutput yOSA 
    "Outside air mixing box control signal";
  Modelica.Blocks.Interfaces.RealOutput yVAV "VAV damper control signal";
  Modelica.Blocks.Interfaces.RealOutput yRetFan "Fan control signal";
equation 
  for i in 1:NSig loop
  y[i] = y0[i] + (if time < staTim[i] then 0 else if time < (staTim[i] +
    dur[i]) then (time - staTim[i])*h[i]/dur[i] else h[i]);
  end for;
  ySupFan=y[1];
  yRetFan=y[2];
  yOSA=y[3];
  yVAV=y[4];
end ControlSignals;

Buildings.Fluids.Examples.BaseClasses.RoomLeakage Buildings.Fluids.Examples.BaseClasses.RoomLeakage

Room leakage model

Buildings.Fluids.Examples.BaseClasses.RoomLeakage

Information


Room leakage used in the MIT system model.


Connectors

TypeNameDescription
input RealInputpPressure
FluidPort_bport_b 

Modelica definition

model RoomLeakage "Room leakage model" 
  extends Buildings.BaseClasses.BaseIcon;
  replaceable package Medium = 
      Modelica.Media.Interfaces.PartialMedium "Medium in the component";
  
  Buildings.Fluids.FixedResistances.FixedResistanceDpM res(
    m0_flow=1,
    dp0=1000,
    redeclare package Medium = Medium) "Resistance model";
  
  Modelica.Blocks.Interfaces.RealInput p(redeclare type SignalType = 
        Modelica.SIunits.AbsolutePressure) "Pressure";
  Modelica_Fluid.Interfaces.FluidPort_b port_b(redeclare package Medium = 
        Medium);
  
  Modelica_Fluid.Sources.PrescribedBoundary_pTX amb(redeclare package Medium = Medium, p=101325, T=293.15);
equation 
  connect(res.port_b, port_b);
  connect(amb.port, res.port_a);
  connect(p, amb.p_in);
end RoomLeakage;

Buildings.Fluids.Examples.BaseClasses.Suite Buildings.Fluids.Examples.BaseClasses.Suite

Model of a suite consisting of five rooms of the MIT system model

Buildings.Fluids.Examples.BaseClasses.Suite

Information


Model of a suite consisting of five rooms for the MIT system model.


Parameters

TypeNameDefaultDescription
MassFlowRatem0Tot_flowvav39.m0_flow + vav40.m0_flo...[kg/s]

Connectors

TypeNameDescription
input RealInputpPressure
FluidPort_bport_aSup 
FluidPort_bport_bSup 
FluidPort_bport_bExh 
FluidPort_bport_aExh 
FluidPort_bport_aRoo 
FluidPort_bport_bRoo 
input RealInputyDamDamper signal

Modelica definition

model Suite 
  "Model of a suite consisting of five rooms of the MIT system model" 
  extends Buildings.BaseClasses.BaseIconLow;
  
  replaceable package Medium = 
      Modelica.Media.Interfaces.PartialMedium "Medium in the component";
  
  
  Modelica.Blocks.Interfaces.RealInput p(redeclare type SignalType = 
        Modelica.SIunits.AbsolutePressure) "Pressure";
  Modelica_Fluid.Interfaces.FluidPort_b port_aSup(redeclare package Medium = 
        Medium);
  parameter Modelica.SIunits.MassFlowRate m0Tot_flow = vav39.m0_flow+vav40.m0_flow+vav41.m0_flow+vav42.m0_flow+vav43.m0_flow;
  
  Buildings.Fluids.FixedResistances.SplitterFixedResistanceDpM spl34(
                                              m0_flow=ones(3), dp0={0.176,0.844,
        0.0662},
    redeclare package Medium = Medium);
  Buildings.Fluids.FixedResistances.SplitterFixedResistanceDpM mix55(
                                              m0_flow=ones(3), dp0=1E3*{
        0.263200E-02,0.999990E-03,0.649000E-03},
    redeclare package Medium = Medium);
  Buildings.Fluids.Actuators.Dampers.VAVBoxExponential vav39(
    A=0.49,
    m0_flow=4.33*1.2,
    dp0=0.999E2,
    redeclare package Medium = Medium);
  Buildings.Fluids.FixedResistances.FixedResistanceDpM res13(
                                      m0_flow=1, dp0=0.1E3,
    redeclare package Medium = Medium);
  Buildings.Fluids.Actuators.Dampers.VAVBoxExponential vav40(
    A=0.245,
    m0_flow=2.369*1.2,
    dp0=0.999E2,
    redeclare package Medium = Medium);
  Buildings.Fluids.Actuators.Dampers.VAVBoxExponential vav41(
    dp0=0.999E2,
    A=0.128,
    m0_flow=0.837*1.2,
    redeclare package Medium = Medium);
  Buildings.Fluids.Actuators.Dampers.VAVBoxExponential vav42(
    dp0=0.999E2,
    A=0.128,
    m0_flow=0.801*1.2,
    redeclare package Medium = Medium);
  Buildings.Fluids.Actuators.Dampers.VAVBoxExponential vav43(
    dp0=0.999E2,
    A=0.0494,
    m0_flow=0.302*1.2,
    redeclare package Medium = Medium);
  Buildings.Fluids.FixedResistances.FixedResistanceDpM res14(
                                      m0_flow=1, dp0=0.1E3,
    redeclare package Medium = Medium);
  Buildings.Fluids.FixedResistances.FixedResistanceDpM res15(
                                      m0_flow=1, dp0=0.1E3,
    redeclare package Medium = Medium);
  Buildings.Fluids.FixedResistances.FixedResistanceDpM res16(
                                      m0_flow=1, dp0=0.1E3,
    redeclare package Medium = Medium);
  Buildings.Fluids.FixedResistances.FixedResistanceDpM res17(
                                      m0_flow=1, dp0=0.1E3,
    redeclare package Medium = Medium);
  Buildings.Fluids.FixedResistances.SplitterFixedResistanceDpM spl35(
                                              m0_flow=ones(3), dp0=1E3*{
        0.371000E-04,0.259000E-02,0.131000E-02},
    redeclare package Medium = Medium);
  Buildings.Fluids.FixedResistances.SplitterFixedResistanceDpM spl36(
                                              m0_flow=ones(3), dp0=1E3*{
        0.211000E-03,0.128000E-01,0.223000E-02},
    redeclare package Medium = Medium);
  Buildings.Fluids.FixedResistances.SplitterFixedResistanceDpM spl37(
                                              m0_flow=ones(3), dp0=1E3*{
        0.730000E-03,0.128000E-01,0.938000E-02},
    redeclare package Medium = Medium);
  Buildings.Fluids.FixedResistances.SplitterFixedResistanceDpM spl38(
                                              m0_flow=ones(3), dp0=1E3*{
        0.731000E-02,0.895000E-01,0.942000E-01},
    redeclare package Medium = Medium);
  Buildings.Fluids.FixedResistances.SplitterFixedResistanceDpM mix54(
                                              m0_flow=ones(3), dp0=1E3*{
        0.653000E-02,0.271000E-03,0.402000E-04},
    redeclare package Medium = Medium);
  Buildings.Fluids.FixedResistances.SplitterFixedResistanceDpM mix53(
                                              m0_flow=ones(3), dp0=1E3*{
        0.566000E-01,0.541000E-02,0.749000E-04},
    redeclare package Medium = Medium);
  Buildings.Fluids.FixedResistances.SplitterFixedResistanceDpM mix52(
                                              m0_flow=ones(3), dp0=1E3*{
        0.353960,0.494000E-03,0.922000E-03},
    redeclare package Medium = Medium);
  Buildings.Fluids.FixedResistances.SplitterFixedResistanceDpM mix51(
                                              m0_flow=ones(3), dp0=1E3*{
        0.847600E-01,1.89750,0.150000E-02},
    redeclare package Medium = Medium);
  Buildings.Fluids.Examples.BaseClasses.RoomLeakage lea45(redeclare package 
      Medium = 
        Medium) "Room leakage model";
  Buildings.Fluids.Examples.BaseClasses.RoomLeakage lea46(redeclare package 
      Medium = 
        Medium) "Room leakage model";
  Buildings.Fluids.Examples.BaseClasses.RoomLeakage lea47(redeclare package 
      Medium = 
        Medium) "Room leakage model";
  Buildings.Fluids.Examples.BaseClasses.RoomLeakage lea48(redeclare package 
      Medium = 
        Medium) "Room leakage model";
  Buildings.Fluids.Examples.BaseClasses.RoomLeakage lea49(redeclare package 
      Medium = 
        Medium) "Room leakage model";
  Buildings.Fluids.Components.MixingVolume roo45(redeclare package Medium = Medium,
    V=10*5*2.5,
    nP=5,
    initType=Modelica_Fluid.Types.Init.SteadyStateHydraulic);
  Buildings.Fluids.Components.MixingVolume roo46(redeclare package Medium = Medium,
    V=10*5*2.5,
    nP=5,
    initType=Modelica_Fluid.Types.Init.SteadyStateHydraulic);
  Buildings.Fluids.Components.MixingVolume roo47(redeclare package Medium = Medium,
    V=10*5*2.5,
    nP=5,
    initType=Modelica_Fluid.Types.Init.SteadyStateHydraulic);
  Buildings.Fluids.Components.MixingVolume roo48(redeclare package Medium = Medium,
    V=10*5*2.5,
    nP=5,
    initType=Modelica_Fluid.Types.Init.SteadyStateHydraulic);
  Buildings.Fluids.Components.MixingVolume roo49(redeclare package Medium = Medium,
    V=10*5*2.5,
    nP=5,
    initType=Modelica_Fluid.Types.Init.SteadyStateHydraulic);
  Modelica_Fluid.Interfaces.FluidPort_b port_bSup(redeclare package Medium = 
        Medium);
  Modelica_Fluid.Interfaces.FluidPort_b port_bExh(redeclare package Medium = 
        Medium);
  Modelica_Fluid.Interfaces.FluidPort_b port_aExh(redeclare package Medium = 
        Medium);
  Modelica_Fluid.Interfaces.FluidPort_b port_aRoo(redeclare package Medium = 
        Medium);
  Modelica_Fluid.Interfaces.FluidPort_b port_bRoo(redeclare package Medium = 
        Medium);
  Modelica.Blocks.Interfaces.RealInput yDam(redeclare type SignalType = Real) 
    "Damper signal";
equation 
  connect(spl34.port_3,vav39. port_a);
  connect(vav39.port_b,roo45.port[1]);
  connect(mix55.port_3,roo45.port[2]);
  connect(roo45.port[3],res13. port_a);
  connect(res13.port_b,roo46.port[1]);
  connect(vav40.port_b,roo46.port[2]);
  connect(vav41.port_b,roo47.port[1]);
  connect(vav42.port_b,roo48.port[1]);
  connect(vav43.port_b,roo49.port[1]);
  connect(spl34.port_2,spl35. port_1);
  connect(spl35.port_2,spl36. port_1);
  connect(spl36.port_2,spl37. port_1);
  connect(spl35.port_3,vav40. port_a);
  connect(spl36.port_3,vav41. port_a);
  connect(spl37.port_3,vav42. port_a);
  connect(roo46.port[3],mix54. port_3);
  connect(roo47.port[2],mix53. port_3);
  connect(roo47.port[3],res15. port_a);
  connect(res15.port_b,roo48.port[2]);
  connect(roo47.port[4],res14. port_b);
  connect(res14.port_a,roo46.port[4]);
  connect(mix55.port_2,mix54. port_1);
  connect(mix54.port_2,mix53. port_1);
  connect(mix53.port_2,mix52. port_1);
  connect(mix52.port_2,mix51. port_1);
  connect(roo48.port[3],mix51. port_3);
  connect(roo48.port[4],res16. port_a);
  connect(res16.port_b,roo49.port[2]);
  connect(roo49.port[3],mix52. port_3);
  connect(roo49.port[4],res17. port_a);
  connect(spl37.port_2,spl38. port_1);
  connect(vav43.port_a,spl38. port_3);
  connect(lea45.port_b,roo45.port[4]);
  connect(lea46.port_b,roo46.port[5]);
  connect(lea47.port_b,roo47.port[5]);
  connect(lea48.port_b,roo48.port[5]);
  connect(lea49.port_b,roo49.port[5]);
  connect(port_aSup, spl34.port_1);
  connect(port_bSup, spl38.port_2);
  connect(port_bExh, mix55.port_1);
  connect(port_aExh, mix51.port_2);
  connect(port_bRoo, res17.port_b);
  connect(port_aRoo, roo45.port[5]);
  connect(yDam, vav39.y);
  connect(yDam, vav40.y);
  connect(yDam, vav42.y);
  connect(yDam, vav43.y);
  connect(p, lea45.p);
  connect(p, lea46.p);
  connect(p, lea47.p);
  connect(p, lea48.p);
  connect(p, lea49.p);
  connect(yDam, vav41.y);
end Suite;

HTML-documentation generated by Dymola Fri Jun 20 09:58:31 2008.