```pascal // Block Type: FB // Block Number: 1782 // Original Network Languages: LAD // Block Comment: // TASK1 PID FUNCTION_BLOCK "PID_RMM303" { S7_Optimized_Access := 'TRUE' } VERSION : 0.1 VAR_STAT PID_CO2_Proportional : Real; PID_CO2_Integral : Real; PID_CO2_Derivative : Real; mCO2ValveOut : Real; mCO2PIDEn : Bool; PID : "PIDControl"; END_VAR VAR_TEMP mAux : Real; END_VAR BEGIN // Network 1: Manual Enable (Original Language: LAD) "HMI_PID"."RMM303"."ManualControl"."PidEnable" := ("gP_CarboPipe_En" AND "gWorkshopTest") OR ("gBlenderBlending" AND "Blender_Variables_Pers"."gCarboStillProduct" AND "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_RemoteInjection" AND "gWorkshopTest"); // Network 2: Setpoint (Original Language: LAD) "HMI_PID"."RMM303"."Sp" := "Blender_Variables"."gSP_CO2"; // Network 3: PV forcing (Original Language: LAD) IF "HMI_PID"."RMM303"."ManualControl"."PidEnable" AND "gBlenderStableFlow" AND "Procedure_Variables"."Blender_Rinse"."Running" AND "AUX FALSE" AND "gP_CarboPipe_En" THEN "HMI_PID"."RMM303"."Pv" := "HMI_PID"."RMM303"."Sp"; END_IF; // Network 4: Error Ok (Original Language: LAD) IF "HMI_Service"."Workshop_Test"."CO2TestRequest" AND "gWorkshopTest" THEN "mAux" := "HMI_Service"."Workshop_Test"."SIMCO2_Test_SP" - "HMI_PID"."RMM303"."Pv"; END_IF; // Network 5: Error Ok (Original Language: LAD) IF "HMI_Service"."Workshop_Test"."CO2TestRequest" THEN "HMI_Service"."Workshop_Test"."SIMCO2_Error_OK" := FALSE; END_IF; // Network 6: 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 "HMI_PID"."RMM303"."ManualControl"."ManOut", PID_Data := "HMI_PID"."RMM303", PID_Enable := "HMI_PID"."RMM303"."ManualControl"."PidEnable" OR "HMI_PID"."RMM303"."I_ITL", P_Sel := "AUX TRUE", REG_INV := "AUX FALSE"); // Network 7: Integral (Original Language: LAD) "mPID_RMM303_Int" := "PID_CO2_Integral"; // Network 8: Integral PID Inizialize (Original Language: LAD) IF "HMI_PID"."RMM303"."I_ITL" THEN "HMI_PID"."RMM303"."I_ITL" := FALSE; END_IF; // Network 9: C02 Valve Output (Original Language: LAD) // NBox SymPy processed, logic in consumer "mCO2PIDEn" := "HMI_PID"."RMM303"."ManualControl"."PidEnable"; // N_TRIG("HMI_PID"."RMM303"."ManualControl"."PidEnable") - Mem: "mCO2PIDEn" IF "mCO2PIDEn" AND NOT "HMI_PID"."RMM303"."ManualControl"."PidEnable" THEN "mCO2ValveOut" := "HMI_PID"."RMM303"."Out"; END_IF; // Network 10: C02 Valve Output (Original Language: LAD) SEL_R(G := "HMI_PID"."RMM303"."ManualControl"."PidEnable", IN0 := 0.0, IN1 := "HMI_PID"."RMM303"."Out"); END_FUNCTION_BLOCK ```