```pascal // Block Type: FB // Block Number: 1781 // Original Network Languages: LAD // Block Comment: // TASK1 PID FUNCTION_BLOCK "PID_RMP302" { S7_Optimized_Access := 'TRUE' } VERSION : 0.1 VAR_STAT PID_Syrup_Proportional : Real; PID_Syrup_Integral : Real; PID_Syrup_Derivative : Real; Syrup_Valve_Out : Real; mSyrPIDEn : Bool; PID : "PIDControl"; END_VAR BEGIN // Network 1: Manual Enable (Original Language: LAD) "HMI_PID"."RMP302"."ManualControl"."PidEnable" := "gBlenderCIPMode" OR ("gBlenderBlending" AND "Blender_Variables_Pers"."gWaterRecipe"); // Network 2: Setpoint (Original Language: LAD) "HMI_PID"."RMP302"."Sp" := "Blender_Variables"."gSP_SYR"; // Network 3: PV forcing (Original Language: LAD) IF "HMI_PID"."RMP302"."ManualControl"."PidEnable" AND "gBlenderStableFlow" AND "Procedure_Variables"."FTP302Line_Preparation"."Latch" AND "Procedure_Variables"."FTP302_StartUp"."Latch" AND "gSyrupQcoRinse" THEN "HMI_PID"."RMP302"."Pv" := "HMI_PID"."RMP302"."Sp"; END_IF; // Network 4: PID Control (Original Language: LAD) // Attenzione al Bit REG_INV !! "PID"(D_Sel := "AUX TRUE", FF_Enable := "AUX TRUE", I_Sel := "AUX TRUE", LMN_FAC := 1.0, LMN_OFF := 0.0, MAN_ON := "gBlenderCIPMode" OR ("gRinseClose_RMP302" AND "System_RunOut_Variables"."FastChangeOverActivated" AND "Procedure_Variables"."Blender_Rinse"."Running"), PID_Data := "HMI_PID"."RMP302", PID_Enable := "HMI_PID"."RMP302"."ManualControl"."PidEnable" OR "HMI_PID"."RMP302"."I_ITL", P_Sel := "AUX TRUE", REG_INV := "AUX FALSE"); // Network 5: Integral (Original Language: LAD) "mPID_RMP302_Int" := "PID_Syrup_Integral"; // Network 6: Integral PID Inizialize (Original Language: LAD) IF "HMI_PID"."RMP302"."I_ITL" THEN "HMI_PID"."RMP302"."I_ITL" := FALSE; END_IF; // Network 7: Valve Output (Original Language: LAD) // NBox SymPy processed, logic in consumer "mSyrPIDEn" := "HMI_PID"."RMP302"."ManualControl"."PidEnable"; // N_TRIG("HMI_PID"."RMP302"."ManualControl"."PidEnable") - Mem: "mSyrPIDEn" IF "mSyrPIDEn" AND NOT "HMI_PID"."RMP302"."ManualControl"."PidEnable" THEN "Syrup_Valve_Out" := "HMI_PID"."RMP302"."Out"; END_IF; // Network 8: Valve Output (Original Language: LAD) SEL_R(G := "HMI_PID"."RMP302"."ManualControl"."PidEnable", IN0 := 0.0, IN1 := "HMI_PID"."RMP302"."Out"); END_FUNCTION_BLOCK ```