3.7 KiB
3.7 KiB
// 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