Group – Operational
Faults[LINK]
Introduction
to Operational Faults Modeling[LINK]
Most of the buildings, either new or old, have operational
faults in the sensors, controllers, meters, equipment and
systems. Being able to model and simulate these faults and
their impact on energy performance of buildings is crucial to
improve accuracy of building simulations and to support the
retrofit of buildings.
To date, the main practitioner use of EnergyPlus has been
for new construction design. With the new high priority
attached by USDOE to retrofit and improved operation of
existing buildings, there is a need to extend the capabilities
of EnergyPlus to model existing buildings, including faulty
operation:
Retrofit analysis: starts with calibrated simulation; the
ability to estimate the severity of common faults is expected
to improve the accuracy and transparency of the calibrated
model and hence the increase accuracy of the analysis of
different retrofit measures.
Commissioning providers can use the fault models to
demonstrate the saving to be expected from fixing faults found
in retro-commissioning
Support for building operation by using the calibrated
model, including unfixed faults, as a real-time reference
model to detect, and verify the diagnosis of, newly occurring
faults.
The users in these cases are practitioners, not power
users, so it is needed to implement the fault models using
conventional EnergyPlus objects rather than the EMS, which, in
any case, could only be used to model limited types of
faults.
Operational Fault
Objects[LINK]
EnergyPlus contains a number of objects to model
operational faults of sensors, meters, equipment and systems.
The current implementation allows the model of sensors faults
with air economizers.
The objects used by EnergyPlus to model sensors faults in
an air economizer are as follows:
- FaultModel:TemperatureSensorOffset:OutdoorAir
- FaultModel:HumiditySensorOffset:OutdoorAir
- FaultModel:EnthalpySensorOffset:OutdoorAir
- FaultModel:TemperatureSensorOffset:ReturnAir
- FaultModel:EnthalpySensorOffset:ReturnAir
FaultModel:TemperatureSensorOffset:OutdoorAir[LINK]
This object defines the offset of an outdoor air dry-bulb
temperature sensor that is used to determine applicability of
an air economizer.
This is the user-defined name of the fault.
Field: Availability
Schedule Name[LINK]
This field provides the name of a schedule that will
determine if this fault is applicable. When a fault is not
applicable it is not modeled in the simulations. When it is
applicable, then a user-defined sensor offset and a severity
schedule will be applied. This schedule should be set to “1.0”
when a fault is applicable and “0.0” when it is not. If this
field is blank, the schedule has values of 1 for all time
periods.
Field: Severity Schedule
Name[LINK]
This field provides the name of a schedule that represents
severity of a fault. This is used as a multiplier to the
user-defined temperature offset. This schedule should be set
to a non-zero value when a fault is applicable and “0.0” when
it is not. If this field is blank, the schedule has values of
1 for all time periods.
Field: Controller Object
Type[LINK]
This field defines the controller object type that this
fault is associated with. Choices are from a list of
applicable controller types. Current implementation supports
air economizer – the choice is [Controller:OutdoorAir](../input-output-reference/page-051.html#controlleroutdoorair).
Field: Controller Object
Name[LINK]
This field defines the name of the controller object
associated with the fault. It should be one of the objects
with the defined types.
Field: Temperature
Sensor Offset[LINK]
This field defines the offset of the temperature sensor. A
positive value means the sensor reads a temperature that is
higher than the real value. A negative value means the sensor
reads a temperature that is lower than the real value. A “0.0”
value means no offset. Default is 0.0. The units are in
degrees Celsius.
FaultModel:HumiditySensorOffset:OutdoorAir[LINK]
This object defines the offset of an outdoor air humidity
sensor that is used to determine applicability of an air
economizer.
This is the user-defined name of the fault.
Field:
Availability Schedule Name[LINK]
This field provides the name of a schedule that will
determine if this fault is applicable. When a fault is not
applicable it is not modeled in the simulations. When it is
applicable, then a user-defined sensor offset and a severity
schedule will be applied. This schedule should be set to “1.0”
when a fault is applicable and “0.0” when it is not. If this
field is blank, the schedule has values of 1 for all time
periods.
Field: Severity
Schedule Name[LINK]
This field provides the name of a schedule that represents
severity of a fault. This is used as a multiplier to the
user-defined temperature offset. This schedule should be set
to a non-zero value when a fault is applicable and “0.0” when
it is not. If this field is blank, the schedule has values of
1 for all time periods.
Field: Controller
Object Type[LINK]
This field defines the controller object type that this
fault is associated with. Choices are from a list of
applicable controller types. Current implementation supports
air economizer – the choice is [Controller:OutdoorAir](../input-output-reference/page-051.html#controlleroutdoorair).
Field: Controller
Object Name[LINK]
This field defines the name of the controller object
associated with the fault. It should be one of the objects
with the defined types.
Field: Humidity Sensor
Offset[LINK]
This field defines the offset of the humidity ratio sensor.
A positive value means the sensor reads a humidity ratio that
is higher than the real value. A negative value means the
sensor reads a humidity ratio that is lower than the real
value. A “0.0” value means no offset. Default is 0.0. The
units are in kgWater/kgDryAir.
FaultModel:EnthalpySensorOffset:OutdoorAir[LINK]
This object defines the offset of an outdoor enthalpy
sensor that is used to determine applicability of an air
economizer.
This is the user-defined name of the fault.
Field:
Availability Schedule Name[LINK]
This field provides the name of a schedule that will
determine if this fault is applicable. When a fault is not
applicable it is not modeled in the simulations. When it is
applicable, then a user-defined sensor offset and a severity
schedule will be applied. This schedule should be set to “1.0”
when a fault is applicable and “0.0” when it is not. If this
field is blank, the schedule has values of 1 for all time
periods.
Field: Severity
Schedule Name[LINK]
This field provides the name of a schedule that represents
severity of a fault. This is used as a multiplier to the
user-defined temperature offset. This schedule should be set
to a non-zero value when a fault is applicable and “0.0” when
it is not. If this field is blank, the schedule has values of
1 for all time periods.
Field: Controller
Object Type[LINK]
This field defines the controller object type that this
fault is associated with. Choices are from a list of
applicable controller types. Current implementation supports
air economizer – the choice is [Controller:OutdoorAir](../input-output-reference/page-051.html#controlleroutdoorair).
Field: Controller
Object Name[LINK]
This field defines the name of the controller object
associated with the fault. It should be one of the objects
with the defined types.
Field: Enthalpy Sensor
Offset[LINK]
This field defines the offset of the enthalpy sensor. A
positive value means the sensor reads an enthalpy that is
higher than the real value. A negative value means the sensor
reads an enthalpy that is lower than the real value. A “0.0”
value means no offset. Default is 0.0. The units are in
J/kg.
FaultModel:TemperatureSensorOffset:ReturnAir[LINK]
This object defines the offset of a return air dry-bulb
temperature sensor that is used to determine applicability of
an air economizer.
This is the user-defined name of the fault.
Field:
Availability Schedule Name[LINK]
This field provides the name of a schedule that will
determine if this fault is applicable. When a fault is not
applicable it is not modeled in the simulations. When it is
applicable, then a user-defined sensor offset and a severity
schedule will be applied. This schedule should be set to “1.0”
when a fault is applicable and “0.0” when it is not. If this
field is blank, the schedule has values of 1 for all time
periods.
Field: Severity
Schedule Name[LINK]
This field provides the name of a schedule that represents
severity of a fault. This is used as a multiplier to the
user-defined temperature offset. This schedule should be set
to a non-zero value when a fault is applicable and “0.0” when
it is not. If this field is blank, the schedule has values of
1 for all time periods.
Field: Controller
Object Type[LINK]
This field defines the controller object type that this
fault is associated with. Choices are from a list of
applicable controller types. Current implementation supports
air economizer – the choice is [Controller:OutdoorAir](../input-output-reference/page-051.html#controlleroutdoorair).
Field: Controller
Object Name[LINK]
This field defines the name of the controller object
associated with the fault. It should be one of the objects
with the defined types.
Field: Temperature
Sensor Offset[LINK]
This field defines the offset of the temperature sensor. A
positive value means the sensor reads a temperature that is
higher than the real value. A negative value means the sensor
reads a temperature that is lower than the real value. A “0.0”
value means no offset. Default is 0.0. The units are in
degrees Celsius.
FaultModel:EnthalpySensorOffset:ReturnAir[LINK]
This object defines the offset of a return air enthalpy
sensor that is used to determine applicability of an air
economizer.
This is the user-defined name of the fault.
Field:
Availability Schedule Name[LINK]
This field provides the name of a schedule that will
determine if this fault is applicable. When a fault is not
applicable it is not modeled in the simulations. When it is
applicable, then a user-defined sensor offset and a severity
schedule will be applied. This schedule should be set to “1.0”
when a fault is applicable and “0.0” when it is not. If this
field is blank, the schedule has values of 1 for all time
periods.
Field: Severity
Schedule Name[LINK]
This field provides the name of a schedule that represents
severity of a fault. This is used as a multiplier to the
user-defined temperature offset. This schedule should be set
to a non-zero value when a fault is applicable and “0.0” when
it is not. If this field is blank, the schedule has values of
1 for all time periods.
Field: Controller
Object Type[LINK]
This field defines the controller object type that this
fault is associated with. Choices are from a list of
applicable controller types. Current implementation supports
air economizer – the choice is [Controller:OutdoorAir](../input-output-reference/page-051.html#controlleroutdoorair).
Field: Controller
Object Name[LINK]
This field defines the name of the controller object
associated with the fault. It should be one of the objects
with the defined types.
Field: Enthalpy Sensor
Offset[LINK]
This field defines the offset of the enthalpy sensor. A
positive value means the sensor reads an enthalpy that is
higher than the real value. A negative value means the sensor
reads an enthalpy that is lower than the real value. A “0.0”
value means no offset. Default is 0.0. The units are in
J/kg.
IDF examples:
! example faults for an air economizer
Schedule:Compact,
OATSeveritySch, !- Name
On/Off, !- Schedule Type Limits Name
Through: 6/30, !- Field 1
For: AllDays, !- Field 2
Until: 24:00,0, !- Field 3
Through: 12/31, !- Field 4
For: AllDays, !- Field 5
Until: 24:00,1; !- Field 6
FaultModel:TemperatureSensorOffset:OutdoorAir,
OATFault, !- Name
ALWAYS_ON, !- Availability Schedule Name
OATSeveritySch, !- Severity Schedule Name
Controller:OutdoorAir, !- Controller Object Type
VAV_1_OA_Controller, !- Controller Object Name
-2.0; !- Temperature Sensor Offset, deg C
FaultModel:TemperatureSensorOffset:ReturnAir,
RATFault, !- Name
, !- Availability Schedule Name
, !- Severity Schedule Name
Controller:OutdoorAir, !- Controller Object Type
VAV_2_OA_Controller, !- Controller Object Name
-2.0; !- Temperature Sensor Offset, deg C
FaultModel:EnthalpySensorOffset:ReturnAir,
RAHFault, !- Name
, !- Availability Schedule Name
, !- Severity Schedule Name
Controller:OutdoorAir, !- Controller Object Type
VAV_2_OA_Controller, !- Controller Object Name
-2000; !- Enthalpy Sensor Offset, J/Kg
Group – Operational Faults[LINK]
Introduction to Operational Faults Modeling[LINK]
Most of the buildings, either new or old, have operational faults in the sensors, controllers, meters, equipment and systems. Being able to model and simulate these faults and their impact on energy performance of buildings is crucial to improve accuracy of building simulations and to support the retrofit of buildings.
To date, the main practitioner use of EnergyPlus has been for new construction design. With the new high priority attached by USDOE to retrofit and improved operation of existing buildings, there is a need to extend the capabilities of EnergyPlus to model existing buildings, including faulty operation:
Retrofit analysis: starts with calibrated simulation; the ability to estimate the severity of common faults is expected to improve the accuracy and transparency of the calibrated model and hence the increase accuracy of the analysis of different retrofit measures.
Commissioning providers can use the fault models to demonstrate the saving to be expected from fixing faults found in retro-commissioning
Support for building operation by using the calibrated model, including unfixed faults, as a real-time reference model to detect, and verify the diagnosis of, newly occurring faults.
The users in these cases are practitioners, not power users, so it is needed to implement the fault models using conventional EnergyPlus objects rather than the EMS, which, in any case, could only be used to model limited types of faults.
Operational Fault Objects[LINK]
EnergyPlus contains a number of objects to model operational faults of sensors, meters, equipment and systems. The current implementation allows the model of sensors faults with air economizers.
The objects used by EnergyPlus to model sensors faults in an air economizer are as follows:
FaultModel:TemperatureSensorOffset:OutdoorAir[LINK]
This object defines the offset of an outdoor air dry-bulb temperature sensor that is used to determine applicability of an air economizer.
Field: Name[LINK]
This is the user-defined name of the fault.
Field: Availability Schedule Name[LINK]
This field provides the name of a schedule that will determine if this fault is applicable. When a fault is not applicable it is not modeled in the simulations. When it is applicable, then a user-defined sensor offset and a severity schedule will be applied. This schedule should be set to “1.0” when a fault is applicable and “0.0” when it is not. If this field is blank, the schedule has values of 1 for all time periods.
Field: Severity Schedule Name[LINK]
This field provides the name of a schedule that represents severity of a fault. This is used as a multiplier to the user-defined temperature offset. This schedule should be set to a non-zero value when a fault is applicable and “0.0” when it is not. If this field is blank, the schedule has values of 1 for all time periods.
Field: Controller Object Type[LINK]
This field defines the controller object type that this fault is associated with. Choices are from a list of applicable controller types. Current implementation supports air economizer – the choice is [Controller:OutdoorAir](../input-output-reference/page-051.html#controlleroutdoorair).
Field: Controller Object Name[LINK]
This field defines the name of the controller object associated with the fault. It should be one of the objects with the defined types.
Field: Temperature Sensor Offset[LINK]
This field defines the offset of the temperature sensor. A positive value means the sensor reads a temperature that is higher than the real value. A negative value means the sensor reads a temperature that is lower than the real value. A “0.0” value means no offset. Default is 0.0. The units are in degrees Celsius.
FaultModel:HumiditySensorOffset:OutdoorAir[LINK]
This object defines the offset of an outdoor air humidity sensor that is used to determine applicability of an air economizer.
Field: Name[LINK]
This is the user-defined name of the fault.
Field: Availability Schedule Name[LINK]
This field provides the name of a schedule that will determine if this fault is applicable. When a fault is not applicable it is not modeled in the simulations. When it is applicable, then a user-defined sensor offset and a severity schedule will be applied. This schedule should be set to “1.0” when a fault is applicable and “0.0” when it is not. If this field is blank, the schedule has values of 1 for all time periods.
Field: Severity Schedule Name[LINK]
This field provides the name of a schedule that represents severity of a fault. This is used as a multiplier to the user-defined temperature offset. This schedule should be set to a non-zero value when a fault is applicable and “0.0” when it is not. If this field is blank, the schedule has values of 1 for all time periods.
Field: Controller Object Type[LINK]
This field defines the controller object type that this fault is associated with. Choices are from a list of applicable controller types. Current implementation supports air economizer – the choice is [Controller:OutdoorAir](../input-output-reference/page-051.html#controlleroutdoorair).
Field: Controller Object Name[LINK]
This field defines the name of the controller object associated with the fault. It should be one of the objects with the defined types.
Field: Humidity Sensor Offset[LINK]
This field defines the offset of the humidity ratio sensor. A positive value means the sensor reads a humidity ratio that is higher than the real value. A negative value means the sensor reads a humidity ratio that is lower than the real value. A “0.0” value means no offset. Default is 0.0. The units are in kgWater/kgDryAir.
FaultModel:EnthalpySensorOffset:OutdoorAir[LINK]
This object defines the offset of an outdoor enthalpy sensor that is used to determine applicability of an air economizer.
Field: Name[LINK]
This is the user-defined name of the fault.
Field: Availability Schedule Name[LINK]
This field provides the name of a schedule that will determine if this fault is applicable. When a fault is not applicable it is not modeled in the simulations. When it is applicable, then a user-defined sensor offset and a severity schedule will be applied. This schedule should be set to “1.0” when a fault is applicable and “0.0” when it is not. If this field is blank, the schedule has values of 1 for all time periods.
Field: Severity Schedule Name[LINK]
This field provides the name of a schedule that represents severity of a fault. This is used as a multiplier to the user-defined temperature offset. This schedule should be set to a non-zero value when a fault is applicable and “0.0” when it is not. If this field is blank, the schedule has values of 1 for all time periods.
Field: Controller Object Type[LINK]
This field defines the controller object type that this fault is associated with. Choices are from a list of applicable controller types. Current implementation supports air economizer – the choice is [Controller:OutdoorAir](../input-output-reference/page-051.html#controlleroutdoorair).
Field: Controller Object Name[LINK]
This field defines the name of the controller object associated with the fault. It should be one of the objects with the defined types.
Field: Enthalpy Sensor Offset[LINK]
This field defines the offset of the enthalpy sensor. A positive value means the sensor reads an enthalpy that is higher than the real value. A negative value means the sensor reads an enthalpy that is lower than the real value. A “0.0” value means no offset. Default is 0.0. The units are in J/kg.
FaultModel:TemperatureSensorOffset:ReturnAir[LINK]
This object defines the offset of a return air dry-bulb temperature sensor that is used to determine applicability of an air economizer.
Field: Name[LINK]
This is the user-defined name of the fault.
Field: Availability Schedule Name[LINK]
This field provides the name of a schedule that will determine if this fault is applicable. When a fault is not applicable it is not modeled in the simulations. When it is applicable, then a user-defined sensor offset and a severity schedule will be applied. This schedule should be set to “1.0” when a fault is applicable and “0.0” when it is not. If this field is blank, the schedule has values of 1 for all time periods.
Field: Severity Schedule Name[LINK]
This field provides the name of a schedule that represents severity of a fault. This is used as a multiplier to the user-defined temperature offset. This schedule should be set to a non-zero value when a fault is applicable and “0.0” when it is not. If this field is blank, the schedule has values of 1 for all time periods.
Field: Controller Object Type[LINK]
This field defines the controller object type that this fault is associated with. Choices are from a list of applicable controller types. Current implementation supports air economizer – the choice is [Controller:OutdoorAir](../input-output-reference/page-051.html#controlleroutdoorair).
Field: Controller Object Name[LINK]
This field defines the name of the controller object associated with the fault. It should be one of the objects with the defined types.
Field: Temperature Sensor Offset[LINK]
This field defines the offset of the temperature sensor. A positive value means the sensor reads a temperature that is higher than the real value. A negative value means the sensor reads a temperature that is lower than the real value. A “0.0” value means no offset. Default is 0.0. The units are in degrees Celsius.
FaultModel:EnthalpySensorOffset:ReturnAir[LINK]
This object defines the offset of a return air enthalpy sensor that is used to determine applicability of an air economizer.
Field: Name[LINK]
This is the user-defined name of the fault.
Field: Availability Schedule Name[LINK]
This field provides the name of a schedule that will determine if this fault is applicable. When a fault is not applicable it is not modeled in the simulations. When it is applicable, then a user-defined sensor offset and a severity schedule will be applied. This schedule should be set to “1.0” when a fault is applicable and “0.0” when it is not. If this field is blank, the schedule has values of 1 for all time periods.
Field: Severity Schedule Name[LINK]
This field provides the name of a schedule that represents severity of a fault. This is used as a multiplier to the user-defined temperature offset. This schedule should be set to a non-zero value when a fault is applicable and “0.0” when it is not. If this field is blank, the schedule has values of 1 for all time periods.
Field: Controller Object Type[LINK]
This field defines the controller object type that this fault is associated with. Choices are from a list of applicable controller types. Current implementation supports air economizer – the choice is [Controller:OutdoorAir](../input-output-reference/page-051.html#controlleroutdoorair).
Field: Controller Object Name[LINK]
This field defines the name of the controller object associated with the fault. It should be one of the objects with the defined types.
Field: Enthalpy Sensor Offset[LINK]
This field defines the offset of the enthalpy sensor. A positive value means the sensor reads an enthalpy that is higher than the real value. A negative value means the sensor reads an enthalpy that is lower than the real value. A “0.0” value means no offset. Default is 0.0. The units are in J/kg.
IDF examples:
Documentation content copyright © 1996-2026 The Board of Trustees of the University of Illinois and the Regents of the University of California through the Ernest Orlando Lawrence Berkeley National Laboratory. All rights reserved. EnergyPlus is a trademark of the US Department of Energy.
This documentation is made available under the EnergyPlus Open Source License v1.0.