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

@@ -0,0 +1,31 @@
<?xml version="1.0" encoding="utf-8"?>
<TcPlcObject Version="1.1.0.1">
<DUT Name="ST_FlowRecipe" Id="{3e2c2867-3147-4627-bf49-6255dbaf5310}">
<Declaration><![CDATA[TYPE ST_FlowRecipe :
STRUCT
// Index in station recipe arrays
// -1 is used to determin if the slot
// in the product array is free.
// The index number will automatically be
// assigned by the FB_ProductHandler
iProdIdx : INT := -1;
// Current node in flow graph
iCurrNode : INT := 0;
// Next node in flow graph
// will be set by the station after completed process
// 0 means that there is no next node and the
// flow recipe is finished
iNextNode : INT := 0;
// Number of flow nodes
uiNodeCnt : INT := 0;
// Flow nodes array
astNodes : ARRAY[0..(GVL_Scheduler.MAX_RECIPE_NODES - 1)] OF ST_FlowRecipeNode;
END_STRUCT
END_TYPE
]]></Declaration>
</DUT>
</TcPlcObject>

View File

@@ -0,0 +1,34 @@
<?xml version="1.0" encoding="utf-8"?>
<TcPlcObject Version="1.1.0.1">
<DUT Name="ST_FlowRecipeNode" Id="{ceb8b626-8a65-4e92-9344-14e330b6c8bd}">
<Declaration><![CDATA[TYPE ST_FlowRecipeNode :
STRUCT
// Priority for transportation after completed node
uiPriority : UINT := 100;
// Required capabilities
dwReqCap : DWORD := 0;
// How many retries are allowed of this node
uiMaxRetries : UINT := 0;
// Current numbers of retries of this node
uiCurrRetries : UINT := 0;
// Was the current process successfull
xSuccess : BOOL := FALSE;
// Transition to node when operation ok
iNextNodeSuccess : INT := -1;
// Transition to node when retrying
iNextNodeRetry : INT := -1;
// Transition to node when operation failed
// or max retries reached
iNextNodeFail : INT := -1;
END_STRUCT
END_TYPE
]]></Declaration>
</DUT>
</TcPlcObject>

View File

@@ -0,0 +1,24 @@
<?xml version="1.0" encoding="utf-8"?>
<TcPlcObject Version="1.1.0.1">
<DUT Name="ST_TransJob" Id="{e6905112-b0c5-4499-9e9b-aaa153fe4e4d}">
<Declaration><![CDATA[TYPE ST_TransJob :
STRUCT
// Station to pick from
uiFromStation : UINT;
// Station to put into
uiToStation : UINT;
// Handle from reserved source station
uiFromStationHandle : UINT;
// Handle from reserved target station
uiToStationHandle : UINT;
// Static priority from recipe
uiPrio : UINT;
END_STRUCT
END_TYPE
]]></Declaration>
</DUT>
</TcPlcObject>