FB58 MANU P03 Manual operation mode

 

 

 

Netzwerk 1: 3M1 Loading conveyor 1

    IF #ST_MANU THEN

        "DI OUT P03"."3M1".DRV.SetValSpd := #Support."3M1".ManuSpeed_2;

        IF "HMI KEY".P03."3M1".F3_Jog_slow_WP OR "HMI KEY".P03."3M1".F4_Jog_slow_HP THEN

            "DI OUT P03"."3M1".DRV.SetValSpd := #Support."3M1".ManuSpeed_1;

        END_IF;

        // GotoPos create falling edge when set point reached

        #tmp_dummy_imp := FALSE;

        IF NOT "HMI KEY".P03."3M1".F17_GoToPos AND #Support."3M1".F17_GoToPos_FN AND NOT "DI OUT P03"."3M1".DRV.SetPoReach THEN

            #tmp_dummy_imp := TRUE;

        END_IF;

        #Support."3M1".F17_GoToPos_FN := "HMI KEY".P03."3M1".F17_GoToPos;

        // Stop GotoPos by falling edge

        IF #tmp_dummy_imp THEN

            "HMI KEY".P03."3M1".F17_GoToPos := FALSE;

        END_IF;

        // Stop GotoPos when set point reached

        IF "HMI KEY".P03."3M1".F19_Jog_fast_WP OR "HMI KEY".P03."3M1".F20_Jog_fast_HP OR "DI OUT P03"."3M1".DRV.SetPoReach THEN

            "HMI KEY".P03."3M1".F17_GoToPos := FALSE;

        END_IF;

       

        // Jog fast positive create rising edge (impulse)

        #tmp_dummy_imp := FALSE;

        IF "HMI KEY".P03."3M1".F19_Jog_fast_WP AND NOT #Support."3M1".F19_Jog_fast_WP_FP THEN

            #tmp_dummy_imp := TRUE;

        END_IF;

        #Support."3M1".F19_Jog_fast_WP_FP := "HMI KEY".P03."3M1".F19_Jog_fast_WP;

        // Jog fast positive (toggle function)

        IF #tmp_dummy_imp THEN

            #Support."3M1".CmdExe_fast_WP := NOT #Support."3M1".CmdExe_fast_WP;

            #Support."3M1".CmdExe_fast_HP := FALSE;

        END_IF;

        // Jog slow positive (button function)

        IF "HMI KEY".P03."3M1".F3_Jog_slow_WP THEN

            #Support."3M1".CmdExe_slow_WP := TRUE;

            #Support."3M1".CmdExe_fast_WP := FALSE;

            #Support."3M1".CmdExe_fast_HP := FALSE;

        ELSE

            #Support."3M1".CmdExe_slow_WP := FALSE;

        END_IF;

       

        // Jog fast negative create rising edge (impulse)

        #tmp_dummy_imp := false;

        IF "HMI KEY".P03."3M1".F20_Jog_fast_HP AND NOT #Support."3M1".F20_Jog_fast_HP_FP THEN

            #tmp_dummy_imp := TRUE;

        END_IF;

        #Support."3M1".F20_Jog_fast_HP_FP := "HMI KEY".P03."3M1".F20_Jog_fast_HP;

        // Jog fast negative (toggle function)

        IF #tmp_dummy_imp THEN

            #Support."3M1".CmdExe_fast_HP := NOT #Support."3M1".CmdExe_fast_HP;

            #Support."3M1".CmdExe_fast_WP := FALSE;

        END_IF;

        // Jog slow negative (button function)

        IF "HMI KEY".P03."3M1".F4_Jog_slow_HP THEN

            #Support."3M1".CmdExe_slow_HP := TRUE;

            #Support."3M1".CmdExe_fast_WP := FALSE;

            #Support."3M1".CmdExe_fast_HP := FALSE;

        ELSE

            #Support."3M1".CmdExe_slow_HP := FALSE;

        END_IF;

    ELSE

        "HMI KEY".P03."3M1".F17_GoToPos := FALSE;

    END_IF;

   

    // Antrieb Enable HP/WP

    "HMI KEY".P03."3M1".Enable_HP := "HMI KEY".P03."3M1".Enable_WP := "DI OUT P03"."3M1".DRV.ReadyToStart;

    // Disabling HP (negative)

    IF NOT "HMI KEY".P03."3M1".Enable_HP OR "M00 ManuCmpltMa Imp" THEN

        #Support."3M1".CmdExe_fast_HP := #Support."3M1".CmdExe_slow_HP := "HMI KEY".P03."3M1".F17_GoToPos := FALSE;

    END_IF;

    // Disabling WP (positive)

    IF NOT "HMI KEY".P03."3M1".Enable_WP OR "M00 ManuCmpltMa Imp" THEN

        #Support."3M1".CmdExe_fast_WP := #Support."3M1".CmdExe_slow_WP := "HMI KEY".P03."3M1".F17_GoToPos := FALSE;

    END_IF;

    // Execute WP/HP travel

    "DI OUT P03"."3M1".DRV.ActorJog_WP := #Support."3M1".CmdExe_fast_WP OR #Support."3M1".CmdExe_slow_WP;

    "DI OUT P03"."3M1".DRV.ActorJog_HP := #Support."3M1".CmdExe_fast_HP OR #Support."3M1".CmdExe_slow_HP;

 

 

 

Netzwerk 2: 3M2 Loading conveyor 2

    IF #ST_MANU THEN

        "DI OUT P03"."3M2".DRV.SetValSpd := #Support."3M2".ManuSpeed_2;

        IF "HMI KEY".P03."3M2".F3_Jog_slow_WP OR "HMI KEY".P03."3M2".F4_Jog_slow_HP THEN

            "DI OUT P03"."3M2".DRV.SetValSpd := #Support."3M2".ManuSpeed_1;

        END_IF;

        // GotoPos create falling edge when set point reached

        #tmp_dummy_imp := FALSE;

        IF NOT "HMI KEY".P03."3M2".F17_GoToPos AND #Support."3M2".F17_GoToPos_FN AND NOT "DI OUT P03"."3M2".DRV.SetPoReach THEN

            #tmp_dummy_imp := TRUE;

        END_IF;

        #Support."3M2".F17_GoToPos_FN := "HMI KEY".P03."3M2".F17_GoToPos;

        // Stop GotoPos by falling edge

        IF #tmp_dummy_imp THEN

            "HMI KEY".P03."3M2".F17_GoToPos := FALSE;

        END_IF;

        // Stop GotoPos when set point reached

        IF "HMI KEY".P03."3M2".F19_Jog_fast_WP OR "HMI KEY".P03."3M2".F20_Jog_fast_HP OR "DI OUT P03"."3M2".DRV.SetPoReach THEN

            "HMI KEY".P03."3M2".F17_GoToPos := FALSE;

        END_IF;

       

        // Jog fast positive create rising edge (impulse)

        #tmp_dummy_imp := FALSE;

        IF "HMI KEY".P03."3M2".F19_Jog_fast_WP AND NOT #Support."3M2".F19_Jog_fast_WP_FP THEN

            #tmp_dummy_imp := TRUE;

        END_IF;

        #Support."3M2".F19_Jog_fast_WP_FP := "HMI KEY".P03."3M2".F19_Jog_fast_WP;

        // Jog fast positive (toggle function)

        IF #tmp_dummy_imp THEN

            #Support."3M2".CmdExe_fast_WP := NOT #Support."3M2".CmdExe_fast_WP;

            #Support."3M2".CmdExe_fast_HP := FALSE;

        END_IF;

        // Jog slow positive (button function)

        IF "HMI KEY".P03."3M2".F3_Jog_slow_WP THEN

            #Support."3M2".CmdExe_slow_WP := TRUE;

            #Support."3M2".CmdExe_fast_WP := FALSE;

            #Support."3M2".CmdExe_fast_HP := FALSE;

        ELSE

            #Support."3M2".CmdExe_slow_WP := FALSE;

        END_IF;

       

        // Jog fast negative create rising edge (impulse)

        #tmp_dummy_imp := false;

        IF "HMI KEY".P03."3M2".F20_Jog_fast_HP AND NOT #Support."3M2".F20_Jog_fast_HP_FP THEN

            #tmp_dummy_imp := TRUE;

        END_IF;

        #Support."3M2".F20_Jog_fast_HP_FP := "HMI KEY".P03."3M2".F20_Jog_fast_HP;

        // Jog fast negative (toggle function)

        IF #tmp_dummy_imp THEN

            #Support."3M2".CmdExe_fast_HP := NOT #Support."3M2".CmdExe_fast_HP;

            #Support."3M2".CmdExe_fast_WP := FALSE;

        END_IF;

        // Jog slow negative (button function)

        IF "HMI KEY".P03."3M2".F4_Jog_slow_HP THEN

            #Support."3M2".CmdExe_slow_HP := TRUE;

            #Support."3M2".CmdExe_fast_WP := FALSE;

            #Support."3M2".CmdExe_fast_HP := FALSE;

        ELSE

            #Support."3M2".CmdExe_slow_HP := FALSE;

        END_IF;

    ELSE

        "HMI KEY".P03."3M2".F17_GoToPos := FALSE;

    END_IF;

   

    // Antrieb Enable HP/WP

    "HMI KEY".P03."3M2".Enable_HP := "HMI KEY".P03."3M2".Enable_WP := "DI OUT P03"."3M2".DRV.ReadyToStart;

    // Disabling HP (negative)

    IF NOT "HMI KEY".P03."3M2".Enable_HP OR "M00 ManuCmpltMa Imp" THEN

        #Support."3M2".CmdExe_fast_HP := #Support."3M2".CmdExe_slow_HP := "HMI KEY".P03."3M2".F17_GoToPos := FALSE;

    END_IF;

    // Disabling WP (positive)

    IF NOT "HMI KEY".P03."3M2".Enable_WP OR "M00 ManuCmpltMa Imp" THEN

        #Support."3M2".CmdExe_fast_WP := #Support."3M2".CmdExe_slow_WP := "HMI KEY".P03."3M2".F17_GoToPos := FALSE;

    END_IF;

    // Execute WP/HP travel

    "DI OUT P03"."3M2".DRV.ActorJog_WP := #Support."3M2".CmdExe_fast_WP OR #Support."3M2".CmdExe_slow_WP;

    "DI OUT P03"."3M2".DRV.ActorJog_HP := #Support."3M2".CmdExe_fast_HP OR #Support."3M2".CmdExe_slow_HP;

 

 

 

Netzwerk 3: 3V1 Enable centring unit

    "HMI KEY".P03."3V1".Enable_HP := "HMI KEY".P03."3V1".Enable_WP := "E00 S0.0 AirPres OK";

 

 

 

Netzwerk 4: 3V2 Enable rotary unit

    "HMI KEY".P03."3V2".Enable_HP := "HMI KEY".P03."3V2".Enable_WP := "E00 S0.0 AirPres OK";

 

 

 

Netzwerk 5: Monitoring pneumatics manual operation ***

    #tmp_dummy_imp := false;

    IF NOT #ST_MANU THEN

        RETURN;

    ELSIF #MODUL_HP AND NOT #Support.GLB.Modl_HomPos_FP THEN

        #tmp_dummy_imp := TRUE;

    END_IF;

    #Support.GLB.Modl_HomPos_FP := #MODUL_HP;

    IF #tmp_dummy_imp THEN

        "M03 Init" := true;

    END_IF;

    IF #SUPPORT_SEQ THEN

        RETURN;

    END_IF;

 

 

 

Netzwerk 6: 3V1 Execute centring unit

    "DI OUT P03"."3V1".VLV.CmdExe_WP :=

    "HMI KEY".P03."3V1".Enable_WP AND NOT "HMI KEY".P03."3V1".F1_HP AND ("HMI KEY".P03."3V1".F2_WP OR "DI OUT P03"."3V1".FB_WP);

   

    "DI OUT P03"."3V1".VLV.CmdExe_HP :=

    "HMI KEY".P03."3V1".Enable_HP AND NOT "HMI KEY".P03."3V1".F2_WP AND ("HMI KEY".P03."3V1".F1_HP OR "DI OUT P03"."3V1".FB_HP);

 

 

 

Netzwerk 7: 3V2 Execute centring unit

    "DI OUT P03"."3V2".VLV.CmdExe_WP :=

    "HMI KEY".P03."3V2".Enable_WP AND NOT "HMI KEY".P03."3V2".F1_HP AND ("HMI KEY".P03."3V2".F2_WP OR "DI OUT P03"."3V2".FB_WP);

   

    "DI OUT P03"."3V2".VLV.CmdExe_HP :=

    "HMI KEY".P03."3V2".Enable_HP AND NOT "HMI KEY".P03."3V2".F2_WP AND ("HMI KEY".P03."3V2".F1_HP OR "DI OUT P03"."3V2".FB_HP);

 

 

Home

 

Erfahrung

 

Referenzen

 

Sondermaschinen

 

MSR-Maschinen

 

SPS-Programmierung

 

Visualisierung HMI

 

Elektro CAD

 

Leistungsprofil

 

Personalia

 

SW-Development

 

Dokumentation

 

 

 

Impressum & DSGVO