7.2 KiB
7.2 KiB
// Block Type: FC
// Block Name (Original): QCO Monitor
// Block Number: 100
// Original Network Languages: STL
FUNCTION "QCO_Monitor" : Void
{ S7_Optimized_Access := 'TRUE' }
VERSION : 0.1
VAR_TEMP
FAULT : Int;
DATABASE_PNTR : "Any";
END_VAR
BEGIN
// Network 1: ---------- PHASE DETECTION ----------------- (Original Language: STL)
// --- BEGIN STL Network 1 ---
AN "System_RunOut_Variables".SystemRunOutInit
AN M100.7
O M100.0
JC M009
SET
R M100.7
LAR1 _ERR_CONST_
L BYTE#16#10
T LocalB[AR1,P#0.0]
L BYTE#16#02
T LocalB[AR1,P#1.0]
L 128
T LocalW[AR1,P#2.0]
L 100
T LocalW[AR1,P#4.0]
L "MB101"
L P#128.0
MUL_D
L P#DBX200.0
ADD_D
T LocalD[AR1,P#6.0]
CALL _Call_?
L 0
T DB100.DBD0.0
CALL _Call_?
L DINT#2_000_000_000
L "QCO Timing DB".ActualTimer.ChangeOverN
GE_D
JC M001
L 0
M001: L 1
ADD_D
T "QCO Timing DB".ActualTimer.ChangeOverN
L 9
L "MB101"
GT_D
JC M002
L -1
M002: L 1
ADD_I
T "MB101"
SET
S M100.0
R M100.6
M009: AN M100.0
BEC
// --- END STL Network 1 ---
// Network 2: 00 - QUICK CHANGE OVER TOTAL DURATION (Original Language: STL)
// --- BEGIN STL Network 2 ---
A "System_RunOut_Variables".ProdPipe_RunOut.Latch
A "System_RunOut_Variables".FillerRanOut
O "System_RunOut_Variables".ProdPipe_RunOut.Done
S "QCO Timing DB".PhaseInProgress.Total
// --- END STL Network 2 ---
// Network 3: 05 - SYRUP RUNOUT (Original Language: STL)
// --- BEGIN STL Network 3 ---
A "Procedure_Variables".Syr_RunOut.Latch
= "QCO Timing DB".PhaseInProgress.SyrupRunout
// --- END STL Network 3 ---
// Network 4: 06 - SYRUP LINE RINSE (Original Language: STL)
// --- BEGIN STL Network 4 ---
L "System_Run_Out_Data".mStep
L 0
EQ_I
A "gSyrupQcoRinse"
= "QCO Timing DB".PhaseInProgress.SyrupLineRinse
// --- END STL Network 4 ---
// Network 5: 07 - SYRUP TANK RINSE (Original Language: STL)
// --- BEGIN STL Network 5 ---
L "System_Run_Out_Data".mStep
L 1
EQ_I
A "gSyrupQcoRinse"
= "QCO Timing DB".PhaseInProgress.SyrupTankRinse
// --- END STL Network 5 ---
// Network 6: 08 - SYRUP TANK PREPARATION (Original Language: STL)
// --- BEGIN STL Network 6 ---
A "Procedure_Variables".FTP302Line_Preparation.Latch
O "Procedure_Variables".FTP302_StartUp.Latch
= "QCO Timing DB".PhaseInProgress.SyrupTankPreparation
// --- END STL Network 6 ---
// Network 7: 10 - PRODUCT TANK RUNOUT (Original Language: STL)
// --- BEGIN STL Network 7 ---
A "Procedure_Variables".TM301_RunOut.Latch
= "QCO Timing DB".PhaseInProgress.ProdTankRunout
// --- END STL Network 7 ---
// Network 8: 11 - PRODUCT PIPE RUNOUT (Original Language: STL)
// --- BEGIN STL Network 8 ---
A "System_RunOut_Variables".ProdPipe_RunOut.Latch
= "QCO Timing DB".PhaseInProgress.ProdPipeRunout
// --- END STL Network 8 ---
// Network 9: 12 - PRODUCT TANK BLOW OFF (Original Language: STL)
// --- BEGIN STL Network 9 ---
A "System_RunOut_Variables".ProdPipe_Drain.Latch
= "QCO Timing DB".PhaseInProgress.ProdTankBlowOff
// --- END STL Network 9 ---
// Network 10: 14 - RINSE (Original Language: STL)
// --- BEGIN STL Network 10 ---
A "Procedure_Variables".Blender_Rinse.Latch
AN "Procedure_Variables".TM301_Drain.Latch
= "QCO Timing DB".PhaseInProgress.Rinse
// --- END STL Network 10 ---
// Network 11: 15 - PRODUCT TANK DRAIN (Original Language: STL)
// --- BEGIN STL Network 11 ---
A "Procedure_Variables".Blender_Rinse.Latch
A "Procedure_Variables".TM301_Drain.Latch
= "QCO Timing DB".PhaseInProgress.ProdTankDrain
// --- END STL Network 11 ---
// Network 12: 17 - FILLER FLUSHING (Original Language: STL)
// --- BEGIN STL Network 12 ---
A "Procedure_Variables".Blender_Rinse.Latch
A "Procedure_Variables".TM301_Drain.Latch
Rise M100.3
S "QCO Timing DB".PhaseInProgress.FillerFlushing
A "gIN_FillerEndFlushing"
R "QCO Timing DB".PhaseInProgress.FillerFlushing
// --- END STL Network 12 ---
// Network 13: 19 - PRODUCT TANK PRESSURIZZATION (Original Language: STL)
// --- BEGIN STL Network 13 ---
A "System_RunOut_Variables".System_RunOut.Done
S "QCO Timing DB".PhaseInProgress.ProdTankPressurization
A "gEqPressOk"
O "gBlenderBlending"
A "QCO Timing DB".PhaseInProgress.ProdTankPressurization
R "QCO Timing DB".PhaseInProgress.ProdTankPressurization
S "QCO Timing DB".PhaseInProgress.ProdTankChargeUp
// --- END STL Network 13 ---
// Network 14: 20 - PRODUCT TANK CHARGE UP (Original Language: STL)
// --- BEGIN STL Network 14 ---
A "QCO Timing DB".PhaseInProgress.ProdTankChargeUp
A "gWaitLevToHold_TankPress"
R "QCO Timing DB".PhaseInProgress.ProdTankChargeUp
S "QCO Timing DB".PhaseInProgress.WaitForFillerReady
// --- END STL Network 14 ---
// Network 15: 22 - WAIT FOR FILLER READY (Original Language: STL)
// --- BEGIN STL Network 15 ---
A "QCO Timing DB".PhaseInProgress.WaitForFillerReady
A "gIN_Filler_AVM362_En"
R "QCO Timing DB".PhaseInProgress.WaitForFillerReady
S "QCO Timing DB".PhaseInProgress.FillerSlowCharging
// --- END STL Network 15 ---
// Network 16: 23 - FILLER SLOW CHARGING (Original Language: STL)
// --- BEGIN STL Network 16 ---
A "QCO Timing DB".PhaseInProgress.FillerSlowCharging
A "Interlocking_Variables".MIXER_FILLER_SEND.PROD_Prod_Load_2
R "QCO Timing DB".PhaseInProgress.FillerSlowCharging
S "QCO Timing DB".PhaseInProgress.FillerFastCharging
// --- END STL Network 16 ---
// Network 17: 24 - FILLER FAST CHARGING (Original Language: STL)
// --- BEGIN STL Network 17 ---
A "QCO Timing DB".PhaseInProgress.FillerFastCharging
A "Procedure_Variables".BlendFill_StartUp.Done
R "QCO Timing DB".PhaseInProgress.FillerFastCharging
S "QCO Timing DB".PhaseInProgress.WaitFirstBottleOut
// --- END STL Network 17 ---
// Network 18: 25 - WAIT FOR FIRST BOTTLES FILLED (Original Language: STL)
// --- BEGIN STL Network 18 ---
A "Interlocking_Variables".FILLER_MIXER_RECEIVE.PROD_Bott_Filling
A "Procedure_Variables".BlendFill_StartUp.Done
R "QCO Timing DB".PhaseInProgress.WaitFirstBottleOut
R M100.0
S M100.6
// --- END STL Network 18 ---
// Network 19: --------- PHASE COUNTING ---------------- (Original Language: STL)
// --- BEGIN STL Network 19 ---
AN CLK_1.0S
JC M999
LAR1 P#0.0
LAR2 P#0.0
JU M901
M900: ADDAR1 P#0.1
ADDAR2 P#4.0
M901: AUF "QCO Timing DB"
AN DBX[AR1,P#0.0]
JC M902
L DBD[AR2,P#4.0]
L 1
ADD_D
T DBD[AR2,P#4.0]
M902: TAR1_ACCU1
L P#3.6
LT_D
JC M900
M999: NOP_0
// --- END STL Network 19 ---
END_FUNCTION