Question-and-Answer Resource for the Building Energy Modeling Community
Get started with the Help page
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Not sure why both return and supply fans do not turn on if night ventilation manager signals Cycle On. Or whether this behavior is as expected. Similar question can be asked for plant loop also i.e. how supply and demand pumps react to control signal from availability manager. This gets more complicated if there are branch pumps also.

If the fans are schedules off, the night ventilation availability managers simply overrides the fan schedule during simulation if the conditions are favorable to turn on the fan. It does not modify the fan schedule. This can easily be verified by reporting outdoor temp, control zone temp, fan schedule, availability manager schedule and other inputs to availability manager. Using this information, availability status can be calculated which should match with what is reported by EnergyPlus.

A workaround for this problem could be to write EMS to modify fan schedules directly. The documentation gives an example on how to use EMS for modeling supervisory control of HVAC in EnergyPlus. Code shown below could be a starting point but it has to be tested to make sure that no unexpected changes are occurring elsewhere because of this. Both supply and return fans use 'FanAvailSched' availability schedule.

AvailabilityManagerAssignmentList,
    VAV Sys 1 Avail List,    !- Name
    AvailabilityManager:NightVentilation,  !- Availability Manager 1 Object Type
    VAV Sys 1 Avail;         !- Availability Manager 1 Name

AvailabilityManager:NightVentilation,
    VAV Sys 1 Avail,         !- Name
    NightVentSched,          !- Applicability Schedule Name
    FanAvailSched,           !- Fan Schedule Name
    VentTempSched,           !- Ventilation Temperature Schedule Name
    2.0,                     !- Ventilation Temperature Difference {deltaC}
    15.,                     !- Ventilation Temperature Low Limit {C}
    0.3333,                  !- Night Venting Flow Fraction
    SPACE3-1;                !- Control Zone Name

EnergyManagementSystem:Sensor,
    NightVentAvailStatus,    !- Name
    VAV Sys 1 Avail,         !- Output:Variable or Output:Meter Index Key Name
    Availability Manager Night Ventilation Control Status;  !- Output:Variable or Output:Meter Name

EnergyManagementSystem:Sensor,
    FanAvailSchedValue,      !- Name
    FanAvailSched2,          !- Output:Variable or Output:Meter Index Key Name
    Schedule Value;          !- Output:Variable or Output:Meter Name

EnergyManagementSystem:ProgramCallingManager,
    My Night Ventilation Fan Schedule,  !- Name
    AfterPredictorAfterHVACManagers,  !- EnergyPlus Model Calling Point
    MyFanSchedule;           !- Program Name 1

EnergyManagementSystem:Program,
    MyFanSchedule ,          !- Name
    Set myFanSchedule_Override = 0.0,  !- Program Line 1
    IF (NightVentAvailStatus == 2),  !- Program Line 2
    Set myFanSchedule_Override = 1.0,  !- A4
    ELSE,                    !- A5
    Set myFanSchedule_Override = FanAvailSchedValue,  !- A6
    ENDIF;                   !- A7

EnergyManagementSystem:Actuator,
    myFanSchedule_Override,  !- Name
    FanAvailSched,           !- Actuated Component Unique Name
    Schedule:Compact,        !- Actuated Component Type
    Schedule Value;          !- Actuated Component Control Type

Schedule:Compact,
    FanAvailSched,          !- Name
    Fraction,                !- Schedule Type Limits Name
    Through: 12/31,           !- Field 1
    For: Alldays,           !- Field 2
    Until: 7:00, 0.00,       !- Field 3
    Until: 17:00, 1.00,      !- Field 4
    Until: 24:00, 0.00;      !- Field 5

Schedule:Compact,
    FanAvailSched2,          !- Name
    Fraction,                !- Schedule Type Limits Name
    Through: 12/31,           !- Field 1
    For: Alldays,           !- Field 2
    Until: 7:00, 0.00,       !- Field 3
    Until: 17:00, 1.00,      !- Field 4
    Until: 24:00, 0.00;      !- Field 5

Not sure why both return and supply fans do not turn on if night ventilation manager signals Cycle On. Or whether this behavior is as expected. Similar question can be asked for plant loop also i.e. how supply and demand pumps react to control signal from availability manager. This gets more complicated if there are branch pumps also.

If the fans are schedules scheduled off, the night ventilation availability managers simply overrides the fan schedule during simulation if the conditions are favorable to turn on the fan. It does not modify the fan schedule. This can easily be verified by reporting outdoor temp, control zone temp, fan schedule, availability manager schedule and other inputs to availability manager. Using this information, availability status can be calculated which should match with what is reported by EnergyPlus.

A workaround for this problem could be to write EMS to modify fan schedules directly. The documentation gives an example on how to use EMS for modeling supervisory control of HVAC in EnergyPlus. Code shown below could be a starting point but it has to be tested to make sure that no unexpected changes are occurring elsewhere because of this. Both supply and return fans use 'FanAvailSched' availability schedule.

AvailabilityManagerAssignmentList,
    VAV Sys 1 Avail List,    !- Name
    AvailabilityManager:NightVentilation,  !- Availability Manager 1 Object Type
    VAV Sys 1 Avail;         !- Availability Manager 1 Name

AvailabilityManager:NightVentilation,
    VAV Sys 1 Avail,         !- Name
    NightVentSched,          !- Applicability Schedule Name
    FanAvailSched,           !- Fan Schedule Name
    VentTempSched,           !- Ventilation Temperature Schedule Name
    2.0,                     !- Ventilation Temperature Difference {deltaC}
    15.,                     !- Ventilation Temperature Low Limit {C}
    0.3333,                  !- Night Venting Flow Fraction
    SPACE3-1;                !- Control Zone Name

EnergyManagementSystem:Sensor,
    NightVentAvailStatus,    !- Name
    VAV Sys 1 Avail,         !- Output:Variable or Output:Meter Index Key Name
    Availability Manager Night Ventilation Control Status;  !- Output:Variable or Output:Meter Name

EnergyManagementSystem:Sensor,
    FanAvailSchedValue,      !- Name
    FanAvailSched2,          !- Output:Variable or Output:Meter Index Key Name
    Schedule Value;          !- Output:Variable or Output:Meter Name

EnergyManagementSystem:ProgramCallingManager,
    My Night Ventilation Fan Schedule,  !- Name
    AfterPredictorAfterHVACManagers,  !- EnergyPlus Model Calling Point
    MyFanSchedule;           !- Program Name 1

EnergyManagementSystem:Program,
    MyFanSchedule ,          !- Name
    Set myFanSchedule_Override = 0.0,  !- Program Line 1
    IF (NightVentAvailStatus == 2),  !- Program Line 2
    Set myFanSchedule_Override = 1.0,  !- A4
    ELSE,                    !- A5
    Set myFanSchedule_Override = FanAvailSchedValue,  !- A6
    ENDIF;                   !- A7

EnergyManagementSystem:Actuator,
    myFanSchedule_Override,  !- Name
    FanAvailSched,           !- Actuated Component Unique Name
    Schedule:Compact,        !- Actuated Component Type
    Schedule Value;          !- Actuated Component Control Type

Schedule:Compact,
    FanAvailSched,          !- Name
    Fraction,                !- Schedule Type Limits Name
    Through: 12/31,           !- Field 1
    For: Alldays,           !- Field 2
    Until: 7:00, 0.00,       !- Field 3
    Until: 17:00, 1.00,      !- Field 4
    Until: 24:00, 0.00;      !- Field 5

Schedule:Compact,
    FanAvailSched2,          !- Name
    Fraction,                !- Schedule Type Limits Name
    Through: 12/31,           !- Field 1
    For: Alldays,           !- Field 2
    Until: 7:00, 0.00,       !- Field 3
    Until: 17:00, 1.00,      !- Field 4
    Until: 24:00, 0.00;      !- Field 5

Not sure why both return and supply fans do not turn on if night ventilation manager signals Cycle On. Or whether this behavior is as expected. Similar question can be asked for plant loop also i.e. how supply and demand pumps react to control signal from availability manager. This gets more complicated if there are branch pumps also.

If the fans are scheduled off, the night ventilation availability managers simply overrides the fan schedule during simulation if the conditions are favorable to turn on the fan. It does not modify the fan schedule. This can easily be verified by reporting outdoor temp, control zone temp, fan schedule, availability manager schedule and other inputs to availability manager. Using this information, availability status can be calculated which should match with what is reported by EnergyPlus.

A workaround for this problem could be to write EMS to modify fan schedules directly. The documentation gives an example on how to use EMS for modeling supervisory control of HVAC in EnergyPlus. Code shown below could be a starting point but it has to be tested to make sure that no unexpected changes are occurring elsewhere because of this. Both supply and return fans use 'FanAvailSched' availability schedule.schedule. If in your case, night ventilation manager is calculating the availability status correctly but fans are still not turning on, then the code below may be helpful.

AvailabilityManagerAssignmentList,
    VAV Sys 1 Avail List,    !- Name
    AvailabilityManager:NightVentilation,  !- Availability Manager 1 Object Type
    VAV Sys 1 Avail;         !- Availability Manager 1 Name

AvailabilityManager:NightVentilation,
    VAV Sys 1 Avail,         !- Name
    NightVentSched,          !- Applicability Schedule Name
    FanAvailSched,           !- Fan Schedule Name
    VentTempSched,           !- Ventilation Temperature Schedule Name
    2.0,                     !- Ventilation Temperature Difference {deltaC}
    15.,                     !- Ventilation Temperature Low Limit {C}
    0.3333,                  !- Night Venting Flow Fraction
    SPACE3-1;                !- Control Zone Name

EnergyManagementSystem:Sensor,
    NightVentAvailStatus,    !- Name
    VAV Sys 1 Avail,         !- Output:Variable or Output:Meter Index Key Name
    Availability Manager Night Ventilation Control Status;  !- Output:Variable or Output:Meter Name

EnergyManagementSystem:Sensor,
    FanAvailSchedValue,      !- Name
    FanAvailSched2,          !- Output:Variable or Output:Meter Index Key Name
    Schedule Value;          !- Output:Variable or Output:Meter Name

EnergyManagementSystem:ProgramCallingManager,
    My Night Ventilation Fan Schedule,  !- Name
    AfterPredictorAfterHVACManagers,  !- EnergyPlus Model Calling Point
    MyFanSchedule;           !- Program Name 1

EnergyManagementSystem:Program,
    MyFanSchedule ,          !- Name
    Set myFanSchedule_Override = 0.0,  !- Program Line 1
    IF (NightVentAvailStatus == 2),  !- Program Line 2
    Set myFanSchedule_Override = 1.0,  !- A4
    ELSE,                    !- A5
    Set myFanSchedule_Override = FanAvailSchedValue,  !- A6
    ENDIF;                   !- A7

EnergyManagementSystem:Actuator,
    myFanSchedule_Override,  !- Name
    FanAvailSched,           !- Actuated Component Unique Name
    Schedule:Compact,        !- Actuated Component Type
    Schedule Value;          !- Actuated Component Control Type

Schedule:Compact,
    FanAvailSched,          !- Name
    Fraction,                !- Schedule Type Limits Name
    Through: 12/31,           !- Field 1
    For: Alldays,           !- Field 2
    Until: 7:00, 0.00,       !- Field 3
    Until: 17:00, 1.00,      !- Field 4
    Until: 24:00, 0.00;      !- Field 5

Schedule:Compact,
    FanAvailSched2,          !- Name
    Fraction,                !- Schedule Type Limits Name
    Through: 12/31,           !- Field 1
    For: Alldays,           !- Field 2
    Until: 7:00, 0.00,       !- Field 3
    Until: 17:00, 1.00,      !- Field 4
    Until: 24:00, 0.00;      !- Field 5