| Name | Description |
|---|---|
| User's Guide for Buildings.Fluid.SolarCollectors | |
| Model of a concentrating solar collector | |
| Model of a flat plate solar thermal collector | |
| Package for solar thermal collector controllers | |
| Data for solar thermal collectors | |
| Package with type definitions used in solar collector data records | |
| Examples demonstrating the use of models in the SolarCollectors package | |
| Package with base classes for Buildings.Fluid.SolarCollectors |
Buildings.Fluid.SolarCollectors.EN12975
This component models a solar thermal collector according to the EN12975 test standard.
EnergyPlus 7.0.0 Engineering Reference, October 13, 2011.
| Type | Name | Default | Description |
|---|---|---|---|
| replaceable package Medium | PartialMedium | Medium in the component | |
| Integer | nSeg | 3 | Number of segments used to discretize the collector model |
| Angle | lat | Latitude [rad] | |
| Angle | azi | Surface azimuth [rad] | |
| Angle | til | Surface tilt [rad] | |
| Real | rho | Ground reflectance | |
| HeatCapacity | C | 385*perPar.mDry | Heat capacity of solar collector without fluid (default: cp_copper*mDry*nPanels) [J/K] |
| GenericSolarCollector | per | Performance data | |
| Initialization | |||
| MassFlowRate | m_flow.start | 0 | Mass flow rate from port_a to port_b (m_flow > 0 is design flow direction) [kg/s] |
| Pressure | dp.start | 0 | Pressure difference between port_a and port_b [Pa] |
| Shading | |||
| Boolean | use_shaCoe_in | false | Enables an input connector for shaCoe |
| Real | shaCoe | 0 | Shading coefficient. 0.0: no shading, 1.0: full shading |
| Area declarations | |||
| NumberSelection | nColType | Buildings.Fluid.SolarCollect... | Selection of area specification format |
| Integer | nPanels | 0 | Desired number of panels in the simulation |
| Area | totalArea | 0 | Total area of panels in the simulation [m2] |
| Configuration declarations | |||
| SystemConfiguration | sysConfig | Buildings.Fluid.SolarCollect... | Selection of system configuration |
| Dynamics | |||
| Equations | |||
| Dynamics | energyDynamics | Modelica.Fluid.Types.Dynamic... | Formulation of energy balance |
| Dynamics | massDynamics | energyDynamics | Formulation of mass balance |
| Initialization | |||
| AbsolutePressure | p_start | Medium.p_default | Start value of pressure [Pa] |
| Temperature | T_start | Medium.T_default | Start value of temperature [K] |
| MassFraction | X_start[Medium.nX] | Medium.X_default | Start value of mass fractions m_i/m [kg/kg] |
| ExtraProperty | C_start[Medium.nC] | fill(0, Medium.nC) | Start value of trace substances |
| ExtraProperty | C_nominal[Medium.nC] | fill(1E-2, Medium.nC) | Nominal value of trace substances. (Set to typical order of magnitude.) |
| Flow resistance | |||
| Boolean | computeFlowResistance | true | =true, compute flow resistance. Set to false to assume no friction |
| Boolean | from_dp | false | = true, use m_flow = f(dp) else dp = f(m_flow) |
| Boolean | linearizeFlowResistance | false | = true, use linear relation between m_flow and dp for any flow rate |
| Real | deltaM | 0.1 | Fraction of nominal flow rate where flow transitions to laminar |
| Assumptions | |||
| Boolean | allowFlowReversal | system.allowFlowReversal | = true to allow flow reversal, false restricts to design direction (port_a -> port_b) |
| Advanced | |||
| MassFlowRate | m_flow_small | 1E-4*abs(m_flow_nominal) | Small mass flow rate for regularization of zero flow [kg/s] |
| Boolean | homotopyInitialization | true | = true, use homotopy method |
| Diagnostics | |||
| Boolean | show_T | false | = true, if actual temperature at port is computed |
| Type | Name | Description |
|---|---|---|
| FluidPort_a | port_a | Fluid connector a (positive design flow direction is from port_a to port_b) |
| FluidPort_b | port_b | Fluid connector b (positive design flow direction is from port_a to port_b) |
| input RealInput | shaCoe_in | Shading coefficient |
| Bus | weaBus | Weather data bus |
model EN12975 "Model of a concentrating solar collector"
extends Buildings.Fluid.SolarCollectors.BaseClasses.PartialSolarCollector(final perPar=per);
parameter Buildings.Fluid.SolarCollectors.Data.GenericSolarCollector per
"Performance data";
BaseClasses.EN12975SolarGain solGai(
final A_c=TotalArea_internal,
final nSeg=nSeg,
final y_intercept=per.y_intercept,
final B0=per.B0,
final B1=per.B1,
final shaCoe=shaCoe,
final iamDiff=per.IAMDiff,
final use_shaCoe_in=use_shaCoe_in,
redeclare package Medium = Medium)
"Identifies heat gained from the sun using standard EN12975 calculations";
BaseClasses.EN12975HeatLoss heaLos(
final A_c=TotalArea_internal,
final nSeg=nSeg,
final y_intercept=per.y_intercept,
final C1=per.C1,
final C2=per.C2,
redeclare package Medium = Medium,
final G_nominal=per.G_nominal,
final dT_nominal=per.dT_nominal,
final m_flow_nominal=per.mperA_flow_nominal*per.A)
"Calculates the heat lost to the surroundings using the EN12975 standard calculations";
equation
connect(shaCoe_internal, solGai.shaCoe_in);
connect(weaBus.TDryBul, heaLos.TEnv);
connect(HDirTil.inc, solGai.incAng);
connect(HDifTilIso.H, solGai.HSkyDifTil);
connect(HDirTil.H, solGai.HDirTil);
connect(shaCoe_in, solGai.shaCoe_in);
connect(heaLos.TFlu, temSen.T);
connect(heaLos.QLos, QLos.Q_flow);
connect(solGai.QSol_flow, heaGai.Q_flow);
connect(temSen.T, solGai.TFlu);
end EN12975;
Buildings.Fluid.SolarCollectors.ASHRAE93
This component models a solar thermal collector according to the ASHRAE93 test standard.
EnergyPlus 7.0.0 Engineering Reference, October 13, 2011.
| Type | Name | Default | Description |
|---|---|---|---|
| replaceable package Medium | PartialMedium | Medium in the component | |
| Integer | nSeg | 3 | Number of segments used to discretize the collector model |
| Angle | lat | Latitude [rad] | |
| Angle | azi | Surface azimuth [rad] | |
| Angle | til | Surface tilt [rad] | |
| Real | rho | Ground reflectance | |
| HeatCapacity | C | 385*perPar.mDry | Heat capacity of solar collector without fluid (default: cp_copper*mDry*nPanels) [J/K] |
| GenericSolarCollector | per | ||
| Initialization | |||
| MassFlowRate | m_flow.start | 0 | Mass flow rate from port_a to port_b (m_flow > 0 is design flow direction) [kg/s] |
| Pressure | dp.start | 0 | Pressure difference between port_a and port_b [Pa] |
| Shading | |||
| Boolean | use_shaCoe_in | false | Enables an input connector for shaCoe |
| Real | shaCoe | 0 | Shading coefficient. 0.0: no shading, 1.0: full shading |
| Area declarations | |||
| NumberSelection | nColType | Buildings.Fluid.SolarCollect... | Selection of area specification format |
| Integer | nPanels | 0 | Desired number of panels in the simulation |
| Area | totalArea | 0 | Total area of panels in the simulation [m2] |
| Configuration declarations | |||
| SystemConfiguration | sysConfig | Buildings.Fluid.SolarCollect... | Selection of system configuration |
| Dynamics | |||
| Equations | |||
| Dynamics | energyDynamics | Modelica.Fluid.Types.Dynamic... | Formulation of energy balance |
| Dynamics | massDynamics | energyDynamics | Formulation of mass balance |
| Initialization | |||
| AbsolutePressure | p_start | Medium.p_default | Start value of pressure [Pa] |
| Temperature | T_start | Medium.T_default | Start value of temperature [K] |
| MassFraction | X_start[Medium.nX] | Medium.X_default | Start value of mass fractions m_i/m [kg/kg] |
| ExtraProperty | C_start[Medium.nC] | fill(0, Medium.nC) | Start value of trace substances |
| ExtraProperty | C_nominal[Medium.nC] | fill(1E-2, Medium.nC) | Nominal value of trace substances. (Set to typical order of magnitude.) |
| Flow resistance | |||
| Boolean | computeFlowResistance | true | =true, compute flow resistance. Set to false to assume no friction |
| Boolean | from_dp | false | = true, use m_flow = f(dp) else dp = f(m_flow) |
| Boolean | linearizeFlowResistance | false | = true, use linear relation between m_flow and dp for any flow rate |
| Real | deltaM | 0.1 | Fraction of nominal flow rate where flow transitions to laminar |
| Assumptions | |||
| Boolean | allowFlowReversal | system.allowFlowReversal | = true to allow flow reversal, false restricts to design direction (port_a -> port_b) |
| Advanced | |||
| MassFlowRate | m_flow_small | 1E-4*abs(m_flow_nominal) | Small mass flow rate for regularization of zero flow [kg/s] |
| Boolean | homotopyInitialization | true | = true, use homotopy method |
| Diagnostics | |||
| Boolean | show_T | false | = true, if actual temperature at port is computed |
| Type | Name | Description |
|---|---|---|
| FluidPort_a | port_a | Fluid connector a (positive design flow direction is from port_a to port_b) |
| FluidPort_b | port_b | Fluid connector b (positive design flow direction is from port_a to port_b) |
| input RealInput | shaCoe_in | Shading coefficient |
| Bus | weaBus | Weather data bus |
model ASHRAE93 "Model of a flat plate solar thermal collector" extends Buildings.Fluid.SolarCollectors.BaseClasses.PartialSolarCollector(final perPar=per); parameter Buildings.Fluid.SolarCollectors.Data.GenericSolarCollector per;BaseClasses.ASHRAESolarGain solGai( final B0=per.B0, final B1=per.B1, final shaCoe=shaCoe, final til=til, final nSeg=nSeg, final y_intercept=per.y_intercept, final use_shaCoe_in=use_shaCoe_in, final A_c=TotalArea_internal, redeclare package Medium = Medium) "Identifies heat gained from the sun using standard ASHRAE93 calculations"; BaseClasses.ASHRAEHeatLoss heaLos( final nSeg=nSeg, final slope=per.slope, final y_intercept=per.y_intercept, redeclare package Medium = Medium, final G_nominal=per.G_nominal, dT_nominal=per.dT_nominal, final A_c=TotalArea_internal, m_flow_nominal=per.mperA_flow_nominal*per.A) "Calculates the heat lost to the surroundings using the ASHRAE93 standard calculations"; equationconnect(weaBus.TDryBul, heaLos.TEnv); connect(HDirTil.inc, solGai.incAng); connect(HDirTil.H, solGai.HDirTil); connect(HDifTilIso.HGroDifTil, solGai.HGroDifTil); connect(HDifTilIso.HSkyDifTil, solGai.HSkyDifTil); connect(shaCoe_in, solGai.shaCoe_in); connect(solGai.QSol_flow, heaGai.Q_flow); connect(temSen.T, heaLos.TFlu); connect(temSen.T, solGai.TFlu); connect(heaLos.QLos, QLos.Q_flow); end ASHRAE93;