70 lines
2.6 KiB
Markdown
70 lines
2.6 KiB
Markdown
```pascal
|
|
// Block Type: FC
|
|
// Block Number: 1700
|
|
// Original Network Languages: LAD
|
|
|
|
FUNCTION "CTRLCoolingSystem" : Void
|
|
{ S7_Optimized_Access := 'TRUE' }
|
|
VERSION : 0.1
|
|
|
|
VAR_TEMP
|
|
#_15S : Bool; // Auto-generated temporary
|
|
#_5S : Bool; // Auto-generated temporary
|
|
END_VAR
|
|
|
|
BEGIN
|
|
|
|
// Network 1: Cooling Bypass (Original Language: LAD)
|
|
// Controllo temperatura ingresso Acqua Glicolata attivando Bypass
|
|
// Gestisce inoltre isteresi per il reset iniziale a -4 °C
|
|
|
|
// PBox SymPy processed, logic in consumer
|
|
"gCoolingSystemBypassFP" := ("HMI_Instrument"."TTM307"."PVFiltered" <= -5.0) OR ("HMI_Instrument"."TTM307"."PVFiltered" <= -4.0); // P_TRIG(("HMI_Instrument"."TTM307"."PVFiltered" <= -5.0) OR ("HMI_Instrument"."TTM307"."PVFiltered" <= -4.0)) - Mem: "gCoolingSystemBypassFP"
|
|
|
|
IF (NOT "gCoolingSystemBypassFP" AND ("HMI_Instrument"."TTM307"."PVFiltered" <= -5.0)) OR (NOT "gCoolingSystemBypassFP" AND ("HMI_Instrument"."TTM307"."PVFiltered" <= -4.0)) THEN
|
|
"gCoolingSystemBypass" := TRUE;
|
|
END_IF;
|
|
|
|
"gCoolingTempMaxLowAlrm" := ("HMI_Instrument"."TTM307"."PVFiltered" <= -5.0) OR ("HMI_Instrument"."TTM307"."PVFiltered" <= -4.0);
|
|
|
|
// Network 2: Warning Low Temnperature (Original Language: LAD)
|
|
// warning di controllo per temperatura minima sotto i -3°C
|
|
|
|
"HMI_Alarms"."gH_Message" := "HMI_Instrument"."TTM307"."PVFiltered" <= -3.0;
|
|
|
|
// Network 3: Cooling Bypass (Original Language: LAD)
|
|
|
|
"gBypassGlicoleSysDelay"(IN := "gCoolingSystemBypass", PT := S5T#5S); // TODO: Declarar "gBypassGlicoleSysDelay" : TON;
|
|
|
|
IF "gBypassGlicoleSysDelay".Q THEN
|
|
"gCoolingSysBypassAct" := TRUE;
|
|
END_IF;
|
|
|
|
// Network 4: Cooling Bypass Reset (Original Language: LAD)
|
|
// Il controllo della temperatura può essere eseguito confrontando:
|
|
// - TTM307 tramite il parametro di riferimento controllo temperatura impostato a
|
|
// pannello
|
|
|
|
"gRSTBYPSGlicoleSys"(IN := "HMI_Instrument"."TTM307"."PVFiltered" >= "HMI_Blender_Parameters"."ProcessSetup"."_RefTempCoolingCTRL", PT := S5T#15S); // TODO: Declarar "gRSTBYPSGlicoleSys" : TON;
|
|
|
|
// Network 5: Cooling System Bypass Reset (Original Language: LAD)
|
|
|
|
"gColingSystemBypassReset" := "gRSTBYPSGlicoleSys";
|
|
|
|
// Network 6: Mix - Reset Bypass Glycole (Original Language: LAD)
|
|
|
|
// PBox SymPy processed, logic in consumer
|
|
"gColingSysBypassResetFP" := "gColingSystemBypassReset"; // P_TRIG("gColingSystemBypassReset") - Mem: "gColingSysBypassResetFP"
|
|
|
|
IF "gColingSystemBypassReset" AND NOT "gColingSysBypassResetFP" THEN
|
|
"gCoolingSystemBypass" := FALSE;
|
|
END_IF;
|
|
|
|
IF "gColingSystemBypassReset" AND NOT "gColingSysBypassResetFP" THEN
|
|
"gCoolingSysBypassAct" := FALSE;
|
|
END_IF;
|
|
|
|
END_FUNCTION
|
|
|
|
```
|