Linked all tank sensors in media cabinet
- Additional fixes for the hmi
This commit is contained in:
@@ -41,13 +41,13 @@
|
||||
</Io>
|
||||
</Project>
|
||||
<Mappings>
|
||||
<MappingInfo Identifier="{00000000-2001-0850-0020-500840000403}" Id="#x02030050"/>
|
||||
<MappingInfo Identifier="{00000000-2001-0850-0020-500840000403}" Id="#x02030080"/>
|
||||
<MappingInfo Identifier="{00000000-2001-0850-0020-500851000403}" Id="#x02030040"/>
|
||||
<MappingInfo Identifier="{00000000-2001-0850-0020-500890000403}" Id="#x02030080"/>
|
||||
<MappingInfo Identifier="{00000000-2001-0850-0020-5008B0000403}" Id="#x02030070"/>
|
||||
<MappingInfo Identifier="{00000000-2001-0850-0020-500890000403}" Id="#x02030060"/>
|
||||
<MappingInfo Identifier="{00000000-2001-0850-0020-5008B0000403}" Id="#x02030050"/>
|
||||
<MappingInfo Identifier="{00000000-0010-0304-3000-040310000403}" Id="#x02030010"/>
|
||||
<MappingInfo Identifier="{00000000-0020-0304-3000-040322000403}" Id="#x02030030"/>
|
||||
<MappingInfo Identifier="{05000010-2001-0850-3000-040300205008}" Id="#x02030060" Watchdog="10000000040000000400000004000000"/>
|
||||
<MappingInfo Identifier="{05000010-2001-0850-3000-040300205008}" Id="#x02030070" Watchdog="10000000040000000400000004000000"/>
|
||||
<MappingInfo Identifier="{03040050-0050-0304-5000-040350000403}" Id="#x02030020" Watchdog="04000000040000000400000004000000"/>
|
||||
</Mappings>
|
||||
</TcSmProject>
|
||||
|
||||
@@ -17,6 +17,10 @@ VAR
|
||||
_fbCoolplate : FB_Coolplate;
|
||||
_fbHVTesterHot : FB_HVTester;
|
||||
_fbHVTesterCold : FB_HVTester;
|
||||
_fbMediaCabinet : FB_MediaCabinet;
|
||||
|
||||
_fbModbusMaster : FB_ModbusMaster;
|
||||
_fbFlowSensor : FB_Levi_LFC6IO;
|
||||
//_fbInput : FB_Input;
|
||||
//_fbNOK : FB_NOK;
|
||||
//_fbTrayFeederOutput : FB_TrayFeeder(sIPAddr := '192.168.1.11', udiPort := 5000);
|
||||
@@ -25,6 +29,7 @@ VAR
|
||||
// =======================
|
||||
// DEBUG AND TESTING STUFF
|
||||
// =======================
|
||||
_xReadFullScale : BOOL;
|
||||
|
||||
_xReleaseAlarms : BOOL;
|
||||
_stRobotCmd : ST_PMLc;
|
||||
@@ -109,6 +114,12 @@ _fbCoolplate(stHMIInterface := GVL_SCADA.stMachine.stCoolplate);
|
||||
|
||||
_fbAligner(stCommand:= , stStatus=> , stAdmin=> , xConfirmAlarms:= GVL_SCADA.stMachine.stConfirmAlarmsBtn.xRequest, stHMIInterface := GVL_SCADA.stMachine.stAligner);
|
||||
|
||||
_fbMediaCabinet(
|
||||
xReleaseManualMode := TRUE,
|
||||
xReleaseErrors := _xReleaseAlarms,
|
||||
xConfirmAlarms := GVL_SCADA.stMachine.stConfirmAlarmsBtn.xRequest,
|
||||
stHMIInterface := GVL_SCADA.stMachine.stMediaCabinet);
|
||||
|
||||
|
||||
// Call safety program
|
||||
PRG_Safety(
|
||||
@@ -118,6 +129,23 @@ PRG_Safety(
|
||||
// Handle robot cmds
|
||||
M_HandleRobotCmd();
|
||||
|
||||
// DEBUG
|
||||
//_fbModbusMaster();
|
||||
// IF _xReadFullScale THEN
|
||||
// _xReadFullScale := FALSE;
|
||||
//
|
||||
// _fbFlowSensor(
|
||||
// byBaseAddr:= ,
|
||||
// xReleaseAlarms:= ,
|
||||
// xConfirmAlarms:= ,
|
||||
// fbMBMaster:= ,
|
||||
// rCurrFlowrate=> ,
|
||||
// xBusy=> ,
|
||||
// xDone=> ,
|
||||
// xError=> );
|
||||
// END_IF
|
||||
|
||||
|
||||
// Main state machine
|
||||
CASE _iState OF
|
||||
0: // Idle
|
||||
|
||||
@@ -22,6 +22,10 @@ VAR
|
||||
xLEDMachineOn AT %Q* : BOOL;
|
||||
xLEDMachineOff AT %Q* : BOOL;
|
||||
|
||||
xLockMediaDoor1 AT %Q* : BOOL := TRUE;
|
||||
xLockMediaDoor2 AT %Q* : BOOL := TRUE;
|
||||
xLockMediaDoor3 AT %Q* : BOOL := TRUE;
|
||||
|
||||
_rtDoorUnlock : R_TRIG;
|
||||
_tofErrorAck : TOF;
|
||||
|
||||
|
||||
@@ -39,6 +39,8 @@ STRUCT
|
||||
stHVTesterCold : ST_HMI_HVTester;
|
||||
stTrayFeederOut : ST_HMI_TrayFeeder;
|
||||
stNOK : ST_HMI_NOK;
|
||||
|
||||
stMediaCabinet : ST_HMI_MediaCabinet;
|
||||
END_STRUCT
|
||||
END_TYPE
|
||||
]]></Declaration>
|
||||
|
||||
@@ -90,7 +90,7 @@ _fbValveDoor(
|
||||
xAutomaticOpen:= xOpenDoor,
|
||||
xReleaseErrors:= xReleaseAlarms,
|
||||
stValveConfig:= _stValveDoorCfg,
|
||||
xReleaseManualMode:= FALSE,
|
||||
xReleaseManualMode:= xReleaseManualMode,
|
||||
xConfirmAlarms:= xConfirmAlarms,
|
||||
stHMIInterface:= stHMIInterface.stDoorValve);
|
||||
|
||||
|
||||
@@ -90,6 +90,8 @@ _fbPWMOut(
|
||||
xOutput=> xEnableHotplate);
|
||||
|
||||
SUPER^(stPackMLHMIInterface := stHMIInterface.stStationCmds);
|
||||
|
||||
M_HandleHMIOutput();
|
||||
]]></ST>
|
||||
</Implementation>
|
||||
<Action Name="A_HandleHMIInput" Id="{d22cec08-4a88-4001-b04b-e7a9775ff9a8}">
|
||||
@@ -101,6 +103,20 @@ END_IF
|
||||
|
||||
IF stHMIInterface.stSetpoint.rValue < 0.0 THEN
|
||||
stHMIInterface.stSetpoint.rValue := 0.0;
|
||||
END_IF
|
||||
|
||||
IF stHMIInterface.stEnableBtn.xRequest THEN
|
||||
stHMIInterface.stEnableBtn.xRequest := FALSE;
|
||||
IF stHMIInterface.stEnableBtn.xRelease THEN
|
||||
_xEnable := TRUE;
|
||||
END_IF
|
||||
END_IF
|
||||
|
||||
IF stHMIInterface.stDisableBtn.xRequest THEN
|
||||
stHMIInterface.stDisableBtn.xRequest := FALSE;
|
||||
IF stHMIInterface.stDisableBtn.xRelease THEN
|
||||
_xEnable := FALSE;
|
||||
END_IF
|
||||
END_IF]]></ST>
|
||||
</Implementation>
|
||||
</Action>
|
||||
@@ -128,5 +144,23 @@ END_VAR
|
||||
<ST><![CDATA[]]></ST>
|
||||
</Implementation>
|
||||
</Method>
|
||||
<Method Name="M_HandleHMIOutput" Id="{64dfce9b-801c-40e9-9327-9ba9e736e727}">
|
||||
<Declaration><![CDATA[METHOD PRIVATE M_HandleHMIOutput
|
||||
VAR_INPUT
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[stHMIInterface.stEnableBtn.xRelease := (NOT _xEnable);
|
||||
IF _xEnable THEN
|
||||
stHMIInterface.stEnableBtn.eFeedback := 1;
|
||||
stHMIInterface.stDisableBtn.eFeedback := 0;
|
||||
ELSE
|
||||
stHMIInterface.stDisableBtn.eFeedback := 1;
|
||||
stHMIInterface.stEnableBtn.eFeedback := 0;
|
||||
END_IF
|
||||
|
||||
stHMIInterface.stDisableBtn.xRelease := _xEnable;]]></ST>
|
||||
</Implementation>
|
||||
</Method>
|
||||
</POU>
|
||||
</TcPlcObject>
|
||||
@@ -460,7 +460,7 @@ END_VAR]]></Declaration>
|
||||
0:
|
||||
_byGripperSideNrCalc := M_CalcGripperNr(_stJobParams.byGripperNumber);
|
||||
|
||||
IF (_stJobParams.byGripperNumber > 3) // Wrong gripper number
|
||||
IF (_stJobParams.byGripperNumber > 4) // Wrong gripper number
|
||||
//OR (_stJobParams.byChuckNumber < 1) OR (_stJobParams.byChuckNumber > 6) // Wrong chuck number
|
||||
OR (_byGripperSideNrCalc < 1) OR (_byGripperSideNrCalc > 6) // Wrong gripper side
|
||||
THEN
|
||||
@@ -470,9 +470,9 @@ END_VAR]]></Declaration>
|
||||
END_IF
|
||||
|
||||
// BLOCKIERE GREIFER TAUSCH, DA AKTUELL KABEL DEFEKT !!!!!
|
||||
IF _stJobParams.eJob = E_KukaRobot_JobNumberRobot.CHANGE_GRIPPER THEN
|
||||
_eCmd := E_PackMLCmd.ABORT;;
|
||||
END_IF
|
||||
// IF _stJobParams.eJob = E_KukaRobot_JobNumberRobot.CHANGE_GRIPPER THEN
|
||||
// _eCmd := E_PackMLCmd.ABORT;;
|
||||
// END_IF
|
||||
|
||||
// Transfer job data to robot
|
||||
10:
|
||||
@@ -496,16 +496,16 @@ END_VAR]]></Declaration>
|
||||
END_IF
|
||||
|
||||
// Position on hotplate
|
||||
abyToolsAndPositions[2] := stJobParams.byPlaceOnHotplate;
|
||||
abyToolsAndPositions[2] := _stJobParams.byPlaceOnHotplate;
|
||||
|
||||
// Position on coolplate
|
||||
abyToolsAndPositions[3] := stJobParams.byPlaceOnCoolPlate;
|
||||
abyToolsAndPositions[3] := _stJobParams.byPlaceOnCoolPlate;
|
||||
|
||||
// Gripper number
|
||||
abyToolsAndPositions[0] := stJobParams.byGripperNumber;
|
||||
abyToolsAndPositions[0] := _stJobParams.byGripperNumber;
|
||||
|
||||
// Chuck for etcher to load
|
||||
abyToolsAndPositions[1] := stJobParams.byChuckNumber;
|
||||
abyToolsAndPositions[1] := _stJobParams.byChuckNumber;
|
||||
|
||||
// Safety reset timout fb
|
||||
_tonTimeout(IN := FALSE);
|
||||
@@ -516,10 +516,10 @@ END_VAR]]></Declaration>
|
||||
15:
|
||||
_tonTimeout(IN := TRUE, PT := T#5S);
|
||||
|
||||
IF abyMirrorToolsAndPositions[0] = stJobParams.byGripperNumber
|
||||
AND abyMirrorToolsAndPositions[1] = stJobParams.byChuckNumber
|
||||
AND abyMirrorToolsAndPositions[2] = stJobParams.byPlaceOnHotplate
|
||||
AND abyMirrorToolsAndPositions[3] = stJobParams.byPlaceOnCoolPlate
|
||||
IF abyMirrorToolsAndPositions[0] = _stJobParams.byGripperNumber
|
||||
AND abyMirrorToolsAndPositions[1] = _stJobParams.byChuckNumber
|
||||
AND abyMirrorToolsAndPositions[2] = _stJobParams.byPlaceOnHotplate
|
||||
AND abyMirrorToolsAndPositions[3] = _stJobParams.byPlaceOnCoolPlate
|
||||
THEN
|
||||
_tonTimeout(IN := FALSE);
|
||||
_iSSM := 20;
|
||||
|
||||
36
PLC/01_Stationen/MediaStation/DUTs/ST_HMI_MediaCabinet.TcDUT
Normal file
36
PLC/01_Stationen/MediaStation/DUTs/ST_HMI_MediaCabinet.TcDUT
Normal file
@@ -0,0 +1,36 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1">
|
||||
<DUT Name="ST_HMI_MediaCabinet" Id="{531277fd-be49-4a36-8089-70f1b95b2250}">
|
||||
<Declaration><![CDATA[TYPE ST_HMI_MediaCabinet :
|
||||
STRUCT
|
||||
// (1) Acetic acid 99%
|
||||
stTankAceticAcidHigh : ST_HMI_Tank;
|
||||
|
||||
// (2) Sulfuric acid
|
||||
stTankSulfuricAcid : ST_HMI_Tank;
|
||||
|
||||
// (3) Nitric acid 65% mixing
|
||||
stTankNitricAcid : ST_HMI_Tank;
|
||||
|
||||
// (4) Acetic acid 10%
|
||||
stTankAceticAcidLow : ST_HMI_Tank;
|
||||
|
||||
// (5) Hydrofluoric acid 40%
|
||||
stTankHydrofluoricAcid : ST_HMI_Tank;
|
||||
|
||||
// (6) Sulfuric acid mixing
|
||||
stTankSulfuricAcidMixing : ST_HMI_Tank;
|
||||
|
||||
// (7) Hydrofluoric acid 40% for mixing
|
||||
stTankHydrofluoricAcidMixing : ST_HMI_Tank;
|
||||
|
||||
// (8) SEF
|
||||
stTankSEF : ST_HMI_Tank;
|
||||
|
||||
// (9) Filmetch
|
||||
stTankFilmetch : ST_HMI_Tank;
|
||||
END_STRUCT
|
||||
END_TYPE
|
||||
]]></Declaration>
|
||||
</DUT>
|
||||
</TcPlcObject>
|
||||
@@ -3,10 +3,14 @@
|
||||
<DUT Name="ST_HMI_Tank" Id="{65129234-1803-4176-b0ff-e2e1212dc4a3}">
|
||||
<Declaration><![CDATA[TYPE ST_HMI_Tank :
|
||||
STRUCT
|
||||
stWaterValve : ST_HMI_VALVE_DATA;
|
||||
stFillingValve : ST_HMI_VALVE_DATA;
|
||||
stDrainValve : ST_HMI_VALVE_DATA;
|
||||
stPumpValve : ST_HMI_VALVE_DATA;
|
||||
|
||||
stEmptyButton : ST_HMI_CONTROL_BUTTON;
|
||||
stFillButton : ST_HMI_CONTROL_BUTTON;
|
||||
|
||||
xOverfull : BOOL;
|
||||
xFull : BOOL;
|
||||
xEmpty : BOOL;
|
||||
|
||||
@@ -1,164 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1">
|
||||
<POU Name="FB_Levi_Flowsensor" Id="{650b4e84-15bc-4cc6-bda5-d5ab333779ee}" SpecialFunc="None">
|
||||
<Declaration><![CDATA[FUNCTION_BLOCK FB_Levi_LFC6IO
|
||||
VAR_INPUT
|
||||
// Base station address
|
||||
byBaseAddr : BYTE;
|
||||
|
||||
xReleaseAlarms : BOOL;
|
||||
xConfirmAlarms : BOOL;
|
||||
END_VAR
|
||||
VAR_IN_OUT
|
||||
// Modbus master comm fb
|
||||
fbMBMaster : ModbusRtuMasterV2_KL6x22B;
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
// Current flowrate in ml/min
|
||||
rCurrFlowrate : ARRAY[0..5] OF REAL;
|
||||
|
||||
xBusy : BOOL;
|
||||
xDone : BOOL;
|
||||
xError : BOOL;
|
||||
END_VAR
|
||||
VAR
|
||||
// Full scale value of all channels in ml/min
|
||||
_dwFullScale : DWORD;
|
||||
|
||||
// Channel data
|
||||
_astChannelData : ARRAY[0..5] OF ST_Levi_ChData;
|
||||
|
||||
// Temporary data storage for writing settings
|
||||
_awTempData : ARRAY[0..1] OF WORD;
|
||||
|
||||
// State machine state
|
||||
_iState : INT;
|
||||
|
||||
// Internal commands
|
||||
_eCmd : (NONE, SET_FULL_SCALE, );
|
||||
END_VAR
|
||||
VAR CONSTANT
|
||||
REG_SET_MODE : WORD := 0;
|
||||
REG_FULL_SCALE : WORD := 2;
|
||||
REG_CH_DATA : WORD := 0;
|
||||
END_VAR]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[CASE _iState OF
|
||||
// Wait for Modbus master to be ready
|
||||
0:
|
||||
IF (NOT fbMBMaster.BUSY)THEN
|
||||
// Get full scale value for later flow calculation
|
||||
fbMBMaster.UnitID := byBaseAddr;
|
||||
fbMBMaster.MBAddr := REG_FULL_SCALE;
|
||||
fbMBMaster.Quantity := 2;
|
||||
fbMBMaster.cbLength := SIZEOF(_dwFullScale);
|
||||
fbMBMaster.pMemoryAddr := ADR(_dwFullScale);
|
||||
|
||||
_iState := 10;
|
||||
END_IF
|
||||
|
||||
|
||||
// Wait for reading done
|
||||
10:
|
||||
fbMBMaster.ReadRegs();
|
||||
|
||||
IF (NOT fbMBMaster.BUSY) THEN
|
||||
_iState := 20;
|
||||
END_IF
|
||||
|
||||
IF fbMBMaster.Error THEN
|
||||
_iState := 900;
|
||||
END_IF
|
||||
|
||||
// Poll channel data
|
||||
20:
|
||||
IF THEN
|
||||
fbMBMaster.UnitID := byBaseAddr;
|
||||
fbMBMaster.MBAddr := REG_CH_DATA;
|
||||
fbMBMaster.Quantity := 24;
|
||||
fbMBMaster.cbLength := SIZEOF(_astChannelData);
|
||||
fbMBMaster.pMemoryAddr := ADR(_astChannelData);
|
||||
|
||||
// Call once to set MB Master to busy
|
||||
fbMBMaster.ReadInputRegs();
|
||||
|
||||
_iState := 21;
|
||||
ELSIF (_eCmd <> NONE) AND (NOT fbMBMaster.BUSY) THEN
|
||||
_iState := 30;
|
||||
END_IF
|
||||
|
||||
// Wait for response
|
||||
21:
|
||||
fbMBMaster.ReadInputRegs();
|
||||
|
||||
IF (NOT fbMBMaster.BUSY) THEN
|
||||
// Calculate output flowrates
|
||||
M_CalcOutputData();
|
||||
_iState := 20;
|
||||
END_IF
|
||||
|
||||
IF fbMBMaster.Error THEN
|
||||
_iState := 900;
|
||||
END_IF
|
||||
|
||||
// Command handling -> Set mode
|
||||
30:
|
||||
// Set bit 1 to 1 for Set Mode
|
||||
_awTempData[0] := 2#10;
|
||||
|
||||
fbMBMaster.UnitID := byBaseAddr;
|
||||
fbMBMaster.MBAddr := REG_SET_MODE;
|
||||
fbMBMaster.Quantity := 1;
|
||||
fbMBMaster.cbLength := 2;
|
||||
fbMBMaster.pMemoryAddr := ADR(_awTempData[0]);
|
||||
|
||||
// Error state
|
||||
900:
|
||||
IF xConfirmAlarms THEN
|
||||
xError := FALSE;
|
||||
_iState := 0;
|
||||
END_IF
|
||||
END_CASE]]></ST>
|
||||
</Implementation>
|
||||
<Method Name="M_CalcOutputData" Id="{5b932e1a-1437-4032-adb5-2eae4b98574c}">
|
||||
<Declaration><![CDATA[METHOD PRIVATE M_CalcOutputData
|
||||
VAR
|
||||
i : int;
|
||||
END_VAR]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[FOR i := 0 TO 5 DO
|
||||
// Current flowrate from channel data is in % of full scale (-30.000 ~ 30.000 => (-300 ~ +300) %
|
||||
// _Full scale is in l/min but scaling is as followed: 10 ~ 500000 => (0.010 ~ 500) l/min => (10 ~ 500.000) ml/min
|
||||
// Result is in ml/min
|
||||
rCurrFlowrate[i] := (SINT_TO_REAL(_astChannelData[i].siCurrFlow) * DWORD_TO_REAL(_dwFullScale)) / 10_000;
|
||||
END_FOR
|
||||
]]></ST>
|
||||
</Implementation>
|
||||
</Method>
|
||||
<Method Name="M_ReadSensorData" Id="{2cd73435-5e66-4519-8bdc-106eb3093539}">
|
||||
<Declaration><![CDATA[METHOD M_ReadSensorData : BOOL
|
||||
VAR_INPUT
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[IF xBusy THEN
|
||||
M_ReadSensorData := FALSE;
|
||||
RETURN;
|
||||
END_IF
|
||||
|
||||
]]></ST>
|
||||
</Implementation>
|
||||
</Method>
|
||||
<Method Name="M_SetFullScale" Id="{ee32b999-71fe-4e16-ab8c-09e92e1f41ef}">
|
||||
<Declaration><![CDATA[METHOD M_SetFullScale : BOOL
|
||||
VAR_INPUT
|
||||
// Full scale in ml/min
|
||||
siFullScale : SINT;
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[]]></ST>
|
||||
</Implementation>
|
||||
</Method>
|
||||
</POU>
|
||||
</TcPlcObject>
|
||||
248
PLC/01_Stationen/MediaStation/FB_Levi_LFC6IO.TcPOU
Normal file
248
PLC/01_Stationen/MediaStation/FB_Levi_LFC6IO.TcPOU
Normal file
@@ -0,0 +1,248 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TcPlcObject Version="1.1.0.1">
|
||||
<POU Name="FB_Levi_LFC6IO" Id="{650b4e84-15bc-4cc6-bda5-d5ab333779ee}" SpecialFunc="None">
|
||||
<Declaration><![CDATA[FUNCTION_BLOCK FB_Levi_LFC6IO
|
||||
VAR_INPUT
|
||||
// Base station address
|
||||
byBaseAddr : BYTE;
|
||||
|
||||
xReleaseAlarms : BOOL;
|
||||
xConfirmAlarms : BOOL;
|
||||
END_VAR
|
||||
VAR_IN_OUT
|
||||
// Modbus master comm fb
|
||||
fbMBMaster : FB_ModbusMaster;
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
// Current flowrate in ml/min
|
||||
rCurrFlowrate : ARRAY[0..5] OF REAL;
|
||||
|
||||
xBusy : BOOL;
|
||||
xDone : BOOL;
|
||||
xError : BOOL;
|
||||
END_VAR
|
||||
VAR
|
||||
// Full scale value of all channels in ml/min
|
||||
_dwFullScale : DWORD := 4000;
|
||||
|
||||
// Channel data
|
||||
_astChannelData : ARRAY[0..5] OF ST_Levi_ChData;
|
||||
|
||||
// Temporary data storage for writing settings
|
||||
_awTempData : ARRAY[0..1] OF WORD;
|
||||
|
||||
// Start waiting for response
|
||||
_xExecute : BOOL;
|
||||
|
||||
_xReady : BOOL;
|
||||
_xError : BOOL;
|
||||
|
||||
// Request data
|
||||
_stModbusData : ST_Modbus_Req;
|
||||
_xMBDone : BOOL;
|
||||
_xMBError : BOOL;
|
||||
|
||||
// State machine state
|
||||
_iState : INT;
|
||||
END_VAR
|
||||
VAR CONSTANT
|
||||
REG_SET_MODE : WORD := 0;
|
||||
REG_FULL_SCALE : WORD := 2;
|
||||
REG_CH_DATA : WORD := 0;
|
||||
END_VAR]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[CASE _iState OF
|
||||
// Idle
|
||||
0:
|
||||
IF _xExecute THEN
|
||||
_xExecute := FALSE;
|
||||
|
||||
_iState := 10;
|
||||
END_IF
|
||||
|
||||
// Wait for reading done
|
||||
10:
|
||||
IF _xMBDone THEN
|
||||
_xReady := TRUE;
|
||||
xBusy := FALSE;
|
||||
xDone := TRUE;
|
||||
_iState := 0;
|
||||
END_IF
|
||||
|
||||
IF _xMBError THEN
|
||||
_iState := 900;
|
||||
END_IF
|
||||
|
||||
// Error state
|
||||
900:
|
||||
xDone := FALSE;
|
||||
xBusy := FALSE;
|
||||
xError := TRUE;
|
||||
|
||||
_iState := 901;
|
||||
|
||||
// Wait for reset
|
||||
901:
|
||||
IF xConfirmAlarms THEN
|
||||
_xReady := TRUE;
|
||||
xError := FALSE;
|
||||
_iState := 0;
|
||||
END_IF
|
||||
END_CASE
|
||||
|
||||
// Calculate output data
|
||||
M_CalcOutputData();]]></ST>
|
||||
</Implementation>
|
||||
<Method Name="M_CalcOutputData" Id="{5b932e1a-1437-4032-adb5-2eae4b98574c}">
|
||||
<Declaration><![CDATA[METHOD PRIVATE M_CalcOutputData
|
||||
VAR
|
||||
i : int;
|
||||
END_VAR]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[FOR i := 0 TO 5 DO
|
||||
// Current flowrate from channel data is in % of full scale (-30.000 ~ 30.000 => (-300 ~ +300) %
|
||||
// _Full scale is in l/min but scaling is as followed: 10 ~ 500000 => (0.010 ~ 500) l/min => (10 ~ 500.000) ml/min
|
||||
// Result is in ml/min
|
||||
rCurrFlowrate[i] := (SINT_TO_REAL(_astChannelData[i].siCurrFlow) * DWORD_TO_REAL(_dwFullScale)) / 10_000;
|
||||
END_FOR
|
||||
]]></ST>
|
||||
</Implementation>
|
||||
</Method>
|
||||
<Method Name="M_DisableSetMode" Id="{f89e844d-3a6f-40d7-9da3-bae450f616ea}">
|
||||
<Declaration><![CDATA[METHOD M_DisableSetMode : BOOL
|
||||
VAR_INPUT
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[IF _xReady THEN
|
||||
M_StartExec();
|
||||
|
||||
// Prepare value to write
|
||||
_awTempData[0] := 0;
|
||||
_awTempData[1] := 0;
|
||||
|
||||
_stModbusData.bySlaveAddr := byBaseAddr;
|
||||
_stModbusData.eCmd := E_Modbus_Cmd.WRITE_HOLDING;
|
||||
_stModbusData.pvData := ADR(_awTempData);
|
||||
_stModbusData.pxDone := ADR(_xMBDone);
|
||||
_stModbusData.pxError := ADR(_xMBError);
|
||||
_stModbusData.wDataSize := SIZEOF(_awTempData[0]);
|
||||
_stModbusData.wQuantity := 1;
|
||||
_stModbusData.wStartAddr := REG_SET_MODE;
|
||||
|
||||
fbMBMaster.M_Enqueue(stReq := _stModbusData);
|
||||
END_IF]]></ST>
|
||||
</Implementation>
|
||||
</Method>
|
||||
<Method Name="M_EnableSetMode" Id="{de18b8f5-be31-468c-a5e8-49fab953c64b}">
|
||||
<Declaration><![CDATA[METHOD M_EnableSetMode : BOOL
|
||||
VAR_INPUT
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[IF _xReady THEN
|
||||
M_StartExec();
|
||||
|
||||
// Prepare value to write
|
||||
_awTempData[0] := 2#10;
|
||||
_awTempData[1] := 0;
|
||||
|
||||
_stModbusData.bySlaveAddr := byBaseAddr;
|
||||
_stModbusData.eCmd := E_Modbus_Cmd.WRITE_HOLDING;
|
||||
_stModbusData.pvData := ADR(_awTempData);
|
||||
_stModbusData.pxDone := ADR(_xMBDone);
|
||||
_stModbusData.pxError := ADR(_xMBError);
|
||||
_stModbusData.wDataSize := SIZEOF(_awTempData[0]);
|
||||
_stModbusData.wQuantity := 1;
|
||||
_stModbusData.wStartAddr := REG_SET_MODE;
|
||||
|
||||
fbMBMaster.M_Enqueue(stReq := _stModbusData);
|
||||
END_IF]]></ST>
|
||||
</Implementation>
|
||||
</Method>
|
||||
<Method Name="M_PollSensorData" Id="{95195e13-015b-491e-bb17-770ecd95cc2e}">
|
||||
<Declaration><![CDATA[METHOD M_PollSensorData : BOOL;
|
||||
VAR_INPUT
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[IF _xReady THEN
|
||||
M_StartExec();
|
||||
|
||||
_stModbusData.bySlaveAddr := byBaseAddr;
|
||||
_stModbusData.eCmd := E_Modbus_Cmd.READ_INPUTS;
|
||||
_stModbusData.pvData := ADR(_astChannelData);
|
||||
_stModbusData.pxDone := ADR(_xMBDone);
|
||||
_stModbusData.pxError := ADR(_xMBError);
|
||||
_stModbusData.wDataSize := SIZEOF(_astChannelData);
|
||||
_stModbusData.wQuantity := 24;
|
||||
_stModbusData.wStartAddr := REG_CH_DATA;
|
||||
|
||||
fbMBMaster.M_Enqueue(stReq := _stModbusData);
|
||||
END_IF
|
||||
]]></ST>
|
||||
</Implementation>
|
||||
</Method>
|
||||
<Method Name="M_ReadFullScale" Id="{14c84036-88ce-4b20-9f11-8cae269c566f}">
|
||||
<Declaration><![CDATA[METHOD M_ReadFullScale : BOOL
|
||||
VAR_INPUT
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[IF _xReady THEN
|
||||
M_StartExec();
|
||||
|
||||
_stModbusData.bySlaveAddr := byBaseAddr;
|
||||
_stModbusData.eCmd := E_Modbus_Cmd.READ_HOLDING;
|
||||
_stModbusData.pvData := ADR(_dwFullScale);
|
||||
_stModbusData.pxDone := ADR(_xMBDone);
|
||||
_stModbusData.pxError := ADR(_xMBError);
|
||||
_stModbusData.wDataSize := SIZEOF(_dwFullScale);
|
||||
_stModbusData.wQuantity := 2;
|
||||
_stModbusData.wStartAddr := REG_FULL_SCALE;
|
||||
|
||||
fbMBMaster.M_Enqueue(stReq := _stModbusData);
|
||||
END_IF]]></ST>
|
||||
</Implementation>
|
||||
</Method>
|
||||
<Method Name="M_SetFullScale" Id="{ee32b999-71fe-4e16-ab8c-09e92e1f41ef}">
|
||||
<Declaration><![CDATA[METHOD M_SetFullScale : BOOL
|
||||
VAR_INPUT
|
||||
// Full scale in ml/min
|
||||
dwFullScale : DWORD;
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[IF _xReady THEN
|
||||
M_StartExec();
|
||||
|
||||
_dwFullScale := dwFullScale;
|
||||
|
||||
_stModbusData.bySlaveAddr := byBaseAddr;
|
||||
_stModbusData.eCmd := E_Modbus_Cmd.WRITE_HOLDING;
|
||||
_stModbusData.pvData := ADR(_dwFullScale);
|
||||
_stModbusData.pxDone := ADR(_xMBDone);
|
||||
_stModbusData.pxError := ADR(_xMBError);
|
||||
_stModbusData.wDataSize := SIZEOF(_dwFullScale);
|
||||
_stModbusData.wQuantity := 2;
|
||||
_stModbusData.wStartAddr := REG_FULL_SCALE;
|
||||
|
||||
fbMBMaster.M_Enqueue(stReq := _stModbusData);
|
||||
END_IF]]></ST>
|
||||
</Implementation>
|
||||
</Method>
|
||||
<Method Name="M_StartExec" Id="{991a93fa-4cc2-4ad6-b2a3-8f9bf70f5fb5}">
|
||||
<Declaration><![CDATA[METHOD PRIVATE M_StartExec
|
||||
VAR_INPUT
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[xBusy := TRUE;
|
||||
xDone := FALSE;
|
||||
xError := FALSE;
|
||||
_xReady := FALSE;
|
||||
_xExecute := TRUE;]]></ST>
|
||||
</Implementation>
|
||||
</Method>
|
||||
</POU>
|
||||
</TcPlcObject>
|
||||
@@ -3,9 +3,15 @@
|
||||
<POU Name="FB_MediaCabinet" Id="{9de34b64-23ba-4fef-b086-9297bbd06f24}" SpecialFunc="None">
|
||||
<Declaration><![CDATA[FUNCTION_BLOCK FB_MediaCabinet
|
||||
VAR_INPUT
|
||||
xReleaseManualMode : BOOL;
|
||||
xReleaseErrors : BOOL;
|
||||
xConfirmAlarms : BOOL;
|
||||
END_VAR
|
||||
VAR_OUTPUT
|
||||
END_VAR
|
||||
VAR_IN_OUT
|
||||
stHMIInterface : ST_HMI_MediaCabinet;
|
||||
END_VAR
|
||||
VAR
|
||||
// (1) Acetic acid 99%
|
||||
_fbTankAceticAcidHigh : FB_Tank;
|
||||
@@ -35,12 +41,64 @@ VAR
|
||||
_fbTankFilmetch : FB_Tank;
|
||||
|
||||
// Flowsensors
|
||||
|
||||
//_fbFlowSensors16 : FB_Levi_LFC6IO
|
||||
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[]]></ST>
|
||||
<ST><![CDATA[_fbTankAceticAcidHigh(
|
||||
xReleaseErrors:= xReleaseErrors,
|
||||
xReleaseManualMode:= xReleaseManualMode,
|
||||
xConfirmAlarms:= xConfirmAlarms,
|
||||
stHMIInterface:= stHMIInterface.stTankAceticAcidHigh);
|
||||
|
||||
_fbTankSulfuricAcid(
|
||||
xReleaseErrors:= xReleaseErrors,
|
||||
xReleaseManualMode:= xReleaseManualMode,
|
||||
xConfirmAlarms:= xConfirmAlarms,
|
||||
stHMIInterface:= stHMIInterface.stTankSulfuricAcid);
|
||||
|
||||
_fbTankNitricAcid(
|
||||
xReleaseErrors:= xReleaseErrors,
|
||||
xReleaseManualMode:= xReleaseManualMode,
|
||||
xConfirmAlarms:= xConfirmAlarms,
|
||||
stHMIInterface:= stHMIInterface.stTankNitricAcid);
|
||||
|
||||
_fbTankAceticAcidLow(
|
||||
xReleaseErrors:= xReleaseErrors,
|
||||
xReleaseManualMode:= xReleaseManualMode,
|
||||
xConfirmAlarms:= xConfirmAlarms,
|
||||
stHMIInterface:= stHMIInterface.stTankAceticAcidLow);
|
||||
|
||||
_fbTankHydrofluoricAcid(
|
||||
xReleaseErrors:= xReleaseErrors,
|
||||
xReleaseManualMode:= xReleaseManualMode,
|
||||
xConfirmAlarms:= xConfirmAlarms,
|
||||
stHMIInterface:= stHMIInterface.stTankHydrofluoricAcid);
|
||||
|
||||
_fbTankSulfuricAcidMixing(
|
||||
xReleaseErrors:= xReleaseErrors,
|
||||
xReleaseManualMode:= xReleaseManualMode,
|
||||
xConfirmAlarms:= xConfirmAlarms,
|
||||
stHMIInterface:= stHMIInterface.stTankSulfuricAcidMixing);
|
||||
|
||||
_fbTankHydrofluoricAcidMixing(
|
||||
xReleaseErrors:= xReleaseErrors,
|
||||
xReleaseManualMode:= xReleaseManualMode,
|
||||
xConfirmAlarms:= xConfirmAlarms,
|
||||
stHMIInterface:= stHMIInterface.stTankHydrofluoricAcidMixing);
|
||||
|
||||
_fbTankSEF(
|
||||
xReleaseErrors:= xReleaseErrors,
|
||||
xReleaseManualMode:= xReleaseManualMode,
|
||||
xConfirmAlarms:= xConfirmAlarms,
|
||||
stHMIInterface:= stHMIInterface.stTankSEF);
|
||||
|
||||
_fbTankFilmetch(
|
||||
xReleaseErrors:= xReleaseErrors,
|
||||
xReleaseManualMode:= xReleaseManualMode,
|
||||
xConfirmAlarms:= xConfirmAlarms,
|
||||
stHMIInterface:= stHMIInterface.stTankFilmetch);]]></ST>
|
||||
</Implementation>
|
||||
</POU>
|
||||
</TcPlcObject>
|
||||
@@ -21,20 +21,31 @@ VAR
|
||||
i_xFull AT %I* : BOOL;
|
||||
i_xEmpty AT %I* : BOOL;
|
||||
|
||||
fbFillingValve : FB_Valve;
|
||||
fbDrainValve : FB_Valve;
|
||||
fbPumpValve : FB_Valve;
|
||||
_fbWaterValve : FB_Valve('Water valve');
|
||||
_fbFillingValve : FB_Valve('Filling valve');
|
||||
_fbDrainValve : FB_Valve('Drain Valve');
|
||||
_fbPumpValve : FB_Valve('Pump Valve');
|
||||
|
||||
_stValveConfig : ST_ValveConfig;
|
||||
|
||||
_wFillingValveSafetyIntlkUsed : T_INTERLOCK;
|
||||
_wFillingValveSafetyIntlk : T_INTERLOCK;
|
||||
|
||||
_iState : INT;
|
||||
|
||||
_xFirstCycle : BOOL := TRUE;
|
||||
END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[// Overfull is NC so true if ok
|
||||
<ST><![CDATA[IF _xFirstCycle THEN
|
||||
_xFirstCycle := FALSE;
|
||||
stHMIInterface.stFillingValve.stInterlock.asSafetyINTLKName[0] := 'Tank overfull';
|
||||
_wFillingValveSafetyIntlkUsed.0 := 1;
|
||||
END_IF
|
||||
|
||||
// Overfull is NC so true if ok
|
||||
_wFillingValveSafetyIntlk.0 := i_xOverfull;
|
||||
fbFillingValve(
|
||||
_fbFillingValve(
|
||||
xReleaseErrors:= xReleaseErrors,
|
||||
stValveConfig:= _stValveConfig,
|
||||
xReleaseManualMode:= xReleaseManualMode,
|
||||
@@ -43,19 +54,59 @@ fbFillingValve(
|
||||
xConfirmAlarms:= xConfirmAlarms,
|
||||
stHMIInterface:= stHMIInterface.stFillingValve);
|
||||
|
||||
fbDrainValve(
|
||||
_fbWaterValve(
|
||||
xReleaseErrors:= xReleaseErrors,
|
||||
stValveConfig:= _stValveConfig,
|
||||
xReleaseManualMode:= xReleaseManualMode,
|
||||
xConfirmAlarms:= xConfirmAlarms,
|
||||
stHMIInterface:= stHMIInterface.stDrainValve);
|
||||
|
||||
fbPumpValve(
|
||||
_fbDrainValve(
|
||||
xReleaseErrors:= xReleaseErrors,
|
||||
stValveConfig:= _stValveConfig,
|
||||
xReleaseManualMode:= xReleaseManualMode,
|
||||
xConfirmAlarms:= xConfirmAlarms,
|
||||
stHMIInterface:= stHMIInterface.stPumpValve);]]></ST>
|
||||
stHMIInterface:= stHMIInterface.stDrainValve);
|
||||
|
||||
_fbPumpValve(
|
||||
xReleaseErrors:= xReleaseErrors,
|
||||
stValveConfig:= _stValveConfig,
|
||||
xReleaseManualMode:= xReleaseManualMode,
|
||||
xConfirmAlarms:= xConfirmAlarms,
|
||||
stHMIInterface:= stHMIInterface.stPumpValve);
|
||||
|
||||
CASE _iState OF
|
||||
// Idle
|
||||
0:
|
||||
// Start emptying tank
|
||||
IF stHMIInterface.stEmptyButton.xRequest THEN
|
||||
stHMIInterface.stEmptyButton.xRequest := FALSE;
|
||||
_iState := 10;
|
||||
END_IF
|
||||
|
||||
// Start filling tank with water
|
||||
IF stHMIInterface.stFillButton.xRequest THEN
|
||||
stHMIInterface.stFillButton.xRequest := FALSE;
|
||||
_iState := 20;
|
||||
END_IF
|
||||
|
||||
// Empty tank
|
||||
10:
|
||||
_fbDrainValve.xAutomaticOpen := TRUE;
|
||||
|
||||
IF (NOT i_xEmpty) THEN
|
||||
_fbDrainValve.xAutomaticOpen := FALSE;
|
||||
|
||||
_iState := 0;
|
||||
END_IF
|
||||
|
||||
// Fill tank with water
|
||||
20:
|
||||
|
||||
IF xFull THEN
|
||||
;
|
||||
END_IF
|
||||
END_CASE]]></ST>
|
||||
</Implementation>
|
||||
<Method Name="FB_Init" Id="{9c6d1842-9c2e-4437-b40f-941f77668ffe}">
|
||||
<Declaration><![CDATA[//FB_Init is always available implicitly and it is used primarily for initialization.
|
||||
@@ -70,10 +121,7 @@ END_VAR
|
||||
]]></Declaration>
|
||||
<Implementation>
|
||||
<ST><![CDATA[_stValveConfig.xHasOpenFeedback := FALSE;
|
||||
_stValveConfig.xHasClosedFeedback := FALSE;
|
||||
|
||||
stHMIInterface.stFillingValve.stInterlock.asSafetyINTLKName[0] := 'Tank overfull';
|
||||
_wFillingValveSafetyIntlkUsed.0 := 1;]]></ST>
|
||||
_stValveConfig.xHasClosedFeedback := FALSE;]]></ST>
|
||||
</Implementation>
|
||||
</Method>
|
||||
<Method Name="M_HandleHMIOutput" Id="{8939e00b-3459-4b5e-a4b3-7b489eec260a}">
|
||||
|
||||
@@ -114,7 +114,7 @@ IF _iHead = _iTail THEN
|
||||
M_Dequeue := FALSE;
|
||||
ELSE
|
||||
// Get next entry
|
||||
_stCurrReq := _astReqQueue;
|
||||
_stCurrReq := _astReqQueue[_iHead];
|
||||
_iHead := (_iHead + 1) MOD GVL_ModbusMaster.QUEUE_SIZE;
|
||||
M_Dequeue := TRUE;
|
||||
END_IF]]></ST>
|
||||
@@ -140,7 +140,11 @@ ELSE
|
||||
_astReqQueue[_iNextTail] := stReq;
|
||||
_iTail := _iNextTail;
|
||||
M_Enqueue := TRUE;
|
||||
END_IF]]></ST>
|
||||
END_IF
|
||||
|
||||
// Reset error and done
|
||||
stReq.pxDone^ := FALSE;
|
||||
stReq.pxError^ := FALSE;]]></ST>
|
||||
</Implementation>
|
||||
</Method>
|
||||
</POU>
|
||||
|
||||
@@ -182,6 +182,9 @@
|
||||
<Compile Include="01_Stationen\Kuka_Robot\ST_KukaRobot_UnitFeedbacks.TcDUT">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="01_Stationen\MediaStation\DUTs\ST_HMI_MediaCabinet.TcDUT">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="01_Stationen\MediaStation\DUTs\ST_HMI_Tank.TcDUT">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
@@ -191,7 +194,7 @@
|
||||
<Compile Include="01_Stationen\MediaStation\DUTs\ST_Levi_ChDStatus.TcDUT">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="01_Stationen\MediaStation\FB_Levi_Flowsensor.TcPOU">
|
||||
<Compile Include="01_Stationen\MediaStation\FB_Levi_LFC6IO.TcPOU">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="01_Stationen\MediaStation\POUs\FB_MediaCabinet.TcPOU">
|
||||
|
||||
273
PLC/PLC.tmc
273
PLC/PLC.tmc
File diff suppressed because one or more lines are too long
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<SafetyDeviceDesc Crc="162942154" FileFormatVersion="1.9">
|
||||
<SafetyDeviceDesc Crc="2894377215" FileFormatVersion="1.9">
|
||||
<AliasDeviceType>
|
||||
<Type>4</Type>
|
||||
<SubType>17827710</SubType>
|
||||
@@ -13,8 +13,8 @@
|
||||
<ConnectionMode>master</ConnectionMode>
|
||||
<ConnectionType>FSoE</ConnectionType>
|
||||
<MapDiag>false</MapDiag>
|
||||
<MapInputs>false</MapInputs>
|
||||
<MapOutputs>false</MapOutputs>
|
||||
<MapInputs>true</MapInputs>
|
||||
<MapOutputs>true</MapOutputs>
|
||||
<MapState>false</MapState>
|
||||
<ModuleFaultIsComErr>false</ModuleFaultIsComErr>
|
||||
<SafeAddress>10</SafeAddress>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<SafetyDeviceDesc Crc="3975529795" FileFormatVersion="1.9">
|
||||
<SafetyDeviceDesc Crc="1921019104" FileFormatVersion="1.9">
|
||||
<AliasDeviceType>
|
||||
<Type>4</Type>
|
||||
<SubType>17827710</SubType>
|
||||
@@ -13,8 +13,8 @@
|
||||
<ConnectionMode>master</ConnectionMode>
|
||||
<ConnectionType>FSoE</ConnectionType>
|
||||
<MapDiag>false</MapDiag>
|
||||
<MapInputs>false</MapInputs>
|
||||
<MapOutputs>false</MapOutputs>
|
||||
<MapInputs>true</MapInputs>
|
||||
<MapOutputs>true</MapOutputs>
|
||||
<MapState>false</MapState>
|
||||
<ModuleFaultIsComErr>false</ModuleFaultIsComErr>
|
||||
<SafeAddress>11</SafeAddress>
|
||||
|
||||
@@ -179,6 +179,154 @@
|
||||
<Elements>6</Elements>
|
||||
</ArrayInfo>
|
||||
</DataType>
|
||||
<DataType>
|
||||
<Name GUID="{00690516-A06B-2FAC-765F-330C43E46EC8}" AutoDeleteType="true">INFODATA_3187781607</Name>
|
||||
<BitSize>24</BitSize>
|
||||
<SubItem>
|
||||
<Name>Input Safe Data FSIN Module 1.Input</Name>
|
||||
<Type GUID="{18071995-0000-0000-0000-000000000010}">BIT</Type>
|
||||
<BitSize>1</BitSize>
|
||||
<BitOffs>0</BitOffs>
|
||||
</SubItem>
|
||||
<SubItem>
|
||||
<Name>Input Safe Data FSIN Module 1.Module Fault</Name>
|
||||
<Type GUID="{18071995-0000-0000-0000-000000000010}">BIT</Type>
|
||||
<BitSize>1</BitSize>
|
||||
<BitOffs>1</BitOffs>
|
||||
</SubItem>
|
||||
<SubItem>
|
||||
<Name>Input Safe Data FSIN Module 2.Input</Name>
|
||||
<Type GUID="{18071995-0000-0000-0000-000000000010}">BIT</Type>
|
||||
<BitSize>1</BitSize>
|
||||
<BitOffs>2</BitOffs>
|
||||
</SubItem>
|
||||
<SubItem>
|
||||
<Name>Input Safe Data FSIN Module 2.Module Fault</Name>
|
||||
<Type GUID="{18071995-0000-0000-0000-000000000010}">BIT</Type>
|
||||
<BitSize>1</BitSize>
|
||||
<BitOffs>3</BitOffs>
|
||||
</SubItem>
|
||||
<SubItem>
|
||||
<Name>Input Safe Data FSIN Module 3.Input</Name>
|
||||
<Type GUID="{18071995-0000-0000-0000-000000000010}">BIT</Type>
|
||||
<BitSize>1</BitSize>
|
||||
<BitOffs>4</BitOffs>
|
||||
</SubItem>
|
||||
<SubItem>
|
||||
<Name>Input Safe Data FSIN Module 3.Module Fault</Name>
|
||||
<Type GUID="{18071995-0000-0000-0000-000000000010}">BIT</Type>
|
||||
<BitSize>1</BitSize>
|
||||
<BitOffs>5</BitOffs>
|
||||
</SubItem>
|
||||
<SubItem>
|
||||
<Name>Input Safe Data FSIN Module 4.Input</Name>
|
||||
<Type GUID="{18071995-0000-0000-0000-000000000010}">BIT</Type>
|
||||
<BitSize>1</BitSize>
|
||||
<BitOffs>6</BitOffs>
|
||||
</SubItem>
|
||||
<SubItem>
|
||||
<Name>Input Safe Data FSIN Module 4.Module Fault</Name>
|
||||
<Type GUID="{18071995-0000-0000-0000-000000000010}">BIT</Type>
|
||||
<BitSize>1</BitSize>
|
||||
<BitOffs>7</BitOffs>
|
||||
</SubItem>
|
||||
<SubItem>
|
||||
<Name>Input Safe Data FSIN Module 5.Input</Name>
|
||||
<Type GUID="{18071995-0000-0000-0000-000000000010}">BIT</Type>
|
||||
<BitSize>1</BitSize>
|
||||
<BitOffs>8</BitOffs>
|
||||
</SubItem>
|
||||
<SubItem>
|
||||
<Name>Input Safe Data FSIN Module 5.Module Fault</Name>
|
||||
<Type GUID="{18071995-0000-0000-0000-000000000010}">BIT</Type>
|
||||
<BitSize>1</BitSize>
|
||||
<BitOffs>9</BitOffs>
|
||||
</SubItem>
|
||||
<SubItem>
|
||||
<Name>Input Safe Data FSIN Module 6.Input</Name>
|
||||
<Type GUID="{18071995-0000-0000-0000-000000000010}">BIT</Type>
|
||||
<BitSize>1</BitSize>
|
||||
<BitOffs>10</BitOffs>
|
||||
</SubItem>
|
||||
<SubItem>
|
||||
<Name>Input Safe Data FSIN Module 6.Module Fault</Name>
|
||||
<Type GUID="{18071995-0000-0000-0000-000000000010}">BIT</Type>
|
||||
<BitSize>1</BitSize>
|
||||
<BitOffs>11</BitOffs>
|
||||
</SubItem>
|
||||
<SubItem>
|
||||
<Name>Input Safe Data FSIN Module 7.Input</Name>
|
||||
<Type GUID="{18071995-0000-0000-0000-000000000010}">BIT</Type>
|
||||
<BitSize>1</BitSize>
|
||||
<BitOffs>12</BitOffs>
|
||||
</SubItem>
|
||||
<SubItem>
|
||||
<Name>Input Safe Data FSIN Module 7.Module Fault</Name>
|
||||
<Type GUID="{18071995-0000-0000-0000-000000000010}">BIT</Type>
|
||||
<BitSize>1</BitSize>
|
||||
<BitOffs>13</BitOffs>
|
||||
</SubItem>
|
||||
<SubItem>
|
||||
<Name>Input Safe Data FSIN Module 8.Input</Name>
|
||||
<Type GUID="{18071995-0000-0000-0000-000000000010}">BIT</Type>
|
||||
<BitSize>1</BitSize>
|
||||
<BitOffs>14</BitOffs>
|
||||
</SubItem>
|
||||
<SubItem>
|
||||
<Name>Input Safe Data FSIN Module 8.Module Fault</Name>
|
||||
<Type GUID="{18071995-0000-0000-0000-000000000010}">BIT</Type>
|
||||
<BitSize>1</BitSize>
|
||||
<BitOffs>15</BitOffs>
|
||||
</SubItem>
|
||||
<SubItem>
|
||||
<Name>Output Safe Data FSIN Module 1.ErrAck</Name>
|
||||
<Type GUID="{18071995-0000-0000-0000-000000000010}">BIT</Type>
|
||||
<BitSize>1</BitSize>
|
||||
<BitOffs>16</BitOffs>
|
||||
</SubItem>
|
||||
<SubItem>
|
||||
<Name>Output Safe Data FSIN Module 2.ErrAck</Name>
|
||||
<Type GUID="{18071995-0000-0000-0000-000000000010}">BIT</Type>
|
||||
<BitSize>1</BitSize>
|
||||
<BitOffs>17</BitOffs>
|
||||
</SubItem>
|
||||
<SubItem>
|
||||
<Name>Output Safe Data FSIN Module 3.ErrAck</Name>
|
||||
<Type GUID="{18071995-0000-0000-0000-000000000010}">BIT</Type>
|
||||
<BitSize>1</BitSize>
|
||||
<BitOffs>18</BitOffs>
|
||||
</SubItem>
|
||||
<SubItem>
|
||||
<Name>Output Safe Data FSIN Module 4.ErrAck</Name>
|
||||
<Type GUID="{18071995-0000-0000-0000-000000000010}">BIT</Type>
|
||||
<BitSize>1</BitSize>
|
||||
<BitOffs>19</BitOffs>
|
||||
</SubItem>
|
||||
<SubItem>
|
||||
<Name>Output Safe Data FSIN Module 5.ErrAck</Name>
|
||||
<Type GUID="{18071995-0000-0000-0000-000000000010}">BIT</Type>
|
||||
<BitSize>1</BitSize>
|
||||
<BitOffs>20</BitOffs>
|
||||
</SubItem>
|
||||
<SubItem>
|
||||
<Name>Output Safe Data FSIN Module 6.ErrAck</Name>
|
||||
<Type GUID="{18071995-0000-0000-0000-000000000010}">BIT</Type>
|
||||
<BitSize>1</BitSize>
|
||||
<BitOffs>21</BitOffs>
|
||||
</SubItem>
|
||||
<SubItem>
|
||||
<Name>Output Safe Data FSIN Module 7.ErrAck</Name>
|
||||
<Type GUID="{18071995-0000-0000-0000-000000000010}">BIT</Type>
|
||||
<BitSize>1</BitSize>
|
||||
<BitOffs>22</BitOffs>
|
||||
</SubItem>
|
||||
<SubItem>
|
||||
<Name>Output Safe Data FSIN Module 8.ErrAck</Name>
|
||||
<Type GUID="{18071995-0000-0000-0000-000000000010}">BIT</Type>
|
||||
<BitSize>1</BitSize>
|
||||
<BitOffs>23</BitOffs>
|
||||
</SubItem>
|
||||
</DataType>
|
||||
<DataType>
|
||||
<Name GUID="{5557A808-610D-F5D5-7930-B8923A6373FA}" AutoDeleteType="true">INFODATA_957728927</Name>
|
||||
<BitSize>8</BitSize>
|
||||
@@ -666,7 +814,7 @@
|
||||
<SyncMan>001000012600010001000000000100010001001026010000</SyncMan>
|
||||
<SyncMan>001100012200010002000000000100010001001122010000</SyncMan>
|
||||
<SyncMan>0012b1002400010003000000000000000800001224010000</SyncMan>
|
||||
<SyncMan>001da8002000010004000000000000000900001d20010000</SyncMan>
|
||||
<SyncMan>001dae002000010004000000000000000900001d20010000</SyncMan>
|
||||
<SyncMan>002e00002400000003000000000000000000002e24000000</SyncMan>
|
||||
<SyncMan>002f00002000000004000000000000000000002f20000000</SyncMan>
|
||||
<Fmmu>0000000000000000001200020100000001000000060000000200000000000000</Fmmu>
|
||||
@@ -887,9 +1035,15 @@
|
||||
</Entry>
|
||||
</Pdo>
|
||||
<Pdo Name="Connection Info Data" Index="#x1bf9" Flags="#x2011" SyncMan="3">
|
||||
<Entry Name="Message_155 Info Data" Index="#x7000" Sub="#x01">
|
||||
<Entry Name="Message_154 Info Data" Index="#x7000" Sub="#x01">
|
||||
<Type GUID="{00690516-A06B-2FAC-765F-330C43E46EC8}">INFODATA_3187781607</Type>
|
||||
</Entry>
|
||||
<Entry Name="Message_155 Info Data" Index="#x7000" Sub="#x02">
|
||||
<Type GUID="{5557A808-610D-F5D5-7930-B8923A6373FA}">INFODATA_957728927</Type>
|
||||
</Entry>
|
||||
<Entry Name="Message_194 Info Data" Index="#x7000" Sub="#x03">
|
||||
<Type GUID="{00690516-A06B-2FAC-765F-330C43E46EC8}">INFODATA_3187781607</Type>
|
||||
</Entry>
|
||||
</Pdo>
|
||||
<Pdo Name="Device Info Data" Index="#x1bfe" Flags="#x2011" SyncMan="3">
|
||||
<Entry Name="Internal I/O" Index="#x7000" Sub="#x01">
|
||||
|
||||
@@ -2182,7 +2182,7 @@ External Setpoint Generation:
|
||||
<Axis Id="6" CreateSymbols="true" AxisType="1">
|
||||
<Name>AlignerYAxis</Name>
|
||||
<AxisPara>
|
||||
<Dynamic AccelerationMaximum="2000" DecelerationMaximum="2000" Acceleration="1.99999914163127" Deceleration="1.99999914163127" Jerk="22.4999806867077"/>
|
||||
<Dynamic AccelerationMaximum="2000" DecelerationMaximum="2000" Acceleration="2" Deceleration="2" Jerk="22.5"/>
|
||||
<Velo RefSearch="1.5" RefSync="0.5" SlowManual="1" FastManual="5" Fast="12.834" Maximum="5"/>
|
||||
<OtherSettings AllowMotionCmdToSlave="true"/>
|
||||
</AxisPara>
|
||||
|
||||
@@ -101,6 +101,17 @@
|
||||
</Instance>
|
||||
<Mappings>
|
||||
<OwnerA>
|
||||
<OwnerB Name="TIID^Device 1 (EtherCAT)^Box 104 (EX260-SEC1)">
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbMediaCabinet._fbTankAceticAcidHigh._fbDrainValve.xOpenValve" VarB="Byte 1^Output[5]" Size="1"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbMediaCabinet._fbTankAceticAcidLow._fbDrainValve.xOpenValve" VarB="Byte 1^Output[2]" Size="1"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbMediaCabinet._fbTankFilmetch._fbDrainValve.xOpenValve" VarB="Byte 0^Output[5]" Size="1"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcid._fbDrainValve.xOpenValve" VarB="Byte 1^Output[1]" Size="1"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcidMixing._fbDrainValve.xOpenValve" VarB="Byte 0^Output[7]" Size="1"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbMediaCabinet._fbTankNitricAcid._fbDrainValve.xOpenValve" VarB="Byte 1^Output[3]" Size="1"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbMediaCabinet._fbTankSEF._fbDrainValve.xOpenValve" VarB="Byte 0^Output[6]" Size="1"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbMediaCabinet._fbTankSulfuricAcid._fbDrainValve.xOpenValve" VarB="Byte 1^Output[4]" Size="1"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbMediaCabinet._fbTankSulfuricAcidMixing._fbDrainValve.xOpenValve" VarB="Byte 1^Output[0]" Size="1"/>
|
||||
</OwnerB>
|
||||
<OwnerB Name="TIID^Device 1 (EtherCAT)^Box 26 (TM-X5K_CB-NEC20E)">
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbAligner.diXOffset" VarB="Module 1 (Result Data 128Byte)^Result Data 128Byte^Result Data7"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbAligner.diYOffset" VarB="Module 1 (Result Data 128Byte)^Result Data 128Byte^Result Data8"/>
|
||||
@@ -180,12 +191,17 @@
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbCoolplate.stCtrl^bTransmitRequest" VarB="COM RxPDO-Map Outputs^Ctrl^Transmit request"/>
|
||||
</OwnerB>
|
||||
<OwnerB Name="TIID^Device 1 (EtherCAT)^K01_KL01 (EK1100)^K01_KL02 (EL1018)">
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbMediaCabinet._fbTankAceticAcidHigh.i_xEmpty" VarB="Channel 5^Tank1NotEmpty" Size="1"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbMediaCabinet._fbTankAceticAcidHigh.i_xFull" VarB="Channel 6^Tank1Full" Size="1"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Safety.xRequestOpenDoor" VarB="Channel 4^MainDoorUnlock" Size="1"/>
|
||||
</OwnerB>
|
||||
<OwnerB Name="TIID^Device 1 (EtherCAT)^K01_KL01 (EK1100)^K01_KL04 (EL2008)">
|
||||
<Link VarA="PlcTask Outputs^PRG_Safety.xLEDMachineOff" VarB="Channel 2^MachineOff" Size="1"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Safety.xLEDMachineOn" VarB="Channel 1^MachineOn" Size="1"/>
|
||||
</OwnerB>
|
||||
<OwnerB Name="TIID^Device 1 (EtherCAT)^K01_KL01 (EK1100)^K01_KL06 (EL1918)">
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbMediaCabinet._fbTankAceticAcidHigh.i_xOverfull" VarB="Module 1 (FSOE)^FSoE Inputs^FSOE^Tank1NotOverFull" Size="1"/>
|
||||
</OwnerB>
|
||||
<OwnerB Name="TIID^Device 1 (EtherCAT)^K12_KL01 (EK1100)^K12_KL04 (EL1018)">
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbAligner.xVacuumOk" VarB="Channel 7^Input" Size="1"/>
|
||||
</OwnerB>
|
||||
@@ -238,6 +254,54 @@
|
||||
<OwnerB Name="TIID^Device 1 (EtherCAT)^K21_KL01 (EK1100)^K21_KL07 (EL2008) Done">
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbEtcher2._fbRobot.xReset" VarB="Channel 2^RobotReset" Size="1"/>
|
||||
</OwnerB>
|
||||
<OwnerB Name="TIID^Device 1 (EtherCAT)^K21_KL01 (EK1100)^K21_KL08 (EL6021)">
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbModbusMaster._fbMaster.InData^D" VarB="COM TxPDO-Map Inputs^Data In 0" Size="8"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbModbusMaster._fbMaster.InData^D" VarB="COM TxPDO-Map Inputs^Data In 1" Size="8" OffsA="8"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbModbusMaster._fbMaster.InData^D" VarB="COM TxPDO-Map Inputs^Data In 10" Size="8" OffsA="80"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbModbusMaster._fbMaster.InData^D" VarB="COM TxPDO-Map Inputs^Data In 11" Size="8" OffsA="88"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbModbusMaster._fbMaster.InData^D" VarB="COM TxPDO-Map Inputs^Data In 12" Size="8" OffsA="96"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbModbusMaster._fbMaster.InData^D" VarB="COM TxPDO-Map Inputs^Data In 13" Size="8" OffsA="104"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbModbusMaster._fbMaster.InData^D" VarB="COM TxPDO-Map Inputs^Data In 14" Size="8" OffsA="112"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbModbusMaster._fbMaster.InData^D" VarB="COM TxPDO-Map Inputs^Data In 15" Size="8" OffsA="120"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbModbusMaster._fbMaster.InData^D" VarB="COM TxPDO-Map Inputs^Data In 16" Size="8" OffsA="128"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbModbusMaster._fbMaster.InData^D" VarB="COM TxPDO-Map Inputs^Data In 17" Size="8" OffsA="136"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbModbusMaster._fbMaster.InData^D" VarB="COM TxPDO-Map Inputs^Data In 18" Size="8" OffsA="144"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbModbusMaster._fbMaster.InData^D" VarB="COM TxPDO-Map Inputs^Data In 19" Size="8" OffsA="152"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbModbusMaster._fbMaster.InData^D" VarB="COM TxPDO-Map Inputs^Data In 2" Size="8" OffsA="16"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbModbusMaster._fbMaster.InData^D" VarB="COM TxPDO-Map Inputs^Data In 20" Size="8" OffsA="160"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbModbusMaster._fbMaster.InData^D" VarB="COM TxPDO-Map Inputs^Data In 21" Size="8" OffsA="168"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbModbusMaster._fbMaster.InData^D" VarB="COM TxPDO-Map Inputs^Data In 3" Size="8" OffsA="24"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbModbusMaster._fbMaster.InData^D" VarB="COM TxPDO-Map Inputs^Data In 4" Size="8" OffsA="32"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbModbusMaster._fbMaster.InData^D" VarB="COM TxPDO-Map Inputs^Data In 5" Size="8" OffsA="40"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbModbusMaster._fbMaster.InData^D" VarB="COM TxPDO-Map Inputs^Data In 6" Size="8" OffsA="48"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbModbusMaster._fbMaster.InData^D" VarB="COM TxPDO-Map Inputs^Data In 7" Size="8" OffsA="56"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbModbusMaster._fbMaster.InData^D" VarB="COM TxPDO-Map Inputs^Data In 8" Size="8" OffsA="64"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbModbusMaster._fbMaster.InData^D" VarB="COM TxPDO-Map Inputs^Data In 9" Size="8" OffsA="72"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbModbusMaster._fbMaster.InData^Status" VarB="COM TxPDO-Map Inputs^Status"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbModbusMaster._fbMaster.OutData^Ctrl" VarB="COM RxPDO-Map Outputs^Ctrl"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbModbusMaster._fbMaster.OutData^D" VarB="COM RxPDO-Map Outputs^Data Out 0" Size="8"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbModbusMaster._fbMaster.OutData^D" VarB="COM RxPDO-Map Outputs^Data Out 1" Size="8" OffsA="8"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbModbusMaster._fbMaster.OutData^D" VarB="COM RxPDO-Map Outputs^Data Out 10" Size="8" OffsA="80"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbModbusMaster._fbMaster.OutData^D" VarB="COM RxPDO-Map Outputs^Data Out 11" Size="8" OffsA="88"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbModbusMaster._fbMaster.OutData^D" VarB="COM RxPDO-Map Outputs^Data Out 12" Size="8" OffsA="96"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbModbusMaster._fbMaster.OutData^D" VarB="COM RxPDO-Map Outputs^Data Out 13" Size="8" OffsA="104"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbModbusMaster._fbMaster.OutData^D" VarB="COM RxPDO-Map Outputs^Data Out 14" Size="8" OffsA="112"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbModbusMaster._fbMaster.OutData^D" VarB="COM RxPDO-Map Outputs^Data Out 15" Size="8" OffsA="120"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbModbusMaster._fbMaster.OutData^D" VarB="COM RxPDO-Map Outputs^Data Out 16" Size="8" OffsA="128"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbModbusMaster._fbMaster.OutData^D" VarB="COM RxPDO-Map Outputs^Data Out 17" Size="8" OffsA="136"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbModbusMaster._fbMaster.OutData^D" VarB="COM RxPDO-Map Outputs^Data Out 18" Size="8" OffsA="144"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbModbusMaster._fbMaster.OutData^D" VarB="COM RxPDO-Map Outputs^Data Out 19" Size="8" OffsA="152"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbModbusMaster._fbMaster.OutData^D" VarB="COM RxPDO-Map Outputs^Data Out 2" Size="8" OffsA="16"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbModbusMaster._fbMaster.OutData^D" VarB="COM RxPDO-Map Outputs^Data Out 20" Size="8" OffsA="160"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbModbusMaster._fbMaster.OutData^D" VarB="COM RxPDO-Map Outputs^Data Out 21" Size="8" OffsA="168"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbModbusMaster._fbMaster.OutData^D" VarB="COM RxPDO-Map Outputs^Data Out 3" Size="8" OffsA="24"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbModbusMaster._fbMaster.OutData^D" VarB="COM RxPDO-Map Outputs^Data Out 4" Size="8" OffsA="32"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbModbusMaster._fbMaster.OutData^D" VarB="COM RxPDO-Map Outputs^Data Out 5" Size="8" OffsA="40"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbModbusMaster._fbMaster.OutData^D" VarB="COM RxPDO-Map Outputs^Data Out 6" Size="8" OffsA="48"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbModbusMaster._fbMaster.OutData^D" VarB="COM RxPDO-Map Outputs^Data Out 7" Size="8" OffsA="56"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbModbusMaster._fbMaster.OutData^D" VarB="COM RxPDO-Map Outputs^Data Out 8" Size="8" OffsA="64"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbModbusMaster._fbMaster.OutData^D" VarB="COM RxPDO-Map Outputs^Data Out 9" Size="8" OffsA="72"/>
|
||||
</OwnerB>
|
||||
<OwnerB Name="TIID^Device 1 (EtherCAT)^K21_QM01 (EX260-SEC1)">
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbEtcher2._fbEjectBack.xCloseValve" VarB="Byte 0^Output[7]" Size="1"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbEtcher2._fbEjectBack.xOpenValve" VarB="Byte 0^Output[6]" Size="1"/>
|
||||
@@ -256,6 +320,9 @@
|
||||
<Link VarA="PlcTask Inputs^PRG_Safety.xEStopOk" VarB="StandardInputs^Standard Out Var 157" Size="1"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Safety.xErrorAck" VarB="StandardOutputs^Standard In Var 212" Size="1"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Safety.xLockDoor" VarB="StandardOutputs^Standard In Var 192" Size="1"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Safety.xLockMediaDoor1" VarB="StandardOutputs^Standard In Var 207" Size="1"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Safety.xLockMediaDoor2" VarB="StandardOutputs^Standard In Var 208" Size="1"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Safety.xLockMediaDoor3" VarB="StandardOutputs^Standard In Var 209" Size="1"/>
|
||||
</OwnerB>
|
||||
<OwnerB Name="TIID^Device 1 (EtherCAT)^RobotMain">
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbRobot.abyMirrorToolsAndPositions" VarB="Module 3 (Default IO)^Std. In (64 Bytes)^Input DWORD 4 (Greifer/Drehteller/Positionen)"/>
|
||||
@@ -275,6 +342,45 @@
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbRobot.stCtrl" VarB="Module 3 (Default IO)^Std. Out (64 Bytes)^Output DWORD 0 (CMDs)"/>
|
||||
<Link VarA="PlcTask Outputs^PRG_Main._fbRobot.stJobs" VarB="Module 3 (Default IO)^Std. Out (64 Bytes)^Output DWORD 1 (JobNr/PLCJobNr)"/>
|
||||
</OwnerB>
|
||||
<OwnerB Name="TIID^Device 1 (EtherCAT)^Tank_1_4_9 (EK1100)^M1_KL02 (EL1918)">
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbMediaCabinet._fbTankAceticAcidLow.i_xOverfull" VarB="Module 1 (FSOE)^FSoE Inputs^FSOE^Tank4NotOverFull" Size="1"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbMediaCabinet._fbTankFilmetch.i_xOverfull" VarB="Module 1 (FSOE)^FSoE Inputs^FSOE^Tank9NotOverFull" Size="1"/>
|
||||
</OwnerB>
|
||||
<OwnerB Name="TIID^Device 1 (EtherCAT)^Tank_1_4_9 (EK1100)^M1_KL04 (EL1018)">
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbMediaCabinet._fbTankAceticAcidLow.i_xEmpty" VarB="Channel 3^Tank4NotEmpty" Size="1"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbMediaCabinet._fbTankAceticAcidLow.i_xFull" VarB="Channel 4^Tank4Full" Size="1"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbMediaCabinet._fbTankFilmetch.i_xEmpty" VarB="Channel 5^Tank9NotEmpty" Size="1"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbMediaCabinet._fbTankFilmetch.i_xFull" VarB="Channel 6^Tank9Full" Size="1"/>
|
||||
</OwnerB>
|
||||
<OwnerB Name="TIID^Device 1 (EtherCAT)^Tank_5_6_2 (EK1100)^M3_KL02 (EL1918)">
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcid.i_xOverfull" VarB="Module 1 (FSOE)^FSoE Inputs^FSOE^Tank5NotOverFull" Size="1"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbMediaCabinet._fbTankSulfuricAcid.i_xOverfull" VarB="Module 1 (FSOE)^FSoE Inputs^FSOE^Tank2NotOverFull" Size="1"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbMediaCabinet._fbTankSulfuricAcidMixing.i_xOverfull" VarB="Module 1 (FSOE)^FSoE Inputs^FSOE^Tank6NotOverFull" Size="1"/>
|
||||
</OwnerB>
|
||||
<OwnerB Name="TIID^Device 1 (EtherCAT)^Tank_5_6_2 (EK1100)^M3_KL04 (EL1018)">
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcid.i_xEmpty" VarB="Channel 1^Tank5NotEmpty" Size="1"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcid.i_xFull" VarB="Channel 2^Tank5Full" Size="1"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbMediaCabinet._fbTankSulfuricAcid.i_xEmpty" VarB="Channel 5^Tank2NotEmpty" Size="1"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbMediaCabinet._fbTankSulfuricAcid.i_xFull" VarB="Channel 6^Tank2Full" Size="1"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbMediaCabinet._fbTankSulfuricAcidMixing.i_xEmpty" VarB="Channel 3^Tank6NotEmpty" Size="1"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbMediaCabinet._fbTankSulfuricAcidMixing.i_xFull" VarB="Channel 4^Tank6Full" Size="1"/>
|
||||
</OwnerB>
|
||||
<OwnerB Name="TIID^Device 1 (EtherCAT)^Tank_7_3_8 (EK1100)^M2_KL02 (EL1918)">
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcidMixing.i_xOverfull" VarB="Module 1 (FSOE)^FSoE Inputs^FSOE^Tank7NotOverFull" Size="1"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbMediaCabinet._fbTankNitricAcid.i_xOverfull" VarB="Module 1 (FSOE)^FSoE Inputs^FSOE^Tank3NotOverFull" Size="1"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbMediaCabinet._fbTankSEF.i_xOverfull" VarB="Module 1 (FSOE)^FSoE Inputs^FSOE^Tank8NotOverFull" Size="1"/>
|
||||
</OwnerB>
|
||||
<OwnerB Name="TIID^Device 1 (EtherCAT)^Tank_7_3_8 (EK1100)^M2_KL04 (EL1018)">
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcidMixing.i_xEmpty" VarB="Channel 1^Tank7NotEmpty" Size="1"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcidMixing.i_xFull" VarB="Channel 2^Tank7Full" Size="1"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbMediaCabinet._fbTankNitricAcid.i_xEmpty" VarB="Channel 3^Tank3NotEmpty" Size="1"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbMediaCabinet._fbTankNitricAcid.i_xFull" VarB="Channel 4^Tank3Full" Size="1"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbMediaCabinet._fbTankSEF.i_xEmpty" VarB="Channel 5^Tank8NotEmpty" Size="1"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbMediaCabinet._fbTankSEF.i_xFull" VarB="Channel 6^Tank8Full" Size="1"/>
|
||||
</OwnerB>
|
||||
<OwnerB Name="TIID^Device 2 (Profinet Controller)^vs-0001">
|
||||
<Link VarA="PlcTask Outputs^PRG_Main.xTriggerCamera" VarB="API^Term 10 (Control)^Subterm 12 (Control)^Outputs^Control Register[0]^Trigger" Size="1"/>
|
||||
</OwnerB>
|
||||
<OwnerB Name="TIID^Device 5 (EtherCAT)^Etcher1Robot (Meca500)">
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbEtcher1._fbRobot.stRobotInputs^stConfigurations^siElbow" VarB="Configurations^Elbow"/>
|
||||
<Link VarA="PlcTask Inputs^PRG_Main._fbEtcher1._fbRobot.stRobotInputs^stConfigurations^siShoulder" VarB="Configurations^Shoulder"/>
|
||||
|
||||
@@ -1952,6 +1952,31 @@ External Setpoint Generation:
|
||||
<Elements>22</Elements>
|
||||
</ArrayInfo>
|
||||
</DataType>
|
||||
<DataType>
|
||||
<Name GUID="{F852D9F7-9DB9-AE77-EE6D-D9BA52CDE308}" Namespace="Tc2_ModbusRTU" AutoDeleteType="true">MB_KL6inData22B</Name>
|
||||
<BitSize>192</BitSize>
|
||||
<SubItem>
|
||||
<Name>Status</Name>
|
||||
<Type GUID="{18071995-0000-0000-0000-000000000004}">WORD</Type>
|
||||
<BitSize>16</BitSize>
|
||||
<BitOffs>0</BitOffs>
|
||||
</SubItem>
|
||||
<SubItem>
|
||||
<Name>D</Name>
|
||||
<Type GUID="{18071995-0000-0000-0000-000000000001}">BYTE</Type>
|
||||
<ArrayInfo>
|
||||
<LBound>0</LBound>
|
||||
<Elements>22</Elements>
|
||||
</ArrayInfo>
|
||||
<BitSize>176</BitSize>
|
||||
<BitOffs>16</BitOffs>
|
||||
</SubItem>
|
||||
<Properties>
|
||||
<Property>
|
||||
<Name>hide</Name>
|
||||
</Property>
|
||||
</Properties>
|
||||
</DataType>
|
||||
<DataType>
|
||||
<Name GUID="{AD971A80-45B7-4E5E-395A-353C04CA73A1}" AutoDeleteType="true">ST_PosData</Name>
|
||||
<BitSize>32</BitSize>
|
||||
@@ -2626,8 +2651,33 @@ External Setpoint Generation:
|
||||
</Property>
|
||||
</Properties>
|
||||
</DataType>
|
||||
<DataType>
|
||||
<Name GUID="{E4C24E72-EF65-C814-8E17-663F53275EE3}" Namespace="Tc2_ModbusRTU" AutoDeleteType="true">MB_KL6outData22B</Name>
|
||||
<BitSize>192</BitSize>
|
||||
<SubItem>
|
||||
<Name>Ctrl</Name>
|
||||
<Type GUID="{18071995-0000-0000-0000-000000000004}">WORD</Type>
|
||||
<BitSize>16</BitSize>
|
||||
<BitOffs>0</BitOffs>
|
||||
</SubItem>
|
||||
<SubItem>
|
||||
<Name>D</Name>
|
||||
<Type GUID="{18071995-0000-0000-0000-000000000001}">BYTE</Type>
|
||||
<ArrayInfo>
|
||||
<LBound>0</LBound>
|
||||
<Elements>22</Elements>
|
||||
</ArrayInfo>
|
||||
<BitSize>176</BitSize>
|
||||
<BitOffs>16</BitOffs>
|
||||
</SubItem>
|
||||
<Properties>
|
||||
<Property>
|
||||
<Name>hide</Name>
|
||||
</Property>
|
||||
</Properties>
|
||||
</DataType>
|
||||
</DataTypes>
|
||||
<Instance TmcHash="{BEB1669A-FD40-47A8-2118-6427AD9B7C58}">
|
||||
<Instance TmcHash="{C3D1172C-C3FF-CE61-14D7-FC4C273B8DEA}">
|
||||
<Vars VarGrpType="1">
|
||||
<Name>PlcTask Inputs</Name>
|
||||
<Var>
|
||||
@@ -2912,6 +2962,14 @@ External Setpoint Generation:
|
||||
<Name>PRG_Main._fbHVTesterCold.stReleaseChamberMovement.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbModbusMaster._fbMaster.InData</Name>
|
||||
<Type GUID="{F852D9F7-9DB9-AE77-EE6D-D9BA52CDE308}" Namespace="Tc2_ModbusRTU">MB_KL6inData22B</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbModbusMaster._fbMaster.WcState</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main.stCamResult</Name>
|
||||
<Type GUID="{A86AEC57-FBDB-D0EE-AB47-339A794FEE1B}">ST_TrayFeederCamPosData</Type>
|
||||
@@ -2928,13 +2986,405 @@ External Setpoint Generation:
|
||||
<Name>PRG_Safety.xRequestOpenDoor</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidHigh.i_xOverfull</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidHigh.i_xFull</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidHigh.i_xEmpty</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidHigh._fbWaterValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidHigh._fbWaterValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidHigh._fbFillingValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidHigh._fbFillingValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidHigh._fbDrainValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidHigh._fbDrainValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidHigh._fbPumpValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidHigh._fbPumpValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcid.i_xOverfull</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcid.i_xFull</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcid.i_xEmpty</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcid._fbWaterValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcid._fbWaterValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcid._fbFillingValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcid._fbFillingValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcid._fbDrainValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcid._fbDrainValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcid._fbPumpValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcid._fbPumpValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankNitricAcid.i_xOverfull</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankNitricAcid.i_xFull</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankNitricAcid.i_xEmpty</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankNitricAcid._fbWaterValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankNitricAcid._fbWaterValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankNitricAcid._fbFillingValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankNitricAcid._fbFillingValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankNitricAcid._fbDrainValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankNitricAcid._fbDrainValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankNitricAcid._fbPumpValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankNitricAcid._fbPumpValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidLow.i_xOverfull</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidLow.i_xFull</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidLow.i_xEmpty</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidLow._fbWaterValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidLow._fbWaterValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidLow._fbFillingValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidLow._fbFillingValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidLow._fbDrainValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidLow._fbDrainValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidLow._fbPumpValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidLow._fbPumpValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcid.i_xOverfull</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcid.i_xFull</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcid.i_xEmpty</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcid._fbWaterValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcid._fbWaterValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcid._fbFillingValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcid._fbFillingValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcid._fbDrainValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcid._fbDrainValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcid._fbPumpValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcid._fbPumpValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcidMixing.i_xOverfull</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcidMixing.i_xFull</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcidMixing.i_xEmpty</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcidMixing._fbWaterValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcidMixing._fbWaterValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcidMixing._fbFillingValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcidMixing._fbFillingValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcidMixing._fbDrainValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcidMixing._fbDrainValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcidMixing._fbPumpValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcidMixing._fbPumpValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcidMixing.i_xOverfull</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcidMixing.i_xFull</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcidMixing.i_xEmpty</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcidMixing._fbWaterValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcidMixing._fbWaterValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcidMixing._fbFillingValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcidMixing._fbFillingValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcidMixing._fbDrainValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcidMixing._fbDrainValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcidMixing._fbPumpValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcidMixing._fbPumpValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSEF.i_xOverfull</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSEF.i_xFull</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSEF.i_xEmpty</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSEF._fbWaterValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSEF._fbWaterValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSEF._fbFillingValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSEF._fbFillingValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSEF._fbDrainValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSEF._fbDrainValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSEF._fbPumpValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSEF._fbPumpValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankFilmetch.i_xOverfull</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankFilmetch.i_xFull</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankFilmetch.i_xEmpty</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankFilmetch._fbWaterValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankFilmetch._fbWaterValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankFilmetch._fbFillingValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankFilmetch._fbFillingValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankFilmetch._fbDrainValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankFilmetch._fbDrainValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankFilmetch._fbPumpValve.xOpenFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankFilmetch._fbPumpValve.xCloseFeedback</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
</Vars>
|
||||
<Vars VarGrpType="2" AreaNo="1">
|
||||
<Name>PlcTask Outputs</Name>
|
||||
<Var>
|
||||
<Name>PRG_Main.xTriggerCamera</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbRobot.stCtrl</Name>
|
||||
<Comment><![CDATA[ 0 - Nicht aus
|
||||
@@ -3198,6 +3648,14 @@ External Setpoint Generation:
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbModbusMaster._fbMaster.OutData</Name>
|
||||
<Type GUID="{E4C24E72-EF65-C814-8E17-663F53275EE3}" Namespace="Tc2_ModbusRTU">MB_KL6outData22B</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main.xTriggerCamera</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Safety.xRun</Name>
|
||||
<Type>BOOL</Type>
|
||||
@@ -3218,6 +3676,378 @@ External Setpoint Generation:
|
||||
<Name>PRG_Safety.xLEDMachineOff</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Safety.xLockMediaDoor1</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Safety.xLockMediaDoor2</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Safety.xLockMediaDoor3</Name>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidHigh._fbWaterValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidHigh._fbWaterValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidHigh._fbFillingValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidHigh._fbFillingValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidHigh._fbDrainValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidHigh._fbDrainValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidHigh._fbPumpValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidHigh._fbPumpValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcid._fbWaterValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcid._fbWaterValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcid._fbFillingValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcid._fbFillingValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcid._fbDrainValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcid._fbDrainValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcid._fbPumpValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcid._fbPumpValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankNitricAcid._fbWaterValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankNitricAcid._fbWaterValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankNitricAcid._fbFillingValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankNitricAcid._fbFillingValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankNitricAcid._fbDrainValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankNitricAcid._fbDrainValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankNitricAcid._fbPumpValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankNitricAcid._fbPumpValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidLow._fbWaterValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidLow._fbWaterValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidLow._fbFillingValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidLow._fbFillingValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidLow._fbDrainValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidLow._fbDrainValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidLow._fbPumpValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankAceticAcidLow._fbPumpValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcid._fbWaterValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcid._fbWaterValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcid._fbFillingValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcid._fbFillingValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcid._fbDrainValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcid._fbDrainValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcid._fbPumpValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcid._fbPumpValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcidMixing._fbWaterValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcidMixing._fbWaterValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcidMixing._fbFillingValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcidMixing._fbFillingValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcidMixing._fbDrainValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcidMixing._fbDrainValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcidMixing._fbPumpValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSulfuricAcidMixing._fbPumpValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcidMixing._fbWaterValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcidMixing._fbWaterValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcidMixing._fbFillingValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcidMixing._fbFillingValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcidMixing._fbDrainValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcidMixing._fbDrainValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcidMixing._fbPumpValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankHydrofluoricAcidMixing._fbPumpValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSEF._fbWaterValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSEF._fbWaterValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSEF._fbFillingValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSEF._fbFillingValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSEF._fbDrainValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSEF._fbDrainValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSEF._fbPumpValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankSEF._fbPumpValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankFilmetch._fbWaterValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankFilmetch._fbWaterValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankFilmetch._fbFillingValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankFilmetch._fbFillingValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankFilmetch._fbDrainValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankFilmetch._fbDrainValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankFilmetch._fbPumpValve.xOpenValve</Name>
|
||||
<Comment><![CDATA[ Use xOpenValve for normally closed valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
<Var>
|
||||
<Name>PRG_Main._fbMediaCabinet._fbTankFilmetch._fbPumpValve.xCloseValve</Name>
|
||||
<Comment><![CDATA[ Use xCloseValve for normally open valves]]></Comment>
|
||||
<Type>BOOL</Type>
|
||||
</Var>
|
||||
</Vars>
|
||||
<Vars VarGrpType="8" AreaNo="4">
|
||||
<Name>PlcTask Retains</Name>
|
||||
|
||||
46
doc/PackML_HMI_Faceplate.drawio
Normal file
46
doc/PackML_HMI_Faceplate.drawio
Normal file
@@ -0,0 +1,46 @@
|
||||
<mxfile host="Electron" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/29.6.1 Chrome/142.0.7444.265 Electron/39.8.0 Safari/537.36" version="29.6.1">
|
||||
<diagram name="Seite-1" id="GqlXxqPff2601l4cULB9">
|
||||
<mxGraphModel dx="581" dy="749" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
|
||||
<root>
|
||||
<mxCell id="0" />
|
||||
<mxCell id="1" parent="0" />
|
||||
<mxCell id="R6117Jvxweap9o7Wo7Lm-1" parent="1" style="rounded=1;whiteSpace=wrap;html=1;" value="Start" vertex="1">
|
||||
<mxGeometry height="30" width="80" x="160" y="160" as="geometry" />
|
||||
</mxCell>
|
||||
<mxCell id="R6117Jvxweap9o7Wo7Lm-2" parent="1" style="rounded=1;whiteSpace=wrap;html=1;" value="Stop" vertex="1">
|
||||
<mxGeometry height="30" width="80" x="160" y="280" as="geometry" />
|
||||
</mxCell>
|
||||
<mxCell id="R6117Jvxweap9o7Wo7Lm-3" parent="1" style="rounded=1;whiteSpace=wrap;html=1;" value="Hold" vertex="1">
|
||||
<mxGeometry height="30" width="80" x="160" y="200" as="geometry" />
|
||||
</mxCell>
|
||||
<mxCell id="R6117Jvxweap9o7Wo7Lm-4" parent="1" style="rounded=1;whiteSpace=wrap;html=1;" value="Unhold" vertex="1">
|
||||
<mxGeometry height="30" width="80" x="250" y="200" as="geometry" />
|
||||
</mxCell>
|
||||
<mxCell id="R6117Jvxweap9o7Wo7Lm-5" parent="1" style="rounded=1;whiteSpace=wrap;html=1;" value="Suspend" vertex="1">
|
||||
<mxGeometry height="30" width="80" x="160" y="240" as="geometry" />
|
||||
</mxCell>
|
||||
<mxCell id="R6117Jvxweap9o7Wo7Lm-6" parent="1" style="rounded=1;whiteSpace=wrap;html=1;" value="Unsuspend" vertex="1">
|
||||
<mxGeometry height="30" width="80" x="250" y="240" as="geometry" />
|
||||
</mxCell>
|
||||
<mxCell id="R6117Jvxweap9o7Wo7Lm-7" parent="1" style="rounded=1;whiteSpace=wrap;html=1;" value="Clear" vertex="1">
|
||||
<mxGeometry height="30" width="80" x="160" y="320" as="geometry" />
|
||||
</mxCell>
|
||||
<mxCell id="R6117Jvxweap9o7Wo7Lm-8" parent="1" style="rounded=1;whiteSpace=wrap;html=1;" value="Reset" vertex="1">
|
||||
<mxGeometry height="30" width="80" x="250" y="320" as="geometry" />
|
||||
</mxCell>
|
||||
<mxCell id="R6117Jvxweap9o7Wo7Lm-9" parent="1" style="rounded=1;whiteSpace=wrap;html=1;" value="Complete" vertex="1">
|
||||
<mxGeometry height="30" width="80" x="250" y="160" as="geometry" />
|
||||
</mxCell>
|
||||
<mxCell id="R6117Jvxweap9o7Wo7Lm-10" parent="1" style="rounded=1;whiteSpace=wrap;html=1;" value="Abort" vertex="1">
|
||||
<mxGeometry height="30" width="80" x="250" y="280" as="geometry" />
|
||||
</mxCell>
|
||||
<mxCell id="R6117Jvxweap9o7Wo7Lm-11" parent="1" style="rounded=1;whiteSpace=wrap;html=1;" value="Production" vertex="1">
|
||||
<mxGeometry height="30" width="80" x="160" y="120" as="geometry" />
|
||||
</mxCell>
|
||||
<mxCell id="R6117Jvxweap9o7Wo7Lm-12" parent="1" style="rounded=1;whiteSpace=wrap;html=1;" value="Manual" vertex="1">
|
||||
<mxGeometry height="30" width="80" x="250" y="120" as="geometry" />
|
||||
</mxCell>
|
||||
</root>
|
||||
</mxGraphModel>
|
||||
</diagram>
|
||||
</mxfile>
|
||||
@@ -1,6 +1,6 @@
|
||||
<mxfile host="Electron" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/29.6.1 Chrome/142.0.7444.265 Electron/39.8.0 Safari/537.36" version="29.6.1" pages="5">
|
||||
<diagram name="Complete_SM" id="ftpb_kXLDtCrtDVQ6dMH">
|
||||
<mxGraphModel dx="2946" dy="1201" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
|
||||
<mxGraphModel dx="1106" dy="762" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
|
||||
<root>
|
||||
<mxCell id="0" />
|
||||
<mxCell id="HZ1lZV176OuICY9gLn3O-1" parent="0" style="locked=1;" value="Unbenannte Ebene" />
|
||||
@@ -99,6 +99,11 @@
|
||||
<mxCell id="MSPdzodM52y7OSiT-G8--60" edge="1" parent="1" source="MSPdzodM52y7OSiT-G8--59" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.3;exitY=1;exitDx=0;exitDy=0;exitPerimeter=0;" target="MSPdzodM52y7OSiT-G8--5">
|
||||
<mxGeometry relative="1" as="geometry" />
|
||||
</mxCell>
|
||||
<mxCell id="yQyZe9oQD96PFGrsmZSj-1" connectable="0" parent="MSPdzodM52y7OSiT-G8--60" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" value="Stop" vertex="1">
|
||||
<mxGeometry relative="1" x="-0.1" as="geometry">
|
||||
<mxPoint as="offset" />
|
||||
</mxGeometry>
|
||||
</mxCell>
|
||||
<mxCell id="MSPdzodM52y7OSiT-G8--49" edge="1" parent="1" source="MSPdzodM52y7OSiT-G8--48" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" target="MSPdzodM52y7OSiT-G8--36">
|
||||
<mxGeometry relative="1" as="geometry">
|
||||
<Array as="points" />
|
||||
|
||||
Reference in New Issue
Block a user