OP
b.weyand85
Level-2
- Beiträge
- 35
- Reaktionspunkte
- 0
-> Hier kostenlos registrieren
Im Diagnosepuffer steht
Ereignis 1 von 500: Ereignis-ID 16# 4562
STOP durch Programmierfehler (OB nicht geladen oder nicht möglich, bzw. kein FRB vorhanden )
FC-Nummer: 4
Bausteinadresse: 898
Bisheriger Betriebszustand: RUN
Angeforderter Betriebszustand: STOP (intern)
interner Fehler, kommendes Ereignis
11:03:11.132 08.09.2014
(Kodierung: 16# 4562 FF84 8C00 0101 0004 0382)
Ereignis 2 von 500: Ereignis-ID 16# 2522
Bereichslängenfehler beim Lesen
Instanz-DB, Wortzugriff, Zugriffsadresse: 340
Angeforderter OB: Programmierfehler-OB (OB 121)
OB nicht vorhanden oder gesperrt oder nicht startbar im aktuellen Betriebszustand
interner Fehler, kommendes Ereignis
11:03:11.068 08.09.2014
(Kodierung: 16# 2522 FE79 0025 0154 0000 0000)
Ereignis 3 von 500: Ereignis-ID 16# 4302
Betriebszustandsübergang von ANLAUF nach RUN
Anlaufinformation:
- Uhr für Zeitstempel bei letztem NETZ-EIN gepuffert
- Einprozessorbetrieb
Aktuelle/letzte durchgeführte Anlaufart:
- Neustart (Warmstart) über Betriebsartenschalter; letzter NETZ-EIN gepuffert
Zulässigkeit bestimmter Anlaufarten:
- manueller Neustart (Warmstart) zulässig
- automatischer Neustart (Warmstart) zulässig
Letzte gültige Bedienung oder Einstellung der automatischen Anlaufart bei NETZ-EIN:
- Neustart (Warmstart) über Betriebsartenschalter; letzter NETZ-EIN gepuffert
Bisheriger Betriebszustand: ANLAUF (Neustart/Warmstart)
Angeforderter Betriebszustand: RUN
kommendes Ereignis
11:01:26.628 08.09.2014
(Kodierung: 16# 4302 FF68 C700 0000 0813 7713)
Ich habe den Code in einer Funktion programmiert. Und die Variablen sind unter VAR deklariert.
Die Funktion tauschen sieht folgendermaßen aus:
Ereignis 1 von 500: Ereignis-ID 16# 4562
STOP durch Programmierfehler (OB nicht geladen oder nicht möglich, bzw. kein FRB vorhanden )
FC-Nummer: 4
Bausteinadresse: 898
Bisheriger Betriebszustand: RUN
Angeforderter Betriebszustand: STOP (intern)
interner Fehler, kommendes Ereignis
11:03:11.132 08.09.2014
(Kodierung: 16# 4562 FF84 8C00 0101 0004 0382)
Ereignis 2 von 500: Ereignis-ID 16# 2522
Bereichslängenfehler beim Lesen
Instanz-DB, Wortzugriff, Zugriffsadresse: 340
Angeforderter OB: Programmierfehler-OB (OB 121)
OB nicht vorhanden oder gesperrt oder nicht startbar im aktuellen Betriebszustand
interner Fehler, kommendes Ereignis
11:03:11.068 08.09.2014
(Kodierung: 16# 2522 FE79 0025 0154 0000 0000)
Ereignis 3 von 500: Ereignis-ID 16# 4302
Betriebszustandsübergang von ANLAUF nach RUN
Anlaufinformation:
- Uhr für Zeitstempel bei letztem NETZ-EIN gepuffert
- Einprozessorbetrieb
Aktuelle/letzte durchgeführte Anlaufart:
- Neustart (Warmstart) über Betriebsartenschalter; letzter NETZ-EIN gepuffert
Zulässigkeit bestimmter Anlaufarten:
- manueller Neustart (Warmstart) zulässig
- automatischer Neustart (Warmstart) zulässig
Letzte gültige Bedienung oder Einstellung der automatischen Anlaufart bei NETZ-EIN:
- Neustart (Warmstart) über Betriebsartenschalter; letzter NETZ-EIN gepuffert
Bisheriger Betriebszustand: ANLAUF (Neustart/Warmstart)
Angeforderter Betriebszustand: RUN
kommendes Ereignis
11:01:26.628 08.09.2014
(Kodierung: 16# 4302 FF68 C700 0000 0813 7713)
Ich habe den Code in einer Funktion programmiert. Und die Variablen sind unter VAR deklariert.
Die Funktion tauschen sieht folgendermaßen aus:
Code:
FUNCTION Tauschen :VOID
VAR_INPUT
X1:WORD;
END_VAR
VAR
X2:WORD;
UEBERGABE : BYTE;
Y AT X2: ARRAY[0..1] OF BYTE;
END_VAR
VAR_OUTPUT
X3:WORD;
END_VAR
BEGIN
X2:= X1;
UEBERGABE := Y[0];
Y[0]:= Y[1];
Y[1] := UEBERGABE;
X3 := X2;
END_FUNCTION