- Beiträge
- 21.965
- Reaktionspunkte
- 6.836
-> Hier kostenlos registrieren
So eine klare Beschreibung ist doch einfach umzusetzen.Ferner eine Meldeanzeige, die immer automatisch aufpoppen soll, wenn ein Störungsbit aktiv ist, bzw. ein neues hinzukommt. Störungsbit ist hier vielleicht der falsche Ausdruck, da es eigentlich Betriebsmeldungen (Hinweise für den Benutzer) sind, und keine Alarme!
Also, ein Bit aus dem DB10 wird aktiv --> Meldeanzeige mit Text geht auf. Der Benutzer kann das zur Kenntnis nehmen und über eine Taste die Meldeanzeige (auch bei noch aktivem Störungsbit) wieder ausschalten. Kommt eine neue Meldung hinzu, so poppt die Anzeige erneut auf und wenn sie nicht durch den Benutzer geschlossen wird, so wird sie automatisch geschlossen, wenn keine Meldung (Störungsbit) mehr anliegt.
Das A4.7 soll der Trigger für das Aufpoppen der Meldeanzeige sein.
Code:
CLR // (vorsichtshalber VKE begrenzen)
// Bei "Kommen" einer neuen Meldung --> Signalisierung EIN
L MD216
INVD
L DB10.DBD16
T MD216
UD
U <>0 // mindestens 1 Bit im DBD neu dazugekommen
S A4.7
L MD220
INVD
L DB10.DBD20
T MD220
UD
U <>0 // mindestens 1 Bit im DBD neu dazugekommen
S A4.7
L MD224
INVD
L DB10.DBD24
T MD224
UD
U <>0 // mindestens 1 Bit im DBD neu dazugekommen
S A4.7
L MD228
INVD
L DB10.DBD28
T MD228
UD
U <>0 // mindestens 1 Bit im DBD neu dazugekommen
S A4.7
// Signalisierung AUS bei "keine Meldung mehr aktiv" oder bei vorher Quittieren
L DB10.DBD16
L DB10.DBD20
OD
L DB10.DBD24
OD
L DB10.DBD28
OD
O ==0 // alle Bits in allen DBD sind 0
O "OP_ACK" // oder Taste zum Ausblenden der Meldeanzeige
R A4.7
Wenn das hier so funktioniert wie gewünscht, dann entscheide, ob es sich lohnt, das in eine Schleife umzuformen. Hier kannst Du ja gut sehen was wiederholt werden muß und was in jedem Schleifendurchlauf unterschiedlich sein muß.
Falls Du mit "Aufpoppen einer Meldeanzeige" eigentlich ein Meldefenster in WinCC flexible meinst, dann hilft dieser Code wahrscheinlich nicht viel, weil Du dann das Verhalten des Meldefensters passend projektieren und steuern mußt, was selber schon eine "Kommen/Gehen/Quittiert"-Logik hat, welche außerdem noch davon abhängig ist, ob Meldungen einer Meldeklasse überhaupt quittiert werden müssen und können.
Bevor Du anfängst irgendwas zu programmieren, beschreibe vollumfänglich was dabei herauskommen soll. Dann überlege, ob das überhaupt so realisierbar ist und wenn ja wie. Erst wenn die Aufgabenstellung widerspruchsfrei ist, dann kannst Du anfangen, die in Software umzusetzen.
Harald