Textfeld: Textfeld: Textfeld: Textfeld: Textfeld: Textfeld: Textfeld: Textfeld:

 

Home

 

Erfahrung

 

Referenzen

 

Sondermaschinen

 

MSR-Maschinen

 

SPS-Programmierung

 

Visualisierung HMI

 

Elektro CAD

 

Leistungsprofil

 

Personalia

 

SW-Development

 

Dokumentation

 

 

 

Impressum & DSGVO

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

FB48 MAM P02 : Manual operation

 

 

 

Network 1: S210J1 Robot Joint A1 - enable

IF #ST_MANU AND NOT #SUPPORT_SEQ THEN

    IF "DI MAIN GLB".M00.EntirePlant_Run_Imp THEN

        #S210J1.ManualVelocity_1 := "DI OUT P02".S210J1.DRV.Support.SetVelo;

    ELSE

        "DI OUT P02".S210J1.DRV.Support.SetVelo := #S210J1.ManualVelocity_1;

        #S210J1.CmdExe_slow_fast_WP := "HMI KEY".P02.S210J1.F3_Jog_slow_WP AND "HMI KEY".P02.S210J1.F12_Enable_WP AND NOT "HMI KEY".P02.S210J1.F21_HALT;

        #S210J1.CmdExe_slow_fast_HP := "HMI KEY".P02.S210J1.F4_Jog_slow_HP AND "HMI KEY".P02.S210J1.F11_Enable_HP AND NOT "HMI KEY".P02.S210J1.F21_HALT;

    END_IF;

END_IF;

// Enable moving towards HP/WP

"HMI KEY".P02.S210J1.F11_Enable_HP := "DI OUT P02".S210J1.DRV.Support.InOperation

AND NOT "DI OUT P02".S210J1.Common_FLT

AND "DI OUT P02".S210J1.DRV.Support.ActPos >= "DI OUT P02".S210J1.DRV.Support.SW_EndLim_MinPos;

 

"HMI KEY".P02.S210J1.F12_Enable_WP := "DI OUT P02".S210J1.DRV.Support.InOperation

AND NOT "DI OUT P02".S210J1.Common_FLT

AND "DI OUT P02".S210J1.DRV.Support.ActPos <= "DI OUT P02".S210J1.DRV.Support.SW_EndLim_MaxPos;

 

 

 

Network 2: S210J2 Robot Joint A2 - enable

IF #ST_MANU AND NOT #SUPPORT_SEQ THEN

    IF "DI MAIN GLB".M00.EntirePlant_Run_Imp THEN

        #S210J2.ManualVelocity_1 := "DI OUT P02".S210J2.DRV.Support.SetVelo;

    ELSE

        "DI OUT P02".S210J2.DRV.Support.SetVelo := #S210J2.ManualVelocity_1;

        #S210J2.CmdExe_slow_fast_WP := "HMI KEY".P02.S210J2.F3_Jog_slow_WP AND "HMI KEY".P02.S210J2.F12_Enable_WP AND NOT "HMI KEY".P02.S210J2.F21_HALT;

        #S210J2.CmdExe_slow_fast_HP := "HMI KEY".P02.S210J2.F4_Jog_slow_HP AND "HMI KEY".P02.S210J2.F11_Enable_HP AND NOT "HMI KEY".P02.S210J2.F21_HALT;

    END_IF;

END_IF;

// Enable moving towards HP/WP

"HMI KEY".P02.S210J2.F11_Enable_HP := "DI OUT P02".S210J2.DRV.Support.InOperation

AND NOT "DI OUT P02".S210J2.Common_FLT

AND "DI OUT P02".S210J2.DRV.Support.ActPos >= "DI OUT P02".S210J2.DRV.Support.SW_EndLim_MinPos;

 

"HMI KEY".P02.S210J2.F12_Enable_WP := "DI OUT P02".S210J2.DRV.Support.InOperation

AND NOT "DI OUT P02".S210J2.Common_FLT

AND "DI OUT P02".S210J2.DRV.Support.ActPos <= "DI OUT P02".S210J2.DRV.Support.SW_EndLim_MaxPos;

 

 

 

Network 3: S210J3 Robot z-axis A3 - enable

IF #ST_MANU AND NOT #SUPPORT_SEQ THEN

    IF "DI MAIN GLB".M00.EntirePlant_Run_Imp THEN

        #S210J3.ManualVelocity_1 := "DI OUT P02".S210J3.DRV.Support.SetVelo;

    ELSE

        "DI OUT P02".S210J3.DRV.Support.SetVelo := #S210J3.ManualVelocity_1;

        #S210J3.CmdExe_slow_fast_WP := "HMI KEY".P02.S210J3.F3_Jog_slow_WP AND "HMI KEY".P02.S210J3.F12_Enable_WP AND NOT "HMI KEY".P02.S210J3.F21_HALT;

        #S210J3.CmdExe_slow_fast_HP := "HMI KEY".P02.S210J3.F4_Jog_slow_HP AND "HMI KEY".P02.S210J3.F11_Enable_HP AND NOT "HMI KEY".P02.S210J3.F21_HALT;

    END_IF;

END_IF;

// Enable moving towards HP/WP

"HMI KEY".P02.S210J3.F11_Enable_HP := "DI OUT P02".S210J3.DRV.Support.InOperation

AND NOT "DI OUT P02".S210J3.Common_FLT

AND "DI OUT P02".S210J3.DRV.Support.ActPos >= "DI OUT P02".S210J3.DRV.Support.SW_EndLim_MinPos;

 

"HMI KEY".P02.S210J3.F12_Enable_WP := "DI OUT P02".S210J3.DRV.Support.InOperation

AND NOT "DI OUT P02".S210J3.Common_FLT

AND "DI OUT P02".S210J3.DRV.Support.ActPos <= "DI OUT P02".S210J3.DRV.Support.SW_EndLim_MaxPos;

 

 

 

Network 4: V90J4 Robot Orietation axis A4 - enable

IF #ST_MANU AND NOT #SUPPORT_SEQ THEN

    IF "DI MAIN GLB".M00.EntirePlant_Run_Imp THEN

        #V90J4.ManualVelocity_1 := "DI OUT P02".V90J4.DRV.Support.SetVelo;

    ELSE

        "DI OUT P02".V90J4.DRV.Support.SetVelo := #V90J4.ManualVelocity_1;

        #V90J4.CmdExe_slow_fast_WP := "HMI KEY".P02.V90J4.F3_Jog_slow_WP AND "HMI KEY".P02.V90J4.F12_Enable_WP AND NOT "HMI KEY".P02.V90J4.F21_HALT;

        #V90J4.CmdExe_slow_fast_HP := "HMI KEY".P02.V90J4.F4_Jog_slow_HP AND "HMI KEY".P02.V90J4.F11_Enable_HP AND NOT "HMI KEY".P02.V90J4.F21_HALT;

    END_IF;

END_IF;

// Enable moving towards HP/WP

"HMI KEY".P02.V90J4.F11_Enable_HP :=

"HMI KEY".P02.V90J4.F12_Enable_WP := "DI OUT P02".V90J4.DRV.Support.InOperation AND NOT "DI OUT P02".V90J4.Common_FLT;

 

 

 

Network 5: G120C Workpiece Conveyor - enable

IF #ST_MANU AND NOT #SUPPORT_SEQ THEN

    IF "DI MAIN GLB".M00.EntirePlant_Run_Imp THEN

        #G120C.ManualVelocity_1 := "DI OUT P02".G120C.DRV.Support.SetVelo;

    END_IF;

        "DI OUT P02".G120C.DRV.Support.SetVelo := #G120C.ManualVelocity_1;

        #G120C.CmdExe_slow_fast_WP := "HMI KEY".P02.G120C.F3_Jog_slow_WP AND "HMI KEY".P02.G120C."F12_Enable_WP" AND NOT "HMI KEY".P02.G120C.F21_HALT;

        #G120C.CmdExe_slow_fast_HP := "HMI KEY".P02.G120C.F4_Jog_slow_HP AND "HMI KEY".P02.G120C."F11_Enable_HP" AND NOT "HMI KEY".P02.G120C.F21_HALT;

    END_IF;

// Enable moving towards HP/WP

"HMI KEY".P02.G120C.F11_Enable_HP := "DI OUT P02".G120C.DRV.Support.InOperation AND NOT "DI OUT P02".G120C.Common_FLT;

"HMI KEY".P02.G120C.F12_Enable_WP := "DI OUT P02".G120C.DRV.Support.InOperation AND NOT "DI OUT P02".G120C.Common_FLT;

 

 

 

Network 6: V200 Vacuum Gripper - enable

"HMI KEY".P02.Y200.F12_Enable_WP := NOT "DI OUT P02".Y200.Common_FLT;

 

 

 

Network 7: SCARA_3D Robotic Arm - enable

// Enabling Kinematics

"HMI KEY".P02.SCARA_3D.F8_Enabled := "DI OUT P02".SCARA_3D.KIN.Support.InOperation

AND NOT ("DI OUT P02".SCARA_3D.Common_FLT OR "DI MAIN GLB".M00.EntirePlant_STOP_Imp OR "HMI KEY".P02.SCARA_3D.F5_GroupStop);

// Stop GroupInterrupt and GroupContinue

IF NOT ("DI OUT P02".SCARA_3D.KIN.Support.GroupInterrupt AND "HMI KEY".P02.SCARA_3D.F8_Enabled) THEN

    #SCARA_3D.Cmd_GroupContinue := #SCARA_3D.Cmd_GroupInterrupt := FALSE;

END_IF;

// Stop MoveDirectAbsolute

IF "DI OUT P02".SCARA_3D.KIN.MC_MoveDirectAbsolute.Done OR NOT "HMI KEY".P02.SCARA_3D.F8_Enabled THEN

    #SCARA_3D.Cmd_MoveDirectAbsolute := FALSE;

END_IF;

// Stop MoveDirectRelative

IF "DI OUT P02".SCARA_3D.KIN.MC_MoveDirectRelative.Done OR NOT "HMI KEY".P02.SCARA_3D.F8_Enabled THEN

    #SCARA_3D.Cmd_MoveDirectRelative := FALSE;

END_IF;

 

 

 

Network 8: Monitoring manual operation ***

IF NOT #ST_MANU THEN

    RETURN;

ELSIF #MODULE_HP AND NOT #Support.HomPos_REg THEN

    "DI MAIN P02".M00.Initialization := TRUE;

END_IF;

#Support.HomPos_REg := #MODULE_HP;

"DI MAIN P02".M00.TOF_EntireModule_STOP_Pulse(IN := NOT #SUPPORT_SEQ AND #Support.HomPos_FEg,

                                              PT := t#500ms);

#Support.HomPos_FEg := #SUPPORT_SEQ;

IF #SUPPORT_SEQ THEN

    RETURN;

END_IF;

 

 

 

Network 9: Y200 Vacuum Gripper - execute

"DI OUT P02".Y200.VLV_O.CmdExe_WP := "HMI KEY".P02.Y200.F12_Enable_WP

AND NOT "HMI KEY".P02.Y200.F1_HP AND ("HMI KEY".P02.Y200.F2_WP OR "DI OUT P02".Y200.FB_WP);

 

 

 

Network 10: SCARA_3D Robotic Arm - execute

IF "HMI KEY".P02.SCARA_3D.F7_GroupContinue AND "DI OUT P02".SCARA_3D.KIN.Support.GroupInterrupt THEN

    #SCARA_3D.Cmd_GroupContinue := "HMI KEY".P02.SCARA_3D.F8_Enabled;

ELSIF "HMI KEY".P02.SCARA_3D.F6_GroupInterrupt THEN

    #SCARA_3D.Cmd_GroupInterrupt := "HMI KEY".P02.SCARA_3D.F8_Enabled;

ELSIF "HMI KEY".P02.SCARA_3D.F10_MoveDirect_Absolute THEN

    #SCARA_3D.Cmd_MoveDirectAbsolute := "HMI KEY".P02.SCARA_3D.F8_Enabled;

ELSIF "HMI KEY".P02.SCARA_3D.F11_MoveDirect_Relative THEN

    #SCARA_3D.Cmd_MoveDirectRelative := "HMI KEY".P02.SCARA_3D.F8_Enabled;

END_IF;