Added JobScheduler and recipe data for stations

This commit is contained in:
2026-02-24 18:28:00 +01:00
parent c4044be7bd
commit 46e294d991
33 changed files with 1454 additions and 2837 deletions

View File

@@ -10,6 +10,9 @@ STRUCT
// Set setpoint
stSetSetpointBtn : ST_HMI_CONTROL_BUTTON;
// Status of slots (true = product in in this slot)
axSlotStatus : ARRAY[0..8] OF BOOL;
END_STRUCT
END_TYPE
]]></Declaration>

View File

@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<TcPlcObject Version="1.1.0.1">
<DUT Name="ST_Recipe_Coolplate" Id="{5bc4f5e4-441e-43c6-ba49-51587e72fb75}">
<Declaration><![CDATA[TYPE ST_Recipe_Coolplate :
STRUCT
// Resting time in seconds
rRestingTime : REAL;
// Temperature in °C
rTemp : REAL;
END_STRUCT
END_TYPE
]]></Declaration>
</DUT>
</TcPlcObject>

View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<TcPlcObject Version="1.1.0.1">
<GVL Name="GVL_ETCHER" Id="{ef1ba925-5452-40f1-b847-57ee34065909}">
<Declaration><![CDATA[{attribute 'qualified_only'}
VAR_GLOBAL
MAX_ROBOT_POS : UINT := 10;
END_VAR]]></Declaration>
</GVL>
</TcPlcObject>

View File

@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<TcPlcObject Version="1.1.0.1">
<DUT Name="ST_Recipe_Etcher" Id="{a2719587-4d71-43a5-9547-91935943e20c}">
<Declaration><![CDATA[TYPE ST_Recipe_Etcher :
STRUCT
// Number of robot positions
uiNumRobotPos : UINT;
// Roboter position and setting data
stRobotStepData : ARRAY[0..(GVL_ETCHER.MAX_ROBOT_POS - 1)] OF ST_Recipe_EtherRobotStepData;
// Radial position of water jet under the blank in mm
rRadialPosLowerWaterJet : REAL;
END_STRUCT
END_TYPE
]]></Declaration>
</DUT>
</TcPlcObject>

View File

@@ -0,0 +1,36 @@
<?xml version="1.0" encoding="utf-8"?>
<TcPlcObject Version="1.1.0.1">
<DUT Name="ST_Recipe_EtherRobotStepData" Id="{21cfad24-000a-40fe-ab34-469629d5b7b9}">
<Declaration><![CDATA[TYPE ST_Recipe_EtherRobotStepData :
STRUCT
// Position in x in mm
rPosX : REAL;
// Positionin y in mm
rPosY : REAL;
// Position in z in mm
rPosZ : REAL;
// Angle alpha in deg
rAngleAlpha : REAL;
// Move speed in mm/s
rMoveSpeed : REAL;
// Wait time after move in seconds
rDelay : REAL;
// Tepe of medium
uiMedium : UINT;
// With waterjet from below
xWaterFromBelow : BOOL;
// With water from above
xWaterFromAbove : BOOL;
END_STRUCT
END_TYPE
]]></Declaration>
</DUT>
</TcPlcObject>

View File

@@ -0,0 +1,44 @@
<?xml version="1.0" encoding="utf-8"?>
<TcPlcObject Version="1.1.0.1">
<DUT Name="ST_Recipe_HVTester" Id="{f4954ef2-f38f-4cda-8590-43b9782aba39}">
<Declaration><![CDATA[TYPE ST_Recipe_HVTester :
STRUCT
// Test voltage in V
rTestVoltage : REAL;
// Maximum test current
rMaxTestCurrent : REAL;
// Ramp time in ms
rRampTime : REAL;
// Test frequency in HZ
rTestFrequency : REAL;
// Polarity 1 = POS, 2 = NEG
uiPolarity : UINT := 1;
// Overpressure N2 in mbar
rTestPresN2 : REAL;
// N2 pre purging time in seconds
rN2PrePurgeTime : REAL;
// Test retries
uiNumRetries : UINT := 0;
// Temperature for testing
// (only used in hv station which has a heater)
rTestTemp : REAL := 20.0;
// Test ok point
rTestOkVoltage : REAL;
rTestOkCurrent : REAL;
// Temperature in °C
rTemp : REAL := 20.0;
END_STRUCT
END_TYPE
]]></Declaration>
</DUT>
</TcPlcObject>

View File

@@ -1,37 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<TcPlcObject Version="1.1.0.1">
<POU Name="FB_HeatCoolPlates" Id="{a2be063c-19d7-4ca2-8121-529d61cc7bc2}" SpecialFunc="None">
<Declaration><![CDATA[FUNCTION_BLOCK FB_HeatCoolPlates
VAR_INPUT
xReleaseAlarms : BOOL;
xConfirmAlarms : BOOL;
END_VAR
VAR_OUTPUT
END_VAR
VAR_IN_OUT
stHMIInterface : ST_HCStationHMIInterface;
END_VAR
VAR
_fbHeatingPlate : FB_HotPlate;
_xEnableHotplate : BOOL;
_rTargetTemp : REAL := 30.0;
// Cool plate
_fbCoolPlate : FB_CoolPlate;
END_VAR
]]></Declaration>
<Implementation>
<ST><![CDATA[_fbHeatingPlate(
xEnable:= _xEnableHotplate,
rTargetTemp:= _rTargetTemp,
stHMIInterface := stHMIInterface.stHotplateHMIInterface,
xReleaseAlarms := xReleaseAlarms,
xConfirmAlarms:= xConfirmAlarms,
uiNextFreeSlot=> ,
uiNextReadySlot=> );
_fbCoolPlate(stHMIInterface := stHMIInterface.stCoolplateHMIInterface);]]></ST>
</Implementation>
</POU>
</TcPlcObject>

View File

@@ -16,6 +16,9 @@ STRUCT
// Disable button
stDisableBtn : ST_HMI_CONTROL_BUTTON;
// Status of slots (true = product in in this slot)
axSlotStatus : ARRAY[0..8] OF BOOL;
END_STRUCT
END_TYPE
]]></Declaration>

View File

@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<TcPlcObject Version="1.1.0.1">
<DUT Name="ST_Recipe_Hotplate" Id="{c622bf0d-8040-4151-b720-bcd2c14eb3b4}">
<Declaration><![CDATA[TYPE ST_Recipe_Hotplate :
STRUCT
// Resting time in seconds
rRestingTime : REAL;
// Temperature in °C
rTemp : REAL;
END_STRUCT
END_TYPE
]]></Declaration>
</DUT>
</TcPlcObject>