Natural Ventilation Measure

This measure adds natural ventilation (NV) to a building model.

Description

The workflow of this measure is as follows: * Ask for users’ inputs for below arguments: * nv_type: whether to add NV to a building model or not * nv_opening_fraction: what is the opening fraction of windows (this value is used to calculate the opening area of windows for NV) * nv_temp_out_min: As per E+ I/O Reference, “minimum outdoor temperature is the outdoor temperature (in Celsius) below which ventilation is shut off. This lower temperature limit is intended to avoid overcooling a space, which could result in a heating load.” * nv_delta_temp_in_out: As per E+ I/O Reference, “Delta temperature is the temperature difference (in Celsius) between the indoor and outdoor air dry-bulb temperatures below which ventilation is shutoff.” * Loop through ZoneHVACEquipmentLists. * Get which thermal zone is served by each of the “ZoneHVACEquipmentLists” objects. * Get heating/cooling setpoint temperature schedules for the thermal zone from the osm file. * Create an adjustment of heating/cooling setpoint temperature schedules. (Note that these schedules are used in the “ZoneVentilation:DesignFlowRate” and “ZoneVentilation:WindandStackOpenArea” objects) * Loop through spaces in the thermal zone. * Gather outdoor air flow rate per person and per floor area of the space from the osm file. (Note that these values are used in the “ZoneVentilation:DesignFlowRate” objects) * Find how many external windows each space has. * Loop through external windows of the space. * Add ZoneVentilation:DesignFlowRate objects to each space if has at least one external window. * The number of “ZoneVentilation:DesignFlowRate” is twice the number of external windows the space has. This is because for each external window, two “ZoneVentilation:DesignFlowRate” objects are added: (1) for air flow rate per person, and (2) for air flow rate per floor area. * Add one ZoneVentilation:WindandStackOpenArea objects to each space if has at least one external window. * The number of “ZoneVentilation:WindandStackOpenArea” equals the number of external windows the space has. * Add “ZoneVentilation:DesignFlowRate” and “ZoneVentilation:WindandStackOpenArea” objects to the “ZoneHVAC:EquipmentList” object of the thermal zone. * Loop through AirLoopHVACs. * Add AvailabilityManagerHybridVentilation to each air loop.

Approach

This measure has some assumptions/limitations, as follows: * It models NV using a simplified airflow method (rather than airflow network). * It assumes that all floors are sealed, and mid points of windows are on neutral pressure level (NPL) of each floor to avoid complexity of finding the NPL of a building. Hence, this measure excludes stack-driven NV. * It uses a built-in object called AvailabilityManager:HybridVentilation in EnergyPlus to avoid simultaneous NV and HVAC system operation. * Note that Ventilation Control Mode Schedule Name was set by default. Hence, the integer value in the schedule is set to 1 (i.e. temperature control). * Note that users’ input for nv_temp_out_min is used for the fields of “Minimum Outdoor Temperature”. * As per E+ I/O Reference, “Minimum Outdoor Temperature is the outdoor temperature (in Celsius) below which hybrid ventilation is shut off when the ventilation control mode = 1 (Temperature). This lower temperature limit is intended to avoid overcooling a space, which could result in a heating load.” * Note that the “Maximum Outdoor Temperature” has been set to 30C. (there is no temperature schedule unlike the ZoneVentilation:DesignFlowRate and ZoneVentilation:WindandStackOpenArea objects)
* As per E+ I/O Reference, “Maximum Outdoor Temperature is the outdoor temperature (in Celsius) above which hybrid ventilation is shut off when the ventilation control mode = 1 (Temperature). This upper temperature limit is intended to avoid overheating a space, which could result in a cooling load.” * It considers the Fanger thermal comfort model (rather than the ASHRAE 55’s adaptive thermal comfort model). In other words, this measure sets min/max indoor air temperature as fixed values (on the basis of heating/cooling setpoint temperature) regardless of outdoor conditions. * It uses heating/cooling setpoint schedules +/- 2C as the min/max indoor air temperature for controlling NV. * Note that min/max indoor air temperature are the fields defined under the objects of ZoneVentilation:DesignFlowRate and ZoneVentilation:WindandStackOpenArea. * As per E+ I/O Reference, “Minimum indoor temperature is the indoor temperature (in Celsius) below which ventilation is shutoff. This lower temperature limit is intended to avoid overcooling a space and thus result in a heating load.” * As per E+ I/O Reference, “Maximum indoor temperature is the indoor temperature (in Celsius) above which ventilation is shutoff. This upper temperature limit is intended to avoid overheating a space and thus result in a cooling load.” * It uses the required outdoor airflow rate per person and floor area for each space as the airflow rate when there is NV in the space. * As a space may have multiple windows, to avoid outdoor airflow rate more than what is required for a space, the required outdoor airflow rate per person and floor area for the space are divided by the number of windows. * Note that this measure uses the E+‘s defaults for the coefficients of A,B,C,D (i.e. 1,0,0,0) in Equation 1.41 in E+ I/O Reference. These default values gives a constant air flow regardless of the wind speed and the difference between the indoor and outdoor temperature. * It adds NV to any space with external windows (window types of either ’OperableWindow’ or ‘FixedWindow’). * It uses same opening fraction for all windows of spaces. So, depending on a window area, the opening area of the window is calculated.

Testing Plan

Files Added/Modified

Reference