LBL logo

Buildings.Fluid.Chillers.Examples.BaseClasses

Package with base classes for Buildings.Fluid.Chillers.Examples

Information

This package contains base classes that are used to construct the models in Buildings.Fluid.Chillers.Examples.

Extends from Modelica.Icons.BasesPackage (Icon for packages containing base classes).

Package Content

NameDescription
PartialElectric Base class for test model of chiller electric EIR


Buildings.Fluid.Chillers.Examples.BaseClasses.PartialElectric

Base class for test model of chiller electric EIR

Buildings.Fluid.Chillers.Examples.BaseClasses.PartialElectric

Parameters

TypeNameDefaultDescription
PowerP_nominal-per.QEva_flow_nominal/per.C...Nominal compressor power (at y=1) [W]
TemperatureDifferencedTEva_nominal10Temperature difference evaporator inlet-outlet [K]
TemperatureDifferencedTCon_nominal10Temperature difference condenser outlet-inlet [K]
RealCOPc_nominal3Chiller COP
MassFlowRatemEva_flow_nominalper.mEva_flow_nominalNominal mass flow rate at evaporator [kg/s]
MassFlowRatemCon_flow_nominalper.mCon_flow_nominalNominal mass flow rate at condenser [kg/s]
PartialElectricchiredeclare Buildings.Fluid.Ch...Chiller model
Chillerperredeclare parameter Building...Base class for performance data

Modelica definition

partial model PartialElectric 
  "Base class for test model of chiller electric EIR"
  import Buildings;
 package Medium1 = Buildings.Media.ConstantPropertyLiquidWater "Medium model";
 package Medium2 = Buildings.Media.ConstantPropertyLiquidWater "Medium model";

  parameter Modelica.SIunits.Power P_nominal=-per.QEva_flow_nominal/per.COP_nominal 
    "Nominal compressor power (at y=1)";
  parameter Modelica.SIunits.TemperatureDifference dTEva_nominal=10 
    "Temperature difference evaporator inlet-outlet";
  parameter Modelica.SIunits.TemperatureDifference dTCon_nominal=10 
    "Temperature difference condenser outlet-inlet";
  parameter Real COPc_nominal = 3 "Chiller COP";
  parameter Modelica.SIunits.MassFlowRate mEva_flow_nominal=
     per.mEva_flow_nominal "Nominal mass flow rate at evaporator";
  parameter Modelica.SIunits.MassFlowRate mCon_flow_nominal=
     per.mCon_flow_nominal "Nominal mass flow rate at condenser";

  replaceable Buildings.Fluid.Chillers.BaseClasses.PartialElectric
    chi constrainedby Buildings.Fluid.Chillers.BaseClasses.PartialElectric(
       redeclare package Medium1 = Medium1,
       redeclare package Medium2 = Medium2,
       dp1_nominal=6000,
       dp2_nominal=6000) "Chiller model";
  Buildings.Fluid.Sources.MassFlowSource_T sou1(nPorts=1,
    redeclare package Medium = Medium1,
    use_T_in=true,
    m_flow=mCon_flow_nominal,
    T=298.15);
  Buildings.Fluid.Sources.MassFlowSource_T sou2(nPorts=1,
    redeclare package Medium = Medium2,
    use_T_in=true,
    m_flow=mEva_flow_nominal,
    T=291.15);
  Buildings.Fluid.Sources.FixedBoundary sin1(          redeclare package Medium
      = Medium1, nPorts=1);
  Buildings.Fluid.Sources.FixedBoundary sin2(          redeclare package Medium
      = Medium2, nPorts=1);
  Modelica.Blocks.Sources.Ramp TSet(
    duration=3600,
    startTime=3*3600,
    offset=273.15 + 10,
    height=8) "Set point for leaving chilled water temperature";
  inner Modelica.Fluid.System system;
  Modelica.Blocks.Sources.Ramp TCon_in(
    height=10,
    offset=273.15 + 20,
    duration=3600,
    startTime=2*3600) "Condenser inlet temperature";
  Modelica.Blocks.Sources.Ramp TEva_in(
    offset=273.15 + 15,
    height=5,
    startTime=3600,
    duration=3600) "Evaporator inlet temperature";
  replaceable parameter Buildings.Fluid.Chillers.Data.BaseClasses.Chiller per
  constrainedby Buildings.Fluid.Chillers.Data.BaseClasses.Chiller 
    "Base class for performance data";
  Modelica.Blocks.Sources.Pulse pulse(period=3600/2);
  Modelica.Blocks.Logical.GreaterThreshold greaterThreshold(threshold=0.5);
  Buildings.Fluid.FixedResistances.FixedResistanceDpM res1(
    redeclare package Medium = Medium1,
    m_flow_nominal=mCon_flow_nominal,
    dp_nominal=6000) "Flow resistance";
  Buildings.Fluid.FixedResistances.FixedResistanceDpM res2(
    dp_nominal=6000,
    redeclare package Medium = Medium2,
    m_flow_nominal=mEva_flow_nominal) "Flow resistance";
equation 
  connect(sou1.ports[1], chi.port_a1);
  connect(sou2.ports[1], chi.port_a2);
  connect(TCon_in.y, sou1.T_in);
  connect(TEva_in.y, sou2.T_in);
  connect(TSet.y, chi.TSet);

  connect(greaterThreshold.u, pulse.y);
  connect(greaterThreshold.y, chi.on);
  connect(chi.port_b1, res1.port_a);
  connect(res1.port_b, sin1.ports[1]);
  connect(chi.port_b2, res2.port_a);
  connect(res2.port_b, sin2.ports[1]);
end PartialElectric;

Automatically generated Tue Jan 8 08:29:11 2013.