Started kuka robot integration with hardware
- Modified PackML state machine to be able to disable unused states - Added PackTag datatypes for recipe handling - Started recipe parameter description in json file - Added schema file for recipe json - Added state machine drawing for packml
This commit is contained in:
@@ -8,8 +8,23 @@ VAR
|
||||
_fbEtcher1 : FB_Etcher;
|
||||
_fbEtcher2 : FB_Etcher;
|
||||
|
||||
_stRobotCmd : ST_PMLc;
|
||||
|
||||
_xConfirmAlarms : BOOL;
|
||||
|
||||
_xClear : BOOL;
|
||||
_xReset : BOOL;
|
||||
_xStart : BOOL;
|
||||
|
||||
_stRobotStatus : ST_PMLs;
|
||||
_stRobotAdmin : ST_PMLa;
|
||||
|
||||
_xFirstCycle : BOOL := TRUE;
|
||||
|
||||
_stRecipeGripperChange : ST_PackMLRecipe := (
|
||||
diID := 0,
|
||||
sName := 'Change gripper'
|
||||
);
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
@@ -17,18 +32,52 @@ END_VAR
|
||||
_xFirstCycle := FALSE;
|
||||
END_IF
|
||||
|
||||
_fbRobot(xExecute:= , eCMD:= , eCurrentState=> , eCurrentCMD=> );
|
||||
IF _xClear THEN
|
||||
_xClear := FALSE;
|
||||
_stRobotCmd.eCntrlCmd := E_PackMLCmd.CLEAR;
|
||||
_stRobotCmd.xCmdChangeRequest := TRUE;
|
||||
END_IF
|
||||
|
||||
IF _xReset THEN
|
||||
_xReset := FALSE;
|
||||
_stRobotCmd.eCntrlCmd := E_PackMLCmd.RESET;
|
||||
_stRobotCmd.xCmdChangeRequest := TRUE;
|
||||
END_IF
|
||||
|
||||
IF _xStart THEN
|
||||
_xStart := FALSE;
|
||||
_stRobotCmd.eCntrlCmd := E_PackMLCmd.START;
|
||||
_stRobotCmd.xCmdChangeRequest := TRUE;
|
||||
END_IF
|
||||
|
||||
_fbRobot(
|
||||
stCommand:= _stRobotCmd,
|
||||
xReleaseAlarms:= TRUE,
|
||||
xConfirmAlarms:= _xConfirmAlarms,
|
||||
stStatus => _stRobotStatus,
|
||||
stAdmin => _stRobotAdmin,
|
||||
xReady=> ,
|
||||
xError=> );
|
||||
|
||||
IF _stRobotCmd.xCmdChangeRequest THEN
|
||||
_stRobotCmd.xCmdChangeRequest := FALSE;
|
||||
END_IF
|
||||
|
||||
_fbHVTester(xOpenChambers:= GVL_SCADA.xOpenAllChambers);
|
||||
|
||||
_fbEtcher1(xOpenDoor:= GVL_SCADA.xOpenAllChambers);
|
||||
_fbEtcher2(xOpenDoor:= GVL_SCADA.xOpenAllChambers);
|
||||
|
||||
|
||||
// Call safety program
|
||||
PRG_Safety(xConfirmAlarms := GVL_SCADA.xErrAck);
|
||||
|
||||
// Reset alarm reset request
|
||||
GVL_SCADA.xErrAck := FALSE;]]></ST>
|
||||
GVL_SCADA.xErrAck := FALSE;
|
||||
|
||||
IF _xConfirmAlarms THEN
|
||||
_xConfirmAlarms := FALSE;
|
||||
END_IF]]></ST>
|
||||
</Implementation>
|
||||
</POU>
|
||||
</TcPlcObject>
|
||||
Reference in New Issue
Block a user