123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- PROGRAM _INIT
- RTInfo_0(enable:=1);
-
- END_PROGRAM
- PROGRAM _CYCLIC
-
- (* #############################################################################################################
- ############################# Kurve 3 #####################################
- ############################################################################################################# *)
- IF gKurve_3.Cmd.Stopper = KMD_AUSFAHREN THEN
- gKurve_3.Outputs.Stopper_einfahren := FALSE;
- gKurve_3.Times.Stopper_AusZeit := TRUE;
- gKurve_3.Times.Stopper_EinZeit := FALSE;
- gKurve_3.Cmd.Stopper := KMD_FERTIG;
- gKurve_3.Status.Stopper := STATUS_BUSY;
- END_IF
- IF gKurve_3.Cmd.Stopper = KMD_EINFAHREN THEN
- gKurve_3.Outputs.Stopper_einfahren := TRUE;
- gKurve_3.Times.Stopper_AusZeit := FALSE;
- gKurve_3.Times.Stopper_EinZeit := TRUE;
- gKurve_3.Cmd.Stopper := KMD_FERTIG;
- gKurve_3.Status.Stopper := STATUS_BUSY;
- END_IF
- (* Status, Zylinderposition ausgeben *)
- IF (gKurve_3.Inputs.Stopper_eingefahren = TRUE) AND (gKurve_3.Inputs.Stopper_ausgefahren = FALSE) THEN
- gKurve_3.Status.Stopper := STATUS_EINGEFAHREN;
- ELSIF (gKurve_3.Inputs.Stopper_eingefahren = FALSE) AND (gKurve_3.Inputs.Stopper_ausgefahren = TRUE) THEN
- gKurve_3.Status.Stopper := STATUS_AUSGEFAHREN;
- ELSE
- gKurve_3.Status.Stopper := STATUS_BUSY;
- END_IF
- (* Zeitüberwachung Eingefahren*)
- IF (gKurve_3.Times.Stopper_EinZeit = TRUE AND gKurve_3.Status.Stopper <> STATUS_EINGEFAHREN) OR (gKurve_3.Times.Stopper_AusZeit = TRUE AND gKurve_3.Status.Stopper <> STATUS_AUSGEFAHREN) THEN
- gKurve_3.Times.Stopper_ZeitRun := gKurve_3.Times.Stopper_ZeitRun + (RTInfo_0.cycle_time/1000);
- IF (gKurve_3.Times.Stopper_EinZeit = TRUE AND gKurve_3.Status.Stopper = STATUS_EINGEFAHREN)
- OR (gKurve_3.Times.Stopper_AusZeit = TRUE AND gKurve_3.Status.Stopper = STATUS_AUSGEFAHREN)THEN
- (* lPortal_Mittelanschlag_EinZeit := FALSE;
- lPortal_Mittelanschlag_AusZeit := FALSE; *)
- gKurve_3.Times.Stopper_ZeitRun := 0;
- END_IF
- IF gKurve_3.Times.Stopper_ZeitRun >= 5000 THEN
- gKurve_3.Status.Stopper := STATUS_ERROR;
- IF gKurve_3.Times.Stopper_EinZeit = TRUE THEN
- gError[0] := 1;
- END_IF
-
- IF gKurve_3.Times.Stopper_AusZeit = TRUE THEN
- gError[1] := 1;
- END_IF
- END_IF
- ELSE
- gKurve_3.Times.Stopper_ZeitRun := 0;
- END_IF
-
- END_PROGRAM
- PROGRAM _EXIT
- (* Insert code here *)
-
- END_PROGRAM
|