```pascal // Block Type: FC // Block Name (Original): Deaireator StartUp_Seq // Block Number: 1803 // Original Network Languages: STL, LAD FUNCTION "Deaireator_StartUp_Seq" : Void { S7_Optimized_Access := 'TRUE' } VERSION : 0.1 VAR_INOUT mStep : Int; mTimer : Int; mTransition : Bool; END_VAR VAR_TEMP mAuxStep : Int; mVacuumOk : Bool; mAuxTimer : Int; mAuxWaterSpeedPrimeOK : Bool; __PlcmigTempFillBit_6B1 : Bool; __PlcmigTempFillBit_6B2 : Bool; __PlcmigTempFillBit_6B3 : Bool; __PlcmigTempFillBit_6B4 : Bool; __PlcmigTempFillBit_6B5 : Bool; __PlcmigTempFillBit_6B6 : Bool; __PlcmigTempFillBit_6B7 : Bool; __PlcmigTempFillBit_7B0 : Bool; __PlcmigTempFillBit_7B1 : Bool; __PlcmigTempFillBit_7B2 : Bool; __PlcmigTempFillBit_7B3 : Bool; __PlcmigTempFillBit_7B4 : Bool; __PlcmigTempFillBit_7B5 : Bool; __PlcmigTempFillBit_7B6 : Bool; __PlcmigTempFillBit_7B7 : Bool; END_VAR #_10S : Bool; // Auto-generated temporary BEGIN // Network 1: STEP CONTROL (Original Language: STL) // --- BEGIN STL Network 1 --- L "mStep" JL LEND JU ST00 JU ST01 JU ST02 JU ST03 JU ST04 JU ST05 JU ST06 JU ST07 JU ST08 JU ST09 JU ST10 LEND: JU FULL FULL: L 0 T "mStep" JU END // --- END STL Network 1 --- // Network 2: STEP 00 (Original Language: LAD) // Step 0: Select if execute the procedure IF "AUX FALSE" THEN "gSP_LimitCO2PressValve" := TRUE; END_IF; // Network 3: STEP 00 (Original Language: LAD) SEL_I(G := "Procedure_Variables"."TN301_StartUp"."Done", IN0 := 1, IN1 := 5); // Network 4: STEP 00 (Original Language: LAD) SEL_I(G := "Procedure_Variables"."First_Production"."Done", IN0 := "mAuxStep", IN1 := 5); // Network 5: (Original Language: LAD) IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_UVLamp" THEN "mAuxStep" := 2; END_IF; // Network 6: STEP 00 (Original Language: LAD) IF "gStillWaterByPassEn" THEN SEL_I(G := "Blender_Variables_Pers"."gSkipDeaireation" AND "gBlenderRinseMode", IN0 := 1, IN1 := 10); END_IF; // Network 7: STEP 00 (Original Language: STL) // --- BEGIN STL Network 7 --- A "AUX TRUE" = "__PlcmigTempFillBit_7B0" BLD 103 A "AUX TRUE" = "__PlcmigTempFillBit_7B1" BLD 103 A "Procedure_Variables".TN301_StartUp.Wait = "__PlcmigTempFillBit_7B2" BLD 103 A CLK_0.5S = "__PlcmigTempFillBit_7B3" BLD 103 CALL "_StepMove" A _Statusword_? JC END // --- END STL Network 7 --- // Network 8: STEP 01 (Original Language: LAD) // Step 1: Blow off the air from the buffer Tank and deareator "mTimeTN301_StartupFilter"(IN := "AUX FALSE", PT := S5T#10S); // TODO: Declarar "mTimeTN301_StartupFilter" : TON; "Procedure_Variables"."TN301_StartUp"."H2OFilterOK" := "mTimeTN301_StartupFilter".Q; // Network 9: STEP 01 (Original Language: LAD) IF "Procedure_Variables"."TN301_StartUp"."H2OFilterOK" THEN "gSP_EV83" := TRUE; END_IF; // Network 10: STEP 01 (Original Language: STL) // --- BEGIN STL Network 10 --- A "Blender_Variables".gInUVLampReady A "AUX FALSE" = "__PlcmigTempFillBit_7B0" BLD 103 A "Procedure_Variables".TN301_StartUp.H2OFilterOK = "__PlcmigTempFillBit_7B1" BLD 103 A "Procedure_Variables".TN301_StartUp.Wait = "__PlcmigTempFillBit_7B2" BLD 103 A CLK_0.5S = "__PlcmigTempFillBit_7B3" BLD 103 CALL "_StepMove" A _Statusword_? JC END // --- END STL Network 10 --- // Network 11: STEP 02 (Original Language: LAD) // Step 2: Flush Deaireator Tank IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_DoubleDeair" AND "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Deaireation" AND "gFinalPressureOk" AND ("HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_InjectionPress_Ctrl" > 0) THEN "gSP_AVN328" := TRUE; END_IF; // Network 12: STEP 02 (Original Language: LAD) IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Deaireation" THEN "gSP_AVM312" := TRUE; END_IF; IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Deaireation" THEN "gSP_AVN314" := TRUE; END_IF; // Network 13: STEP 02 (Original Language: LAD) IF "AUX FALSE" THEN "gSP_LimitCO2PressValve" := TRUE; END_IF; // Network 14: STEP 02 (Original Language: LAD) IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_BlendFillSystem" THEN "gSP_AVM315" := TRUE; END_IF; // Network 15: STEP 02 (Original Language: LAD) IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_BlendFillSystem" THEN "gSP_AVM362" := TRUE; END_IF; IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_BlendFillSystem" THEN "gSP_AVM369" := TRUE; END_IF; // Network 16: STEP 02 (Original Language: STL) // --- BEGIN STL Network 16 --- A "AUX TRUE" = "__PlcmigTempFillBit_7B0" BLD 103 A "AUX TRUE" = "__PlcmigTempFillBit_7B1" BLD 103 A "Procedure_Variables".TN301_StartUp.Wait = "__PlcmigTempFillBit_7B2" BLD 103 A CLK_0.5S = "__PlcmigTempFillBit_7B3" BLD 103 CALL "_StepMove" A _Statusword_? JC END // --- END STL Network 16 --- // Network 17: STEP 03 (Original Language: LAD) // Step 3: In CASE OF SAG check that the product tank is empty before loading // product IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_DoubleDeair" AND "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Deaireation" AND "gFinalPressureOk" AND ("HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_InjectionPress_Ctrl" > 0) THEN "gSP_AVN328" := TRUE; END_IF; // Network 18: STEP 03 (Original Language: LAD) IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Deaireation" THEN "gSP_AVM312" := TRUE; END_IF; IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Deaireation" THEN "gSP_AVN314" := TRUE; END_IF; // Network 19: STEP 03 (Original Language: LAD) SEL_I(G := "HMI_Digital"."LSN301L"."Filtered" AND "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Deaireation", IN0 := 4, IN1 := 2); // Network 20: STEP 03 (Original Language: STL) // --- BEGIN STL Network 20 --- A_BRACK O "gPTM304_OkToRun" O "HMI_Blender_Parameters".Processor_Options.Blender_OPT._Deaireation BRACKET = "__PlcmigTempFillBit_7B0" BLD 103 A "AUX TRUE" A "AUX FALSE" = "__PlcmigTempFillBit_7B1" BLD 103 A "Procedure_Variables".TN301_StartUp.Wait = "__PlcmigTempFillBit_7B2" BLD 103 A CLK_0.5S = "__PlcmigTempFillBit_7B3" BLD 103 CALL "_StepMove" A _Statusword_? JC END // --- END STL Network 20 --- // Network 21: STEP 04 (Original Language: LAD) // Step 4: Wait FOR Vacuum if still product IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_DoubleDeair" AND "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Deaireation" AND "gFinalPressureOk" AND ("HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_InjectionPress_Ctrl" > 0) THEN "gSP_AVN328" := TRUE; END_IF; // Network 22: STEP 04 (Original Language: LAD) IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Deaireation" THEN "gSP_AVM312" := TRUE; END_IF; // Network 23: STEP 04 (Original Language: STL) // --- BEGIN STL Network 23 --- A "AUX TRUE" = "__PlcmigTempFillBit_7B0" BLD 103 A "AUX TRUE" = "__PlcmigTempFillBit_7B1" BLD 103 A "Procedure_Variables".TN301_StartUp.Wait = "__PlcmigTempFillBit_7B2" BLD 103 A CLK_0.5S = "__PlcmigTempFillBit_7B3" BLD 103 CALL "_StepMove" A _Statusword_? JC END // --- END STL Network 23 --- // Network 24: STEP 05 (Original Language: LAD) // Step 5: Wait Vacuum IF Still Product IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Deaireation" THEN "gSP_AVM312" := TRUE; END_IF; // Network 25: STEP 05 (Original Language: LAD) "mVacuumOk" := "gPTN313_Acheaved" OR ("HMI_Blender_Parameters"."Actual_Recipe_Parameters"."_Deareation_Vacum" AND "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_DoubleDeair"); // Network 26: STEP 05 (Original Language: STL) // --- BEGIN STL Network 26 --- A "mVacuumOk" = "__PlcmigTempFillBit_7B0" BLD 103 A "AUX TRUE" = "__PlcmigTempFillBit_7B1" BLD 103 A "Procedure_Variables".TN301_StartUp.Wait = "__PlcmigTempFillBit_7B2" BLD 103 A CLK_0.5S = "__PlcmigTempFillBit_7B3" BLD 103 CALL "_StepMove" A _Statusword_? JC END // --- END STL Network 26 --- // Network 27: STEP 06 (Original Language: LAD) // Step 6: Load Deair Tank Wait Minimum Level IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Deaireation" THEN "gSP_AVM312" := TRUE; END_IF; // Network 28: MIX - Procedure auxiliary variable (Original Language: LAD) IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Deaireation" AND "gFinalPressureOk" AND ("HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_InjectionPress_Ctrl" > 0) THEN "gSP_AVN328" := TRUE; END_IF; // Network 29: STEP 06 (Original Language: LAD) IF "AUX FALSE" THEN "gSP_RVN301" := TRUE; END_IF; IF "AUX FALSE" THEN "gSP_AVM322" := TRUE; END_IF; // Network 30: STEP 06 (Original Language: LAD) IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_DoubleDeair" THEN "gSP_PPN305" := TRUE; END_IF; IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_DoubleDeair" THEN "gSP_RVN301_1" := TRUE; END_IF; // Network 31: STEP 06 (Original Language: STL) // --- BEGIN STL Network 31 --- A_BRACK A "HMI_Digital".LSN301L.Filtered AN "HMI_Blender_Parameters".Processor_Options.Blender_OPT._DoubleDeair O A "HMI_Digital".LSN301L.Filtered A "HMI_Digital".LSN302L.Filtered A "HMI_Blender_Parameters".Processor_Options.Blender_OPT._DoubleDeair BRACKET = "__PlcmigTempFillBit_7B0" BLD 103 A "AUX TRUE" = "__PlcmigTempFillBit_7B1" BLD 103 A "Procedure_Variables".TN301_StartUp.Wait = "__PlcmigTempFillBit_7B2" BLD 103 A CLK_0.5S = "__PlcmigTempFillBit_7B3" BLD 103 CALL "_StepMove" A _Statusword_? JC END // --- END STL Network 31 --- // Network 32: STEP 07 (Original Language: LAD) // Step 7: close EV22 IF "gFinalPressureOk" AND ("HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_InjectionPress_Ctrl" > 0) THEN "gSP_AVN328" := TRUE; END_IF; // Network 33: STEP 07 (Original Language: LAD) IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Deaireation" THEN "gSP_AVM312" := TRUE; END_IF; // Network 34: STEP 07 (Original Language: LAD) IF "AUX FALSE" THEN "gSP_RVN301" := TRUE; END_IF; IF "AUX FALSE" THEN "gSP_PPN301" := TRUE; END_IF; // Network 35: STEP 07 (Original Language: LAD) IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_DoubleDeair" THEN "gSP_PPN305" := TRUE; END_IF; IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_DoubleDeair" THEN "gSP_RVN301_1" := TRUE; END_IF; // Network 36: Water Speed Prime OK (Original Language: LAD) "mAuxWaterSpeedPrimeOK" := "Profibus_Variables"."gFTN301_Flow" < 100.0; // Network 37: STEP 07 (Original Language: STL) // --- BEGIN STL Network 37 --- A "mAuxWaterSpeedPrimeOK" = "__PlcmigTempFillBit_7B0" BLD 103 A "AUX TRUE" = "__PlcmigTempFillBit_7B1" BLD 103 A "Procedure_Variables".TN301_StartUp.Wait = "__PlcmigTempFillBit_7B2" BLD 103 A CLK_0.5S = "__PlcmigTempFillBit_7B3" BLD 103 CALL "_StepMove" A _Statusword_? JC END // --- END STL Network 37 --- // Network 38: STEP 08 (Original Language: LAD) // Deaireator StartUp Sequence Completed IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Deaireation" AND "gFinalPressureOk" AND ("HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_InjectionPress_Ctrl" > 0) THEN "gSP_AVN328" := TRUE; END_IF; // Network 39: STEP 08 (Original Language: LAD) IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Deaireation" THEN "gSP_AVM312" := TRUE; END_IF; // Network 40: STEP 08 (Original Language: LAD) IF "AUX FALSE" THEN "gSP_RVN301" := TRUE; END_IF; IF "AUX FALSE" THEN "gSP_PPN301" := TRUE; END_IF; IF "AUX FALSE" THEN "gSP_AVM322" := TRUE; END_IF; // Network 41: STEP 08 (Original Language: LAD) IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_DoubleDeair" THEN "gSP_PPN305" := TRUE; END_IF; IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_DoubleDeair" THEN "gSP_RVN301_1" := TRUE; END_IF; // Network 42: STEP 08 (Original Language: LAD) SEL_I(G := "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_CoolerPresent", IN0 := 40, IN1 := 80); // Network 43: STEP 08 (Original Language: STL) // --- BEGIN STL Network 43 --- A "AUX TRUE" = "__PlcmigTempFillBit_7B0" BLD 103 A "AUX TRUE" = "__PlcmigTempFillBit_7B1" BLD 103 A "Procedure_Variables".TN301_StartUp.Wait = "__PlcmigTempFillBit_7B2" BLD 103 A CLK_0.5S = "__PlcmigTempFillBit_7B3" BLD 103 CALL "_StepMove" A _Statusword_? JC END // --- END STL Network 43 --- // Network 44: STEP 09 (Original Language: LAD) IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Deaireation" THEN "gSP_AVM312" := TRUE; END_IF; // Network 45: MIX - Procedure auxiliary variable (Original Language: LAD) IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Deaireation" AND "gFinalPressureOk" AND ("HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_InjectionPress_Ctrl" > 0) THEN "gSP_AVN328" := TRUE; END_IF; // Network 46: STEP 09 (Original Language: LAD) IF "AUX FALSE" THEN "gSP_RVN301" := TRUE; END_IF; IF "AUX FALSE" THEN "gSP_PPN301" := TRUE; END_IF; // Network 47: STEP 09 (Original Language: LAD) IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_DoubleDeair" THEN "gSP_PPN305" := TRUE; END_IF; IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_DoubleDeair" THEN "gSP_RVN301_1" := TRUE; END_IF; // Network 48: STEP 09 (Original Language: STL) // --- BEGIN STL Network 48 --- A "AUX TRUE" = "__PlcmigTempFillBit_7B0" BLD 103 A "AUX TRUE" = "__PlcmigTempFillBit_7B1" BLD 103 A "Procedure_Variables".TN301_StartUp.Wait = "__PlcmigTempFillBit_7B2" BLD 103 A CLK_0.5S = "__PlcmigTempFillBit_7B3" BLD 103 CALL "_StepMove" A _Statusword_? JC END // --- END STL Network 48 --- // Network 49: STEP 10 (Original Language: LAD) IF Eq("mStep", 10) THEN "Procedure_Variables"."TN301_StartUp"."Done" := TRUE; END_IF; // Network 50: SEQUENCER END (Original Language: STL) // --- BEGIN STL Network 50 --- END: NOP_0 // --- END STL Network 50 --- END_FUNCTION ```