Skip to content

Commit

Permalink
Merge pull request #7319 from NREL/166330897_Issue6707
Browse files Browse the repository at this point in the history
Allows ZoneHVAC:EvaporativeCooler unit to cycle
  • Loading branch information
mjwitte authored Aug 7, 2019
2 parents 043fb01 + f0d6887 commit 9b9ece4
Show file tree
Hide file tree
Showing 8 changed files with 885 additions and 380 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -1442,15 +1442,15 @@ \subsubsection{Controls}\label{controls-000}

If zone air temperature is within the throttling range, $\PB{T_{set}-0.5\Delta T_{throttle}} < T_{zone} < \PB{T_{set}+0.5\Delta T_{throttle}}$, then continue to operate the cooler if it was running during the previous timestep and do not operate the cooler if it was not running during the previous timestep.

Whenever the unit is operating, it runs at the full design air mass flow rate regardless if the fan is constant or variable speed.
Whenever the unit is operating, it runs at the full design air mass flow rate regardless if the fan is constant or variable speed but the unit cycles to meet the current cooling load.

\textbf{ZoneCoolingLoadOnOffCycling.} This control method operates the cooler similar to how a thermostat would behave, but instead of using temperatures it uses the predicted zone load to cooling setpoint.~ The control uses input for the threshold value for a load that is considered a significant, \({\dot Q_{thresh}}\), and the result from the Predictor for the zone's load to cooling setpoint, \({\dot Q_{CoolLoad}}\). The following algorithm is used to determine if the unit will operate.

If \(\left[ {{{\dot Q}_{CoolLoad}} \le {{\dot Q}_{thresh}}} \right]\) is true, then do not operate cooler unit.

If \(\left[ {{{\dot Q}_{CoolLoad}} > {{\dot Q}_{thresh}}} \right]\) is true, then operate the cooler unit (at full speed).

Whenever the unit is operating, it runs at the full design air mass flow rate regardless if the fan is constant or variable speed.
Whenever the unit is operating, it runs at the full design air mass flow rate regardless if the fan is constant or variable speed but the unit cycles to meet the current cooling load.

\textbf{ZoneCoolingLoadVariableSpeedFan.} This control method also operates the cooler using the predicted zone load to cooling setpoint but instead of on/off cycling, it modulates the fan speed to meet the cooling load.~ This control method is only applicable to cooler units with variable speed supply fans. The control uses input for the threshold value for a load that is considered a significant, \({\dot Q_{thresh}}\), and the result from the Predictor for the zone's cooling load to setpoint, \({\dot Q_{CoolLoad}}\). The following algorithm is used to determine if the unit will operate.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1433,7 +1433,7 @@ \subsection{ZoneHVAC:EvaporativeCoolerUnit}\label{zonehvacevaporativecoolerunit}

The zone evaporative cooler unit is a compound object made up of a fan and one or two evaporative cooler components.~ This unit serves a single thermal zone as a forced-convection, cooling-only unit with supply fan.~ It always draws 100\% of its supply air from the outside, passes the air through a supply fan and evaporative cooler(s) and then into the zone.~ The fan can be positioned upstream of the cooler(s) for a blow through placement.~ Or it can be positioned downstream of the cooler(s) for a draw through placement.~ If there is more than one evaporative cooler, then should be in series with the first cooler immediately upstream of the second cooler. There is an option to include a relief zone exhaust node to balance the air in the zone.

The unit can have either constant or variable speed fans.~ This zone unit differs from other constant speed forced-air zone units in that its controls are not based on a part-load formulation with averaged air flow rates. Instead the unit is completely on or off during the entire timestep.~ This means that it is beneficial to use relatively short timesteps. However for variable speed fans, the unit can modulate fan speed to just meet cooling loads and therefore operates similar to other zone HVAC units.
The unit can have either constant or variable speed fans.~ When a constant speed fan is specified and the Cooler Unit Control Method is either \textit{ZoneTemperatureDeadbandOnOffCycling} or \textit{ZoneCoolingLoadOnOffCycling}, this zone unit runs just like other constant speed forced-air zone units in that its controls allow the unit to cycle based on a part-load formulation with averaged air flow rates. When a variable speed fan is specified and the Cooler Unit Control Method is \textit{ZoneCoolingLoadVariableSpeedFan}, then the unit can modulate fan speed to meet cooling loads just like other zone HVAC units with variable speed fan.

\subsubsection{Inputs}\label{inputs-4-040}

Expand Down Expand Up @@ -1484,9 +1484,9 @@ \subsubsection{Inputs}\label{inputs-4-040}

\begin{itemize}
\item
\textbf{ZoneTemperatureDeadbandOnOffCycling}. This control method determines whether or not to operate the cooler based on the thermostat setpoint and the zone air temperature.~ This thermostatic control method uses a throttling temperature range, determined in the following input field, to model hysteresis-type control to avoid excessive short-cycling.~ If the zone air temperature is warmer than the cooling setpoint temperature plus one-half of the throttling range, then the unit is operated for the entire timestep at the design air mass flow rate.~ If the zone air temperature is cooler than the cooling setpoint temperature minus one-half of the throttling range, then the unit is off for the entire timestep.~ When the zone air temperatures are within the throttling range, then the unit will stay off if it was not running during the previous timestep and will stay on if it was already running. This control method does not usually behave in a smooth manner and zone conditions will tend to oscillate considerably during periods of low load.
\textbf{ZoneTemperatureDeadbandOnOffCycling}. This control method determines whether or not to operate the cooler based on the thermostat setpoint and the zone air temperature.~ This thermostatic control method uses a throttling temperature range, determined in the following input field, to model hysteresis-type control to avoid excessive short-cycling.~ If the zone air temperature is warmer than the cooling setpoint temperature plus one-half of the throttling range, then the unit is operated for the entire timestep at the design air mass flow rate.~ If the zone air temperature is cooler than the cooling setpoint temperature minus one-half of the throttling range, then the unit is off for the entire timestep.~ When the zone air temperatures are within the throttling range, then the unit will stay off if it was not running during the previous timestep and will stay on if it was already running. If the unit is On, then the unit is cycled such that it meets the current cooling load and avoids over-cooling the zone.
\item
\textbf{ZoneCoolingLoadOnOffCycling}. This control method determines whether or not to operate the cooler based on the predicted zone load to cooling setpoint.~ If there is a cooling load (and the unit is available), then the unit is operated for the entire timestep at the design air mass flow rate. If there is no cooling load, then the unit is not operated at all.~ The magnitude of the cooling load that will trigger the unit to operate can be controlled using the field below called Cooling Load Control Threshold Heat Transfer Rate. This control method does not usually behave in a smooth manner and zone conditions will tend to oscillate considerably during periods of low load.
\textbf{ZoneCoolingLoadOnOffCycling}. This control method determines whether or not to operate the cooler based on the predicted zone load to cooling setpoint.~ If there is a cooling load (and the unit is available), then the unit is operated for the entire timestep at the design air mass flow rate. If there is no cooling load, then the unit is cycled at the design air mass flow rate such that it meets the current cooling load.~ The magnitude of the cooling load that will trigger the unit to operate can be controlled using the field below called Cooling Load Control Threshold Heat Transfer Rate.
\item
\textbf{ZoneCoolingLoadVariableSpeedFan}.~ This control method determines whether or not to operate the cooler based on the predicted zone load to cooling setpoint.~ If there is a cooling load (and the unit is available), then the unit is operated for the entire timestep at a fan speed that is controlled to meet the sensible cooling load (if possible). The magnitude of the cooling load that will trigger the unit to operate can be controlled using the field below called Cooling Load Control Threshold Heat Transfer Rate.~ This control method requires a variable speed fan and cannot be used with \hyperref[fanconstantvolume]{Fan:ConstantVolume} or \hyperref[fanonoff]{Fan:OnOff}.
\end{itemize}
Expand Down
Loading

7 comments on commit 9b9ece4

@nrel-bot
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

develop (mjwitte) - Win64-Windows-10-VisualStudio-16: OK (1795 of 1795 tests passed, 0 test warnings)

Build Badge Test Badge

@nrel-bot-3
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

develop (mjwitte) - x86_64-MacOS-10.13-clang: OK (1795 of 1795 tests passed, 0 test warnings)

Build Badge Test Badge

@nrel-bot-2c
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

develop (mjwitte) - x86_64-Linux-Ubuntu-18.04-cppcheck: OK (0 of 0 tests passed, 0 test warnings)

Build Badge

@nrel-bot-2
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

develop (mjwitte) - x86_64-Linux-Ubuntu-18.04-gcc-7.4: OK (1815 of 1815 tests passed, 0 test warnings)

Build Badge Test Badge

@nrel-bot-2c
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

develop (mjwitte) - x86_64-Linux-Ubuntu-18.04-custom_check: OK (9 of 9 tests passed, 0 test warnings)

Build Badge

@nrel-bot-2
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

develop (mjwitte) - x86_64-Linux-Ubuntu-18.04-gcc-7.4-UnitTestsCoverage-Debug: OK (1130 of 1130 tests passed, 0 test warnings)

Build Badge Test Badge Coverage Badge

@nrel-bot-2c
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

develop (mjwitte) - x86_64-Linux-Ubuntu-18.04-gcc-7.4-IntegrationCoverage-Debug: OK (668 of 668 tests passed, 0 test warnings)

Build Badge Test Badge Coverage Badge

Please sign in to comment.