|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
FB32 SEQ1 P01 : P01 sequencer 1 (LIF) |
|
|
|
Netzwerk 1: Step Switching Mechanism (SSM) #STEP_PLS := "HMI KEY".P01.GLB.F17_StepPls; #STEP_MNS := "HMI KEY".P01.GLB.F18_StepMns; #GOTO_STEP := "HMI KEY".P01.GLB.F19_GoToStep; #GOTO_STEP_NO := "HMI KEY".P01.GLB.GoToStep; #LAST_STEP := 17; |
|
|
|
Netzwerk 2: Pre-Setting "M01 RdyToStart" := "M01 HomPosIS"; |
|
|
|
Netzwerk 3: Step jump distributor CASE "DI MAIN P01".SEQ1.S.stepact OF 0: // Waiting für SEQ1 enable "M01 SEQ1 Active" := FALSE; IF NOT "M01 RdyToStart" THEN "M00 AutoCmpltMa run" := "M00 InchCmpltMa run" := FALSE; RETURN; ELSE "DI MAIN P01".SEQ1.S.stepd := "DI MAIN P01".SEQ1.S.steps; END_IF;
1: // C01 cylinder WP (close) "M01 SEQ1 Active" := TRUE; "DI OUT P01".C01.VLV_OC.CmdExe_HP := FALSE; "DI OUT P01".C01.VLV_OC.CmdExe_WP := "HMI KEY".P01.C01.F12_Enable_WP; "DI MAIN P01".SEQ1.S.stepd := "DI OUT P01".C01.FB_WP;
2: // S120_X + G120G_Y MovAbso towards next IndexPos 1 IF "DI MAIN P01".SEQ1.S.stepfc THEN #IndexPos := #IndexPos + 1; #ExecuteCoodinate(INDEX_POS := #IndexPos, REF_POS := "DI OUT P01".MANUAL.Rer_Pos, PLACES_ON_X := "DI OUT P01".MANUAL.Places_on_X, PLACES_ON_Y := "DI OUT P01".MANUAL.Places_on_Y, GAP_FACTOR_X := "DI OUT P01".MANUAL.Gap.X, GAP_FACTOR_Y := "DI OUT P01".MANUAL.Gap.Y, TARGET_POS := #TrgtPos); ELSE "FC POS REACHED"(START := "DI MAIN P01".SEQ1.S.steplo, TARGET_POS := #TrgtPos, VELO_X := "DI OUT P01".MANUAL.S120_X.TchInVelo_1, VELO_Y := "DI OUT P01".MANUAL.G120C_Y.TchInVelo_1, ENABLE_X := NOT "DI OUT P01".S120_X.HALT_01 AND "DI MAIN P01".SEQ1.S.stepa, ENABLE_Y := NOT "DI OUT P01".G120C_Y.HALT_01 AND "DI MAIN P01".SEQ1.S.stepa, PRECISION := 5.0, MOV_TO_POS_X => "DI OUT P01".S120_X.DRV.Support.Cmd_MovAbso, MOV_TO_POS_Y => "DI OUT P01".G120C_Y.DRV.Support.Cmd_MovAbso, TARGET_REACHED => "DI MAIN P01".SEQ1.S.stepd); END_IF;
3: // S120_X + G120G_Y MovAbso towards next IndexPos 2 IF "DI MAIN P01".SEQ1.S.stepfc THEN #IndexPos := #IndexPos + 1; #ExecuteCoodinate(INDEX_POS := #IndexPos, REF_POS := "DI OUT P01".MANUAL.Rer_Pos, PLACES_ON_X := "DI OUT P01".MANUAL.Places_on_X, PLACES_ON_Y := "DI OUT P01".MANUAL.Places_on_Y, GAP_FACTOR_X := "DI OUT P01".MANUAL.Gap.X, GAP_FACTOR_Y := "DI OUT P01".MANUAL.Gap.Y, TARGET_POS := #TrgtPos); ELSE "FC POS REACHED"(START := "DI MAIN P01".SEQ1.S.steplo, TARGET_POS := #TrgtPos, VELO_X := "DI OUT P01".MANUAL.S120_X.TchInVelo_1, VELO_Y := "DI OUT P01".MANUAL.G120C_Y.TchInVelo_1, ENABLE_X := NOT "DI OUT P01".S120_X.HALT_01 AND "DI MAIN P01".SEQ1.S.stepa, ENABLE_Y := NOT "DI OUT P01".G120C_Y.HALT_01 AND "DI MAIN P01".SEQ1.S.stepa, PRECISION := 5.0, MOV_TO_POS_X => "DI OUT P01".S120_X.DRV.Support.Cmd_MovAbso, MOV_TO_POS_Y => "DI OUT P01".G120C_Y.DRV.Support.Cmd_MovAbso, TARGET_REACHED => "DI MAIN P01".SEQ1.S.stepd); END_IF;
4: // S120_X + G120G_Y MovAbso towards next IndexPos 3 IF "DI MAIN P01".SEQ1.S.stepfc THEN #IndexPos := #IndexPos + 1; #ExecuteCoodinate(INDEX_POS := #IndexPos, REF_POS := "DI OUT P01".MANUAL.Rer_Pos, PLACES_ON_X := "DI OUT P01".MANUAL.Places_on_X, PLACES_ON_Y := "DI OUT P01".MANUAL.Places_on_Y, GAP_FACTOR_X := "DI OUT P01".MANUAL.Gap.X, GAP_FACTOR_Y := "DI OUT P01".MANUAL.Gap.Y, TARGET_POS := #TrgtPos); ELSE "FC POS REACHED"(START := "DI MAIN P01".SEQ1.S.steplo, TARGET_POS := #TrgtPos, VELO_X := "DI OUT P01".MANUAL.S120_X.TchInVelo_1, VELO_Y := "DI OUT P01".MANUAL.G120C_Y.TchInVelo_1, ENABLE_X := NOT "DI OUT P01".S120_X.HALT_01 AND "DI MAIN P01".SEQ1.S.stepa, ENABLE_Y := NOT "DI OUT P01".G120C_Y.HALT_01 AND "DI MAIN P01".SEQ1.S.stepa, PRECISION := 5.0, MOV_TO_POS_X => "DI OUT P01".S120_X.DRV.Support.Cmd_MovAbso, MOV_TO_POS_Y => "DI OUT P01".G120C_Y.DRV.Support.Cmd_MovAbso, TARGET_REACHED => "DI MAIN P01".SEQ1.S.stepd); END_IF;
5: // S120_X MovAbso towards Pos.3 (1444.0) IF "DI MAIN P01".SEQ1.S.stepfc THEN "DI OUT P01".S120_X.DRV.Support.SetVelo := "DI OUT P01".MANUAL.S120_X.TchInVelo_3; "DI OUT P01".S120_X.DRV.MC_MoveAbsolute.Position := "DI OUT P01".MANUAL.S120_X.TchInPos_3; ELSE "DI OUT P01".S120_X.DRV.Support.Cmd_MovAbso := NOT "DI OUT P01".S120_X.HALT_01 AND "DI MAIN P01".SEQ1.S.stepa; "DI MAIN P01".SEQ1.S.stepd := "DI OUT P01".S120_X.DRV.Support.InPos AND NOT "DI MAIN P01".SEQ1.S.steplo; END_IF;
6: // G120C_Y MovAbso towards Pos.3 (1444.0) IF "DI MAIN P01".SEQ1.S.stepfc THEN "DI OUT P01".G120C_Y.DRV.Support.SetVelo := "DI OUT P01".MANUAL.G120C_Y.TchInVelo_3; "DI OUT P01".G120C_Y.DRV.MC_MoveAbsolute.Position := "DI OUT P01".MANUAL.G120C_Y.TchInPos_3; ELSE "DI OUT P01".G120C_Y.DRV.Support.Cmd_MovAbso := NOT "DI OUT P01".G120C_Y.HALT_01 AND "DI MAIN P01".SEQ1.S.stepa; "DI MAIN P01".SEQ1.S.stepd := "DI OUT P01".G120C_Y.DRV.Support.InPos AND NOT "DI MAIN P01".SEQ1.S.steplo; END_IF;
7: // G120C MovRela distance Pos.1 (1444.0 -/+ 444.0) IF "DI MAIN P01".SEQ1.S.stepfc THEN "DI OUT P01".G120C_Y.DRV.Support.SetVelo := "DI OUT P01".MANUAL.G120C_Y.TchInVelo_3; IF "DI OUT P01".G120C_Y.DRV.Support.ActPos >= "DI OUT P01".MANUAL.G120C_Y.TchInPos_1 THEN "DI OUT P01".G120C_Y.DRV.MC_MoveRelative.Distance := - "DI OUT P01".MANUAL.G120C_Y.TchInPos_1; ELSE "DI OUT P01".G120C_Y.DRV.MC_MoveRelative.Distance := "DI OUT P01".MANUAL.G120C_Y.TchInPos_1; END_IF; "DI OUT P01".G120C_Y.DRV.Support.SavTrgtPos := "DI OUT P01".G120C_Y.DRV.Support.ActPos + "DI OUT P01".G120C_Y.DRV.MC_MoveRelative.Distance; ELSE "DI OUT P01".G120C_Y.DRV.Support.Cmd_MovRela := NOT "DI OUT P01".G120C_Y.HALT_01 AND "DI MAIN P01".SEQ1.S.stepa; "DI MAIN P01".SEQ1.S.stepd := ABS("DI OUT P01".G120C_Y.DRV.Support.SavTrgtPos - "DI OUT P01".G120C_Y.DRV.Support.ActPos) <= "DI OUT P01".G120C_Y.DRV.Support.WinRange; END_IF;
8: // S120_X MovRela distance Pos.1 (1444.0 -/+ 444.0) IF "DI MAIN P01".SEQ1.S.stepfc THEN "DI OUT P01".S120_X.DRV.Support.SetVelo := "DI OUT P01".MANUAL.S120_X.TchInVelo_3; IF "DI OUT P01".S120_X.DRV.Support.ActPos >= "DI OUT P01".MANUAL.S120_X.TchInPos_1 THEN "DI OUT P01".S120_X.DRV.MC_MoveRelative.Distance := - "DI OUT P01".MANUAL.S120_X.TchInPos_1; ELSE "DI OUT P01".S120_X.DRV.MC_MoveRelative.Distance := "DI OUT P01".MANUAL.S120_X.TchInPos_1; END_IF; "DI OUT P01".S120_X.DRV.Support.SavTrgtPos := "DI OUT P01".S120_X.DRV.Support.ActPos + "DI OUT P01".S120_X.DRV.MC_MoveRelative.Distance; ELSE "DI OUT P01".S120_X.DRV.Support.Cmd_MovRela := NOT "DI OUT P01".S120_X.HALT_01 AND "DI MAIN P01".SEQ1.S.stepa; "DI MAIN P01".SEQ1.S.stepd := "DI OUT P01".S120_X.DRV.Support.InPos AND NOT "DI MAIN P01".SEQ1.S.steplo; END_IF;
9: // G120C_Y MovRela distance Pos.2 (1000.0 -/+ 400.0) IF "DI MAIN P01".SEQ1.S.stepfc THEN "DI OUT P01".G120C_Y.DRV.Support.SetVelo := "DI OUT P01".MANUAL.G120C_Y.TchInVelo_3; IF "DI OUT P01".G120C_Y.DRV.Support.ActPos >= "DI OUT P01".MANUAL.G120C_Y.TchInPos_2 THEN "DI OUT P01".G120C_Y.DRV.MC_MoveRelative.Distance := - "DI OUT P01".MANUAL.G120C_Y.TchInPos_2; ELSE "DI OUT P01".G120C_Y.DRV.MC_MoveRelative.Distance := "DI OUT P01".MANUAL.G120C_Y.TchInPos_2; END_IF; "DI OUT P01".G120C_Y.DRV.Support.SavTrgtPos := "DI OUT P01".G120C_Y.DRV.Support.ActPos + "DI OUT P01".G120C_Y.DRV.MC_MoveRelative.Distance; ELSE "DI OUT P01".G120C_Y.DRV.Support.Cmd_MovRela := NOT "DI OUT P01".G120C_Y.HALT_01 AND "DI MAIN P01".SEQ1.S.stepa; "DI MAIN P01".SEQ1.S.stepd := "DI OUT P01".G120C_Y.DRV.Support.InPos AND NOT "DI MAIN P01".SEQ1.S.steplo; END_IF;
10: // S120_X MovRela distance Pos.2 exact (1000.0 -/+ 400.0) IF "DI MAIN P01".SEQ1.S.stepfc THEN "DI OUT P01".S120_X.DRV.Support.SetVelo := "DI OUT P01".MANUAL.S120_X.TchInVelo_3; IF "DI OUT P01".S120_X.DRV.Support.ActPos >= "DI OUT P01".MANUAL.S120_X.TchInPos_2 THEN "DI OUT P01".S120_X.DRV.MC_MoveRelative.Distance := - "DI OUT P01".MANUAL.S120_X.TchInPos_2; ELSE "DI OUT P01".S120_X.DRV.MC_MoveRelative.Distance := "DI OUT P01".MANUAL.S120_X.TchInPos_2; END_IF; "DI OUT P01".S120_X.DRV.Support.SavTrgtPos := "DI OUT P01".S120_X.DRV.Support.ActPos + "DI OUT P01".S120_X.DRV.MC_MoveRelative.Distance; ELSE "DI OUT P01".S120_X.DRV.Support.Cmd_MovRela := NOT "DI OUT P01".S120_X.HALT_01 AND "DI MAIN P01".SEQ1.S.stepa; "DI MAIN P01".SEQ1.S.stepd := "DI OUT P01".S120_X.DRV.Support.InPos AND NOT "DI MAIN P01".SEQ1.S.steplo; END_IF;
11: // G120C_Y + S120_X MovAbso towards Pos.0 (10.0) IF "DI MAIN P01".SEQ1.S.stepfc THEN "DI OUT P01".G120C_Y.DRV.Support.SetVelo := "DI OUT P01".MANUAL.G120C_Y.TchInVelo_3; "DI OUT P01".G120C_Y.DRV.MC_MoveAbsolute.Position := "DI OUT P01".MANUAL.G120C_Y.TchInPos_0; "DI OUT P01".S120_X.DRV.Support.SetVelo := "DI OUT P01".MANUAL.S120_X.TchInVelo_3; "DI OUT P01".S120_X.DRV.MC_MoveAbsolute.Position := "DI OUT P01".MANUAL.S120_X.TchInPos_0; ELSE "DI OUT P01".S120_X.DRV.Support.Cmd_MovAbso := NOT "DI OUT P01".S120_X.HALT_01 AND "DI MAIN P01".SEQ1.S.stepa; "DI OUT P01".G120C_Y.DRV.Support.Cmd_MovAbso := NOT "DI OUT P01".G120C_Y.HALT_01 AND "DI MAIN P01".SEQ1.S.stepa; "DI MAIN P01".SEQ1.S.stepd := "DI OUT P01".S120_X.DRV.Support.InPos AND "DI OUT P01".G120C_Y.DRV.Support.InPos AND NOT "DI MAIN P01".SEQ1.S.steplo; END_IF;
12: // G120C_Y + S120_X MovJogWP towards middle point (745.0) rough IF "DI MAIN P01".SEQ1.S.stepfc THEN "DI OUT P01".S120_X.DRV.Support.SetVelo := "DI OUT P01".MANUAL.S120_X.TchInVelo_1; "DI OUT P01".S120_X.DRV.Support.SavTrgtPos := "DI OUT P01".S120_X.DRV.Support.SW_EndLim_MaxPos / 2.0; "DI OUT P01".G120C_Y.DRV.Support.SetVelo := "DI OUT P01".MANUAL.G120C_Y.TchInVelo_1; "DI OUT P01".G120C_Y.DRV.Support.SavTrgtPos := "DI OUT P01".G120C_Y.DRV.Support.SW_EndLim_MaxPos / 2.0; ELSE "DI OUT P01".S120_X.DRV.Support.Cmd_MovJogWP := NOT "DI OUT P01".S120_X.HALT_01 AND "DI MAIN P01".SEQ1.S.stepa; "DI OUT P01".G120C_Y.DRV.Support.Cmd_MovJogWP := NOT "DI OUT P01".G120C_Y.HALT_01 AND "DI MAIN P01".SEQ1.S.stepa; IF "DI OUT P01".S120_X.DRV.Support.InPos AND NOT "DI MAIN P01".SEQ1.S.steplo THEN "DI OUT P01".S120_X.DRV.Support.Cmd_MovJogWP := FALSE; END_IF; IF "DI OUT P01".G120C_Y.DRV.Support.InPos AND NOT "DI MAIN P01".SEQ1.S.steplo THEN "DI OUT P01".G120C_Y.DRV.Support.Cmd_MovJogWP := FALSE; END_IF; "DI MAIN P01".SEQ1.S.stepd := "DI OUT P01".S120_X.DRV.Support.InPos AND "DI OUT P01".G120C_Y.DRV.Support.InPos AND NOT "DI MAIN P01".SEQ1.S.steplo; END_IF;
13: // S120_X + G120G_Y MovAbsoXY towards next IndexPos 4 IF "DI MAIN P01".SEQ1.S.stepfc THEN #IndexPos := #IndexPos + 1; #ExecuteCoodinate(INDEX_POS := #IndexPos, REF_POS := "DI OUT P01".MANUAL.Rer_Pos, PLACES_ON_X := "DI OUT P01".MANUAL.Places_on_X, PLACES_ON_Y := "DI OUT P01".MANUAL.Places_on_Y, GAP_FACTOR_X := "DI OUT P01".MANUAL.Gap.X, GAP_FACTOR_Y := "DI OUT P01".MANUAL.Gap.Y, TARGET_POS := #TrgtPos); ELSE "FC POS REACHED"(START := "DI MAIN P01".SEQ1.S.steplo, TARGET_POS := #TrgtPos, VELO_X := "DI OUT P01".MANUAL.S120_X.TchInVelo_1, VELO_Y := "DI OUT P01".MANUAL.G120C_Y.TchInVelo_1, ENABLE_X := NOT "DI OUT P01".S120_X.HALT_01 AND "DI MAIN P01".SEQ1.S.stepa, ENABLE_Y := NOT "DI OUT P01".G120C_Y.HALT_01 AND "DI MAIN P01".SEQ1.S.stepa, PRECISION := 5.0, MOV_TO_POS_X => "DI OUT P01".S120_X.DRV.Support.Cmd_MovAbso, MOV_TO_POS_Y => "DI OUT P01".G120C_Y.DRV.Support.Cmd_MovAbso, TARGET_REACHED => "DI MAIN P01".SEQ1.S.stepd); END_IF;
14: // G120C_Y MovRela distance Pos.1 (745.0 -/+ 444.0) IF "DI MAIN P01".SEQ1.S.stepfc THEN "DI OUT P01".G120C_Y.DRV.Support.SetVelo := "DI OUT P01".MANUAL.G120C_Y.TchInVelo_3; IF "DI OUT P01".G120C_Y.DRV.Support.ActPos >= "DI OUT P01".MANUAL.G120C_Y.TchInPos_1 THEN "DI OUT P01".G120C_Y.DRV.MC_MoveRelative.Distance := - "DI OUT P01".MANUAL.G120C_Y.TchInPos_1; ELSE "DI OUT P01".G120C_Y.DRV.MC_MoveRelative.Distance := "DI OUT P01".MANUAL.G120C_Y.TchInPos_1; END_IF; "DI OUT P01".G120C_Y.DRV.Support.SavTrgtPos := "DI OUT P01".G120C_Y.DRV.Support.ActPos + "DI OUT P01".G120C_Y.DRV.MC_MoveRelative.Distance; ELSE "DI OUT P01".G120C_Y.DRV.Support.Cmd_MovRela := NOT "DI OUT P01".G120C_Y.HALT_01 AND "DI MAIN P01".SEQ1.S.stepa; "DI MAIN P01".SEQ1.S.stepd := "DI OUT P01".G120C_Y.DRV.Support.InPos AND NOT "DI MAIN P01".SEQ1.S.steplo; END_IF;
15: // S120_X MovRela distance Pos.1 (745.0 -/+ 444.0) IF "DI MAIN P01".SEQ1.S.stepfc THEN "DI OUT P01".S120_X.DRV.Support.SetVelo := "DI OUT P01".MANUAL.S120_X.TchInVelo_3; IF "DI OUT P01".S120_X.DRV.Support.ActPos >= "DI OUT P01".MANUAL.S120_X.TchInPos_1 THEN "DI OUT P01".S120_X.DRV.MC_MoveRelative.Distance := - "DI OUT P01".MANUAL.S120_X.TchInPos_1; ELSE "DI OUT P01".S120_X.DRV.MC_MoveRelative.Distance := "DI OUT P01".MANUAL.S120_X.TchInPos_1; END_IF; "DI OUT P01".S120_X.DRV.Support.SavTrgtPos := "DI OUT P01".S120_X.DRV.Support.ActPos + "DI OUT P01".S120_X.DRV.MC_MoveRelative.Distance; ELSE "DI OUT P01".S120_X.DRV.Support.Cmd_MovRela := NOT "DI OUT P01".S120_X.HALT_01 AND "DI MAIN P01".SEQ1.S.stepa; "DI MAIN P01".SEQ1.S.stepd := "DI OUT P01".S120_X.DRV.Support.InPos AND NOT "DI MAIN P01".SEQ1.S.steplo; END_IF;
16: // G120C_Y + S120_X MovJogWP/HP towards middle point exact (745.0) IF "DI MAIN P01".SEQ1.S.steplo THEN "DI MAIN P01".SEQ1.S.c1.set := 5; "DI OUT P01".G120C_Y.DRV.Support.SetVelo := "DI OUT P01".MANUAL.G120C_Y.TchInVelo_1; "DI OUT P01".G120C_Y.DRV.Support.SavTrgtPos := "DI OUT P01".G120C_Y.DRV.Support.SW_EndLim_MaxPos / 2.0; IF "DI OUT P01".G120C_Y.DRV.Support.ActPos <= "DI OUT P01".G120C_Y.DRV.Support.SavTrgtPos THEN "DI OUT P01".G120C_Y.DRV.Support.Cmd_MovJogWP := NOT "DI OUT P01".G120C_Y.HALT_01; ELSIF "DI OUT P01".G120C_Y.DRV.Support.ActPos > "DI OUT P01".G120C_Y.DRV.Support.SavTrgtPos THEN "DI OUT P01".G120C_Y.DRV.Support.Cmd_MovJogHP := NOT "DI OUT P01".G120C_Y.HALT_01; END_IF; "DI OUT P01".S120_X.DRV.Support.SetVelo := "DI OUT P01".MANUAL.S120_X.TchInVelo_1; "DI OUT P01".S120_X.DRV.Support.SavTrgtPos := "DI OUT P01".S120_X.DRV.Support.SW_EndLim_MaxPos / 2.0; IF "DI OUT P01".S120_X.DRV.Support.ActPos <= "DI OUT P01".S120_X.DRV.Support.SavTrgtPos THEN "DI OUT P01".S120_X.DRV.Support.Cmd_MovJogWP := NOT "DI OUT P01".S120_X.HALT_01; ELSIF "DI OUT P01".S120_X.DRV.Support.ActPos > "DI OUT P01".S120_X.DRV.Support.SavTrgtPos THEN "DI OUT P01".S120_X.DRV.Support.Cmd_MovJogHP := NOT "DI OUT P01".S120_X.HALT_01; END_IF; ELSE IF "DI OUT P01".G120C_Y.DRV.Support.InPos THEN "DI OUT P01".G120C_Y.DRV.Support.SetVelo := "DI OUT P01".MANUAL.G120C_Y.TchInVelo_0; END_IF; IF "DI OUT P01".S120_X.DRV.Support.InPos THEN "DI OUT P01".S120_X.DRV.Support.SetVelo := "DI OUT P01".MANUAL.S120_X.TchInVelo_0; END_IF; IF ABS("DI OUT P01".G120C_Y.DRV.Support.SavTrgtPos - "DI OUT P01".G120C_Y.DRV.Support.ActPos) <= 0.3 OR NOT "DI MAIN P01".SEQ1.S.stepa THEN "DI OUT P01".G120C_Y.DRV.Support.Cmd_MovJogWP := "DI OUT P01".G120C_Y.DRV.Support.Cmd_MovJogHP := FALSE; END_IF; IF ABS("DI OUT P01".S120_X.DRV.Support.SavTrgtPos - "DI OUT P01".S120_X.DRV.Support.ActPos) <= 0.3 OR NOT "DI MAIN P01".SEQ1.S.stepa THEN "DI OUT P01".S120_X.DRV.Support.Cmd_MovJogWP := "DI OUT P01".S120_X.DRV.Support.Cmd_MovJogHP := FALSE; END_IF; "DI MAIN P01".SEQ1.S.c1.start := NOT ("DI OUT P01".S120_X.DRV.MC_MoveJog.Busy OR "DI OUT P01".G120C_Y.DRV.MC_MoveJog.Busy); "DI MAIN P01".SEQ1.S.stepd := "DI MAIN P01".SEQ1.S.c1.done; END_IF;
17: // S120_X + G120C_Y MovRela distance Pos.2 (745.0 + 400.0), C01 Cylinder HP IF "DI MAIN P01".SEQ1.S.stepfc THEN "DI OUT P01".G120C_Y.DRV.Support.SetVelo := "DI OUT P01".MANUAL.G120C_Y.TchInVelo_2; "DI OUT P01".G120C_Y.DRV.MC_MoveRelative.Distance := "DI OUT P01".MANUAL.G120C_Y.TchInPos_2; "DI OUT P01".G120C_Y.DRV.Support.SavTrgtPos := "DI OUT P01".G120C_Y.DRV.Support.ActPos + "DI OUT P01".G120C_Y.DRV.MC_MoveRelative.Distance; "DI OUT P01".S120_X.DRV.Support.SetVelo := "DI OUT P01".MANUAL.S120_X.TchInVelo_3; "DI OUT P01".S120_X.DRV.MC_MoveRelative.Distance := "DI OUT P01".MANUAL.S120_X.TchInPos_2; "DI OUT P01".S120_X.DRV.Support.SavTrgtPos := "DI OUT P01".S120_X.DRV.Support.ActPos + "DI OUT P01".S120_X.DRV.MC_MoveRelative.Distance; ELSE "DI OUT P01".C01.VLV_OC.CmdExe_WP := FALSE; "DI OUT P01".C01.VLV_OC.CmdExe_HP := "HMI KEY".P01.C01.F11_Enable_HP;
"DI OUT P01".S120_X.DRV.Support.Cmd_MovRela := NOT "DI OUT P01".S120_X.HALT_01 AND "DI MAIN P01".SEQ1.S.stepa; "DI OUT P01".G120C_Y.DRV.Support.Cmd_MovRela := NOT "DI OUT P01".G120C_Y.HALT_01 AND "DI MAIN P01".SEQ1.S.stepa; "M01 SEQ1 Done" := "DI OUT P01".S120_X.DRV.Support.InPos AND "DI OUT P01".G120C_Y.DRV.Support.InPos AND "DI OUT P01".C01.FB_HP AND NOT "DI MAIN P01".SEQ1.S.steplo; END_IF; END_CASE; |
|
To go to next HMI image use the touch buttons; some of them are interactive. |