Grundlagen Meldebehandlung

Meldungen erfolgen auf Änderungen des Originalwertes oder des geltenden Onlinewertes eines Datenpunktelementes von einem Meldebereich zum anderen (ausgenommen bei Multiinstanzalarmen, siehe Meldebehandlung für Multiinstanzalarme). Eine Meldebehandlung kann jedem Datenpunktelement zugeordnet werden.

Anmerkung: Bei Datenpunktelementen ohne aktivierter Letztwertspeicherung darf keine Meldebehandlung definiert werden, da dies zu inkonsistenten Alarmen führen kann.

Meldungen informieren den Bediener des Leitsystems über das Eintreten verschiedener, insbesondere kritischer, Anlagenzustände. In vielen Fällen muss der Bediener durch Quittieren nachweisen, dass er eine Meldung zur Kenntnis genommen hat.

  • Meldebereiche sind Intervalle des WinCC OA Wertebereiches, die ihn zusammen vollständig überdecken.

  • Jedem Meldebereich ist außer seinen Grenzwerten ein Meldetext (KAM Text und/oder GING Text) und eine Meldeklasse zugeordnet.

Arten der Meldebehandlungen

Es wird zwischen vier Arten von Meldebehandlungen unterschieden, welche abhängig von dem Einsatz und vom Datentyp des Datenpunktelements auswählbar sind: Summenmeldebehandlung, Meldebehandlung kontinuierlicher Werte, Meldebehandlung diskreter Werte und Meldebehandlung für Multiinstanzalarme.

Eine Meldebehandlung enthält Attribute für die Konfiguration der Alarme sowie Attribute für die Alarminstanz zur Laufzeit.

Summenmeldebehandlung

Summenmeldebehandlungen fassen mehrere Einzelmeldungen mehrerer Meldebehandlungen zusammen.

Summenmeldebehandlungen können nur auf nicht numerische Datenpunktelemente (string, struct, char, time, blob, DPID, Langstring, Bit32) parametriert werden.

VORSICHT: Beachten Sie, dass Summenmeldungen nur archiviert werden, wenn sie eine Meldeklasse enthalten. Wird einer Summenmeldung keine Meldeklasse zugewiesen, wird der Alarm nicht archiviert.

Meldebehandlung kontinuierlicher Werte

Die Meldebehandlung kontinuierlicher Werte wird dann verwendet, wenn der komplette Wertebereich durch bestimmte Intervalle (Meldebereiche) abgedeckt werden soll.

Die Meldebehandlung kontinuierlicher Werte wird bei numerischen Datentypen verwendet (uint, int, float, und bool).

Zudem können für jeden Meldebereich Hysteresen angegeben werden, damit bei ständigem, geringfügigem Über- bzw. Unterschreiten von Grenzwerten nicht permanent neue Meldungen ausgelöst werden.

Siehe auch Beispiel zur kontinuierlichen Meldebehandlung.

Meldebehandlung diskreter Werte

Die Meldebehandlung diskreter Werte wird dann verwendet, wenn diskrete (eindeutige) Zustände eine Meldung auslösen sollen.

Die Meldebehandlung diskreter Werte kann auf die Datenpunktelemente vom Datentyp uint, int, bool oder bit32 parametriert werden.

Siehe auch Beispiel zur diskreten Meldebehandlung.

Anmerkung: Eine Meldebehandlung diskreter Werte auf Datenpunktelemente vom Datentyp float wird nicht unterstützt.

Meldebehandlung für Multiinstanzalarme

Eine Meldebehandlung für Multiinstanzalarme ermöglicht es, mehrere Alarme von der Peripherie über einen speziellen WinCC OA Treiber oder über einen Manager (siehe Multiinstanzalarme) auszulösen. Die Alarmeigenschaften (wie z.B. die Alarmklasse oder der Alarmtext) können beim Auslösen des Alarms dynamisch geändert werden.

Die Meldebehandlung von Multiinstanzalarmen kann bei binären und analogen Datentypen verwendet werden (uint, int, float, und bool).

Die möglichen Attribute zur Meldebehandlung entnehmen Sie bitte dem Anhang.

Alle Änderungen der Parametrierungen werden in der Parametrierhistorie gespeichert.

Anmerkung: Eine Meldebehandlung mit mehr als zwanzig Meldebereichen kann mit den bestehenden Panels des PARA-Moduls nicht eingestellt werden. Sie kann mit Hilfe des ASCII-Managers von WinCC OA parametriert werden.

Alarmbegleitwerte

Zusätzliche Eigenschaften, so genannte Alarmbegleitwerte, können auf einem Alarm gespeichert werden. Diese Begleitwerte werden vom speziellen Treiber/Manager oder über Control-/API-Funktionen gesetzt.

Es wird empfohlen, auf die ersten vier Alarmbegleitwerte ( _alert_hdl.._add_value_1 bis _alert_hdl.._add_value_4) den Wert, Alarmtext, Priorität und den Quality-Code des Alarms, der von dem Peripheriegerät kommt, zu schreiben (welche Werte jedoch auf diese geschrieben werden, bleibt dem Treiberentwickler überlassen). Wenn diese Reihenfolge eingehalten wird, können die ersten beiden Begleitwerte mithilfe des Config-Eintrages attributesFromAddValues im Alarmschirm (siehe Begleitwerte) in den entsprechenden Spalten ("Wert" und "Alarmtext") angezeigt werden.

VORSICHT: Die Alarmanzeige des Alarmschirms wird nicht aufgrund von Alarmbegleitwerten aktualisiert. Die Begleitwerte eines bereits im Alarmschirm angezeigten Alarms werden nicht mehr aktualisiert.

Ein Alarm kann bis zu 32 Begleitwerte speichern, die auch gesondert abgefragt werden können. Diese sind über Config-Attribute adressierbar - es können entweder alle gemeinsam auf das Attribut _alert_hdl.._add_values oder einzeln auf die Attribute _alert_hdl.._add_value_1 bis _alert_hdl.._add_value_32 geschrieben werden. Zwar können auf das Attribut _alert_hdl.._add_values mehr als 32 Werte gesetzt werden, die Werte können dann aber nur gemeinsam wieder abgefragt werden (mittels Abfrage auf _alert_hdl.._add_values; ein direkter Zugriff ist nur auf die ersten 32 Werte mittels der Attribute _alert_hdl.._add_value_1 bis _alert_hdl.._add_value_32 möglich) und sind nur in der historischen Datenbank vorhanden. Die Alarmbegleitwerte werden in der historischen Datenbank (RAIMA oder RDB) gespeichert. Ein Alarmbegleitwert in der RDB darf die Größe von 4 KByte nicht überschreiten.

VORSICHT: Mittels alertSet/alertSetWait ist es möglich, Alarmbegleitwerte zu einem bestimmten Alarm zu setzen. Wenn ein Alarm bereits quittiert wurde, können Alarmbegleitwerte auf den Alarm nur über das Attribut „_add_values“ geschrieben werden. Alarmbegleitwerte können in dem Fall nicht über _add_value_x (x = Nummer) gesetzt werden.
VORSICHT: 'alert_hdl.._add_value_x' und 'alert_hdl.._add_values' dürfen nicht im selben SELECT-Statement einer SQL-Abfrage bei der RDB-Archivierung verwendet werden.
Anmerkung: Komplexe Variablentypen, wie dyn_dyn*-Werte und Mappings, können nicht als _add_values verwendet werden.

Allgemeiner Aufbau des Meldebehandlungspanels

Die Panels zur Parametrierung einer Meldebehandlung und der Summenmeldebehandlung sind ähnlich aufgebaut. Die Unterschiede sind in den einzelnen Registerkarten jedes Panels, welche in den einzelnen Kapitel separat behandelt werden.

Abbildung 1. Oberer Bereich eines Panels

In der oberen, rechten Ecke jedes Panels befindet sich das Feld "DPE:". Dieses zeigt den Namen des bearbeiteten Datenpunktelementes an (bzw. Beschreibung oder Alias).

In der rechten Combobox im unteren Bereich des Meldebehandlungspanels wird die Art der Meldebehandlung gewählt (nicht, wenn es sich um eine Summenmeldebehandlung handelt, da diese für Datenpunktelemente eines nicht numerischen Datentyps automatisch als Art gewählt wird).

Abbildung 2. Combobox zur Auswahl der Meldebehandlungsart

Abhängig davon welche Art der Meldebehandlung am Datenpunktelement parametriert werden soll, unterscheidet sich der untere Bereich des Meldebehandlungspanels leicht in seinen Funktionen.

Abbildung 3. Unterer Bereich eines Meldebehandlungspanels kontinuierlicher Werte
Abbildung 4. Unterer Bereich eines Meldebehandlungspanels diskreter Werte
Abbildung 5. Unterer Bereich eines Meldebehandlungspanels für Multiinstanzen
Abbildung 6. Unterer Bereich eines Summenmeldebehandlungspanels

Im Folgenden werden die Einstellungen/Felder beschrieben:

aktiv für

Muss angehakt sein, um die Meldebehandlung für das Datenpunktelement zu aktivieren. Es kann gewählt werden, ob der Originalwert oder der Onlinewert entsprechend eine Meldung auslösen soll.

Zustand

Sobald eine Meldung aktiv ist, sind zwei Zustandsfelder zu sehen. Im linken Feld wird der aktuelle Meldetext in der entsprechenden Meldefarbe angezeigt. Im rechten Feld wird der aktuelle Meldezustand (keine Meldung, kam/quittiert) angezeigt. Der Meldezustand ist durch die höchste Priorität der Einzelmeldungen bestimmt. Die Gewichtung der Prioritäten wird in der Registerkarte Meldungen eingestellt.

Hilfe

Öffnen das entsprechende Hilfekapitel aus der WinCC OA Online Hilfe.

OK

Speichert die Parametrierung und schließt das Meldebehandlungspanel (nur möglich bei nicht aktivierter Meldebehandlung).

Quittieren

Quittiert eine anstehende Meldung, falls eine ansteht.

Übernehmen

Speichert die Parametrierung im Meldebehandlungspanel (nur möglich bei nicht aktivierter Meldebehandlung).

Schließen

Schließt das Meldebehandlungspanel ohne die Parametrierung zu speichern.

Einstellungen/Felder einer Meldebehandlung kontinuierlicher/diskreter Werte

Impuls

Wird ein Alarmzustand (Wertbereich) mehrmals hintereinander durch den gleichen Wert ausgelöst, kommt es normalerweise nur zu einer Meldung (neuer Zustand). Durch Aktivieren der "Impuls"-Checkbox wird durch den gleichen Wert jedes Mal eine neue Meldung mit aktualisierter Alarmzeit ausgelöst. Ist beispielsweise 0 als Gutbereich gesetzt, so löst eine 1-1-1-... Folge ständig eine neue Meldung aus. Je nach gewählter Meldebehandlung (diskret oder kontinuierlich) sind bei Impulsalarmen folgende Unterschiede zu beachten:

  • kontinuierlich: Es kommt zu keinen GING-Meldungen, weswegen nur die Quittierarten "Quittieren löscht" und "KAM ist quittierbar" zulässig sind. Zusätzlich können hier auch "Wisch-Alarme" realisiert werden. Hierbei kommt es zu einer schnellen 0-1-0 Folge, wobei durch die Flanke vom Gutbereich in den Alarmbereich die Meldung ausgelöst, die GING-Meldung aber ignoriert wird. Das bedeutet, dass die Meldung als "KAM/unquittiert" angezeigt wird, obwohl sie eigentlich schon wieder gegangen ist. Die Meldung bleibt, bis sie entweder durch den nächsten Impuls aktualisiert oder durch Quittieren gelöscht wird. Achtung: Impulsalarme bei Meldebehandlungen kontinuierlicher Werte sind nur für den Datentyp bool möglich!

  • diskret: Im Gegensatz zu Impulsalarmen bei Meldebehandlungen kontinuierlicher Werte werden hier GING-Meldungen erzeugt und die Quittierarten "Quittieren löscht", "KAM ist quittierbar", "KAM oder GING ist quittierpflichtig" und "nicht quittierbar" sind erlaubt. Impulsalarme bei Meldebehandlungen diskreter Werte können bei folgenden Datentypen verwendet werden: bool, int, uint, float, char und bit32

Hinweis

Bei der Verwendung eines Impulsalarmes stehen die Status Bits nicht zur Verfügung.

Bereiche

Anzahl der zu parametrierenden Meldebereiche ("2 Bereiche",..., "20 Bereiche").

Einstellungen/Felder der Summenmeldebehandlung

Filter

Wenn einzelne Alarme ausgeblendet werden sollen, kann die Checkbox "Filter" verwendet werden. Auf der Registerkarte "Meldungen" kann ein Alarmfilter-Grenzwert für die Summenmeldungen gesetzt werden. Damit kann definiert werden, aus wievielen einzelnen Meldungen nur die Summenmeldung angezeigt werden soll. Wenn z.B. der Grenzwert 4 gesetzt wird und vier einzelne Meldungen auftreten, wird im Meldeschirm nur die Summenmeldung angezeigt. Mit "Filter" kann ein Alarm ausgeblendet werden, auch wenn der eingestellte Grenzwert noch nicht erreicht wurde. Einstellungen zur Filterung sind erforderlich.

Anmerkung: Beachten Sie, dass um den Alarmfilter Grenzwert zu verwenden, die automatische Filterung im Panel "Eigenschaften vom Meldeschirm" vom Alarm- und Meldeschirm -> auf der Registerkarte Filtertypen aktiviert werden muss. Beachten Sie zudem, dass für die Alarmfilterung (wenn der Grenzwert verwendet wird) bei der Summenmeldung eine Meldeklasse definiert werden muss! Siehe Kapitel Automatische Filterung von Alarmen.

Parametrierung ändern:

Um die Parametrierung einer Meldebehandlung zu ändern, muss die Aktivierung durch Anklicken der Checkbox aktiv für links unten aufgehoben werden. Dies ist nur dann möglich, wenn zurzeit keine Meldungen für dieses DPE anstehen. Andernfalls müssen diese vorher mithilfe der Quittieren Schaltfläche quittiert werden.

Meldungen und Zustandsanzeigen

Meldungen werden wiedergegeben als:

  • Text im Meldeschirm, d.h. als Meldungen im engeren Sinn

  • Zustandsanzeigen, zum Beispiel durch blinkende Grafikobjekte.

Quittiert wird auf dem Meldeschirm, auf dem jede Meldung eine Zeile einnimmt, durch Anklicken der entsprechenden Zelle "Quitt". Zustandsanzeigen werden durch Quittieren des jeweils blinkenden Grafikobjektes bestätigt (im Einzelquittiermodus oder Gesamtquittiermodus).

Weiterführende Kapitel

Zum Thema Quittieren, lesen Sie bitte das Kapitel Zustandsanzeigen quittieren und Meldeschirm.

Der Meldebehandlung einer Datenpunktvariablen dienen in WinCC OA die Attribute des Configs _alert_hdl.

Anmerkung: Die Fehlermeldung:

WCCILevent (0), 2007.10.19 13:36:34.377, IMPL, INFO, 86, Invalid value, DP: <DPName>:_original.._value, AlertNonBinarySignal, handleNewValue, newValueTime (2007.10.19 13:36:34.205) set to: 2007.10.19 13:36:34.315

bedeutet, dass ein Alarm nach der Deaktivierung des Alarms mit einem Zeitpunkt vor der Deaktivierung, aktiviert wurde.

Beispiel:

10:10:00 dp1 wird gesetzt.

11:00:00 Meldebehandlung wird deaktiviert (.._stime ist weiterhin 10:10:00)

12:00:00 dp1 wird mit dpSetTimed("10:30:00", ..) gesetzt -> obige Fehlermeldung wird angezeigt (.._stime ist nun 10:30:00)

Auch wenn die Meldebehandlung mit einem dpSetTimed() vor 11:00:00 aktiviert wird, wird diese Fehlermeldung angezeigt, weil die Meldebehandlung nicht wieder eingeschaltet werden kann, bevor sie ausgeschaltet wurde.

Anmerkung: Komplexe Variablentypen, wie z.B. dyn_dyn*-Werte und Mappings, können nicht als _add_values verwendet werden.

Generelle Hinweise

Alarminstanzen

Um mehr Informationen zu den Alarminstanzen innerhalb des Systems zu erhalten, bietet das System zusätzliche Log-Nachrichten und Debug- Optionen innerhalb des Event Managers, siehe WCCILevent.

Wenn das System mehr als 500 (1000, 1500, 2000, ...) Alarminstanzen für ein Datenpunktelement detektiert, wird ein Fehler ausgegeben. Wenn die Anzahl der Alarminstanzen sich (um 500) erhöht/verringert, werden zusätzliche Log Nachrichten ausgegeben.

Mehr Alarminstanzen können auftreten, wenn Multiinstanzalarme oder die Option "Quittieren alter Alarme" für die Alarmklasse verwendet werden.

Beispiel

Beispiele für Log-Nachrichten, wenn sich die Anzahl der Alarminstanzen erhöht. Die <DPE identifier> wird durch den Namen des entsprechenden Datenpunktelementes ersetzt:

WCCILevent   (0), <TIMESTAMP>, PARAM,WARNING,    54,  Unexpected state,
DP: <DPE identifier>, AlertAdministration, number
of alarm instances greater than , 500

Beispiel

Beispiele für Log Nachrichten wenn sich die Anzahl der Alarminstanzen verringert. Die <DPE identifier> wird durch den Namen des entsprechenden Datenpunktelementes ersetzt:

WCCILevent   (0), <TIMESTAMP>, PARAM,WARNING,    54,  Unexpected state,
DP: <DPE identifier>, AlertAdministration, number
of alarm instances now less than , 500