Quittierung von Bitmeldungen

rapser

Level-1
Beiträge
48
Reaktionspunkte
6
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Gemeinschaft,

ich habe ein Problem mit der Bitmeldungsquittierung bei einem TP177A.

Normalerweiße setzen wir immer die TP177B ein, doch diesmal sollte gespart werden. Wir haben einen Baustein in dem alle anstehenden Meldungen mit einmal quittiert werden.

Durch betätigen einer selber gebauten Quittiertaste im Panel wird ein Bit in der SPS gesetzt. Ist dieses Bit gesetzt werden alle Triggervariablen mit 0 überschrieben und die Quittiervariablen werden auf 1 gesetzt. Nach 1 Sekunde werden dann auch die Quittiervariablen wieder auf 0 gesetzt.
Mein Problem ist, das das ganze bei einem TP177B funktioniert, die Meldung verschwindet, beim TP177A bleibt sie jedoch mit "KG" im Panel anstehen.
Hoffe mir kann jemand weiterhelfen.

Hier der Code des Bausteins:

Code:
      U     #HM_QuittVerlaengert
      SPBN  QUIT
// Nullsetzen der triggervariablen
      L     DW#16#0
      AUF   #K0_Error_DB
      T     DBD    0
      T     DBD    4
      AUF   #K1_Error_DB
      T     DBD    0
      T     DBD    4
      AUF   #K2_Error_DB
      T     DBD    0
      T     DBD    4
      AUF   #K3_Error_DB
      T     DBD    0
      T     DBD    4
      AUF   #K4_Error_DB
      T     DBD    0
      T     DBD    4
      AUF   #K5_Error_DB
      T     DBD    0
      T     DBD    4
      AUF   #K6_Error_DB
      T     DBD    0
      T     DBD    4
      AUF   #K7_Error_DB
      T     DBD    0
      T     DBD    4
      AUF   #K8_Error_DB
      T     DBD    0
      T     DBD    4
      AUF   #K9_Error_DB
      T     DBD    0
      T     DBD    4

// setzen der quittiervariablen
      L     DW#16#FFFFFFFF
      AUF   #K0_Error_DB
      T     DBD    8
      T     DBD   12
      AUF   #K1_Error_DB
      T     DBD    8
      T     DBD   12
      AUF   #K2_Error_DB
      T     DBD    8
      T     DBD   12
      AUF   #K3_Error_DB
      T     DBD    8
      T     DBD   12
      AUF   #K4_Error_DB
      T     DBD    8
      T     DBD   12
      AUF   #K5_Error_DB
      T     DBD    8
      T     DBD   12
      AUF   #K6_Error_DB
      T     DBD    8
      T     DBD   12
      AUF   #K7_Error_DB
      T     DBD    8
      T     DBD   12
      AUF   #K8_Error_DB
      T     DBD    8
      T     DBD   12
      AUF   #K9_Error_DB
      T     DBD    8
      T     DBD   12

      AUF   #BetriebsartenDB
      U     DBX    2.1                  //Auto_Anwahl
      SPB   REKE                        //Reset Kettenstörung
      L     0
      T     #SammelM_Kettenfehler
REKE: NOP   0
      BEA   
QUIT: NOP   0
// Nullsetzen der quittiervariablen
      L     DW#16#0
      AUF   #K0_Error_DB
      T     DBD    8
      T     DBD   12
      AUF   #K1_Error_DB
      T     DBD    8
      T     DBD   12
      AUF   #K2_Error_DB
      T     DBD    8
      T     DBD   12
      AUF   #K3_Error_DB
      T     DBD    8
      T     DBD   12
      AUF   #K4_Error_DB
      T     DBD    8
      T     DBD   12
      AUF   #K5_Error_DB
      T     DBD    8
      T     DBD   12
      AUF   #K6_Error_DB
      T     DBD    8
      T     DBD   12
      AUF   #K7_Error_DB
      T     DBD    8
      T     DBD   12
      AUF   #K8_Error_DB
      T     DBD    8
      T     DBD   12
      AUF   #K9_Error_DB
      T     DBD    8
      T     DBD   12
 
Wahrscheinlich sind Deine Eisntellungen von der Meldeanzeige / dem Meldefenster falsch und Du zeigst auch gegangene Meldungen an. Irgendwo gibt's da ein Häkchen in den Eigenschaften. Ich glaube, das müsste den von Dir beschriebenen Effekt haben.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Oder in der Bimeldung selber in WinCC flex ist keine Quittiervariable angelegt.
Sonst würde zumindest KGQ in der Meldeanzeige stehen.
Funktionieren tut das mit einem TP177A. Hab ich auch schonmal so gemacht.
 
Die Einstellungen im Flexible stimmen. Hab das Projekt ja auf einem TP177B getestet und dort funktionierts. :-/

Ich hab jetzt mal einiges auskommentiert und Stück für Stück probiert.
Die Quittierung funktioniert super wenn ich nur maiximal 6 DBs AUF mache und den Code für die anderen DBs auskommentiert lasse.
Wie kann sowas sein?
Ist die CPU am Ende ihrer Möglichkeiten? Habe ein neue S7-314.
Dann würde es aber mit einem TP177B auch nicht funktionieren dürfen.
Sehr komisch.
 
Kann es sein, das die Menge an Daten (Bits) die sich gleichzeitig ändern einfach zu viel für das TP177A sind?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hatte ich auch schon überlegt, aber andererseits reden wir hier nur über 160 Byte.
Ändere doch mal Deinen Baustein so, dass pro Zyklus nur ein DB quittiert / zurückgesetzt wird.
Oder probier doch mal, erst zu quittieren und dann den Trigger zurückzusetzen.
 
Zurück
Oben