Fixed aligner and started main state machine

- Fixed datatype for received offsets
- Added HMI Interface for Hot and Coolplate
This commit is contained in:
2026-02-06 14:39:41 +01:00
parent c1850f780b
commit bdaaf1fe9f
13 changed files with 295 additions and 4599 deletions

View File

@@ -115,7 +115,9 @@ _fbTrayFeederInput(
stStatus=> GVL_SCADA.stTrayFeederInputState,
stAdmin=> GVL_SCADA.stTRayFeederInputAdmin);
_fbHeatCoolPlates(xConfirmAlarms:= GVL_SCADA.xErrAck);
_fbHeatCoolPlates(
stHMIInterface := GVL_SCADA.stHCPlatesHMIInterface,
xConfirmAlarms:= GVL_SCADA.xErrAck);
_fbAligner(stCommand:= , stStatus=> , stAdmin=> , xConfirmAlarms:= GVL_SCADA.xErrAck);
@@ -313,6 +315,70 @@ CASE _iState OF
_fbRobot.xAckPLCCmd := TRUE;
_iState := 0;
END_IF
E_KukaRobot_JobNumerPLC.UNLOCK_CHUCK_ETCHER1:
_fbEtcher1.xOpenChuckClamp := TRUE;
// Check FOR timeout
_tonTimeout(IN := TRUE, PT := T#10S);
IF _tonTimeout.Q THEN
_fbRobot.xAckPLCCmd := TRUE;
_fbRobot.xPLCJobFailed := TRUE;
_iState := 0;
END_IF
IF _fbEtcher1.xChuckClampOpen THEN
_fbRobot.xAckPLCCmd := TRUE;
_iState := 0;
END_IF
E_KukaRobot_JobNumerPLC.LOCK_CHUCK_ETCHER1:
_fbEtcher1.xOpenChuckClamp := FALSE;
// Check FOR timeout
_tonTimeout(IN := TRUE, PT := T#10S);
IF _tonTimeout.Q THEN
_fbRobot.xAckPLCCmd := TRUE;
_fbRobot.xPLCJobFailed := TRUE;
_iState := 0;
END_IF
IF (NOT _fbEtcher1.xChuckClampOpen) THEN
_fbRobot.xAckPLCCmd := TRUE;
_iState := 0;
END_IF
E_KukaRobot_JobNumerPLC.UNLOCK_CHUCK_ETCHER2:
_fbEtcher2.xOpenChuckClamp := TRUE;
// Check FOR timeout
_tonTimeout(IN := TRUE, PT := T#10S);
IF _tonTimeout.Q THEN
_fbRobot.xAckPLCCmd := TRUE;
_fbRobot.xPLCJobFailed := TRUE;
_iState := 0;
END_IF
IF _fbEtcher2.xChuckClampOpen THEN
_fbRobot.xAckPLCCmd := TRUE;
_iState := 0;
END_IF
E_KukaRobot_JobNumerPLC.LOCK_CHUCK_ETCHER2:
_fbEtcher2.xOpenChuckClamp := FALSE;
// Check FOR timeout
_tonTimeout(IN := TRUE, PT := T#10S);
IF _tonTimeout.Q THEN
_fbRobot.xAckPLCCmd := TRUE;
_fbRobot.xPLCJobFailed := TRUE;
_iState := 0;
END_IF
IF (NOT _fbEtcher2.xChuckClampOpen) THEN
_fbRobot.xAckPLCCmd := TRUE;
_iState := 0;
END_IF
ELSE
_iState := 90;