PROGRAM _INIT Tisch_8 := 0; END_PROGRAM PROGRAM _CYCLIC IF (gTisch_8.Inputs.Vor_Stopper = TRUE AND gTisch_8.Inputs.Stausensor = FALSE AND Tisch_8 = 0) OR (gTisch_8.Inputs.Vor_VorStopper = TRUE AND gTisch_8.Inputs.Vor_Stopper = FALSE AND Tisch_8 = 0) THEN gTisch_8.Outputs.Lampe_Start := TRUE; ELSE gTisch_8.Outputs.Lampe_Start := FALSE; END_IF IF gTaster_Tisch_8_aus = TRUE THEN gTisch_8.Cmd.Stopper := KMD_EINFAHREN; gTisch_8.Cmd.Vorstopper := KMD_EINFAHREN; gMerker_RFID_Tisch_8_gelesen := TRUE; Tisch_8 := 0; END_IF CASE Tisch_8 OF 0: IF gTisch_8.Inputs.Start = TRUE AND gTisch_8.Inputs.Vor_VorStopper = TRUE AND gTisch_8.Inputs.Vor_Stopper = TRUE AND gTisch_8.Inputs.Stausensor = FALSE AND gTaster_Tisch_8_aus = FALSE (*AND gMerker_RFID_Tisch_8_gelesen = TRUE*) THEN gTisch_8.Cmd.Stopper := KMD_EINFAHREN; gMerker_RFID_Tisch_8_gelesen := FALSE; Tisch_8 := 10; ELSIF gTisch_8.Inputs.Start = TRUE AND gTisch_8.Inputs.Vor_VorStopper = FALSE AND gTisch_8.Inputs.Vor_Stopper = TRUE AND gTisch_8.Inputs.Stausensor = FALSE AND gTaster_Tisch_8_aus = FALSE (*AND gMerker_RFID_Tisch_8_gelesen = TRUE*) THEN gTisch_8.Cmd.Stopper := KMD_EINFAHREN; gMerker_RFID_Tisch_8_gelesen := FALSE; Tisch_8 := 70; ELSIF gTisch_8.Inputs.Start = TRUE AND gTisch_8.Inputs.Vor_VorStopper = TRUE AND gTisch_8.Inputs.Vor_Stopper = FALSE AND gTaster_Tisch_8_aus = FALSE THEN gTisch_8.Cmd.Vorstopper := KMD_EINFAHREN; Tisch_8 := 110; ELSIF gTaster_Tisch_8_aus = FALSE AND gTisch_8.Inputs.Stopper_eingefahren = TRUE AND gTisch_8.Inputs.Vorstopper_eingefahren = TRUE THEN gTisch_8.Cmd.Stopper := KMD_AUSFAHREN; gTisch_8.Cmd.Vorstopper := KMD_AUSFAHREN; Tisch_8 := 0; END_IF // 10: IF gTisch_8.Inputs.Nach_Stopper = TRUE THEN Tisch_8 := 20; END_IF 20: IF gTisch_8.Inputs.Nach_Stopper = FALSE THEN gTisch_8.Cmd.Stopper := KMD_AUSFAHREN; gTisch_8.Cmd.Vorstopper := KMD_EINFAHREN; Tisch_8 := 30; END_IF 30: IF gTisch_8.Inputs.Nach_Vorstopper = TRUE THEN Tisch_8 := 40; END_IF 40: IF gTisch_8.Inputs.Nach_Vorstopper = FALSE THEN gTisch_8.Cmd.Vorstopper := KMD_AUSFAHREN; Tisch_8 := 50; END_IF 50: IF gTisch_8.Inputs.Stausensor = TRUE THEN Tisch_8 := 60; END_IF 60: IF gTisch_8.Status.Vorstopper = STATUS_AUSGEFAHREN AND gTisch_8.Status.Stopper = STATUS_AUSGEFAHREN THEN Tisch_8 := 0; END_IF // 70: IF gTisch_8.Inputs.Nach_Stopper = TRUE THEN Tisch_8 := 80; END_IF 80: IF gTisch_8.Inputs.Nach_Stopper = FALSE THEN gTisch_8.Cmd.Stopper := KMD_AUSFAHREN; Tisch_8 := 90; END_IF 90: IF gTisch_8.Inputs.Stausensor = TRUE THEN Tisch_8 := 100; END_IF 100: IF gTisch_8.Status.Stopper = STATUS_AUSGEFAHREN THEN Tisch_8 := 0; END_IF // 110: IF gTisch_8.Inputs.Nach_Vorstopper = TRUE THEN Tisch_8 := 120; END_IF 120: IF gTisch_8.Inputs.Nach_Vorstopper = FALSE THEN gTisch_8.Cmd.Vorstopper := KMD_AUSFAHREN; Tisch_8 := 130; END_IF 130: IF gTisch_8.Inputs.Vor_Stopper = TRUE AND gTisch_8.Status.Vorstopper = STATUS_AUSGEFAHREN THEN Tisch_8 := 0; END_IF END_CASE END_PROGRAM PROGRAM _EXIT (* Insert code here *) END_PROGRAM