Sequence CMZ
// ########################### SEQUENCE CMZ ###########################
{region "Description Sequence CMZ"}
(*
The Sequence Constantly Monitored Zone (or ‘CMZ’) is similar to the TCMZ but
will contain only machine unsafe /fatal faults related to the individual step sequence.
*)
{endregion}
// Hardware Zone Fatal Fault (TCMZ)
fbErrorSetCtrl0.P_xAutoReset := TRUE;
aCmz[0] := fbErrorSetCtrl0.M_ErrorSet(xError := GVL_HwZone1.stHwzIf.xFatalFault, xReset:= GVL_Global.stGlobalIf.xFaultReset OR GVL_Sequence1_HMI.stHmiIf.xHmiPbFaultReset);
// Hardware Zone Gate Fortress Fault (TCMZ)
fbErrorSetCtrl1.P_xAutoReset := TRUE;
aCmz[1] := fbErrorSetCtrl1.M_ErrorSet(xError := GVL_HwZone1.stHwzIf.xGateFortressFaultTcmz, xReset:= GVL_Global.stGlobalIf.xFaultReset OR GVL_Sequence1_HMI.stHmiIf.xHmiPbFaultReset);
// CMZ: xCMZ_1 | CMZ 1
fbErrorSetCtrl2.P_xAutoReset := TRUE;
fbErrorSetCtrl2.P_timErrorDelay := T#1500MS;
aCmz[2] := fbErrorSetCtrl2.M_ErrorSet(xError := NOT GVL_Sequence1_CMZ.xCMZ_1, xReset:= GVL_Global.stGlobalIf.xFaultReset OR GVL_Sequence1_HMI.stHmiIf.xHmiPbFaultReset);
fbCmzFault(aFaultMatrix:= aCmz, xFaultActive => GVL_Sequence1.stSeqIf.xSeqCmzFault);
GVL_Sequence1.stSeqIf.xNoCMZFault := NOT GVL_Sequence1.stSeqIf.xSeqCmzFault;Zuletzt aktualisiert
War das hilfreich?

