5.1 KiB
5.1 KiB
// Block Type: FB
// Block Number: 1802
// Original Network Languages: LAD
FUNCTION_BLOCK "ProcedureCarboWaterLine"
{ S7_Optimized_Access := 'TRUE' }
VERSION : 0.1
VAR_STAT
mStepNum : Int;
mTimeStep : Int;
mTransition : Bool;
mCarboWaterLineONS : Bool;
mCarboWaterLineTPON : Bool;
mCarboWaterLineTP : STRUCT
PT : Time;
ET : Time;
IN : Bool;
Q : Bool;
END_STRUCT;
END_VAR
VAR_TEMP
mLowCO2Flow : Bool;
SP_PV : Real;
SP_PV_ABS : Real;
CO2_Mul : Real;
END_VAR
BEGIN
// Network 1: Qualifier (Original Language: LAD)
"Procedure_Variables"."CarboWaterLine"."Qualifier" := "Procedure_Variables"."TN301_StartUp"."Done" AND "Blender_Variables_Pers"."gCarboStillProduct" AND (("gBlenderCIPMode" AND "gBlenderSuppliesOk" AND (("gBlenderProdMode" AND "gBlenderRinseMode") OR ("gBlenderProdMode" AND "System_RunOut_Variables"."FastChangeOverActivated" AND "Blender_Variables_Pers"."gFillerRinse_DoneLatch"))) OR ("gBlenderCIPMode" AND "Procedure_Variables"."CarboWaterLine"."Done" AND (("gBlenderProdMode" AND "gBlenderRinseMode") OR ("gBlenderProdMode" AND "System_RunOut_Variables"."FastChangeOverActivated" AND "Blender_Variables_Pers"."gFillerRinse_DoneLatch"))));
// Network 2: Request (Original Language: LAD)
// PBox SymPy processed, logic in consumer
"mCarboWaterLineONS" := ("System_RunOut_Variables"."FastChangeOverActivated" AND "Blender_Variables_Pers"."gFillerRinse_DoneLatch") OR ("gBlenderRinseMode" AND "System_RunOut_Variables"."FastChangeOverActivated" AND "Procedure_Variables"."TN301_StartUp"."Done" AND "Procedure_Variables"."Blender_Run"."Latch"); // P_TRIG(("System_RunOut_Variables"."FastChangeOverActivated" AND "Blender_Variables_Pers"."gFillerRinse_DoneLatch") OR ("gBlenderRinseMode" AND "System_RunOut_Variables"."FastChangeOverActivated" AND "Procedure_Variables"."TN301_StartUp"."Done" AND "Procedure_Variables"."Blender_Run"."Latch")) - Mem: "mCarboWaterLineONS"
"Procedure_Variables"."CarboWaterLine"."Request" := ("Procedure_Variables"."CarboWaterLine"."Qualifier" AND "System_RunOut_Variables"."FastChangeOverActivated" AND "Blender_Variables_Pers"."gFillerRinse_DoneLatch" AND NOT "mCarboWaterLineONS") OR ("Procedure_Variables"."CarboWaterLine"."Qualifier" AND "gBlenderRinseMode" AND "System_RunOut_Variables"."FastChangeOverActivated" AND "Procedure_Variables"."TN301_StartUp"."Done" AND "Procedure_Variables"."Blender_Run"."Latch" AND NOT "mCarboWaterLineONS");
// Network 3: Reset (Original Language: LAD)
"Procedure_Variables"."CarboWaterLine"."Reset" := "Procedure_Variables"."CarboWaterLine"."Qualifier" OR ("Procedure_Variables"."CarboWaterLine"."Latch" AND "gEmergencyPressed");
// Network 4: Done (Original Language: LAD)
IF "Procedure_Variables"."CarboWaterLine"."Reset" THEN
"mStepNum" := 0;
"mTimeStep" := 0;
END_IF;
IF "Procedure_Variables"."CarboWaterLine"."Reset" THEN
"Procedure_Variables"."CarboWaterLine"."Done" := FALSE;
END_IF;
// Network 5: Limit Co2 Low (Original Language: LAD)
"SP_PV" := "HMI_PID"."RMM303"."Sp" - "HMI_PID"."RMM303"."Pv";
"CO2_Mul" := "HMI_PID"."RMM303"."Sp" * 0.1;
// Network 6: Wait (Original Language: LAD)
"Procedure_Variables"."CarboWaterLine"."Wait" := ("HMI_Digital"."_PAL_S11"."Filtered" AND "gWorkshopTest") OR ("gCO2LowPress_Fault" AND "gWorkshopTest");
// Network 7: Latch (Original Language: LAD)
"Procedure_Variables"."CarboWaterLine"."Latch" := ("Procedure_Variables"."CarboWaterLine"."Latch" AND "Procedure_Variables"."CarboWaterLine"."Reset" AND "FirstScan" AND "Procedure_Variables"."CarboWaterLine"."Done") OR ("Procedure_Variables"."CarboWaterLine"."Reset" AND "Procedure_Variables"."CarboWaterLine"."Request" AND "FirstScan" AND "Procedure_Variables"."CarboWaterLine"."Done");
IF ("Procedure_Variables"."CarboWaterLine"."Latch" AND "Procedure_Variables"."CarboWaterLine"."Reset" AND "FirstScan" AND "Procedure_Variables"."CarboWaterLine"."Done") OR ("Procedure_Variables"."CarboWaterLine"."Reset" AND "Procedure_Variables"."CarboWaterLine"."Request" AND "FirstScan" AND "Procedure_Variables"."CarboWaterLine"."Done") THEN
"HMI_Variables_Status"."Procedures"."BlenderStateNum" := 7;
END_IF;
// Network 8: Water Line Carbonating Running (Original Language: LAD)
// Message TO HMI: Water Line Carbonating Running
"HMI_Alarms"."gH_Status" := "Procedure_Variables"."CarboWaterLine"."Latch";
"Procedure_Variables"."CarboWaterLine"."Running" := "Procedure_Variables"."CarboWaterLine"."Latch" AND "Procedure_Variables"."CarboWaterLine"."Wait";
// Network 9: Carbo Water Line Step Sequence (Original Language: LAD)
// #Seq_Preset_Time is Not Used
IF "Procedure_Variables"."CarboWaterLine"."Running" THEN
CarboWaterLine_Seq(mStep_Number := "mStepNum", mTimer := "mTimeStep", mTransition := "mTransition");
END_IF;
// Network 10: Running (Original Language: LAD)
"HMI_Variables_Status"."System_Run_Out"."CarboWaterLineRun" := "Procedure_Variables"."CarboWaterLine"."Latch";
// Network 11: Done (Original Language: LAD)
"HMI_Variables_Status"."System_Run_Out"."CarboWaterLineDone" := "Procedure_Variables"."CarboWaterLine"."Done";
END_FUNCTION_BLOCK