Beckhoff Sistema Library File

PROGRAM SAFETY_VALIDATION VAR // Emergency Stop safety chain fbEStop : FB_Sistema_Channel; eStop_MTTFd : UINT := 150; // Years per channel eStop_DC : REAL := 0.99; // 99% diagnostic coverage eStop_CCF : UINT := 85; // CCF score ( >=65 = sufficient) eStop_Result : ST_Sistema_Result; END_VAR Use the ST_Sistema_Config structure to define your safety category:

stConfig.Category := SISTEMA_CATEGORY.CAT_3; // Category 3 architecture stConfig.MTTFd_Channel_A := eStop_MTTFd; stConfig.MTTFd_Channel_B := eStop_MTTFd; stConfig.DC_Avg := eStop_DC; stConfig.CCF_Score := eStop_CCF; stConfig.Nop := 1; // Number of operations per year (for MTTFd calculation) Call the function block cyclically or on-demand: beckhoff sistema library

PROGRAM Main VAR fbSistema_PLr : FB_Sistema_PLr; // For required PL calculation fbSistema_EStop : FB_Sistema_Channel; rRequiredPL : SISTEMA_PL; eStopResult : ST_Sistema_Result; bMachineAllowed : BOOL; END_VAR // Calculate Required PL based on risk assessment fbSistema_PLr( Severity := SEVERITY.SEVERE, // S2 Frequency := FREQ.LESS_THAN_1_HOUR, // F2 PossibilityOfAvoidance := AVOID.IMPOSSIBLE // P2 ); rRequiredPL := fbSistema_PLr.PLr; // Returns PLr = e PROGRAM SAFETY_VALIDATION VAR // Emergency Stop safety chain

Много интересного в канале автора в Telegram →
This is default text for notification bar