Parameter STATUS-Struktur
Der Ausgangsparameter STATUS enthält Fehlerinformationen. Wird er als ARRAY[1...4] OF BYTE interpretiert, hat die Fehlerinformation folgende Struktur:
|
Feldelement |
Name |
Bedeutung |
|---|---|---|
|
STATUS[1] |
Function_Num |
|
|
STATUS[2] |
Error_Decode |
Ort der Fehlerkennung |
|
STATUS[3] |
Error_Code_1 |
Fehlerkennung |
|
STATUS[4] |
Error_Code_2 |
herstellerspezifische Erweiterung der Fehlerkennung |
Feldelement STATUS[2]
STATUS[2] kann folgende Werte annehmen:
|
Error_Decode (B#16#...) |
Quelle |
Bedeutung |
|---|---|---|
|
00 bis 7F |
CPU |
kein Fehler oder keine Warnung |
|
80 |
DPV1 |
Fehler nach IEC 61158-6 |
|
81 bis 8F |
CPU |
B#16#8x zeigt einen Fehler im x-ten Aufrufparameter der Anweisung an. |
|
FE, FF |
DP Profile |
profilspezifischer Fehler |
Feldelement STATUS[3]
STATUS[3] kann folgende Werte annehmen:
|
Error_Decode |
Error_Code_1 |
Erläuterung laut DPV1 |
Bedeutung |
|---|---|---|---|
|
00 |
00 |
- |
kein Fehler, keine Warnung |
|
70 |
00 |
reserved, reject |
Erstaufruf; keine Datensatzübertragung aktiv |
|
01 |
reserved, reject |
Erstaufruf; Datensatzübertragung angestoßen |
|
|
02 |
reserved, reject |
Zwischenaufruf; Datensatzübertragung ist bereits aktiv |
|
|
80 |
90 |
reserved, pass |
logische Anfangsadresse ungültig |
|
92 |
reserved, pass |
unzulässiger Typ bei ANY-Pointer |
|
|
93 |
reserved, pass |
Die mittels ID bzw. F_ID adressierte DP-Komponente ist nicht konfiguriert. |
|
|
95 |
- |
Fehler beim Lesen der Alarmzusatzinformation (Beim Auslesen der Alarmzusatzinformation bei zentraler Peripherie oder bei dezentraler Peripherie über externe DP-Anschaltung wird dieser Fehler als "Sammelfehler" ausgegeben.) |
|
|
96 |
- |
Die Master-CPU ist in STOP gegangen. Zu diesem Zeitpunkt war ein OB in Bearbeitung. Die Anweisung "RALRM" kann weder die OB-Startinformation noch die Verwaltungsinformation noch die Kopfinformation noch die Alarmzusatzinformation liefern. |
|
|
A0 |
read error |
negative Quittung beim Lesen von der Baugruppe |
|
|
A1 |
write error |
negative Quittung beim Schreiben zur Baugruppe |
|
|
A2 |
module failure |
DP-Protokollfehler bei Layer 2 (z. B. Slaveausfall oder Busstörungen) |
|
|
A3 |
reserved, pass |
Allgemeiner Kommunikationsfehler oder IO-Device / DP-Slave nicht erreichbar |
|
|
A4 |
reserved, pass |
Kommunikation am K-Bus gestört |
|
|
A5 |
reserved, pass |
– |
|
|
A7 |
reserved, pass |
DP-Slave oder Baugruppe ist beschäftigt (temporärer Fehler) |
|
|
A8 |
version conflict |
DP-Slave oder Baugruppe meldet nicht passende Versionen |
|
|
A9 |
feature not supported |
Funktion wird vom DP-Slave oder der Baugruppe nicht unterstützt |
|
|
AA bis AF |
user specific |
DP-Slave oder Baugruppe meldet einen herstellerspezifischen Fehler seiner Anwendung. Bitte sehen Sie in der Dokumentation des Herstellers des DP-Slaves bzw. der Baugruppe nach. |
|
|
B0 |
invalid index |
Baugruppe kennt den Datensatz nicht |
|
|
B1 |
write length error |
Die Längenangabe im Parameter RECORD ist falsch; |
|
|
B2 |
invalid slot |
|
|
|
B3 |
type conflict |
Ist-Baugruppentyp ungleich Soll-Baugruppentyp |
|
|
B4 |
invalid area |
DP-Slave oder Baugruppe meldet einen Zugriff auf einen unzulässigen Bereich |
|
|
B5 |
state conflict |
DP-Slave oder Baugruppe ist nicht bereit |
|
|
B6 |
access denied |
DP-Slave oder Baugruppe verweigert den Zugriff |
|
|
B7 |
invalid range |
DP-Slave oder Baugruppe meldet einen unzulässigen Bereich eines Parameters oder eines Werts |
|
|
B8 |
invalid parameter |
DP-Slave oder Baugruppe meldet einen unzulässigen Parameter |
|
|
B9 |
invalid type |
DP-Slave oder Baugruppe meldet einen unzulässigen Typ |
|
|
BA bis BF |
user specific |
DP-Slave oder Baugruppe meldet einen herstellerspezifischen Fehler beim Zugriff. Bitte sehen Sie in der Dokumentation des Herstellers des DP-Slaves bzw. der Baugruppe nach. Hinweis zum Wert B#16#BA: Bei PROFINET im H-System gilt: Wenn ein Datensatzauftrag mit dem Rückgabewert W#16#80BA abgewiesen wird, muss der Auftrag wiederholt werden. |
|
|
C0 |
read constrain conflict |
Bei "WRREC": Die Daten können nur im STOP-Zustand der CPU geschrieben werden. Hinweis: Damit ist ein Schreiben durch das Anwenderprogramm nicht möglich. Sie können die Daten nur online mit PG/PC schreiben. Bei "RDREC": Die Baugruppe führt den Datensatz, aber es liegen entweder noch keine Daten vor oder die Daten können nur im STOP-Zustand der CPU gelesen werden. Hinweis: Falls Daten nur im STOP-Zustand der CPU gelesen werden können, ist eine Auswertung durch das Anwenderprogramm nicht möglich. In diesem Fall können Sie die Daten nur online mit PG/PC lesen. |
|
|
C1 |
write constrain conflict |
Die Daten des auf der Baugruppe vorangegangenen Schreibauftrags für denselben Datensatz sind von der Baugruppe noch nicht verarbeitet. |
|
|
C2 |
resource busy |
Die Baugruppe bearbeitet momentan das mögliche Maximum an Aufträgen für eine CPU. |
|
|
C3 |
resource unavailable |
Die benötigten Betriebsmittel sind momentan belegt. |
|
|
C4 |
- |
Interner temporärer Fehler. Auftrag konnte nicht ausgeführt werden. Wiederholen Sie den Auftrag. Bei häufigem Auftreten dieses Fehlers überprüfen Sie bitte Ihren Aufbau auf elektrische Störquellen. |
|
|
C5 |
- |
DP-Slave oder Baugruppe nicht verfügbar. |
|
|
C6 |
- |
Datensatzübertragung wurde abgebrochen wegen Prioritätsklassenabbruchs |
|
|
C7 |
- |
Auftragsabbruch wegen Neustart (Warmstart) oder Kaltstart des DP-Masters |
|
|
C8 bis CF |
- |
DP-Slave oder Baugruppe meldet einen herstellerspezifischen Fehler zu seinen Ressourcen. Bitte sehen Sie in der Dokumentation des Herstellers des DP-Slaves bzw. der Baugruppe nach. |
|
|
Dx |
user specific |
DP-Slave-spezifisch. Siehe Beschreibung des DP-Slaves. |
|
|
8x (x = 1, ... 9, A, B, C, D, E, F) |
00 bis FF |
- |
Fehler im y-ten Aufrufparameter (y = 1, ...15)
|
|
FE, FF |
00 bis FF |
- |
profilspezifischer Fehler |
Feldelement STATUS[4]
STATUS[4] wird bei DPV1-Fehlern vom DP-Master an die CPU und die Anweisung durchgereicht. Ohne DPV1-Fehler wird der Wert auf 0 gesetzt mit folgenden Ausnahmen bei den Anweisungen "RDREC" und "WRREC":
-
STATUS[4] enthält die Länge des Zielbereichs aus RECORD, falls LEN > Länge des Zielbereichs aus RECORD
-
STATUS[4]=LEN, falls die tatsächliche Datensatzlänge < LEN < Länge des Zielbereichs aus RECORD
-
STATUS[4]=0, falls STATUS[4] > 255 gesetzt werden müsste
Bei PROFINET IO enthält STATUS[4] den Wert 0.