```pascal // Block Type: FC // Block Name (Original): CPU_DP Global Diag // Block Number: 14 // Original Network Languages: STL, LAD // Block Comment: // *** PLC Profibus Node Comunication Control *** FUNCTION "CPU_DP_Global_Diag" : Void { S7_Optimized_Access := 'TRUE' } VERSION : 0.1 VAR_TEMP SZL_HEADER : "Struct"; END_VAR #_2S : Bool; // Auto-generated temporary BEGIN // Network 1: Air Pressure Switch (Original Language: STL) // Read Status PLC Led // --- BEGIN STL Network 1 --- AN "HMI CPU_DP Diag".Led_PLC.SFC_51.Busy = "HMI CPU_DP Diag".Led_PLC.SFC_51.REQ CALL _Call_? L "SZL_HEADER".LENGTHDR T "HMI CPU_DP Diag".Led_PLC.SFC_51.Length L "SZL_HEADER".N_DR T "HMI CPU_DP Diag".Led_PLC.SFC_51.Set_Data L "HMI CPU_DP Diag".Led_PLC.SF.Led_GR_FLT L "HMI CPU_DP Diag".Led_PLC.SF.Led_GR_ON_OFF L "HMI CPU_DP Diag".Led_PLC.SF.Flash_Led_Y_N ADD_I T "HMI CPU_DP Diag".Led_PLC.Staus.SF_ON L "HMI CPU_DP Diag".Led_PLC.RUN.Led_GR_FLT L "HMI CPU_DP Diag".Led_PLC.RUN.Led_GR_ON_OFF L "HMI CPU_DP Diag".Led_PLC.RUN.Flash_Led_Y_N ADD_I T "HMI CPU_DP Diag".Led_PLC.Staus.RUN_ON L "HMI CPU_DP Diag".Led_PLC.STOP.Led_GR_FLT L "HMI CPU_DP Diag".Led_PLC.STOP.Led_GR_ON_OFF L "HMI CPU_DP Diag".Led_PLC.STOP.Flash_Led_Y_N ADD_I T "HMI CPU_DP Diag".Led_PLC.Staus.STOP_ON L "HMI CPU_DP Diag".Led_PLC.Force.Led_GR_FLT L "HMI CPU_DP Diag".Led_PLC.Force.Led_GR_ON_OFF L "HMI CPU_DP Diag".Led_PLC.Force.Flash_Led_Y_N ADD_I T "HMI CPU_DP Diag".Led_PLC.Staus.FORCE_ON L "HMI CPU_DP Diag".Led_PLC.BF1.Led_GR_FLT L "HMI CPU_DP Diag".Led_PLC.BF1.Led_GR_ON_OFF L "HMI CPU_DP Diag".Led_PLC.BF1.Flash_Led_Y_N ADD_I T "HMI CPU_DP Diag".Led_PLC.Staus.BF1_ON L "HMI CPU_DP Diag".Led_PLC.BF2.Led_GR_FLT L "HMI CPU_DP Diag".Led_PLC.BF2.Led_GR_ON_OFF L "HMI CPU_DP Diag".Led_PLC.BF2.Flash_Led_Y_N ADD_I T "HMI CPU_DP Diag".Led_PLC.Staus.BF2_ON // --- END STL Network 1 --- // Network 2: HMI Global Diagnosis (Original Language: LAD) // Setting: // -DP Master #1 // -External DP Interface // -Manual/Automatic Mode IF "AUX TRUE" THEN "HMI CPU_DP Diag"."Cmd"."DP_Master_Number" := 1; END_IF; IF "AUX TRUE" THEN "HMI CPU_DP Diag"."Cmd"."External_Interface" := FALSE; END_IF; IF "AUX TRUE" THEN "HMI CPU_DP Diag"."Cmd"."Manual_Mode" := TRUE; END_IF; // Network 3: HMI Global Diagnosis (Original Language: LAD) // Set Check Active Fault // PBox SymPy processed, logic in consumer "HMI CPU_DP Diag"."Cmd"."FP_Reset" := "HMI CPU_DP Diag"."Cmd"."Reset"; // P_TRIG("HMI CPU_DP Diag"."Cmd"."Reset") - Mem: "HMI CPU_DP Diag"."Cmd"."FP_Reset" IF "M19510" OR "M19511" THEN "M19514" := TRUE; END_IF; // Network 4: HMI Global Diagnosis (Original Language: LAD) // Set Single Diag Request // PBox SymPy processed, logic in consumer "HMI CPU_DP Diag"."Cmd"."FP_Single_Diag" := "HMI CPU_DP Diag"."Cmd"."Single_Diag"; // P_TRIG("HMI CPU_DP Diag"."Cmd"."Single_Diag") - Mem: "HMI CPU_DP Diag"."Cmd"."FP_Single_Diag" IF "HMI CPU_DP Diag"."Cmd"."Single_Diag" AND NOT "HMI CPU_DP Diag"."Cmd"."FP_Single_Diag" THEN "M19515" := TRUE; END_IF; // Network 5: HMI Global Diagnosis (Original Language: LAD) // Reset First Access Page "T019"(IN := "HMI CPU_DP Diag"."Cmd"."Reset" OR "HMI CPU_DP Diag"."Cmd"."Single_Diag", PT := S5T#2S); // TODO: Declarar "T019" : TON; IF "HMI CPU_DP Diag"."Cmd"."Reset" AND "T019".Q THEN "HMI CPU_DP Diag"."Cmd"."Reset" := FALSE; END_IF; IF "HMI CPU_DP Diag"."Cmd"."Single_Diag" AND "T019".Q THEN "HMI CPU_DP Diag"."Cmd"."Single_Diag" := FALSE; END_IF; END_FUNCTION ```