Fehler-OBs richtig auslesen

williwuff

Level-1
Beiträge
59
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo S7-Profis,

ich versuche z.Zt ein Sammelsignal zu Erzeugen, dass sich aus diversen Fehlern zusammensetzt, die man über die asynchronen Fehler OBs (OB80-87 ) erzeugen kann.
Es sollen z.B. Fehler ausgelesen werden wie Baugruppenausfall, Kanalfehler, Leuchten des SF der CPU, etc etc etc
Welche Möglichkeit ist denn hierfür am sinnvollsten?

Ich habe z.B. im OB82 folgenden Codes erstellt:

Code:
//Kanalfehler
      U     #OB82_PNT_INFO
      SPN   KANF

KANF: L     B#16#39                     //kommendes Ereignis
      L     #OB82_EV_CLASS
      ==I   
      S     "DB_HW_FAULT".FEHLER_OB82.Kanal_Fehler
      L     B#16#38                     // gehendes Ereignis
      ==I   
      R     "DB_HW_FAULT".FEHLER_OB82.Kanal_Fehler

oder

Code:
//RAM Fehler
      U     #OB82_RAM_FLT
      SPB   RAM

RAM:  L     B#16#39                     //kommendes Ereignis
      L     #OB82_EV_CLASS
      ==I   
      S     "DB_HW_FAULT".FEHLER_OB82.RAM_Fehler
      L     B#16#38                     // gehendes Ereignis
      ==I   
      R     "DB_HW_FAULT".FEHLER_OB82.RAM_Fehler

oder

Code:
//Frontstecker fehlt
      U     #OB82_FLD_CONNCTR
      SPB   FrSt

FrSt: L     B#16#39                     //kommendes Ereignis
      L     #OB82_EV_CLASS
      ==I   
      S     "DB_HW_FAULT".FEHLER_OB82.Fronstecker_Stoer
      L     B#16#38                     // gehendes Ereignis
      ==I   
      R     "DB_HW_FAULT".FEHLER_OB82.Fronstecker_Stoer

Dann hab ich mal den Frontstecker einer Karte gezogen und siehe da, die Meldung, dass der Fronstecker fehlt ist gekommen. Leider aber auch die "RAM-Störung" sowie Kanalfehler, Sicherungsfall usw. Das ist meiner Meinung nach falsch.
Ich wüsste aber nicht, was an meinem Code falsch ist.

Habt ihr einen Tip??
 
Auf den ersten Blick sehe ich erstmal das deine Sprünge falsch sind.
Der Code wird so bei jedem OB-Aufruf durchlaufen, es ist egal ob ein Fehler vorliegt oder nicht.
 
Zurück
Oben