blockAlarms

Generate alarms of snap-acting controlled dual-duct terminal unit

Information

This block outputs alarms of snap-acting controlled dual-duct terminal unit. The implementation is according to the Section 5.11.6 of ASHRAE Guideline 36, May 2020.

Low airflow

  1. If the zone is in occupied mode and after the AHU supply fan has been enabled for staTim, if the measured airflow VDis_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. If the zone is in occupied mode and after the AHU supply fan has been enabled for staTim, if the measured airflow VDis_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.

Airflow sensor calibration

  • If the unit has dual inlet sensor (have_duaSen=true):
    • If the cooling fan serving the zone has been OFF (u1CooFan=false) for 10 minutes (fanOffTim), and the cold-duct airflow sensor reading VColDucDis_flow is above 10% of the cooling maximum airflow setpoint VCooMax_flow, generate a Level 3 alarm.
    • If the heating fan serving the zone has been OFF (u1HeaFan=false) for 10 minutes (fanOffTim), and the hot-duct airflow sensor reading VHotDucDis_flow is above 10% of the heating maximum airflow setpoint VHeaMax_flow, generate a Level 3 alarm.
  • If the unit has single discharge flow sensor (have_duaSen=false):
    • If the cooling and heating fans serving the zone have been OFF (u1CooFan=false and u1HeaFan=false) for 10 minutes (fanOffTim), and the discharge airflow sensor reading VDis_flow is above 10% of the cooling maximum airflow setpoint VCooMax_flow, generate a Level 3 alarm.

Leaking damper

  • If the unit has dual inlet sensor (have_duaSen=true):
    • If the cooling damper position (uCooDam) is 0% and airflow sensor reading VColDucDis_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 (u1CooFan=true), generate a Level 4 alarm.
    • If the heating damper position (uHeaDam) is 0% and airflow sensor reading VHotDucDis_flow is above 10% of the heating maximum airflow setpoint VHeaMax_flow for 10 minutes (leaFloTim) while the fan serving the zone is proven on (u1HeaFan=true), generate a Level 4 alarm.
  • If the unit has single discharge flow sensor (have_duaSen=false):
    • If the cooling and heating damper position (uCooDam and uHeaDam) are 0% and airflow sensor reading VDis_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 (u1CooFan=true or u1HeaFan=true), generate a Level 4 alarm.

Parameters

TypeNameDefaultDescription
Booleanhave_duaSenTrue: the unit have dual inlet flow sensor
RealstaPreMulImportance multiplier for the zone static pressure reset control loop
RealVCooMax_flowDesign zone cooling maximum airflow rate
RealVHeaMax_flowDesign zone heating maximum airflow rate
ReallowFloTim300Threshold time to check low flow rate
RealfanOffTim600Threshold time to check fan off
RealleaFloTim600Threshold time to check damper leaking airflow
Advanced
RealfloHys0.05Near zero flow rate, below which the flow rate or difference will be seen as zero
RealdamPosHys0.05Near zero damper position, below which the damper will be seen as closed
RealstaTim1800Delay triggering alarms after enabling AHU supply fan

Connectors

TypeNameDefaultDescription
Buildings.Controls.OBC.CDL.Interfaces.RealInputVDis_flowMeasured discharge airflow rate
Buildings.Controls.OBC.CDL.Interfaces.RealInputVActSet_flowActive airflow setpoint
Buildings.Controls.OBC.CDL.Interfaces.IntegerInputuOpeModZone operation mode
Buildings.Controls.OBC.CDL.Interfaces.RealInputVColDucDis_flowMeasured cold-duct discharge airflow rate
Buildings.Controls.OBC.CDL.Interfaces.BooleanInputu1CooFanCooling air handler supply fan status
Buildings.Controls.OBC.CDL.Interfaces.RealInputuCooDamCooling damper position setpoint
Buildings.Controls.OBC.CDL.Interfaces.RealInputVHotDucDis_flowMeasured hot-duct discharge airflow rate
Buildings.Controls.OBC.CDL.Interfaces.BooleanInputu1HeaFanHeating air handler supply fan status
Buildings.Controls.OBC.CDL.Interfaces.RealInputuHeaDamHeating damper position setpoint
Buildings.Controls.OBC.CDL.Interfaces.IntegerOutputyLowFloAlaLow airflow alarms
Buildings.Controls.OBC.CDL.Interfaces.IntegerOutputyFloSenAlaAirflow sensor calibration alarm
Buildings.Controls.OBC.CDL.Interfaces.IntegerOutputyLeaDamAlaLeaking dampers alarm, could be heating or cooling damper
Buildings.Controls.OBC.CDL.Interfaces.IntegerOutputyColFloSenAlaCold-duct airflow sensor calibration alarm
Buildings.Controls.OBC.CDL.Interfaces.IntegerOutputyColLeaDamAlaLeaking cold-duct damper alarm
Buildings.Controls.OBC.CDL.Interfaces.IntegerOutputyHotFloSenAlaHot-duct airflow sensor calibration alarm
Buildings.Controls.OBC.CDL.Interfaces.IntegerOutputyHotLeaDamAlaLeaking hot-duct damper alarm

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.Andand8Logical and
Buildings.Controls.OBC.CDL.Logical.Notnot1Logical not
Buildings.Controls.OBC.CDL.Utilities.AssertassMesLevel 2 low airflow alarm
Buildings.Controls.OBC.CDL.Logical.Andand4Logical 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 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.Sources.ConstantheaMaxFloHeating maximum airflow setpoint
Buildings.Controls.OBC.CDL.Reals.MultiplyByParametergai3Percentage of the setpoint
Buildings.Controls.OBC.CDL.Logical.Notnot6Logical not
Buildings.Controls.OBC.CDL.Logical.TrueDelaytruDel4Check if the input has been true for more than threshold time
Buildings.Controls.OBC.CDL.Reals.Greatergre2Check if measured airflow is greater than threshold
Buildings.Controls.OBC.CDL.Logical.Andand6Check if the measured airflow is greater than the threshold and the supply fan is OFF
Buildings.Controls.OBC.CDL.Logical.Notnot7Logical not
Buildings.Controls.OBC.CDL.Utilities.AssertassMes4Level 3 airflow sensor alarm
Buildings.Controls.OBC.CDL.Conversions.BooleanToIntegerbooToInt4Convert boolean true to level 3 alarm
Buildings.Controls.OBC.CDL.Logical.TrueDelaytruDel5Check if the input has been true for more than threshold time
Buildings.Controls.OBC.CDL.Reals.LessThresholdcloDam1Check if damper position is near zero
Buildings.Controls.OBC.CDL.Logical.AndleaDamAla1Check if generating leak damper alarms
Buildings.Controls.OBC.CDL.Logical.Notnot8Logical not
Buildings.Controls.OBC.CDL.Utilities.AssertassMes5Level 4 leaking damper alarm
Buildings.Controls.OBC.CDL.Conversions.BooleanToIntegerbooToInt5Convert boolean true to level 4 alarm
Buildings.Controls.OBC.CDL.Reals.Sources.ConstantcooMaxFlo1Cooling maximum airflow setpoint
Buildings.Controls.OBC.CDL.Reals.MultiplyByParametergai4Percentage of the setpoint
Buildings.Controls.OBC.CDL.Reals.Greatergre3Check if measured airflow is greater than threshold
Buildings.Controls.OBC.CDL.Logical.Andand7Check if the measured airflow is greater than the threshold and the supply fan is OFF
Buildings.Controls.OBC.CDL.Logical.Notnot9Logical not
Buildings.Controls.OBC.CDL.Utilities.AssertassMes6Level 3 airflow sensor alarm
Buildings.Controls.OBC.CDL.Conversions.BooleanToIntegerbooToInt6Convert boolean true to level 3 alarm
Buildings.Controls.OBC.CDL.Logical.Oror2Check if there is any supply fan proven on
Buildings.Controls.OBC.CDL.Logical.TrueDelaytruDel6Check if the input has been true for more than threshold time
Buildings.Controls.OBC.CDL.Logical.Notnot10Logical not
Buildings.Controls.OBC.CDL.Logical.TrueDelaytruDel7Check if the input has been true for more than threshold time
Buildings.Controls.OBC.CDL.Logical.AndleaDamAla2Check if generating leak damper alarms
Buildings.Controls.OBC.CDL.Logical.AndcloBotDamBoth heating and cooling dampers are closed
Buildings.Controls.OBC.CDL.Logical.Notnot11Logical not
Buildings.Controls.OBC.CDL.Utilities.AssertassMes7Level 4 leaking damper alarm
Buildings.Controls.OBC.CDL.Conversions.BooleanToIntegerbooToInt7Convert boolean true to level 4 alarm
Buildings.Controls.OBC.CDL.Reals.Addadd2Total discharge airflow
Buildings.Controls.OBC.CDL.Logical.TrueDelaytruDel8Check 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.Andand11True: AHU fan is enabled and the discharge flow is lower than the threshold
Buildings.Controls.OBC.CDL.Logical.Andand10True: AHU fan is enabled and the discharge flow is lower than the threshold
Buildings.Controls.OBC.CDL.Logical.Oror1Check if there is any supply fan proven on
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.Andand9Logical and
Buildings.Controls.OBC.CDL.Logical.AndleaDamAla3Check if generating leak damper alarms
Buildings.Controls.OBC.CDL.Logical.AndleaDamAla4Check if generating leak damper alarms
Buildings.Controls.OBC.CDL.Logical.AndleaDamAla5Check if generating leak damper alarms

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.