Extends from Buildings.BaseClasses.BaseIconExamples (Icon for Examples packages).
Name | Description |
---|---|
Carnot | Test model for chiller based on Carnot efficiency |
Type | Name | Default | Description |
---|---|---|---|
Power | P_nominal | 10E3 | Nominal compressor power (at y=1) [W] |
TemperatureDifference | dTEva_nominal | 10 | Temperature difference evaporator inlet-outlet [K] |
TemperatureDifference | dTCon_nominal | 10 | Temperature difference condenser outlet-inlet [K] |
Real | COPc | 3 | Chiller COP |
MassFlowRate | m1_flow_nominal | P_nominal*(COPc + 1)/dTEva_n... | Nominal mass flow rate at evaporator [kg/s] |
MassFlowRate | m2_flow_nominal | m1_flow_nominal*COPc/(COPc +... | Nominal mass flow rate at condenser [kg/s] |
model Carnot "Test model for chiller based on Carnot efficiency" import Buildings; package Medium1 = Modelica.Media.Water.ConstantPropertyLiquidWater "Medium model"; package Medium2 = Modelica.Media.Water.ConstantPropertyLiquidWater "Medium model"; parameter Modelica.SIunits.Power P_nominal=10E3 "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 = 3 "Chiller COP"; parameter Modelica.SIunits.MassFlowRate m1_flow_nominal= P_nominal*(COPc+1)/dTEva_nominal/4200 "Nominal mass flow rate at evaporator"; parameter Modelica.SIunits.MassFlowRate m2_flow_nominal= m1_flow_nominal*COPc/(COPc+1) "Nominal mass flow rate at condenser"; Buildings.Fluids.Chillers.Carnot chi( redeclare package Medium1 = Medium1, redeclare package Medium2 = Medium2, P_nominal=P_nominal, dTEva_nominal=dTEva_nominal, dTCon_nominal=dTCon_nominal, COP_nominal=COPc, use_eta_Carnot=true, etaCar=0.3, dp1_nominal=6000, dp2_nominal=6000, m1_flow_nominal=m1_flow_nominal, m2_flow_nominal=m2_flow_nominal) "Chiller model"; Modelica_Fluid.Sources.MassFlowSource_T sou1(nPorts=1, redeclare package Medium = Medium1, use_T_in=true, m_flow=m1_flow_nominal, T=298.15); Modelica_Fluid.Sources.MassFlowSource_T sou2(nPorts=1, redeclare package Medium = Medium2, use_T_in=true, m_flow=m2_flow_nominal, T=291.15); Modelica_Fluid.Sources.FixedBoundary sin1(nPorts=1, redeclare package Medium = Medium1); Modelica_Fluid.Sources.FixedBoundary sin2(nPorts=1, redeclare package Medium = Medium2); Modelica.Blocks.Sources.Ramp uCom( height=-1, duration=60, offset=1, startTime=1800) "Compressor control signal"; inner Modelica_Fluid.System system; Modelica.Blocks.Sources.Ramp TEva_in( height=10, duration=60, offset=273.15 + 20, startTime=60) "Evaporator inlet temperature"; Modelica.Blocks.Sources.Ramp TCon_in( height=10, duration=60, startTime=900, offset=273.15 + 10) "Condenser inlet temperature"; equation connect(sou1.ports[1], chi.port_a1); connect(sou2.ports[1], chi.port_a2); connect(chi.port_b1, sin1.ports[1]); connect(sin2.ports[1], chi.port_b2); connect(TEva_in.y, sou1.T_in); connect(TCon_in.y, sou2.T_in); connect(uCom.y, chi.y); end Carnot;