Obsidean_VM/04-SIDEL/00 - MASTER/Source/source/Input.md

863 lines
36 KiB
Markdown

```pascal
// Block Type: FB
// Block Number: 1718
// Original Network Languages: STL, LAD
FUNCTION_BLOCK "Input"
{ S7_Optimized_Access := 'TRUE' }
VERSION : 0.1
VAR_STAT
CO2_LowPressure : Bool;
H_Fault_Temp : Bool;
L_Fault_Temp : Bool;
mRealTemp : Real;
mCO2PressOkON : Bool;
mDelayFaultAVM346ON : Bool;
mDelayFaultAVM362ON : Bool;
mDelayFaultAVM327ON : Bool;
mDelayFaultAVM328ON : Bool;
mDeairTank_VacuumOkON : Bool;
mDeairTank_VacuumFltON : Bool;
mFlrRinseTankMaxLvlON : Bool;
mFlrRinseTankMinLvlON : Bool;
mFiller1ProReqDlyON : Bool;
mFiller2ProReqDlyON : Bool;
mFillerEndTankFillingON : Bool;
mFillerCIPReadyDlyON : Bool;
mUVLampDelayReadyON : Bool;
mUVLampDelayFaultON : Bool;
mUVLampDelayTempHighON : Bool;
mDeairTank_DelayFaultON : Bool;
mRVM301_DelayFaultON : Bool;
mCO2PressOk : "TON_TIME:v1.0";
mDelayFaultAVP361 : "TON_TIME:v1.0";
mDelayFaultAVM342 : "TON_TIME:v1.0";
mDelayFaultAVM341 : "TON_TIME:v1.0";
mDelayFaultAVM346 : "TON_TIME:v1.0";
mDelayFaultAVM362 : "TON_TIME:v1.0";
mDelayFaultAVM369 : "TON_TIME:v1.0";
mDelayFaultAVM327 : "TON_TIME:v1.0";
mDelayFaultAVN314 : "TON_TIME:v1.0";
mDelayFaultAVM317 : "TON_TIME:v1.0";
mDelayFaultAVM316 : "TON_TIME:v1.0";
mDelayFaultAVM315 : "TON_TIME:v1.0";
mDelayFaultAVM314 : "TON_TIME:v1.0";
mDelayFaultAVM313 : "TON_TIME:v1.0";
mDelayFaultAVM312 : "TON_TIME:v1.0";
mDelayFaultAVM311 : "TON_TIME:v1.0";
mDelayFaultAVM323_2 : "TON_TIME:v1.0";
mDelayFaultAVM323_1 : "TON_TIME:v1.0";
mDelayFaultAVM321 : "TON_TIME:v1.0";
mDelayFaultAVM324 : "TON_TIME:v1.0";
mDelayFaultAVN318 : "TON_TIME:v1.0";
mDelayFaultAVM322 : "TON_TIME:v1.0";
mDelayFaultAVM326 : "TON_TIME:v1.0";
mDelayFaultAVN328 : "TON_TIME:v1.0";
mDelayFaultAVN327 : "TON_TIME:v1.0";
mDelayFaultAVM323 : "TON_TIME:v1.0";
mDelayFaultAVM388 : "TON_TIME:v1.0";
mDelayFaultAVM389 : "TON_TIME:v1.0";
mDelayFaultAVN395 : "TON_TIME:v1.0";
mDelayFaultAVP317 : "TON_TIME:v1.0";
mDelayFaultAVP316_1 : "TON_TIME:v1.0";
mDelayFaultAVP316 : "TON_TIME:v1.0";
mDelayFaultAVP317_1 : "TON_TIME:v1.0";
mDelayFaultAVP391 : "TON_TIME:v1.0";
mDelayFaultAVP344 : "TON_TIME:v1.0";
mDelayFaultAVP324 : "TON_TIME:v1.0";
mDelayFaultAVM328 : "TON_TIME:v1.0";
mDeairTank_VacuumOk : "TON_TIME:v1.0";
mDeairTank_VacuumFlt : "TOF_TIME:v1.0";
mFlrRinseTankMaxLvl : "TON_TIME:v1.0";
mFlrRinseTankMinLvl : "TOF_TIME:v1.0";
mFillerProReqDly : "TON_TIME:v1.0";
mFiller2ProReqDly : "TON_TIME:v1.0";
mFillerEndTankFilling : "TOF_TIME:v1.0";
mFillerCIPReadyDly : "TOF_TIME:v1.0";
mFiller2CIPReadyDly : "TOF_TIME:v1.0";
mUVLampDelayReady : "TON_TIME:v1.0";
mUVLampDelayFault : "TON_TIME:v1.0";
mUVLampDelayTempHigh : "TON_TIME:v1.0";
mDeairTank_DelayFault : "TON_TIME:v1.0";
mRVM301_DelayFault : "TON_TIME:v1.0";
Deair_Water_Temp : "LowPassFilter";
Product_Tank_Level : "LowPassFilter";
C1_Conductivity_Caustic : "LowPassFilter";
C1_Conductivity_Water : "LowPassFilter";
CIP_Retur_Temperature : "LowPassFilter";
Fille_Level : "LowPassFilter";
Syrup_Conductivity : "LowPassFilter";
Product_Conductivity : "LowPassFilter";
Deaireator_Pressure : "LowPassFilter";
CO2InjPressFlted : "LowPassFilter";
DeairValveFlted : "LowPassFilter";
ProductO2Conc : "LowPassFilter";
NorgrenPressSafety : "LowPassFilter";
mDelayFaultAVM317_1 : "TON_TIME:v1.0";
END_VAR
VAR_TEMP
mF8_AuxiliaryOn_ONS : Bool;
mF1_StartStop_ONS : Bool;
mDummy : Bool;
mCalc : Real;
mCO2InjPressThreshold : Real;
mCO2InjPressNotOk : Bool;
mSyrTankMinLevel : Bool;
mDivertPanelSensor : Bool;
mRVN304Fault : Bool;
mRVN305Fault : Bool;
mProdTankPressValveFault : Bool;
mH_Fault : Bool;
mL_Fault : Bool;
mAuxDI : DInt;
mFTFS : Real;
mAuxInt1 : Int;
mAuxInt2 : Int;
mAI_RVM301 : Word;
mAuxFlowTronic : Real;
AuxManifoldCIP_Stat : Bool;
AuxManifoldProd_Stat : Bool;
AuxNot_WST : Bool;
PCM306_Error : Real;
PCM306_MaxError : Real;
RVN304_MaxError : Real;
RVN305_MaxError : Real;
END_VAR
#_15S : Bool; // Auto-generated temporary
#_1M : Bool; // Auto-generated temporary
#_2S : Bool; // Auto-generated temporary
#_30S : Bool; // Auto-generated temporary
#_30s : Bool; // Auto-generated temporary
#_3s : Bool; // Auto-generated temporary
#_5S : Bool; // Auto-generated temporary
#_6s : Bool; // Auto-generated temporary
#TOF_INSTANCE_31 : Bool; // Auto-generated temporary
#TOF_INSTANCE_33 : Bool; // Auto-generated temporary
#TON_INSTANCE_25 : Bool; // Auto-generated temporary
#TON_INSTANCE_27 : Bool; // Auto-generated temporary
#TON_INSTANCE_28 : Bool; // Auto-generated temporary
#TON_INSTANCE_29 : Bool; // Auto-generated temporary
#TON_INSTANCE_30 : Bool; // Auto-generated temporary
#TON_INSTANCE_32 : Bool; // Auto-generated temporary
#TON_INSTANCE_36 : Bool; // Auto-generated temporary
BEGIN
// Network 1: Check Flow Meter (Original Language: LAD)
Input_CheckFlowMetersSta();
// Network 2: MIX - Use during Workshop test - BF - (Original Language: LAD)
"gWorkshopTest" := "HMI_Service"."Workshop_Test"."WorkshopTest";
IF NOT "HMI_Service"."Workshop_Test"."WorkshopTest" THEN
"HMI_Service"."Workshop_Test"."SIMTestWithGas" := FALSE;
END_IF;
"gWorkshop_Syrup_Test" := "HMI_Service"."Workshop_Test"."WorkshopTest" AND "HMI_Service"."Workshop_Test"."SyrupTestRequest";
"gWorkshop_CIP_Signals" := "HMI_Service"."Workshop_Test"."WorkshopTest" AND "HMI_Service"."Workshop_Test"."CIPSignalsTestRequest";
"gWorkshop_Filler_Signals_SIM" := "HMI_Service"."Workshop_Test"."WorkshopTest" AND "HMI_Service"."Workshop_Test"."FillerSignalsTestRequest";
"gWorkshop_Co2_Presence" := "HMI_Service"."Workshop_Test"."WorkshopTest" AND "HMI_Service"."Workshop_Test"."CO2TestPresent";
// Network 3: Auxiliary On (Original Language: LAD)
"mAuxiliaryOn" := ("DI_AuxVoltage_On" AND "DI_Emergency_Pilz_On" AND "DI_Emergency_Pressed") OR ("DO_CtrlCircuitRun" AND "DI_Emergency_Pilz_On" AND "DI_Emergency_Pressed");
// Network 4: Voltage Ok (Original Language: LAD)
"gIN_VoltageOk" := "mAuxiliaryOn" AND "DI_AuxVoltage_On";
// Network 5: E-Stop Pressed (Original Language: LAD)
"HMI_Alarms"."gH_Message" := "DI_Emergency_Pressed";
// Network 6: Shut Down (Original Language: LAD)
"HMI_Variables_Status"."Procedures"."ShutDownRequest" := "DI_UPSsupply" AND "HMI_ShutDownDelay";
// Network 7: (Original Language: LAD)
"T169"(IN := "DO_HMIPowerSupply", PT := S5T#1M); // TODO: Declarar "T169" : TON;
// Network 8: Temp Too High (Original Language: LAD)
"gElCabTooHigh" := "DI_MaxTempAlarm";
// Network 9: Horn Reset (Original Language: LAD)
"gIN_ResetHorn" := ("HMI_Variables_Cmd"."Commands_From_HMI"."F9_HornReset"."Command" AND "HMI_Variables_Cmd"."Commands_From_HMI"."F9_HornReset"."Enable") OR ("DI_PB_HornReset" AND "HMI_Variables_Cmd"."Commands_From_HMI"."F9_HornReset"."Enable");
// Network 10: Reset (Original Language: LAD)
"gIN_ResetBtn" := "DI_AlarmReset" OR ("HMI_Variables_Cmd"."Commands_From_HMI"."F10_FaultReset"."Command" AND "HMI_Variables_Cmd"."Commands_From_HMI"."F10_FaultReset"."Enable");
// Network 11: StartStop (Original Language: LAD)
// Edge Logic handled by Coil 28
"M19025" := "HMI_Variables_Cmd"."Commands_From_HMI"."F1_StartStop"."Command" AND "HMI_Variables_Cmd"."Commands_From_HMI"."F1_StartStop"."Enable"; // P_TRIG("HMI_Variables_Cmd"."Commands_From_HMI"."F1_StartStop"."Command" AND "HMI_Variables_Cmd"."Commands_From_HMI"."F1_StartStop"."Enable") - Mem: "M19025"
"mF1_StartStop_ONS" := "HMI_Variables_Cmd"."Commands_From_HMI"."F1_StartStop"."Command" AND "HMI_Variables_Cmd"."Commands_From_HMI"."F1_StartStop"."Enable" AND NOT "M19025";
"M19025" := "HMI_Variables_Cmd"."Commands_From_HMI"."F1_StartStop"."Command" AND "HMI_Variables_Cmd"."Commands_From_HMI"."F1_StartStop"."Enable"; // P_TRIG("HMI_Variables_Cmd"."Commands_From_HMI"."F1_StartStop"."Command" AND "HMI_Variables_Cmd"."Commands_From_HMI"."F1_StartStop"."Enable") - Mem: "M19025"
// Network 12: Stop (Original Language: LAD)
"gIN_StopBtn" := "mF1_StartStop_ONS" AND "HMI_Variables_Cmd"."Commands_From_HMI"."F1_StartStop"."Light";
// Network 13: Start (Original Language: LAD)
"gIN_StartBtn" := "mF1_StartStop_ONS" AND "HMI_Variables_Cmd"."Commands_From_HMI"."F1_StartStop"."Light";
// Network 14: Use during Workshop test - BF - (Original Language: LAD)
"mCO2InjPressThreshold" := "HMI_Blender_Parameters"."ProcessSetup"."_PPN301Pressure" + 0.1;
SEL_R(G := "Blender_Variables_Pers"."gCarboStillRecipe" AND "gBlenderRinseMode", IN0 := "HMI_Blender_Parameters"."ProcessSetup"."_N2MinPressure", IN1 := "mCO2InjPressThreshold");
"mDummy" := TRUE;
// Network 15: Use during Workshop test - BF - (Original Language: LAD)
"mCalc" := "mCO2InjPressThreshold" / 2.0;
SEL_R(G := "Procedure_Variables"."TN301_StartUp"."Latch", IN0 := "mCO2InjPressThreshold", IN1 := "mCalc");
"mDummy" := TRUE;
// Network 16: C02 Injection Not Ok (Original Language: LAD)
"mCO2InjPressNotOk" := Eq("HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_InjectionPress_Ctrl", 0) OR ("HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_InjectionPress_Ctrl" > 0);
// Network 17: CO2 Low Presure Fault (Original Language: LAD)
"gCO2PressNotOk" := ("Procedure_Variables"."BlendFill_StartUp"."Done" AND "mCO2InjPressNotOk" AND "gWorkshopTest" AND "gBlenderCIPMode") OR ("Procedure_Variables"."BlendFill_StartUp"."Latch" AND "mCO2InjPressNotOk" AND "gWorkshopTest" AND "gBlenderCIPMode" AND ("HMI_PID"."RVM301"."Out" < 50.0));
// Network 18: Co2 Line Pressure Ok (Original Language: LAD)
"gIN_LinePressCO2Ok" := "gCO2LowPress_Fault";
// Network 19: CO2 inlet line pressure not stable (Original Language: LAD)
"HMI_Alarms"."gH_Message" := "Blender_Variables_Pers"."gCarboStillRecipe" AND "gCO2LowPress_Fault" AND "gBlenderBlending" AND ("HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_InjectionPress_Ctrl" > 0);
IF "Blender_Variables_Pers"."gCarboStillRecipe" AND "gCO2LowPress_Fault" AND "gBlenderBlending" AND ("HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_InjectionPress_Ctrl" > 0) THEN
"mCalc" := "HMI_PID"."PCM306"."Sp" - "HMI_Instrument"."PCM306"."PVFiltered";
END_IF;
// Network 20: *** (Original Language: LAD)
// Network 20 has no logic elements.
// Network 21: MIX - (Original Language: LAD)
"HMI_Device"."AVM362"."FeedBackOff" := "HMI_Device"."AVM362"."Config" AND "HMI_Device"."AVM362"."Out" AND "DI_AVM362_Close";
"HMI_Device"."AVM362"."FeedBackOn" := "HMI_Device"."AVM362"."Config" AND "HMI_Device"."AVM362"."Out" AND "DI_AVM362_Open";
// Network 22: AVM362 Fault Valve (Original Language: LAD)
#TON_INSTANCE_32(IN := ("DI_AVM362_Close" AND "HMI_Device"."AVM362"."FeedBackOff") OR ("DI_AVM362_Open" AND "HMI_Device"."AVM362"."FeedBackOn"), PT := T#5S); // TODO: Declarar #TON_INSTANCE_32 : TON;
"gAVM362Fault" := #TON_INSTANCE_32.Q;
// Network 23: MIX - (Original Language: LAD)
"HMI_Device"."AVM346"."FeedBackOff" := "HMI_Device"."AVM346"."Config" AND "HMI_Device"."AVM346"."Out" AND "DI_AVM346_Close";
"HMI_Device"."AVM346"."FeedBackOn" := "HMI_Device"."AVM346"."Config" AND "HMI_Device"."AVM346"."Out" AND "DI_AVM346_Open";
// Network 24: AVM346 Fault Valve (Original Language: LAD)
#TON_INSTANCE_36(IN := ("gWorkshopTest" AND "DI_AVM346_Close" AND "HMI_Device"."AVM346"."FeedBackOff") OR ("gWorkshopTest" AND "DI_AVM346_Open" AND "HMI_Device"."AVM346"."FeedBackOn"), PT := T#5S); // TODO: Declarar #TON_INSTANCE_36 : TON;
"gAVM346Fault" := #TON_INSTANCE_36.Q;
// Network 25: Raw signal (Original Language: LAD)
"HMI_Digital"."_PAL_S11"."Raw" := "DI_Air_InletPress_OK";
"HMI_Digital"."_PAL_S11"."Filtered" := "DI_Air_InletPress_OK";
// Network 26: Syrup Line Drain Valve Aux (Original Language: LAD)
"gIN_HVP301_Aux" := "AUX TRUE" AND "DI_HVP301_Sensor";
// Network 27: Water Manual Drain Valve Aux (Original Language: LAD)
"gIN_HVM302_Aux" := "DI_HVM302_Sensor" AND "AUX FALSE";
// Network 28: Raw signal (Original Language: LAD)
"HMI_Digital"."FSS301"."Raw" := "DI_FSS301";
// Network 29: Raw signal (Original Language: LAD)
"HMI_Digital"."LSN301L"."Raw" := "DI_LSN301L";
// Network 30: Raw signal (Original Language: LAD)
"HMI_Digital"."LSN302L"."Raw" := "DI_Min_Deair2_Level";
// Network 31: Raw signal (Original Language: LAD)
"HMI_Digital"."LSM302L"."Raw" := "DI_LSM302L";
// Network 32: Raw signal (Original Language: LAD)
"HMI_Digital"."LAL_S3"."Raw" := "DI_Min_Syrup_Level";
// Network 33: Deaireator Tank Vacuum OK (Original Language: LAD)
#TON_INSTANCE_29(IN := "DI_DeairVacuumOk" OR "gDeairTank_VacuumOk", PT := T#15S); // TODO: Declarar #TON_INSTANCE_29 : TON;
#TOF_INSTANCE_31(IN := #TON_INSTANCE_29.Q, PT := T#15S); // TODO: Declarar #TOF_INSTANCE_31 : TOF;
"gIN_DeairTank_Vacuum_Ok" := #TOF_INSTANCE_31.Q;
// Network 34: Water Valve Closed (Original Language: LAD)
"gIN_RMM301_Closed" := "DI_RMM301_Closed";
// Network 35: Syrup Valve Closed (Original Language: LAD)
"gIN_RMP302_Closed" := "DI_RMP302_Closed";
// Network 36: Carbo CO2 Valve Closed (Original Language: LAD)
"gIN_RMM303_Closed" := "DI_RMM303_Closed";
// Network 37: GAS2 Valve Closed (Original Language: LAD)
"gIN_RMM304_Closed" := "DI_RMM304_Closed";
// Network 38: Water Pump FC Ready (Original Language: LAD)
"gIN_PPN301_FCReady" := "HMI_PID"."PPN301"."Config" AND "PPN301_B01_DriveReady" AND "PPN301_B03_Trip";
// Network 39: Syrup Pump FC Ready (Original Language: LAD)
"gIN_PPP302_FCReady" := "HMI_PID"."PPP302"."Config" AND "PPP302_B01_DriveReady" AND "PPP302_B03_Trip";
// Network 40: Product Pump FC Ready (Original Language: LAD)
"gIN_PPM303_FCReady" := "PPM303_B01_DriveReady" AND "PPM303_B03_Trip";
// Network 41: From Syrup Room Syrup ready (Original Language: LAD)
"gIN_SyrRoomOk" := ("DI_SyrRoom_SyrPump_Running" AND "gBlenderProdMode" AND "DI_SyrRoom_Cip_Mode") OR ("Procedure_Variables"."Syr_RunOut"."Latch" AND "DI_SYRUP_Runout" AND "gBlenderProdMode" AND "DI_SyrRoom_Cip_Mode");
"Interlocking_Variables"."SYRUP_ROOM_REC_DATA"."Syrup_1_Ready" := ("DI_SyrRoom_SyrPump_Running" AND "gBlenderProdMode" AND "DI_SyrRoom_Cip_Mode") OR ("Procedure_Variables"."Syr_RunOut"."Latch" AND "DI_SYRUP_Runout" AND "gBlenderProdMode" AND "DI_SyrRoom_Cip_Mode");
"Interlocking_Variables"."SYRUP_ROOM_REC_DATA"."Syrup_2_Ready" := ("DI_SyrRoom_SyrPump_Running" AND "gBlenderProdMode" AND "DI_SyrRoom_Cip_Mode") OR ("Procedure_Variables"."Syr_RunOut"."Latch" AND "DI_SYRUP_Runout" AND "gBlenderProdMode" AND "DI_SyrRoom_Cip_Mode");
// Network 42: Syrup RunOut (Original Language: LAD)
"Interlocking_Variables"."SYRUP_ROOM_REC_DATA"."Syrup_RunOut" := "DI_SYRUP_Runout" AND "gBlenderProdMode" AND "DI_SyrRoom_Cip_Mode";
// Network 43: Syrup Room Alarm (Original Language: LAD)
"Interlocking_Variables"."SYRUP_ROOM_REC_DATA"."Syrup_Room_Alarm" := "gBlenderProdMode" AND "DI_SyrRoom_Pump_Ready";
// Network 44: Syrup Room CIP (Original Language: LAD)
"Interlocking_Variables"."SYRUP_ROOM_REC_DATA"."Syrup_Room_Cip" := "DI_SyrRoom_Cip_Mode";
// Network 45: AVM327 Status (Original Language: LAD)
"HMI_Device"."AVM327_NoCMD"."Out" := "Interlocking_Variables"."SIMO_FILLER_REC_DATA"."MixProof_AVM327_Status";
// Network 46: Divert Panel Sensor (Original Language: LAD)
"mDivertPanelSensor" := Eq("HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_DivertPanel", 1);
// Network 47: MainFold Not Ready Prod (Original Language: LAD)
"gIN_ManifoldNotReadyProd" := "gBlenderRinseMode" AND "gBlenderCIPMode" AND "AuxManifoldCIP_Stat" AND "Procedure_Variables"."Blender_Run"."Latch" AND "mDivertPanelSensor";
// Network 48: MainFold Not Ready CIP (Original Language: LAD)
"gIN_ManifoldNotReadyCIP" := "gBlenderRinseMode" AND "gBlenderCIPMode" AND "Procedure_Variables"."Blender_Run"."Latch" AND "mDivertPanelSensor" AND "AuxManifoldProd_Stat";
// Network 49: Filler product request delay (Original Language: LAD)
"gIN_FillerProdReady" := "Interlocking_Variables"."SIMO_FILLER_REC_DATA"."PROD_Selected" OR "Interlocking_Variables"."FILLER_MIXER_RECEIVE"."PROD_Selected";
// Network 50: FillerProReqDly (Original Language: LAD)
"gIN_Filler1ProductReq" := "Interlocking_Variables"."SIDEL_FILLER_REC_DATA"."PROD_Request" OR "Interlocking_Variables"."FILLER_MIXER_RECEIVE"."GEN_AVM362_Enable";
"gIN_Filler_AVM362_En" := "Interlocking_Variables"."SIDEL_FILLER_REC_DATA"."PROD_Request" OR "Interlocking_Variables"."FILLER_MIXER_RECEIVE"."GEN_AVM362_Enable";
// Network 51: FillerProReqDly (Original Language: LAD)
"gIN_Filler2ProductReq" := "DI_Flr2_PROD_Request";
"gIN_Filler_AVM363_En" := "DI_Flr2_PROD_Request";
// Network 52: Filler Filling (Original Language: LAD)
"gIN_FillerBottleFilling" := "Interlocking_Variables"."FILLER_MIXER_RECEIVE"."PROD_Bott_Filling";
// Network 53: Filler End Flushing (Original Language: LAD)
// gBlendFillReceiveData.Prod_BottlePresence
"gIN_FillerEndFlushing" := "Interlocking_Variables"."FILLER_MIXER_RECEIVE"."PROD_End_Flushing" OR ("gWorkshopTest" AND "gWorkshop_Filler_Signals_SIM" AND "HMI_Service"."Workshop_Test"."SIMFillerEndFlushing");
// Network 54: Filler End Tank (Original Language: LAD)
// gBlendFillReceiveData.Prod_End_Tank_Filling
#TOF_INSTANCE_33(IN := "Interlocking_Variables"."FILLER_MIXER_RECEIVE"."PROD_End_Tank_Filling" OR ("gWorkshopTest" AND "gWorkshop_Filler_Signals_SIM" AND "HMI_Service"."Workshop_Test"."SIMFillerEndTankFilling"), PT := T#2S); // TODO: Declarar #TOF_INSTANCE_33 : TOF;
"gIN_FillerEndTankFilling" := #TOF_INSTANCE_33.Q AND "mFillerEndTankFillingON";
// Network 55: Rinse Complete (Original Language: LAD)
"System_RunOut_Variables"."In_Flr_FastRinseComplete" := "Interlocking_Variables"."SIMO_FILLER_REC_DATA"."CIP_RinseCompleted" OR "Interlocking_Variables"."FILLER_MIXER_RECEIVE"."RINSE_Ended";
// Network 56: Last Container (Original Language: LAD)
"System_RunOut_Variables"."In_Flr_LastContainer" := "DI_Flr_EndProdLastBottleFilled" OR "Interlocking_Variables"."SIMO_FILLER_REC_DATA"."PROD_Last_Bottle";
// Network 57: Water Rinser Request (Original Language: LAD)
"System_RunOut_Variables"."In_Flr_WaterRinseRequest" := "Interlocking_Variables"."SIMO_FILLER_REC_DATA"."Fast_ChangeOver_WaterReq" OR "Interlocking_Variables"."SIMO_FILLER_REC_DATA"."CIP_RinseRequest";
// Network 58: Filler AVM346 En (Original Language: LAD)
"gIN_Filler_AVM346_En" := "Interlocking_Variables"."FILLER_MIXER_RECEIVE"."GEN_AVM346_Enable" OR ("HMI_Service"."Workshop_Test"."SIMFillerAVM346Enable" AND "gWorkshopTest");
// Network 59: Filler CIP Request (Original Language: LAD)
#TON_INSTANCE_30(IN := "DI_Flr1_CIP/RinseFiller" OR "gWorkshopTest", PT := T#5S); // TODO: Declarar #TON_INSTANCE_30 : TON;
"gIN_FillerCIPRequest" := #TON_INSTANCE_30.Q;
// Network 60: Filler2 CIP Request (Original Language: LAD)
#TON_INSTANCE_28(IN := "DI_Flr2_CIP/RinseFiller" OR "gWorkshopTest", PT := T#5S); // TODO: Declarar #TON_INSTANCE_28 : TON;
"gIN_Filler2CIPRequest" := #TON_INSTANCE_28.Q;
// Network 61: Filler CIp Cycle Ended (Original Language: LAD)
"gIN_FillerCIPCycleEnded" := "Interlocking_Variables"."SIMO_FILLER_REC_DATA"."CIP_FlipCompleted" OR "Interlocking_Variables"."FILLER_MIXER_RECEIVE"."CIP_FlipFlop_Completed";
// Network 62: From Filler Drain Completed (Original Language: LAD)
"gIN_FillerCIPDrainCompl" := "DI_Flr1_CIP_DrainComplete" OR "Interlocking_Variables"."SIMO_FILLER_REC_DATA"."CIP_DrainCompleted";
// Network 63: From Filler Spare (Original Language: LAD)
"gIN_FillerCIPChangeReady" := "DI_Flr1_CIP/RinseFiller" OR "DI_Flr_CIP_RecoverReq";
// Network 64: From Filler CIP Open AVM313 (Original Language: LAD)
"T121"(IN := "T122" AND "gBlenderCIPMode" AND "Procedure_Variables"."Blender_Run"."Latch", PT := S5T#30S); // TODO: Declarar "T121" : TON;
// Network 65: AVM313 Cip Pulsing ON (Original Language: LAD)
"gIN_FillerCIPOpen_AVM313" := "Interlocking_Variables"."FILLER_MIXER_RECEIVE"."CIP_Open_AVM313" OR ("HMI_Device"."PPM303"."Out" AND "T121");
// Network 66: From Filler Drain Selecteted (Original Language: LAD)
"gIN_FillerCIPDrainSelect" := "Interlocking_Variables"."FILLER_MIXER_RECEIVE"."DREN_Selected";
// Network 67: Filler Speed (Original Language: LAD)
"mCalc" := "Interlocking_Variables"."FILLER_MIXER_RECEIVE"."Filler_Speed";
"Filler_Head_Variables"."Filler_Speed" := "mCalc" * 1.0;
// Network 68: Filler Bottles Count (Original Language: LAD)
"mAuxDI" := "Interlocking_Variables"."FILLER_MIXER_RECEIVE"."RunOut_BottleCount";
"System_RunOut_Variables"."FillerBottleCount" := "mAuxDI";
// Network 69: From CIP Room Drain Request (Original Language: LAD)
"gIN_CIP_DrainRequest" := "Interlocking_Variables"."CIP_REC_DATA"."Drain_Request" OR "Interlocking_Variables"."SIDEL_CIP_REC_DATA"."Cip_DrainRequest";
// Network 70: From CIP Room Flood Request (Original Language: LAD)
"gIN_CIP_TankFilling" := "DI_CIP_TankFilling" OR "Interlocking_Variables"."SIDEL_CIP_REC_DATA"."Cip_FloodingRequest";
// Network 71: From CIP Room CIP running (Original Language: LAD)
"gIN_CIP_CIPRunning" := "DI_CIP_CIP_Rinse" OR "DI_CIP_CIP_Enable";
"gIN_CIP_CIPMode" := "DI_CIP_CIP_Rinse" OR "DI_CIP_CIP_Enable";
// Network 72: From CIP Room CIP change sanitize (Original Language: LAD)
"gIN_CIP_ChangeSanitize" := "Interlocking_Variables"."CIP_REC_DATA"."Change_Sanitize" OR "Interlocking_Variables"."SIDEL_CIP_REC_DATA"."CIP_RecoveryRequest";
// Network 73: From CIP Room CIP completed (Original Language: LAD)
"gIN_CIP_CIPCompleted" := "DI_CIP_CleaningCompleted" OR "Interlocking_Variables"."CIP_REC_DATA"."Completed";
// Network 74: From CIP Room CIP Product Sending (Original Language: LAD)
"gIN_CIP_CIPProdSending" := "DI_CIP_CIP_Enable" OR "Interlocking_Variables"."SIDEL_CIP_REC_DATA"."Cip_ProductSending";
// Network 75: From CIP Room CIP Fault (Original Language: LAD)
"gIN_CIP_Fault" := ("DI_CIP_CleaningFault" AND "gWorkshopTest") OR ("Interlocking_Variables"."SIDEL_CIP_REC_DATA"."CIP_CleaningAlarm" AND "gWorkshopTest");
// Network 76: Chiler Ammonia level too high (Original Language: LAD)
"HMI_Alarms"."gH_Message" := "gGencoldChillerEn" AND "Blender_Variables_Pers"."gCoolerEnabled" AND "gWorkshopTest" AND (("gProductChillerEn" AND "DI_Ammonia_High_Lev_Prod" AND ("HMI_Variables_Status"."Procedures"."ColdRinseRun" OR "gBlenderProdMode")) OR ("gWaterChillerEn" AND "DI_AmmoniaHighLev_Water" AND ("HMI_Variables_Status"."Procedures"."ColdRinseRun" OR "gBlenderProdMode")));
"gIN_AmmoniaHighLevel" := "gGencoldChillerEn" AND "Blender_Variables_Pers"."gCoolerEnabled" AND "gWorkshopTest" AND (("gProductChillerEn" AND "DI_Ammonia_High_Lev_Prod" AND ("HMI_Variables_Status"."Procedures"."ColdRinseRun" OR "gBlenderProdMode")) OR ("gWaterChillerEn" AND "DI_AmmoniaHighLev_Water" AND ("HMI_Variables_Status"."Procedures"."ColdRinseRun" OR "gBlenderProdMode")));
// Network 77: UV Lamp Ready (Original Language: LAD)
#TON_INSTANCE_25(IN := "DI_UV_Lamp_Ready", PT := T#30s); // TODO: Declarar #TON_INSTANCE_25 : TON;
"Blender_Variables"."gInUVLampReady" := #TON_INSTANCE_25.Q;
// Network 78: UV Lamp (Original Language: LAD)
"HMI_Alarms"."gH_Message" := "DI_UV_Lamp_Ready" AND "Blender_Variables"."gInUVLampReady";
// Network 79: UV Lamp (Original Language: LAD)
#TON_INSTANCE_27(IN := "DI_UV_Lamp_Ready" AND "gOUT_UVLamp_ONOFF", PT := T#5S); // TODO: Declarar #TON_INSTANCE_27 : TON;
"Blender_Variables"."gInUVLampAlarm" := #TON_INSTANCE_27.Q;
// Network 80: UV Lamp (Original Language: LAD)
#TON_INSTANCE_28(IN := "DI_UV_Lamp_Ready" AND "gOUT_UVLamp_ONOFF", PT := T#3s); // TODO: Declarar #TON_INSTANCE_28 : TON;
"gUVLampHighTemperature" := "mUVLampDelayTempHighON" AND #TON_INSTANCE_28.Q;
// Network 81: mAI_RVM301 (Original Language: STL)
// --- BEGIN STL Network 81 ---
AN "AUX FALSE"
A "AUX FALSE"
JNB _009
L "P_AI_RVM301"
T "mAI_RVM301"
SET
SAVE
CLR
_009: A _Statusword_?
= LX26.0
A LX26.0
A_BRACK
L "mAI_RVM301"
L 0
LE_I
BRACKET
JNB _00a
L 0
T "mAI_RVM301"
_00a: NOP_0
A LX26.0
A_BRACK
L "mAI_RVM301"
L 27648
GT_I
BRACKET
JNB _OOb
L 27648
T "mAI_RVM301"
_OOb: NOP_0
// --- END STL Network 81 ---
// Network 82: Read Analog Input (Original Language: LAD)
ReadAnalogIn(ANALOG := "HMI_Instrument"."RVM301", MAX_Analog_Value := "Blender_Constants"."gAnalogMaxValue", MIN_Analog_Value := 0, PEW := "mAI_RVM301");
// Network 83: Prod Tank Pressure Fault (Original Language: LAD)
IF "AUX FALSE" THEN
"mRealTemp" := "HMI_Instrument"."RVM301"."PV" - "HMI_PID"."RVM301"."Out";
END_IF;
// Network 84: RVM301 Fault (Original Language: LAD)
#TON_INSTANCE_29(IN := "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" AND "HMI_Instrument"."RVM301"."Config" AND "mProdTankPressValveFault", PT := T#6s); // TODO: Declarar #TON_INSTANCE_29 : TON;
"gRVM301_Fault" := #TON_INSTANCE_29.Q;
// Network 85: TTN321 (Original Language: LAD)
// DB972.DBW36 = 27648
ReadAnalogIn(ANALOG := "HMI_Instrument"."TTN321", MAX_Analog_Value := "Blender_Constants"."gAnalogMaxValue", MIN_Analog_Value := 0, PEW := "P_AI_TTN321");
IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" THEN
"Deair_Water_Temp"(i_Enable := "AUX TRUE", i_Num := 20, i_Value := "HMI_Instrument"."TTN321"."PV");
END_IF;
"mDummy" := TRUE;
// Network 86: PCM306 (Original Language: LAD)
// DB972.DBW36 = 27648
IF "gBlenderCIPMode" THEN
ReadAnalogIn(ANALOG := "HMI_Instrument"."PCM306", MAX_Analog_Value := "Blender_Constants"."gAnalogMaxValue", MIN_Analog_Value := 0, PEW := "P_AI_PCM306");
END_IF;
IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" THEN
"CO2InjPressFlted"(i_Enable := "AUX TRUE", i_Num := 10, i_Value := "HMI_Instrument"."PCM306"."PV");
END_IF;
"mDummy" := "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" OR "gBlenderCIPMode";
// Network 87: To HMI - Instrument in fault (Original Language: LAD)
IF "HMI_PID"."PCM306"."Sp" > 1.0 THEN
"PCM306_MaxError" := "HMI_PID"."PCM306"."Sp" * 0.15;
END_IF;
IF "HMI_PID"."PCM306"."Sp" > 1.0 THEN
"PCM306_Error" := "HMI_Instrument"."PCM306"."PV" - "HMI_PID"."PCM306"."Sp";
END_IF;
// Network 88: PTM308 (Original Language: LAD)
// DB972.DBW36 = 27648
IF "AUX FALSE" THEN
ReadAnalogIn(ANALOG := "HMI_Instrument"."PTM308", MAX_Analog_Value := "Blender_Constants"."gAnalogMaxValue", MIN_Analog_Value := 0, PEW := "P_AI_PTM308");
END_IF;
IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" THEN
"NorgrenPressSafety"(i_Enable := "AUX TRUE", i_Num := 5, i_Value := "HMI_Instrument"."PTM308"."PV");
END_IF;
"mDummy" := "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" OR "AUX FALSE";
// Network 89: LTM302 (Original Language: LAD)
ReadAnalogIn(ANALOG := "HMI_Instrument"."LTM302", MAX_Analog_Value := "Blender_Constants"."gAnalogMaxValue", MIN_Analog_Value := 0, PEW := "P_AI_LTM302");
IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" THEN
"Product_Tank_Level"(i_Enable := "AUX TRUE", i_Num := 10, i_Value := "HMI_Instrument"."LTM302"."PV");
END_IF;
"mDummy" := TRUE;
// Network 90: CTS302 (Original Language: LAD)
IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Conductimeter_Profibus" AND "AUX FALSE" THEN
ReadAnalogIn(ANALOG := "HMI_Instrument"."CTS302", MAX_Analog_Value := "Blender_Constants"."gAnalogMaxValue", MIN_Analog_Value := 0, PEW := "P_AI_CTS302");
END_IF;
IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" THEN
"C1_Conductivity_Caustic"(i_Enable := "AUX TRUE", i_Num := 10, i_Value := "HMI_Instrument"."CTS302"."PV");
END_IF;
"mDummy" := "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" OR ("HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Conductimeter_Profibus" AND "AUX FALSE");
// Network 91: CTS301 (Original Language: LAD)
IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Conductimeter_Profibus" AND "AUX FALSE" THEN
ReadAnalogIn(ANALOG := "HMI_Instrument"."CTS301", MAX_Analog_Value := "Blender_Constants"."gAnalogMaxValue", MIN_Analog_Value := 0, PEW := "P_AI_CTS301");
END_IF;
IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" THEN
"C1_Conductivity_Water"(i_Enable := "AUX TRUE", i_Num := 10, i_Value := "HMI_Instrument"."CTS301"."PV");
END_IF;
"mDummy" := "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" OR ("HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Conductimeter_Profibus" AND "AUX FALSE");
// Network 92: TTS305_1 (Original Language: LAD)
IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Conductimeter_Profibus" AND "AUX FALSE" THEN
ReadAnalogIn(ANALOG := "HMI_Instrument"."TTS305_1", MAX_Analog_Value := "Blender_Constants"."gAnalogMaxValue", MIN_Analog_Value := 0, PEW := "P_AI_CIPReturnTemperature");
END_IF;
IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" THEN
"CIP_Retur_Temperature"(i_Enable := "AUX TRUE", i_Num := 10, i_Value := "HMI_Instrument"."TTS305_1"."PV");
END_IF;
"mDummy" := "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" OR ("HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Conductimeter_Profibus" AND "AUX FALSE");
// Network 93: Filler Level (Original Language: LAD)
IF "AUX FALSE" AND Eq("HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_SignalExchange", 0) THEN
ReadAnalogIn(ANALOG := "HMI_Instrument"."_FillerLevel", MAX_Analog_Value := "Blender_Constants"."gAnalogMaxValue", MIN_Analog_Value := 0, PEW := "P_AI_FillerLevel");
END_IF;
IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" THEN
"Fille_Level"(i_Enable := "AUX TRUE", i_Num := 10, i_Value := "HMI_Instrument"."_FillerLevel"."PV");
END_IF;
"mDummy" := "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" OR ("AUX FALSE" AND Eq("HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_SignalExchange", 0));
// Network 94: CTM304 (Original Language: LAD)
IF "AUX FALSE" THEN
ReadAnalogIn(ANALOG := "HMI_Instrument"."CTM304", MAX_Analog_Value := "Blender_Constants"."gAnalogMaxValue", MIN_Analog_Value := 0, PEW := "P_AI_CTM304");
END_IF;
IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" THEN
"Product_Conductivity"(i_Enable := "AUX TRUE", i_Num := 4, i_Value := "HMI_Instrument"."CTM304"."PV");
END_IF;
"mDummy" := "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" OR "AUX FALSE";
// Network 95: PTN313 (Original Language: LAD)
IF "AUX FALSE" THEN
ReadAnalogIn(ANALOG := "HMI_Instrument"."PTN313", MAX_Analog_Value := "Blender_Constants"."gAnalogMaxValue", MIN_Analog_Value := 0, PEW := "P_AI_PTN313");
END_IF;
IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" THEN
"Deaireator_Pressure"(i_Enable := "AUX TRUE", i_Num := 4, i_Value := "HMI_Instrument"."PTN313"."PV");
END_IF;
"mDummy" := "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" OR "AUX FALSE";
// Network 96: Gas Factor (Original Language: LAD)
SEL_R(G := "Blender_Variables_Pers"."gCarboStillProduct" OR "gBlenderCIPMode", IN0 := 0.9848858, IN1 := 1.235718);
// Network 97: RVN305 (Original Language: LAD)
SEL_R(G := "HMI_Service"."Workshop_Test"."SIMTestWithGas" AND "gWorkshopTest", IN0 := "Blender_Variables"."gActualGasFactor", IN1 := 1.0);
SEL_R(G := Ne("Blender_Variables"."gActualGasFactor", 0.0), IN0 := 1.0, IN1 := "mFTFS");
"HMI_Instrument"."RVN305"."Span" := "Blender_Variables"."gFlowTronic" / "mFTFS";
// Network 98: RVN304 (Original Language: LAD)
ReadAnalogIn(ANALOG := "HMI_Instrument"."RVN304", MAX_Analog_Value := "Blender_Constants"."gAnalogMaxValue", MIN_Analog_Value := 0, PEW := "P_AI_RVN304");
IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" THEN
"HMI_Instrument"."RVN304"."PVFiltered" := "HMI_Instrument"."RVN304"."PV";
END_IF;
"mDummy" := TRUE;
// Network 99: RVN304 Fault (Original Language: LAD)
IF "HMI_PID"."RVN304"."Sp" > 100.0 THEN
"mRealTemp" := "HMI_Instrument"."RVN304"."PVFiltered" - "HMI_PID"."RVN304"."Sp";
END_IF;
// Network 100: RVN304 Fault (Original Language: LAD)
#TON_INSTANCE_30(IN := "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" AND "HMI_Instrument"."RVN304"."Config" AND "mRVN304Fault", PT := T#1M); // TODO: Declarar #TON_INSTANCE_30 : TON;
"gRVN304Fault" := #TON_INSTANCE_30.Q AND "AUX FALSE";
// Network 101: RVN305 (Original Language: LAD)
IF "HMI_Device"."AVN328"."Out" AND "HMI_Device"."AVN350"."Out" THEN
ReadAnalogIn(ANALOG := "HMI_Instrument"."RVN305", MAX_Analog_Value := "Blender_Constants"."gAnalogMaxValue", MIN_Analog_Value := 0, PEW := "P_AI_RVN305");
END_IF;
IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" THEN
"DeairValveFlted"(i_Enable := "AUX TRUE", i_Num := 4, i_Value := "HMI_Instrument"."RVN305"."PV");
END_IF;
"mDummy" := "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" OR ("HMI_Device"."AVN328"."Out" AND "HMI_Device"."AVN350"."Out");
// Network 102: RVN305 Fault (Original Language: LAD)
IF "HMI_PID"."RVN305"."Sp" > 100.0 THEN
"mRealTemp" := "HMI_Instrument"."RVN305"."PVFiltered" - "HMI_PID"."RVN304"."Sp";
END_IF;
// Network 103: RVN305 Fault (Original Language: LAD)
#TON_INSTANCE_30(IN := "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" AND "HMI_Instrument"."RVN304"."Config" AND "mRVN304Fault", PT := T#1M); // TODO: Declarar #TON_INSTANCE_30 : TON;
"gRVN305Fault" := #TON_INSTANCE_30.Q AND "AUX FALSE";
// Network 104: RVN305 Filtered (Original Language: LAD)
SEL_R(G := "HMI_Device"."AVN350"."Out", IN0 := 0.0, IN1 := "HMI_Instrument"."RVN305"."PVFiltered");
// Network 105: Product Tank Pressure (Original Language: LAD)
// Product Tank Pressure
// DB972.DBW36 = 27648
IF "AUX FALSE" THEN
ReadAnalogIn(ANALOG := "HMI_Instrument"."_ProductO2Conc", MAX_Analog_Value := "Blender_Constants"."gAnalogMaxValue", MIN_Analog_Value := 0, PEW := "P_AI_ProductO2");
END_IF;
IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" THEN
"ProductO2Conc"(i_Enable := "AUX TRUE", i_Num := 4, i_Value := "HMI_Instrument"."_ProductO2Conc"."PV");
END_IF;
"mDummy" := "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" OR "AUX FALSE";
// Network 106: No Test (Original Language: LAD)
IF "gWorkshopTest" THEN
"HMI_Service"."Workshop_Test"."CO2TestRequest" := FALSE;
END_IF;
IF "gWorkshopTest" THEN
"HMI_Service"."Workshop_Test"."SIMCipMode" := FALSE;
END_IF;
IF "gWorkshopTest" THEN
"HMI_Service"."Workshop_Test"."SIMCipRunning" := FALSE;
END_IF;
IF "gWorkshopTest" THEN
"HMI_Service"."Workshop_Test"."SIMCipChangeSanitize" := FALSE;
END_IF;
IF "gWorkshopTest" THEN
"HMI_Service"."Workshop_Test"."SIMCipDrainRequest" := FALSE;
END_IF;
IF "gWorkshopTest" THEN
"HMI_Service"."Workshop_Test"."SIMCipCompleted" := FALSE;
END_IF;
IF "gWorkshopTest" THEN
"HMI_Service"."Workshop_Test"."SIMCipCausticSanitizeRun" := FALSE;
END_IF;
IF "gWorkshopTest" THEN
"HMI_Service"."Workshop_Test"."SIMFillerAVM346Enable" := FALSE;
END_IF;
IF "gWorkshopTest" THEN
"HMI_Service"."Workshop_Test"."SIMFillerAVM362Enable" := FALSE;
END_IF;
// Network 107: Digital Scanner (Original Language: LAD)
Input_DigitalScanner();
// Network 108: Digital Ctrl (Original Language: LAD)
Input_DigitalCtrl();
// Network 109: CIP Hot Water Sending to Mixer (Original Language: LAD)
"gIN_CIP_HotWaterSending" := "DI_CIP_HotWaterSending";
// Network 110: CIP Soda Tank is able to receive soda from mixer (Original Language: LAD)
"gIN_CIP_FreeSodaTank" := "DI_CIP_FreeSodaTank";
// Network 111: From CIPRoom (Original Language: LAD)
"gIN_CIP_ChemicalProd" := "DI_CIP_ChemicalProd";
// Network 112: MIX - Supplies Alarm (Original Language: LAD)
"gAmmoniaCompressor_Fault" := "gGencoldChillerEn" AND "DI_Ammonia_CompressorReady" AND "gIN_VoltageOk" AND "gBlenderProdMode";
END_FUNCTION_BLOCK
```