FB39 OUT P01 : P01 output stage |
|
|
|
Network 1: Pre-Setting #Support.Estop_TOF(IN := "M00 GLB Estop", PT := t#1s); |
|
|
|
Network 2: Call manual operation #MANUAL(ST_MANU:="M00 ManuCmpltMa run", MODULE_HP:="HMI KEY".P01.GLB.F20_HomPos, SUPPORT_SEQ:="M01 HomPosRun"); |
|
|
|
Network 3: MD_12 Gripper fingers 1+2 axis // Execute reference point #MD_12.DRV.MC_Home.Execute := #MD_12.DRV.Support.LampOFF AND "HMI KEY".P01.MD_12.F5_Set_Ref_Point AND ("DI MAIN GLB".SET.SSM.S.steps OR "M00 ManuCmpltMa run"); #MD_12.DRV.MC_Power.StartMode := #MD_12.DRV.MC_MoveAbsolute.Direction := 1; #MD_12.DRV.MC_MoveJog.PosCntrl := TRUE; // Halt impulse #tmp_enable_axis := "HMI KEY".P01.MD_12.F11_Enable_HP AND "HMI KEY".P01.MD_12.F12_Enable_WP; #Support.MD_12_FEg_Halt_Imp := #Support.MD_12_FEg_Halt AND NOT #tmp_enable_axis; #Support.MD_12_FEg_Halt := #tmp_enable_axis; // Execute output stage #MD_12(ENABLE := #Support.Estop_TOF.Q, HALT_01 := "HMI KEY".P01.MD_12.F21_HALT_GoToPos OR "DI MAIN GLB".TOF_CmpltMaOFF_Pulse.Q OR #Support.MD_12_FEg_Halt_Imp, MCB := "E00 MD12 MCB", START_ABSO := #tmp_enable_axis AND (#MD_12.DRV.Support.Cmd_MovAbso AND ("M00 AutoCmpltMa run" OR "M01 HomPosRun" OR "DI MAIN P01".SEQ1.SSM.S.stepin) OR "HMI KEY".P01.MD_12.F17_GoToAbsoPos), START_RELA := #tmp_enable_axis AND (#MD_12.DRV.Support.Cmd_MovRela AND ("M00 AutoCmpltMa run" OR "M01 HomPosRun" OR "DI MAIN P01".SEQ1.SSM.S.stepin) OR "HMI KEY".P01.MD_12.F18_GoToRelaPos), JOG_WP := #MD_12.DRV.Support.Cmd_MovJogWP AND ("M00 AutoCmpltMa run" OR "M01 HomPosRun" OR "DI MAIN P01".SEQ1.SSM.S.stepin) OR #MANUAL.MD12.CmdExe_slow_fast_WP, JOG_HP := #MD_12.DRV.Support.Cmd_MovJogHP AND ("M00 AutoCmpltMa run" OR "M01 HomPosRun" OR "DI MAIN P01".SEQ1.SSM.S.stepin) OR #MANUAL.MD12.CmdExe_slow_fast_HP, ACK_FLT := "M00 FLT CmpltMaACK REg", HOM_MODE := 6, // Encoder type = absolute AXIS := "+1-MD_12"); |
|
|
|
Network 4: MD_34 Gripper fingers 3+4 axis // Execute reference point #MD_34.DRV.MC_Home.Execute := #MD_34.DRV.Support.LampOFF AND "HMI KEY".P01.MD_34.F5_Set_Ref_Point AND ("DI MAIN GLB".SET.SSM.S.steps OR "M00 ManuCmpltMa run"); #MD_34.DRV.MC_Power.StartMode := #MD_34.DRV.MC_MoveAbsolute.Direction := 1; #MD_34.DRV.MC_MoveJog.PosCntrl := TRUE; // Halt impulse #tmp_enable_axis := "HMI KEY".P01.MD_34.F11_Enable_HP AND "HMI KEY".P01.MD_34.F12_Enable_WP; #Support.MD_34_FEg_Halt_Imp := #Support.MD_34_FEg_Halt AND NOT #tmp_enable_axis; #Support.MD_34_FEg_Halt := #tmp_enable_axis; // Execute output stage #MD_34(ENABLE := #Support.Estop_TOF.Q, HALT_01 := "HMI KEY".P01.MD_34.F21_HALT_GoToPos OR "DI MAIN GLB".TOF_CmpltMaOFF_Pulse.Q OR #Support.MD_34_FEg_Halt_Imp, MCB := "E00 MD34 MCB", START_ABSO := #tmp_enable_axis AND (#MD_34.DRV.Support.Cmd_MovAbso AND ("M00 AutoCmpltMa run" OR "M01 HomPosRun" OR "DI MAIN P01".SEQ1.SSM.S.stepin) OR "HMI KEY".P01.MD_34.F17_GoToAbsoPos), START_RELA := #tmp_enable_axis AND (#MD_34.DRV.Support.Cmd_MovRela AND ("M00 AutoCmpltMa run" OR "M01 HomPosRun" OR "DI MAIN P01".SEQ1.SSM.S.stepin) OR "HMI KEY".P01.MD_34.F18_GoToRelaPos), JOG_WP := #MD_34.DRV.Support.Cmd_MovJogWP AND ("M00 AutoCmpltMa run" OR "M01 HomPosRun" OR "DI MAIN P01".SEQ1.SSM.S.stepin) OR #MANUAL.MD34.CmdExe_slow_fast_WP, JOG_HP := #MD_34.DRV.Support.Cmd_MovJogHP AND ("M00 AutoCmpltMa run" OR "M01 HomPosRun" OR "DI MAIN P01".SEQ1.SSM.S.stepin) OR #MANUAL.MD34.CmdExe_slow_fast_HP, ACK_FLT := "M00 FLT CmpltMaACK REg", HOM_MODE := 6, // Encoder type = absolute AXIS := "+1-MD_34"); |
|
|
|
Network 5: V90_X Gripper Xaxis // Execute reference point #V90_X.DRV.MC_Home.Execute := #V90_X.DRV.Support.LampOFF AND "HMI KEY".P01.V90_X.F5_Set_Ref_Point AND ("DI MAIN GLB".SET.SSM.S.steps OR "M00 ManuCmpltMa run"); #V90_X.DRV.MC_Power.StartMode := #V90_X.DRV.MC_MoveAbsolute.Direction := 1; #V90_X.DRV.MC_MoveJog.PosCntrl := TRUE; // Halt impulse #tmp_enable_axis := "HMI KEY".P01.V90_X.F11_Enable_HP AND "HMI KEY".P01.V90_X.F12_Enable_WP; #Support.V90_X_FEg_Halt_Imp := #Support.V90_X_FEg_Halt AND NOT #tmp_enable_axis; #Support.V90_X_FEg_Halt := #tmp_enable_axis; // Execute output stage #V90_X(ENABLE := #Support.Estop_TOF.Q, HALT_01 := "HMI KEY".P01.V90_X.F21_HALT_GoToPos OR "DI MAIN GLB".TOF_CmpltMaOFF_Pulse.Q OR #Support.V90_X_FEg_Halt_Imp, MCB := "E00 V90_X MCB", START_ABSO := #tmp_enable_axis AND (#V90_X.DRV.Support.Cmd_MovAbso AND ("M00 AutoCmpltMa run" OR "M01 HomPosRun" OR "DI MAIN P01".SEQ1.SSM.S.stepin) OR "HMI KEY".P01.V90_X.F17_GoToAbsoPos), START_RELA := #tmp_enable_axis AND (#V90_X.DRV.Support.Cmd_MovRela AND ("M00 AutoCmpltMa run" OR "M01 HomPosRun" OR "DI MAIN P01".SEQ1.SSM.S.stepin) OR "HMI KEY".P01.V90_X.F18_GoToRelaPos), JOG_WP := #V90_X.DRV.Support.Cmd_MovJogWP AND ("M00 AutoCmpltMa run" OR "M01 HomPosRun" OR "DI MAIN P01".SEQ1.SSM.S.stepin) OR #MANUAL.V90_X.CmdExe_slow_fast_WP, JOG_HP := #V90_X.DRV.Support.Cmd_MovJogHP AND ("M00 AutoCmpltMa run" OR "M01 HomPosRun" OR "DI MAIN P01".SEQ1.SSM.S.stepin) OR #MANUAL.V90_X.CmdExe_slow_fast_HP, ACK_FLT := "M00 FLT CmpltMaACK REg", HOM_MODE := 6, // Encoder type = absolute AXIS := "+1-V90_X"); |
|
|
|
Network 6: V90_Y Gripper Yaxis // Execute reference point #V90_Y.DRV.MC_Home.Execute := #V90_Y.DRV.Support.LampOFF AND "HMI KEY".P01.V90_Y.F5_Set_Ref_Point AND ("DI MAIN GLB".SET.SSM.S.steps OR "M00 ManuCmpltMa run"); #V90_Y.DRV.MC_Power.StartMode := #V90_Y.DRV.MC_MoveAbsolute.Direction := 1; #V90_Y.DRV.MC_MoveJog.PosCntrl := TRUE; // Halt impulse #tmp_enable_axis := "HMI KEY".P01.V90_Y.F11_Enable_HP AND "HMI KEY".P01.V90_Y.F12_Enable_WP; #Support.V90_Y_FEg_Halt_Imp := #Support.V90_Y_FEg_Halt AND NOT #tmp_enable_axis; #Support.V90_Y_FEg_Halt := #tmp_enable_axis; // Execute output stage #V90_Y(ENABLE := #Support.Estop_TOF.Q, HALT_01 := "HMI KEY".P01.V90_Y.F21_HALT_GoToPos OR "DI MAIN GLB".TOF_CmpltMaOFF_Pulse.Q OR #Support.V90_Y_FEg_Halt_Imp, MCB := "E00 V90_Y MCB", START_ABSO := #tmp_enable_axis AND (#V90_Y.DRV.Support.Cmd_MovAbso AND ("M00 AutoCmpltMa run" OR "M01 HomPosRun" OR "DI MAIN P01".SEQ1.SSM.S.stepin) OR "HMI KEY".P01.V90_Y.F17_GoToAbsoPos), START_RELA := #tmp_enable_axis AND (#V90_Y.DRV.Support.Cmd_MovRela AND ("M00 AutoCmpltMa run" OR "M01 HomPosRun" OR "DI MAIN P01".SEQ1.SSM.S.stepin) OR "HMI KEY".P01.V90_Y.F18_GoToRelaPos), JOG_WP := #V90_Y.DRV.Support.Cmd_MovJogWP AND ("M00 AutoCmpltMa run" OR "M01 HomPosRun" OR "DI MAIN P01".SEQ1.SSM.S.stepin) OR #MANUAL.V90_Y.CmdExe_slow_fast_WP, JOG_HP := #V90_Y.DRV.Support.Cmd_MovJogHP AND ("M00 AutoCmpltMa run" OR "M01 HomPosRun" OR "DI MAIN P01".SEQ1.SSM.S.stepin) OR #MANUAL.V90_Y.CmdExe_slow_fast_HP, ACK_FLT := "M00 FLT CmpltMaACK REg", HOM_MODE := 6, // Encoder type = absolute AXIS := "+1-V90_Y"); |
|
|
|
Network 7: V90_Z Gripper Zaxis // Execute reference point #V90_Z.DRV.MC_Home.Execute := #V90_Z.DRV.Support.LampOFF AND "HMI KEY".P01.V90_Z.F5_Set_Ref_Point AND ("DI MAIN GLB".SET.SSM.S.steps OR "M00 ManuCmpltMa run"); #V90_Z.DRV.MC_Power.StartMode := #V90_Z.DRV.MC_MoveAbsolute.Direction := 1; #V90_Z.DRV.MC_MoveJog.PosCntrl := TRUE; // Halt impulse #tmp_enable_axis := "HMI KEY".P01.V90_Z.F11_Enable_HP AND "HMI KEY".P01.V90_Z.F12_Enable_WP; #Support.V90_Z_FEg_Halt_Imp := #Support.V90_Z_FEg_Halt AND NOT #tmp_enable_axis; #Support.V90_Z_FEg_Halt := #tmp_enable_axis; // Execute output stage #V90_Z(ENABLE := #Support.Estop_TOF.Q, HALT_01 := "HMI KEY".P01.V90_Z.F21_HALT_GoToPos OR "DI MAIN GLB".TOF_CmpltMaOFF_Pulse.Q OR #Support.V90_Z_FEg_Halt_Imp, MCB := "E00 V90_Z MCB", START_ABSO := #tmp_enable_axis AND (#V90_Z.DRV.Support.Cmd_MovAbso AND ("M00 AutoCmpltMa run" OR "M01 HomPosRun" OR "DI MAIN P01".SEQ1.SSM.S.stepin) OR "HMI KEY".P01.V90_Z.F17_GoToAbsoPos), START_RELA := #tmp_enable_axis AND (#V90_Z.DRV.Support.Cmd_MovRela AND ("M00 AutoCmpltMa run" OR "M01 HomPosRun" OR "DI MAIN P01".SEQ1.SSM.S.stepin) OR "HMI KEY".P01.V90_Z.F18_GoToRelaPos), JOG_WP := #V90_Z.DRV.Support.Cmd_MovJogWP AND ("M00 AutoCmpltMa run" OR "M01 HomPosRun" OR "DI MAIN P01".SEQ1.SSM.S.stepin) OR #MANUAL.V90_Z.CmdExe_slow_fast_WP, JOG_HP := #V90_Z.DRV.Support.Cmd_MovJogHP AND ("M00 AutoCmpltMa run" OR "M01 HomPosRun" OR "DI MAIN P01".SEQ1.SSM.S.stepin) OR #MANUAL.V90_Z.CmdExe_slow_fast_HP, ACK_FLT := "M00 FLT CmpltMaACK REg", HOM_MODE := 6, // Encoder type = absolute AXIS := "+1-V90_Z"); |
|
|
|
Network 8: C01 Lifting safety gate (WP closed) #C01(CMD_WP := FALSE, FB_HP := "E00 B31 LiftGatCyl HP" AND "E00 B32 LiftGatVlv HP", FB_WP := "E00 B33 LiftGatCyl WP", RLS := TRUE, ACK_FLT := "M00 FLT CmpltMaACK Imp", VALV_WP => "A00 Y10 LiftGatVlv WP"); |
|