3.9 KiB
3.9 KiB
// Block Type: FC
// Block Number: 1881
// Original Network Languages: STL, LAD
// Block Comment:
// BYTES From PDS
// 28 - CO2 Carbo Package Co2 Inlet Prod
// 52-Temperature Carbo
// 92-Prod CO2
// 104 -Prod Temperature
// 108- Prod Brix
FUNCTION "mPDS_PA_Ctrl_Read" : Void
{ S7_Optimized_Access := 'TRUE' }
VERSION : 0.1
VAR_TEMP
mAux : Int;
mdummy : Bool;
ErrorBit : Array[0..7] of Bool;
END_VAR
#_25S : Bool; // Auto-generated temporary
BEGIN
// Network 1: Communication Active (Original Language: LAD)
// Network 1 did not produce printable SCL code.
// Network 2: Co2 (Original Language: LAD)
IF "E5_007161" THEN
LIMIT_R(IN := "P_PDS_CO2", MN := 0.0, MX := 150.0);
END_IF;
// Network 3: Brix (Original Language: LAD)
IF "P_PDS_Product_Brix" > 0.0 THEN
LIMIT_R(IN := "P_PDS_Product_Brix", MN := 0.0, MX := 8.0);
END_IF;
IF ("P_PDS_Product_Brix" > 11.0) OR ("E5_007161" AND "P_PDS_Running") THEN
"Blender_Variables"."gProductBrix" := "P_PDS_Product_Brix";
END_IF;
// Network 4: Temperature (Original Language: LAD)
IF "E5_007161" THEN
LIMIT_R(IN := "P_PDS_Temperature", MN := 0.0, MX := 150.0);
END_IF;
// Network 5: Density (Original Language: LAD)
IF "E5_007161" THEN
LIMIT_R(IN := "P_PDS_Density", MN := 0.0, MX := 150.0);
END_IF;
// Network 6: Line pressure (Original Language: LAD)
LIMIT_R(IN := "PAmPDS_Aux_Real_IN", MN := 0.0, MX := 10.0);
// Network 7: Temperature (Original Language: LAD)
LIMIT_R(IN := "P_PDS_Temperature", MN := 0.0, MX := 150.0);
// Network 8: Density (Original Language: LAD)
LIMIT_R(IN := "P_PDS_Density", MN := 0.0, MX := 5.0);
// Network 9: Data (Original Language: STL)
// --- BEGIN STL Network 9 ---
AN "HMI_Blender_Parameters".Processor_Options.Blender_OPT._PAmPDSType
A_BRACK
O "mPDS_PA_Data".Input_From_mPDS.gPAmPDS_ProfibusStatus._CommError
O "M18747"
BRACKET
AN "mPDS_PA_Data".Input_From_mPDS.gPAmPDS_Error
= "ErrorBit"[0]
A "ErrorBit"[0]
JNB _01e
L "mPDS_PA_Data".mPACountError
L 1
ADD_I
T "mPDS_PA_Data".mPACountError
_01e: NOP_0
A "ErrorBit"[0]
JNB _01f
L 0
T "Blender_Variables".gProductRecipeNum
_01f: NOP_0
A "ErrorBit"[0]
JNB _020
L 0
T "Blender_Variables".gProductCO2
_020: NOP_0
A "ErrorBit"[0]
JNB _021
L 0
T "Blender_Variables".gProductBrix
_021: NOP_0
A "ErrorBit"[0]
JNB _022
L 0
T "Blender_Variables".gProductDens
_022: NOP_0
A "ErrorBit"[0]
JNB _023
L 0
T "Blender_Variables".gProductTemp
_023: NOP_0
A "ErrorBit"[0]
JNB _024
L 0
T "Blender_Variables".gProductLinePress
_024: NOP_0
// --- END STL Network 9 ---
// Network 10: Count Error (Original Language: LAD)
IF "gBlenderCIPMode" OR ("mPDS_PA_Data"."Input_From_mPDS"."gPAmPDS_ProfibusStatus"."_CommError" AND "M18747") THEN
"mPDS_PA_Data"."mPACountError" := 0;
END_IF;
// Network 11: Error (Original Language: LAD)
"mPDS_PA_Data"."Input_From_mPDS"."gPAmPDS_Error" := "mPDS_PA_Data"."mPACountError" > 6;
// Network 12: Fault (Original Language: LAD)
"mPAmPDSTmrComErr"(IN := "gProdMeterTransferRecipe", PT := S5T#25S); // TODO: Declarar "mPAmPDSTmrComErr" : TON;
"gmPDS_PA_Error_Fault" := ("mPAmPDSTmrComErr".Q AND "mPDS_PA_Data"."Input_From_mPDS"."gPAmPDS_Error" AND "Procedure_Variables"."ProdBrix_Track"."Latch") OR ("mPAmPDSTmrComErr".Q AND "mPDS_PA_Data"."Input_From_mPDS"."gPAmPDS_Error" AND "Procedure_Variables"."ProdCO2_Track"."Latch");
// Network 13: Fault (Original Language: LAD)
// Network 13 did not produce printable SCL code.
// Network 14: (Original Language: LAD)
// ERROR: MOVE 23 sin destino claro.
// Network 15: (Original Language: LAD)
// Network 15 has no logic elements.
END_FUNCTION