FireDamperMotSmoke
FireDamperMotSmoke (FB)
FireDamperMotSmoke (FB)FUNCTION_BLOCK FireDamperMotSmoke
Short description
Control of a motorized fire damper with two position feedbacks Additional functions: functional test of the fire damper Typical application: control of a fire damper in an HVAC system
Representation

Function description
General
This function block controls a binary motorized fire damper (xEn = TRUE), monitors the run times during the opening and closing processes and can perform a complete fire damper test. The function block can be operated either in normal mode or in test mode. The test mode has higher priority than normal mode and can be activated by a rising edge at the input xTestEx and/or at the setpoint / parameter xRunTest is triggered.
Enable opening / closing of the fire damper before manual override xAB
The enable for opening / closing of the fire damper before manual override xAB is passed unchanged from the request to open / close the fire damper xEn if the fire damper test is not active.
Release for opening / closing the fire damper after manual override xHB
The enable for opening / closing of the fire damper after manual override xHB corresponds to the enable for opening / closing of the fire damper before manual override xAB additionally extended by a manual override module
xAB
eManModeB
xHB
Notes
FALSE
eMANBIN.Auto
FALSE
Manual override module in automatic
TRUE
eMANBIN.Auto
TRUE
Manual override module in automatic
X
eMANBIN.ManOn
TRUE
Manual override module in manual operation On
X
eMANBIN.ManOff
FALSE
Manual override module in manual operation Off
Legend: X = any
Aggregate fault xAlarm
The aggregate fault xAlarm is activated (= TRUE) if at least one of the conditions described below is met:
1) The fault message for the open feedback xAlarmOpen is active (= TRUE). 2) The fault message for the closed feedback xAlarmClosed is active (= TRUE). 3) The fire damper is not fully open (xOpen = FALSE). (Background: Any fire damper not fully open is considered a faulty condition in normal operation). 4) The input *xAlarmIn* is active (= TRUE). 5) The input *xSmokeAlarm* is active (= TRUE). In all other cases the collective fault xAlarm is not activated (= FALSE).
Enable / disable of the fault message for the opening feedback xAlarmOpen
Monitoring of the damper run time during the opening process against an adjustable maximum value (tOpen) starts if in normal operation at least one of the conditions described below is met:
1) A rising edge (FALSE > TRUE) is detected at the output xHB detected (= normal case). 2) The request to open is active (xEn = TRUE) and at the same time a rising edge (FALSE > TRUE) is detected at the input xQuit a rising edge (FALSE > TRUE) is detected. 3) The output xHB is active (= TRUE) and at the same time a falling edge (TRUE > FALSE) is detected at the input xOpen detected. The fault message for the open feedback xAlarmOpen is activated (= TRUE) if after the expiration of the maximum runtime tOpen with active output (xHB = TRUE) at least one of the following conditions is met: 1) The feedback for full opening is not active (xOpen = FALSE) (= normal case). 2) The feedbacks xOpen or xClosed have the same state. The fault message for the open feedback xAlarmOpen is deactivated (= FALSE) if at the input xQuit .
Release / locking of the fault message for the closed feedback xAlarmClosed
Monitoring of the damper run time during the closing process against an adjustable maximum value (tclose) starts if in normal operation at least one of the conditions described below is met:
1) A falling edge (TRUE > FALSE) is detected at the output xHB detected (= normal case). 2) The request to close is active (xEn = FALSE) and at the same time a rising edge (FALSE > TRUE) is detected at the input xQuit a rising edge (FALSE > TRUE) is detected. The fault message for the closed feedback xAlarmClosed is activated (= TRUE) if after the expiration of the maximum runtime tClose with inactive output (xHB = FALSE) at least one of the following conditions is met: 1) The feedback for full closing is not active (xClosed = FALSE) (= normal case). 2) The feedbacks xOpen or xClosed have the same state. The fault message for the closed feedback xAlarmClosed is deactivated (= FALSE) if at the input xQuit .
Duration of the last full opening tLastOpen
The measurement of the duration begins each time if at least one of the conditions described below is met:
1) A rising edge (FALSE > TRUE) is detected at the input xOpen detected. 2) A falling edge (TRUE > FALSE) is detected at the input xOpen. 3) A rising edge (FALSE > TRUE) is detected at the input xClosed. 4) A falling edge (TRUE > FALSE) is detected at the input xClosed. (normal case) 5) A rising edge (FALSE > TRUE) is detected at the output xHB. 6) A falling edge (TRUE > FALSE) is detected at the output xHB. After each rising edge on the full open feedback, the runtime is available at this output xOpen (FALSE > TRUE) the runtime is available.
Duration of the last full closing tLastClosed
The measurement of the duration begins each time if at least one of the conditions described below is met:
1) A rising edge (FALSE > TRUE) is detected at the input xOpen detected. 2) A falling edge (TRUE > FALSE) is detected at the input xOpen. (normal case) 3) A rising edge (FALSE > TRUE) is detected at the input xClosed. 4) A falling edge (TRUE > FALSE) is detected at the input xClosed. 5) A rising edge (FALSE > TRUE) is detected at the output xHB. 6) A falling edge (TRUE > FALSE) is detected at the output xHB. After each rising edge on the full close feedback, the runtime is available at this output xClosed (FALSE > TRUE) the runtime is available.
Duration of the current opening / closing in tRunTime
During each run time measurement the current run time is available at this output.
Testing the functions of the fire damper (test mode)
Test mode is always generally triggered if at least one of the conditions described below is met:
1) A rising edge (FALSE > TRUE) is detected at the input xTestEx detected. 2) the active state (= TRUE) is detected at the setpoint / parameter xRunTest detected. The active state is immediately reset (= FALSE) after detection. However, the actual test mode only takes place if the feedback of the automatic mode eAOO (0 = Automatic, >0 = Manual) contains the value 0 and at the same time the operating mode of the manual override for the digital output xHB signals automatic operation (eMANBIN = eMANBIN.Auto). In test mode the fire damper is closed and then opened, each with runtime monitoring. At the start of the test mode the outputs xAlarmOpen, xAlarmClosed, tTestOpen, tTestClosed and xTestOK are reset (= FALSE). Now the control command for closing is triggered and the runtime is monitored for exceeding the maximum value tClosed monitored. If the correct feedback situation (xClosed = TRUE and xOpen = FALSE) is achieved without exceeding the maximum value, then the output xAlarmClosed is not activated (= FALSE). In all other situations the output xAlarmClosed is activated (= TRUE). Now the control command for opening is triggered and the runtime is monitored for exceeding the maximum value tOpen monitored. If the correct feedback situation (xOpen = TRUE and xClosed = FALSE) is achieved without exceeding the maximum value, then the output xAlarmOpen is not activated (= FALSE). In all other situations the output xAlarmOpen is activated (= TRUE). The result indicator for the fire damper test xTestOK is activated (= test successful) if neither of the two outputs xAlarmOpen or xAlarmClosed is active (= TRUE). The values achieved tLastOpen and tLastClosed are each placed on the outputs tTestOpen and tTestClosed and stored until the next fire damper test. The test mode ends automatically as soon as the fire damper check is completed.
Prerequisites
Prerequisite for the use of the function block FireDamperMot
The use of the TimeRead2 function block is required for correct operation.
CODESYS
InOut:
Input
xEn
BOOL
Input
xAlarmIn
BOOL
FALSE
Input
eAOO
eManBin
eManBin.Auto
Input
xOpen
BOOL
Input
xClosed
BOOL
Input
xQuit
BOOL
FALSE
Input
xTestEx
BOOL
FALSE
Input
xSmokeAlarm
BOOL
FALSE
Output
sLine1
STRING
Output
sLine2
STRING
Output
sText
STRING
Output
xHB
BOOL
Output
xAB
BOOL
Output
xAlarm
BOOL
Output
xAlarmOpen
BOOL
Output
xAlarmClosed
BOOL
Output
xTestOK
BOOL
Output
tLastOpen
TIME
Output
tLastClosed
TIME
Output
tTestOpen
TIME
Output
tTestClosed
TIME
Output
tRunTime
TIME
Output
xAuto
BOOL
Input Const
udiOpen
UDINT
150
Input Const
udiClose
UDINT
25
Input Const
eManModeB
eMANBIN
eMANBIN.Auto
Input Const
xRunTest
BOOL
FALSE
Input Const
sEditLine2
STRING
‘’
Input Const
sEditLine1
STRING
‘Room’
Last updated

