blockAlarms

Generate alarms of series fan-powered terminal unit with variable-volume fan

Information

This block outputs alarms of series fan-powered terminal unit with variable volume fan. The implementation is according to the Section 5.10.6 of ASHRAE Guideline 36, May 2020.

Low airflow

  1. After the AHU supply fan has been enabled for staTim, if the measured airflow VPri_flow is less than 70% of setpoint VActSet_flow for 5 minutes (lowFloTim) while the setpoint is greater than zero, generate a Level 3 alarm.
  2. After the AHU supply fan has been enabled for staTim, if the measured airflow VPri_flow is less than 50% of setpoint VActSet_flow for 5 minutes (lowFloTim) while the setpoint is greater than zero, generate a Level 2 alarm.
  3. If a zone has an importance multiplier (staPreMul) of 0 for its static pressure reset Trim-Respond control loop, low airflow alarms shall be suppressed for that zone.

Low-discharging air temperature

  1. If heating hot-water plant is proven on (u1HotPla=true), and the discharge temperature (TDis) is 8.3 °C (15 °F) less than the setpoint (TDisSet) for 10 minuts (lowTemTim), generate a Level 3 alarm.
  2. If heating hot-water plant is proven on (u1HotPla=true), and the discharge temperature (TDis) is 17 °C (30 °F) less than the setpoint (TDisSet) for 10 minuts (lowTemTim), generate a Level 2 alarm.
  3. If a zone has an importance multiplier (hotWatRes) of 0 for its hot-water reset Trim-Respond control loop, low discharing air temperature alarms shall be suppressed for that zone.

Fan status alarm

Fan alarm is indicated by the status input being different from the output command after a period of 15 seconds after a change in output status.

  1. Command on (u1FanCom=true), status off (u1TerFan=false), generate Level 2 alarm.
  2. Command off (u1FanCom=false), status on (u1TerFan=true), generate Level 4 alarm.

Airflow sensor calibration

If the fan serving the zone has been OFF (u1Fan=false) for 10 minutes (fanOffTim), and airflow sensor reading VPri_flow is above 10% of the cooling maximum airflow setpoint VCooMax_flow, generate a Level 3 alarm.

Leaking damper

If the damper position (uDam) is 0% and airflow sensor reading VPri_flow is above 10% of the cooling maximum airflow setpoint VCooMax_flow for 10 minutes (leaFloTim) while the fan serving the zone is proven on (u1Fan=true), generate a Level 4 alarm.

Leaking valve

If the valve position (uVal) is 0% for 15 minutes (valCloTim), discharing air temperature TDis is above AHU supply temperature TSup by 3 °C (5 °F), and the fan serving the zone is proven on (u1Fan=true), gemerate a Level 4 alarm.

Parameters

TypeNameDefaultDescription
Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoilheaCoiBuildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBasedHeating coil type
RealstaPreMulImportance multiplier for the zone static pressure reset control loop
RealhotWatResImportance multiplier for the hot water reset control loop
RealVCooMax_flowDesign zone cooling maximum airflow rate
ReallowFloTim300Threshold time to check low flow rate
ReallowTemTim600Threshold time to check low discharge temperature
RealcomChaTim15Threshold time after fan command change
RealfanOffTim600Threshold time to check fan off
RealleaFloTim600Threshold time to check damper leaking airflow
RealvalCloTim900Threshold time to check valve leaking water flow
Advanced
RealfloHys0.05Near zero flow rate, below which the flow rate or difference will be seen as zero
RealdTHys0.25Temperature difference hysteresis below which the temperature difference will be seen as zero
RealdamPosHys0.05Near zero damper position, below which the damper will be seen as closed
RealvalPosHys0.05Near zero valve position, below which the valve will be seen as closed
RealstaTim1800Delay triggering alarms after enabling AHU supply fan

Connectors

TypeNameDefaultDescription
Buildings.Controls.OBC.CDL.Interfaces.RealInputVPri_flowMeasured primary airflow rate
Buildings.Controls.OBC.CDL.Interfaces.RealInputVActSet_flowActive airflow setpoint
Buildings.Controls.OBC.CDL.Interfaces.BooleanInputu1FanTerminal fan status
Buildings.Controls.OBC.CDL.Interfaces.BooleanInputu1FanComTerminal fan command on
Buildings.Controls.OBC.CDL.Interfaces.BooleanInputu1TerFanTerminal fan status
Buildings.Controls.OBC.CDL.Interfaces.IntegerInputuOpeModZone operation mode
Buildings.Controls.OBC.CDL.Interfaces.RealInputuDamDamper position setpoint
Buildings.Controls.OBC.CDL.Interfaces.RealInputuValActual valve position
Buildings.Controls.OBC.CDL.Interfaces.RealInputTSupTemperature of the air supplied from central air handler
Buildings.Controls.OBC.CDL.Interfaces.BooleanInputu1HotPlaHot water plant status
Buildings.Controls.OBC.CDL.Interfaces.RealInputTDisMeasured discharge air temperature
Buildings.Controls.OBC.CDL.Interfaces.RealInputTDisSetDischarge air temperature setpoint
Buildings.Controls.OBC.CDL.Interfaces.IntegerOutputyLowFloAlaLow airflow alarms
Buildings.Controls.OBC.CDL.Interfaces.IntegerOutputyFloSenAlaAirflow sensor calibration alarm
Buildings.Controls.OBC.CDL.Interfaces.IntegerOutputyFanStaAlaFan status alarm
Buildings.Controls.OBC.CDL.Interfaces.IntegerOutputyLeaDamAlaLeaking damper alarm
Buildings.Controls.OBC.CDL.Interfaces.IntegerOutputyLeaValAlaLeaking valve alarm
Buildings.Controls.OBC.CDL.Interfaces.IntegerOutputyLowTemAlaLow discharge air temperature alarms

Components

TypeNameDefaultDescription
Buildings.Controls.OBC.CDL.Reals.MultiplyByParametergaiPercentage of the setpoint
Buildings.Controls.OBC.CDL.Reals.LesslesCheck if measured airflow is less than threshold
Buildings.Controls.OBC.CDL.Logical.TrueDelaytruDelCheck if the measured airflow has been less than threshold value for threshold time
Buildings.Controls.OBC.CDL.Reals.GreaterThresholdgreThrCheck if setpoint airflow is greater than zero
Buildings.Controls.OBC.CDL.Reals.GreatergreCheck if measured airflow is less than threshold
Buildings.Controls.OBC.CDL.Reals.MultiplyByParametergai1Percentage of the setpoint
Buildings.Controls.OBC.CDL.Logical.TrueDelaytruDel1Check if the measured airflow has been less than threshold value for threshold time
Buildings.Controls.OBC.CDL.Logical.Andand2Measured airflow has been less than threshold value for sufficient time
Buildings.Controls.OBC.CDL.Logical.Andand1Measured airflow has been less than threshold value for sufficient time
Buildings.Controls.OBC.CDL.Integers.SwitchlowFloAlaLow airflow alarm
Buildings.Controls.OBC.CDL.Integers.Sources.ConstantconIntLevel 2 alarm
Buildings.Controls.OBC.CDL.Conversions.BooleanToIntegerbooToIntConvert boolean true to level 3 alarm
Buildings.Controls.OBC.CDL.Reals.Sources.ConstantconInt1Importance multiplier for zone static pressure reset
Buildings.Controls.OBC.CDL.Reals.GreaterThresholdgreThr1Check if the multiplier is greater than zero
Buildings.Controls.OBC.CDL.Conversions.BooleanToIntegerbooToInt1Suppress the alarm when multiplier is zero
Buildings.Controls.OBC.CDL.Integers.MultiplyproIntLow flow alarms
Buildings.Controls.OBC.CDL.Logical.Andand4Logical and
Buildings.Controls.OBC.CDL.Logical.Notnot1Logical not
Buildings.Controls.OBC.CDL.Utilities.AssertassMesLevel 2 low airflow alarm
Buildings.Controls.OBC.CDL.Logical.Andand14Logical and
Buildings.Controls.OBC.CDL.Logical.Notnot2Logical not
Buildings.Controls.OBC.CDL.Utilities.AssertassMes1Level 3 low airflow alarm
Buildings.Controls.OBC.CDL.Reals.Sources.ConstantcooMaxFloCooling maximum airflow setpoint
Buildings.Controls.OBC.CDL.Reals.MultiplyByParametergai2Percentage of the setpoint
Buildings.Controls.OBC.CDL.Logical.Notnot3Logical not
Buildings.Controls.OBC.CDL.Logical.TrueDelaytruDel2Check if the input has been true for more than threshold time
Buildings.Controls.OBC.CDL.Reals.Greatergre1Check if measured airflow is greater than threshold
Buildings.Controls.OBC.CDL.Logical.Andand5Check if the measured airflow is greater than the threshold and the AHU supply fan is OFF
Buildings.Controls.OBC.CDL.Logical.Notnot4Logical not
Buildings.Controls.OBC.CDL.Utilities.AssertassMes2Level 3 airflow sensor alarm
Buildings.Controls.OBC.CDL.Conversions.BooleanToIntegerbooToInt2Convert boolean true to level 3 alarm
Buildings.Controls.OBC.CDL.Logical.TrueDelaytruDel3Check if the input has been true for more than threshold time
Buildings.Controls.OBC.CDL.Reals.LessThresholdcloDamCheck if damper position is near zero
Buildings.Controls.OBC.CDL.Logical.AndleaDamAlaCheck if generating leak damper alarms
Buildings.Controls.OBC.CDL.Logical.Notnot5Logical not
Buildings.Controls.OBC.CDL.Utilities.AssertassMes3Level 4 leaking damper alarm
Buildings.Controls.OBC.CDL.Conversions.BooleanToIntegerbooToInt3Convert boolean true to level 4 alarm
Buildings.Controls.OBC.CDL.Reals.Lessles1Discharge temperature lower than setpoint by a threshold
Buildings.Controls.OBC.CDL.Reals.AddParameteraddParSetpoint temperature minus a threshold
Buildings.Controls.OBC.CDL.Reals.Lessles2Discharge temperature lower than setpoint by a threshold
Buildings.Controls.OBC.CDL.Reals.AddParameteraddPar1Setpoint temperature minus a threshold
Buildings.Controls.OBC.CDL.Logical.TrueDelaytruDel4Check if the discharge temperature has been less than threshold value for threshold time
Buildings.Controls.OBC.CDL.Logical.TrueDelaytruDel5Check if the discharge temperature has been less than threshold value for threshold time
Buildings.Controls.OBC.CDL.Logical.Andand6Discharge temperature has been less than threshold and the hot water plant is proven on
Buildings.Controls.OBC.CDL.Logical.Andand7Logical and
Buildings.Controls.OBC.CDL.Logical.Notnot6Logical not
Buildings.Controls.OBC.CDL.Utilities.AssertassMes4Level 2 low discharge air temperature alarm
Buildings.Controls.OBC.CDL.Integers.SwitchlowTemAlaLow discharge temperature alarm
Buildings.Controls.OBC.CDL.Integers.Sources.ConstantconInt2Level 2 alarm
Buildings.Controls.OBC.CDL.Logical.Andand8Discharge temperature has been less than threshold and the hot water plant is proven on
Buildings.Controls.OBC.CDL.Conversions.BooleanToIntegerbooToInt4Convert boolean true to level 3 alarm
Buildings.Controls.OBC.CDL.Logical.Andand9Logical and
Buildings.Controls.OBC.CDL.Logical.Notnot7Logical not
Buildings.Controls.OBC.CDL.Utilities.AssertassMes5Level 3 low airflow alarm
Buildings.Controls.OBC.CDL.Reals.Sources.ConstantconInt3Importance multiplier for hot water reset control
Buildings.Controls.OBC.CDL.Reals.GreaterThresholdgreThr2Check if the multiplier is greater than zero
Buildings.Controls.OBC.CDL.Conversions.BooleanToIntegerbooToInt5Suppress the alarm when multiplier is zero
Buildings.Controls.OBC.CDL.Integers.MultiplyproInt1Low discharge air temperature alarms
Buildings.Controls.OBC.CDL.Logical.TrueDelaytruDel6Check if the input has been true for more than threshold time
Buildings.Controls.OBC.CDL.Reals.LessThresholdcloValCheck if valve position is near zero
Buildings.Controls.OBC.CDL.Reals.AddParameteraddPar2AHU supply temperature plus 3 degree
Buildings.Controls.OBC.CDL.Reals.Greatergre2Discharge temperature greate than AHU supply temperature by a threshold
Buildings.Controls.OBC.CDL.Logical.AndleaValAlaCheck if generating leak valve alarms
Buildings.Controls.OBC.CDL.Conversions.BooleanToIntegerbooToInt6Convert boolean true to level 4 alarm
Buildings.Controls.OBC.CDL.Logical.Notnot8Logical not
Buildings.Controls.OBC.CDL.Utilities.AssertassMes6Level 4 leaking valve alarm
Buildings.Controls.OBC.CDL.Logical.TrueDelaytruDel7Check if the terminal fan has been commond on for threshold time
Buildings.Controls.OBC.CDL.Logical.Andand11Check if the fan has been commond on for threshold time and fan is still off
Buildings.Controls.OBC.CDL.Integers.Sources.ConstantconInt4Level 2 alarm
Buildings.Controls.OBC.CDL.Integers.SwitchfanStaAlaFan status alarm
Buildings.Controls.OBC.CDL.Logical.Notnot9Logical not
Buildings.Controls.OBC.CDL.Logical.TrueDelaytruDel8Check if the terminal fan has been commond off for threshold time
Buildings.Controls.OBC.CDL.Logical.Andand10Check if the fan has been commond off for threshold time and fan is still on
Buildings.Controls.OBC.CDL.Conversions.BooleanToIntegerbooToInt7Convert boolean true to level 3 alarm
Buildings.Controls.OBC.CDL.Logical.Notnot10Logical not
Buildings.Controls.OBC.CDL.Utilities.AssertassMes7Level 2 fan status alarm
Buildings.Controls.OBC.CDL.Logical.Notnot11Logical not
Buildings.Controls.OBC.CDL.Utilities.AssertassMes8Level 4 fan status alarm
Buildings.Controls.OBC.CDL.Logical.Notnot12Logical not
Buildings.Controls.OBC.CDL.Logical.TrueDelaytruDel9Check if the active flow setpoint has been greater than zero for the threshold time
Buildings.Controls.OBC.CDL.Logical.TrueDelayfanIniCheck if the AHU supply fan has been enabled for threshold time
Buildings.Controls.OBC.CDL.Logical.Andand12True: AHU fan is enabled and the discharge flow is lower than the threshold
Buildings.Controls.OBC.CDL.Logical.Andand13True: AHU fan is enabled and the discharge flow is lower than the threshold
Buildings.Controls.OBC.CDL.Integers.Sources.ConstantoccModOccupied mode
Buildings.Controls.OBC.CDL.Integers.EqualisOccCheck if current operation mode is occupied mode
Buildings.Controls.OBC.CDL.Logical.Andand3Logical and
Buildings.Controls.OBC.CDL.Logical.Andand15Logical and
Buildings.Controls.OBC.CDL.Logical.Andand16Check if the fan has been commond on for threshold time and fan is still off
Buildings.Controls.OBC.CDL.Logical.Andand17Check if the fan has been commond off for threshold time and fan is still on
Buildings.Controls.OBC.CDL.Logical.AndleaDamAla1Check if generating leak damper alarms
Buildings.Controls.OBC.CDL.Logical.AndleaValAla1Check if generating leak valve alarms
Buildings.Controls.OBC.CDL.Logical.Andand18Logical and
Buildings.Controls.OBC.CDL.Logical.Andand19Logical and

Revisions

  • August 29, 2023, by Hongxiang Fu:
    Because of the removal of Logical.And3 based on ASHRAE 231P, replaced it with a stack of two Logical.And blocks. This is for #2465.
  • August 23, 2023, by Jianjun Hu:
    Added delay staTim to allow the system becoming stabilized. This is for issue 3257.
  • August 1, 2020, by Jianjun Hu:
    First implementation.