8 Example Application
8.3 Programming of the processing stations
//Calculate synchronizing parameter
#statMasterOffset := #statSavedProductPosition +
#statMasterStartDistance := #PRODUCTBELT_SYNC_DISTANCE;
#statMasterSyncPosition := #PRODUCTBELT_SYNC_DISTANCE;
//Check modulo settings
IF (#tempModuloAxisMaster.Enable = True)
THEN
#tempModuloEndPosition := #tempModuloAxisMaster.StartValue +
IF (#statMasterOffset > #tempModuloEndPosition)
THEN
#statMasterOffset := #statMasterOffset -
END_IF;
END_IF;
//Start synchronous operation/movement
#statExecute := True;
//Set output signals
#statBusy := True;
#statError := False;
#statErrorId := #ERRORID_DEFAULT;
Based on the "EndOfProfile" output of the "MC_CamIn" technology function, it is
checked whether the cam disc was fully traversed and as a result, the sealing
process on the product fully completed.
After the successful completion of the function, the read index is set to the next
index and the outputs of the function block are set accordingly.
//Check end of synchronous operation/movement
ELSIF ((#instMcCamIn.Busy = False)
AND (#instMcCamIn.EndOfProfile = True)
AND (#statExecute = True))
THEN
//Stop execution of function block
#statExecute := False;
//Get actual read index
#tempReadIndex :=
//Incement index pointer
#tempReadIndex := #tempReadIndex + 1;
TOs of S7-1500(T)
Entry ID: 109743134,
V1.0,
#PRODUCTBELT_SYNC_POSITION - #PRODUCTBELT_SYNC_DISTANCE;
#ProductPositionTable.ReadIndex_SynchronousOperation;
05/2017
#tempModuloAxisMaster.Length;
#tempModuloAxisMaster.Length;
41