Eigentlich ist das mit de Störmeldungen/Quittierungen ganz einfach, auch wenn man nicht in allem die Siemens-Logik verstehen muss:
Es existieren 3 relevante Bereichszeiger:
1.Störmeldungen
2.Quittierung OP
3.Quittierung SPS
Über den 1. bringt man per SPS das HMI-Gerät dazu, eine Meldung anzuzeigen, d.h. z.B. DB1.DBX1.0 entspricht der SM 1 -> bei HIGH wird Meldung 1 angezeigt. Wird das Bit LOW, so bleibt die Meldung am OP sichtbar, da sie vom User noch nicht zur Kenntnis genommen (quittiert wurde), d.h. die ACK Taste muss betätigt werden, um die Meldung vom HMI verschwinden zu lassen.
Der 2. dient dazu, der SPS-mitzuteilen, daß eine ganz bestimmte Meldung quittiert wurde (um zu unterscheiden falls mehrere SM gleichzeitig sichtbar sind). Diese Bits bleiben aber in der SPS im entsprechenden Datenbereich nach dem Auslösen des Quittierereignisses gesetzt, d.h. man muss auf SPS Seite dafür sorgen, daß diese Bits rückgesetzt werden, sonst kriegt man das Ereignise "Meldung xy wurde am HMI quittiert" nur einmal mit, danach nie wieder.
Der 3. wird dazu verwendet,die SM vom HMI (sofern die Störbedingung nicht mehr vorhandne ist) vom Display verschwinden zu lassen, d.h. ein ACK-Tasteendruck ist vom Bediener nicht mehr erforderlich. Ist die SM weiterhin aktiv, obwohl das Bit "Quittierung SPS" schon abgesetzt wurde, gilt die Meldung als quittiert, aber immer noch vorhanden.
Ich habe die Meldungen aufgeteilt, d.h SM1 bis 100 sind allgemeine SM (Sicherung gefallen,Regler gestört usw.) bei denen ich die Quittierung-SPS Bits nicht automatisch schreibe. Ab SM100 wird über einen Baustein automatisch die SPS-Quittierung geschrieben, wenn die SM nicht mehr aktiv ist (nicht den ganzen Bereich plattmachen, da ja evtl. Meldungen als quittiert geschrieben werden obwohl die Störung noch aktiv ist. Der Bediener würde ohne Blätter in dem Meldfenster evtl. manche Meldungen nie zu gesicht bekommen).
Um allgemein festzustellen, ob eine Störung vorliegt, wird der gesamte Datenbereich "Störmeldungen" auf LOW geprüft, d.h. alles 0 -> keine Sörung. Damit nicht bei ein "Flackern" eines SM-Bit sofort eine Meldung auftaucht (z.B. prellen eines Endschalters), wird der gesamte Bereichszeiger "Störmeldungen" entprellt und in einen separaten Datenbereich kopiert.
Erst nach Ablauf einer einstellbaren Verzögerungszeit ohne weitere Verädnerung des SM-Bitmusters wird die SM auch tatsächlich angezeigt
(die 318er und 400er CPU's arbeiten jedoch asynchron, d.h. der Meldebereich muss umkopiert werden und erst am Ende des OB1 in den entsprechenden Datenbereich "Störmeldungen" geschrieben werden).
Vielleicht haben diese Ausführungen etwas Informationsgehalt..
Gruss,
nairolf