Home

 

Erfahrung

 

Referenzen

 

Sondermaschinen

 

MSR-Maschinen

 

SPS-Programmierung

 

Visualisierung HMI

 

Elektro CAD

 

Leistungsprofil

 

Personalia

 

SW-Development

 

Dokumentation

 

 

 

Impressum & DSGVO

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

FB48 MAN P02 : Manual Operation Mode

 

 

 

Network 1: S210A1 Roller Picker A1 axis - enable

"DI OUT P02".Manual.S210A1.Positive_Scaled_Value;

IF #PLANT_MANUAL AND NOT #SUPPORT_SEQ THEN

    IF "DI MAIN GLB".M00.EntirePlant_Run_Impulse THEN

        #S210A1.ManualVelocity_1 := "DI OUT P02".S210A1.DRV.Support.SetVelocity;

    END_IF;

    "DI OUT P02".S210A1.DRV.Support.SetVelocity := #S210A1.ManualVelocity_1;

    #S210A1.Execute_slow_fast_HP := "HMI KEY".P02.S210A1.F4_Jog_slow_HP AND "HMI KEY".P02.S210A1.F11_Enable_HP AND NOT "HMI KEY".P02.S210A1.F21_HALT;

    #S210A1.Execute_slow_fast_WP := "HMI KEY".P02.S210A1.F3_Jog_slow_WP AND "HMI KEY".P02.S210A1.F12_Enable_WP AND NOT "HMI KEY".P02.S210A1.F21_HALT;

END_IF;

// Enable disable HP/WP

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

AND "DI OUT P02".S210A1.DRV.Support.ActualPosition >= #S210A1.Negative_Scaled_Value;

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

AND "DI OUT P02".S210A1.DRV.Support.ActualPosition <= #S210A1.Positive_Scaled_Value;

 

 

 

Network 2: S210A2 Roller Picker A2 axis - enable

IF #PLANT_MANUAL AND NOT #SUPPORT_SEQ THEN

    IF "DI MAIN GLB".M00.EntirePlant_Run_Impulse THEN

        #S210A2.ManualVelocity_1 := "DI OUT P02".S210A2.DRV.Support.SetVelocity;

    END_IF;

    "DI OUT P02".S210A2.DRV.Support.SetVelocity := #S210A2.ManualVelocity_1;

    #S210A2.Execute_slow_fast_HP := "HMI KEY".P02.S210A2.F4_Jog_slow_HP AND "HMI KEY".P02.S210A2.F11_Enable_HP AND NOT "HMI KEY".P02.S210A2.F21_HALT;

    #S210A2.Execute_slow_fast_WP := "HMI KEY".P02.S210A2.F3_Jog_slow_WP AND "HMI KEY".P02.S210A2.F12_Enable_WP AND NOT "HMI KEY".P02.S210A2.F21_HALT;

END_IF;

// Enable disable HP/WP

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

AND "DI OUT P02".S210A2.DRV.Support.ActualPosition >= #S210A2.Negative_Scaled_Value;

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

AND "DI OUT P02".S210A2.DRV.Support.ActualPosition <= #S210A2.Positive_Scaled_Value;

 

 

 

Network 3: S210A3 Roller Picker X axis - enable

IF #PLANT_MANUAL AND NOT #SUPPORT_SEQ THEN

    IF "DI MAIN GLB".M00.EntirePlant_Run_Impulse THEN

        #S210A3.ManualVelocity_1 := "DI OUT P02".S210A3.DRV.Support.SetVelocity;

    END_IF;

    "DI OUT P02".S210A3.DRV.Support.SetVelocity := #S210A3.ManualVelocity_1;

    #S210A3.Execute_slow_fast_HP := "HMI KEY".P02.S210A3.F4_Jog_slow_HP AND "HMI KEY".P02.S210A3.F11_Enable_HP AND NOT "HMI KEY".P02.S210A3.F21_HALT;

    #S210A3.Execute_slow_fast_WP := "HMI KEY".P02.S210A3.F3_Jog_slow_WP AND "HMI KEY".P02.S210A3.F12_Enable_WP AND NOT "HMI KEY".P02.S210A3.F21_HALT;

END_IF;

// Enable disable HP/WP

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

AND "DI OUT P02".S210A3.DRV.Support.ActualPosition >= "DI OUT P02".S210A3.DRV.Support.EndLim_MinPos;

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

AND "DI OUT P02".S210A3.DRV.Support.ActualPosition <= "DI OUT P02".S210A3.DRV.Support.EndLim_MaxPos;

 

 

 

Network 4: ROBOT_3D Cartesian Roller-Picker-2D (RP2D) - enable

"HMI KEY".P02.ROBOT_3D.F8_Enabled := "DI OUT P02".ROBOT_3D.DRV.Support.InOperation

AND "DI OUT P02".ROBOT_3D.DRV.Support.KINEMATICS_Enabled AND NOT ("DI OUT P02".ROBOT_3D.Common_FLT OR "HMI KEY".P02.ROBOT_3D.F5_GroupStop)

AND "E00 ROBOT_3D MinLimit_x" AND "E00 ROBOT_3D MaxLimit_x"

AND "E00 ROBOT_3D MinLimit_y" AND "E00 ROBOT_3D MaxLimit_y"

AND "E00 ROBOT_3D MinLimit_z" AND "E00 ROBOT_3D MaxLimit_z";

// Cancel GroupInterrupt and GroupContinue

IF NOT ("DI OUT P02".ROBOT_3D.DRV.Support.X17_GroupInterrupt AND "HMI KEY".P02.ROBOT_3D.F8_Enabled) THEN

    #ROBOT_3D.GroupContinue := #ROBOT_3D.GroupInterrupt := FALSE;

END_IF;

// Execute MoveLinearAbsolute

IF "DI OUT P02".ROBOT_3D.DRV.MC_MoveLinearAbsolute.Done OR NOT "HMI KEY".P02.ROBOT_3D.F8_Enabled THEN

    #ROBOT_3D.MoveLinearAbsolute := FALSE;

END_IF;

// Stop execute MoveLinearRelative

IF "DI OUT P02".ROBOT_3D.DRV.MC_MoveLinearRelative.Done OR NOT "HMI KEY".P02.ROBOT_3D.F8_Enabled THEN

 #ROBOT_3D.MoveLinearRelative := FALSE;

END_IF;

 

 

 

Network 5: CAMERA Perforating Position Capture - enable

"HMI KEY".P02.CAMERA.F12_Enable_WP := "HMI KEY".P01.S120M.F12_Enable_WP AND NOT "DI OUT P02".TRACK_CONVEYOR.Common_FLT;

 

 

 

Network 6: Monitoring manual operation ***

IF NOT #PLANT_MANUAL THEN

    RETURN;

ELSIF #MODULE_HP AND NOT #Support.Homing_Sequence_REg THEN

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

END_IF;

#Support.Homing_Sequence_REg := #MODULE_HP;

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

                                              PT := t#500ms);

#Support.Homing_Sequence_FEg := #SUPPORT_SEQ;

IF #SUPPORT_SEQ THEN

    RETURN;

END_IF;

 

 

 

Network 7: ROBOT_3D Cartesian Roller-Picker-3D - execute

IF "HMI KEY".P02.ROBOT_3D.F7_GroupContinue AND "DI OUT P02".ROBOT_3D.DRV.Support.X17_GroupInterrupt THEN

    #ROBOT_3D.GroupContinue := "HMI KEY".P02.#ROBOT_3D.F8_Enabled;

ELSIF "HMI KEY".P02.#ROBOT_3D.F6_GroupInterrupt THEN

   #ROBOT_3D.GroupInterrupt := "HMI KEY".P02.#ROBOT_3D.F8_Enabled;

ELSIF "HMI KEY".P02.#ROBOT_3D.F1_MoveLinearAbsolute THEN

    #ROBOT_3D.MoveLinearAbsolute := "HMI KEY".P02.#ROBOT_3D.F8_Enabled;

ELSIF "HMI KEY".P02.#ROBOT_3D.F2_MoveLinearRelative THEN

    #ROBOT_3D.MoveLinearRelative := "HMI KEY".P02.#ROBOT_3D.F8_Enabled;

END_IF;

 

 

 

Network 8: CAMERA Perforating Position Capture - execute

"HMI KEY".P02.CAMERA.F10_Execute := "HMI KEY".P02.CAMERA.F12_Enable_WP AND "HMI KEY".P02.CAMERA.F2_WP AND "E00 CAMERA Perforating Pointer";

IF "HMI KEY".P02.CAMERA.F10_Execute THEN

    "DI OUT P02".CAMERA.Recording.Done := FALSE;

END_IF;