Textfeld:

 

Home

 

Erfahrung

 

Referenzen

 

Sondermaschinen

 

MSR-Maschinen

 

SPS-Programmierung

 

Visualisierung HMI

 

Elektro CAD

 

Leistungsprofil

 

Personalia

 

SW-Development

 

Dokumentation

 

 

 

Impressum & DSGVO

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

FB SEQ241 GLB CIP STH rinsing

 

 

 

Network 1: Define SSM last step

#SSM(LAST_STEP := 1);

 

 

 

Network 2: Valves fixed-setting with hold, and without hold

#SSM.S.stepllo := NOT (#SSM.S.step0 OR #SSM.S.steph);

"DI OUT P02".V203.VLV_O.CmdExe_WP := "HMI KEY".P02.V203.F12_Enable_WP AND NOT #SSM.S.step0;

"DI OUT P01".V110.VLV_O.CmdExe_WP := "HMI KEY".P01.V110.F12_Enable_WP AND #SSM.S.stepllo;

"DI OUT P01".G120C.DRV.Support.Cmd_MovJogWP := "HMI KEY".P01.G120C.F12_Enable_WP AND #SSM.S.stepllo;

"DI OUT P02".G220C.DRV.Support.Cmd_MovAbso := "HMI KEY".P02.G220C.F12_Enable_WP AND #SSM.S.stepllo;

"DI OUT P02".M201.DRV.CmdExe_WP := "HMI KEY".P02.M201.F12_Enable_WP AND #SSM.S.stepllo;

// Activate CO2 gas valve

"DI OUT P03".V301.VLV_O.CmdExe_WP := "HMI KEY".P03.V301.F12_Enable_WP AND "HMI KEY".Execute.Pressure_Maintenance_with_Air AND NOT #SSM.S.step0;

 

 

 

Network 3: CASE function corresponds to SEQ241

CASE #SSM.S.stepact OF

    0: // Waiting for sequencer to start

        #SSM.S.stepd := #SSM.S.steps;

       

    1: // Query fixe-setting valves WP

        IF #SSM.S.DlyOff.Q THEN

            IF "DI OUT P01".G120C.DRV.Support.SetVelo < "HMI KEY".SetPoint.G120C_Product_inlet_min THEN

                #SEQ515.G120C_Product_Inlet_RPM := "HMI KEY".SetPoint.G120C_Product_inlet_min;

            END_IF;

            "HMI KEY".SetPoint.PT302_PressureMaintainace := 500.0;

            "DI OUT P01".G120C.DRV.Support.SetVelo := #SEQ515.G120C_Product_Inlet_RPM;

            "DI OUT P02".G220C.DRV.MC_MoveVelocity.Velocity := "HMI KEY".SetPoint.G220C_Heating_cycle;

            "DI OUT P02".V204.Setpoint := "HMI KEY".SetPoint.Temperature_CIP_Water * "HMI KEY".SetPoint.V204_Steam_Regulating_Factor;

            "DI OUT P03".V312.ManualValue := "HMI KEY".SetPoint.V312_Product_inlet;

            "DI OUT P02".V205.Mode := 3;

            "DI OUT P02".V204.Mode := 3;

            "DI OUT P03".V312.Mode := 4;

            "DI OUT P03".V312.ManualEnable := FALSE;

            "DI OUT P02".V205.Reset :=

            "HMI KEY".Execute.Pressure_Maintenance_with_Air :=

            "DI OUT P02".V204.ModeActivate := "DI OUT P03".V312.ModeActivate := TRUE;

            RETURN;

        ELSE

            "DI OUT P02".V205.Reset := "DI OUT P02".V204.ModeActivate := "DI OUT P03".V312.ModeActivate := FALSE;

        END_IF;

       

        // V312 force manual value product inlet regulating valve

        "DI OUT P03".V312.ManualEnable := "HMI KEY".P03.V312.F12_Enable_WP;

       

        // Pressure maintenance in SBT with CO2

        "HMI KEY".Execute.Pressure_Maintenance_in_STH_Start := TRUE;

        #SEQ506.SSM.S.steph := "DI MAIN GLB".SEQ200.SEQ241.SSM.S.steph OR NOT "HMI KEY".Execute.Pressure_Maintenance_with_Air;

        #SEQ506.SSM.S.steps := "DI MAIN GLB".SEQ200.Support.SEQ241_Start AND NOT "DI MAIN GLB".TOF_CmpltMaOFF_Pulse.Q;

        #SEQ506();

       

        // G120C product inlet set value RPM

        IF #SEQ515.G120C_Product_Inlet_RPM * 1.5 < "HMI KEY".SetPoint.G120C_Product_inlet_max THEN

            "DI OUT P01".G120C.DRV.Support.SetVelo := #SEQ515.G120C_Product_Inlet_RPM;

        END_IF;

        // Calculation flow capacity VarioAsept

        #SEQ515.SSM.S.steph := "DI MAIN GLB".SEQ200.SEQ241.SSM.S.steph OR NOT "DI OUT P01".G120C.DRV.Support.Cmd_MovJogWP;

        #SEQ515.SSM.S.steps := "DI MAIN GLB".SEQ200.Support.SEQ241_Start AND NOT "DI MAIN GLB".TOF_CmpltMaOFF_Pulse.Q;

        #SEQ515();

       

        // Query control set values ok

        #SSM.S.stepllo :=

        "DI OUT P02".V204.State = 3

        AND "DI OUT P03".V312.State = 4

        AND "DI OUT P01".G120C.NexDrv_DlyOn

        AND "DI OUT P02".G220C.NexDrv_DlyOn

        AND "DI OUT P02".M201.NexDrv_DlyOn

        AND "DI OUT P02".V203.FB_WP

        AND "DI OUT P03".V312.Output > 0.0

        AND "HMI KEY".P02.V204.F12_Enable_WP;

       

        // Delay start valve clocking in 203 with SBT

        #SSM.S.c1.start := "DI MAIN GLB".SEQ200.Support.Pressure_Maintenance_reached AND #SSM.S.stepllo;

       

        // Execute clocking valves in 241 with SBT (Rinsing)

        #SEQ303.SSM.S.steph := "DI MAIN GLB".SEQ200.SEQ241.SSM.S.steph OR NOT "DI OUT P01".G120C.DRV.Support.Cmd_MovJogWP;

        #SEQ303.SSM.S.steps := "DI MAIN GLB".SEQ200.Support.SEQ241_Start AND NOT "DI MAIN GLB".TOF_CmpltMaOFF_Pulse.Q AND #SSM.S.c1.done;

        #SEQ303(); // Execute valves clocking in SEQ241 without SBT

       

        IF #SEQ303.Done THEN

            "DI OUT P01".Support.FIT102_Volum_meter := 0.0;

            "DI MAIN GLB".SEQ200.Support.CIP_STH_Ringsing_Complete := TRUE;

            "DI MAIN GLB".SEQ200.Support.SEQ241_Start := FALSE;

        END_IF;

END_CASE;