Safety Considerations Guide for Triconex General ... - ICEWeb
Safety Considerations Guide for Triconex General ... - ICEWeb
Safety Considerations Guide for Triconex General ... - ICEWeb
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
90 Appendix C <strong>Safety</strong>-Critical Function Blocks<br />
MAX_TIME_SINGLE < T#0S OR<br />
MAX_SCAN_TIME < T#0S<br />
THEN<br />
ERROR := 1 ;<br />
ELSIF IO_ERROR 0 THEN<br />
ERROR := 2 ;<br />
ELSIF NOT SYSTEM.CO OR NOT MP.CO OR NOT MPX.CO THEN<br />
ERROR := 3 ;<br />
END_IF ;<br />
CO := ERROR = 0 ;<br />
IF CO THEN<br />
(* Summarize redundancy. *)<br />
TMR :=<br />
NOT IO_CO AND SYSTEM.TMR AND SYSTEM.IO_NO_VOTER_FLTS<br />
OR IO_CO AND MP.TMR AND IO_TMR<br />
;<br />
GE_DUAL :=<br />
NOT IO_CO AND SYSTEM.GE_DUAL AND SYSTEM.IO_NO_VOTER_FLTS<br />
OR IO_CO AND MP.GE_DUAL AND IO_GE_DUAL<br />
;<br />
GE_SINGLE :=<br />
NOT IO_CO AND SYSTEM.GE_SINGLE<br />
OR IO_CO AND IO_GE_SINGLE<br />
;<br />
(* Update timers. *)<br />
DUAL_TIME( IN := NOT TMR, PT := MAX_TIME_DUAL ) ;<br />
SINGLE_TIME( IN := NOT GE_DUAL, PT := MAX_TIME_SINGLE ) ;<br />
(* Shutdown if excessive time in degraded operation. *)<br />
OPERATING :=<br />
GE_SINGLE<br />
AND NOT DUAL_TIME.Q<br />
AND NOT SINGLE_TIME.Q<br />
;<br />
(* Output current status. *)<br />
DUAL := GE_DUAL AND NOT TMR ;<br />
SINGL := GE_SINGLE AND NOT GE_DUAL ;<br />
ZERO := NOT GE_SINGLE ;<br />
TIMER_RUNNING := OPERATING AND NOT TMR ;<br />
(* Output time remaining to shutdown. *)<br />
IF NOT OPERATING THEN<br />
TIME_LEFT := T#0s ;<br />
ELSIF TMR THEN<br />
TIME_LEFT := T#999999d ;<br />
ELSIF GE_DUAL OR MAX_TIME_DUAL-DUAL_TIME.ET MAX_SCAN_TIME ;<br />
<strong>Safety</strong> <strong>Considerations</strong> <strong>Guide</strong> <strong>for</strong> <strong>Triconex</strong> <strong>General</strong> Purpose v2 Systems