Meldebehandlung diskreter Werte

Eine Meldebehandlung diskreter Werte wird dann verwendet, wenn diskrete Zustände eine Meldung im Wertebereich auslösen sollen. Diskret heißt, dass ein konkretes Ereignis eingetroffen ist (z.B. Licht ein) oder nicht eingetroffen ist (z.B. Licht aus).

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

Anmerkung: Eine diskrete Meldebenhandlung darf NICHT für float Datenpunktelemente verwendet werden!

Standardpanel Meldebehandlung numerischer Größen

Das Panel zur diskreten Meldebehandlung numerischer Größen (int, uint) besteht aus drei Registerkarten.

Abbildung 1. Panel Meldebehandlung (int und uint ) mit 4 Bereichen" Registerkarte "Grenzen"

Registerkarte Grenzen

In der Registerkarte "Grenzen" können bis zu 20 Grenzbereiche parametriert werden. Der Bereich 1 (unterster Bereich) ist dabei immer der Gutbereich.

  • Grenzwerte: bestimmen Sie für jeden Bereich die Grenzwerte, die eine Meldung auslösen sollen. Die Grenzwerte werden vom höchsten Bereich bis zum niedrigsten Bereich (Gutbereich) nach einer Übereinstimmung durchsucht. Kommt es zu einer Übereinstimmung, werden die niedrigeren Bereiche nicht mehr geprüft. Keine Übereinstimmung bedeutet automatisch, dass der Wert sich im Gutbereich befindet.

    Folgende Eingaben der Grenzwerte sind zulässig:

    • einzelne Grenzwerteingabe, z.B. für Integer = 10

    • Grenzwertbereiche, z.B. für Integer = 90-100

    • ODER Verknüpfungen einzelner Grenzwerteingaben

    • das Wildcard Stern (*) - überschreibt den Gutbereich

  • negative Grenzwerte (-x)-(-y), z.B. für Integer = (-100)-(-90)

  • Grenzwert-Operatoren: zwei Grenzwertoperatoren können verwendet werden - gleich und ungleich. Gleich "=" bedeutet, dass die Meldung dann ausgelöst wird, wenn es in der höheren Bereichen zu keiner Übereinstimmung gekommen ist und der Grenzwert in diesem Bereich dem Originalwert (Onlinewert) gleicht. Ungleich "!=" bedeutet, dass die Meldung immer dann ausgelöst wird, wenn der Originalwert (Onlinewert) nicht mit dem in diesem Bereich eingetragenen Grenzwert übereinstimmt.

    Die Obergrenze und die Untergrenze des Gutbereiches werden durch die Grenzen des WinCC OA Wertebereichs des zugehörigen Datentyps definiert.

  • Meldeklasse: wählen Sie aus den 7 standardmäßig angelegten Meldeklassen eine aus (siehe auch Kapitel _alert_class) oder übernehmen Sie eine eigene Meldeklasse über den DP-Selektor rechts. Dem Gutbereich wird keine Meldeklasse zugeordnet. Im Gegensatz zur Meldebehandlung kontinuierlicher Werte, müssen die Meldeklassen nicht nach zunehmender Priorität geordnet sein. Die Meldeklassen können beliebig gesetzt werden. Das Verwenden der gleichen Meldeklasse in mehreren Bereichen ist erlaubt.

  • KAM Text: geben Sie für jeden Meldebereich einen Text ein, welcher angezeigt wird, wenn der Wert in einen dieser Meldebereiche kommt (KAM-Meldung). Dieser Text wird im Meldeschirm angezeigt, z.B. "Messsonde 2: CO Gehalt kritisch!". Der KAM-Text im Gutbereich wird im Meldeschirm nicht angezeigt, dennoch kann er für Abfragen festgelegt werden (z.B.: für eine Verwendung im Enum-Kontext).

  • GING Text: geben Sie für jeden Meldebereich einen Text ein, welcher angezeigt wird, wenn der Wert einen dieser Meldebereiche verlässt (GING-Meldung). Dieser Text wird im Meldeschirm angezeigt, z.B. "Messsonde 2: CO Gehalt nicht länger kritisch." Der GING-Text im Gutbereich wird im Meldeschirm nicht angezeigt, dennoch kann er für Abfragen festgelegt werden (z.B.: für eine Verwendung im Enum-Kontext).

  • Bits: mit dem Klick auf diese Schaltfläche wird ein Panel geöffnet, welches die Auswahl bestimmter Bits ermöglicht, welche ein zusätzliches Kriterium darstellen, ob bei einer Übereinstimmung des Originalwertes (Onlinewertes) mit dem Grenzwert eine Meldung ausgelöst wird.

    Das heißt: Eine Meldung wird nur dann ausgelöst, wenn die Grenzwerteingabe mit dem Originalwert (Onlinewert) übereinstimmt.

Abbildung 2. Panel zur Auswahl der Benutzer-Bits und Status-Bits

Defaultmäßig ist für jeden Grenzbereich vordefiniert, dass alle Benutzer-Bits und Status-Bits entweder 0 oder 1 sein können und eine Meldung wird immer dann ausgelöst, wenn die Regel/der Grenzwert übereinstimmt.

Im Panel "Bits", siehe Abbildung oben, kann der Grenzwert zusätzlich durch Bits eingegrenzt werden.

Mit rechtem Mausklick auf ein Feld der Benutzer-Bits oder Status-Bits kann folgendes fesgelegt werden:

  • 0 - das Bit des Originalwertes muss 0 sein (FALSE)

  • 1 - das Bit des Originalwertes muss 1 sein (TRUE)

  • X - das Bit des Originalwertes kann 1 oder 0 sein (ist demnach nicht entscheidend)

Wurden für einen Grenzwertbereich Bits gesetzt, so wird im Meldebehandlungspanel das Icon neben der Schaltfläche "Bits" angezeigt.

Für den Gutbereich können keine Bits parametriert werden, da keine Meldeklasse bestimmt wird.

Registerkarte Parameter

Die Registerkarte "Parameter" gleicht der in der Summenmeldebehandlung und wird auch dort beschrieben.

Registerkarte Status Bits

In der Registerkarte "Status Bits" können Bits gesetzt werden, welche erneut die aktuell anstehende Meldung auslösen, wenn sich eines dieser Bits am Datenpunktelement (Originalwert) ändert.

Setzen Sie ein Häkchen in die Checkbox des jeweiligen Bits, wenn die Bit-Änderung berücksichtigt werden soll oder lassen Sie die Checkbox leer, wenn Bit-Änderungen ignoriert werden sollen (Default).

Abbildung 3. Die Registerkarte "Status-Bits"

Diskrete Meldebehandlung boolescher Größe

Die diskrete Meldebehandlung eines boolschen Datenpunktelementes unterscheidet sich von der analogen nur in drei zusätzlichen Optionen:

  • ein GING Text kann festgelegt werden. Der KAM/GING-Text im Gutbereich wird im Meldeschirm nicht angezeigt, dennoch kann er für Abfragen festgelegt werden (z.B.: für eine Verwendung im Enum-Kontext).

  • in der Registerkarte "Status Bits" können Bits berücksichtigt werden, deren Änderung am Datenpunktelement die anstehende Meldung erneut auslösen wird (siehe Abbildung und Beschreibung oben).

  • Über die Schaltfläche "Bits" können Bits ausgewählt werden, welche ein zusätzliches Kriterium darstellen, ob bei einer Übereinstimmung des Originalwertes (Onlinewertes) mit dem Grenzwert eine Meldung ausgelöst wird. Für weitere Informationen siehe Bits.

Mehr Informationen zur Meldebehandlung boolescher Größe erhalten Sie im Kapitel Analoge Meldebehandlung boolescher Größe.

Abbildung 4. Meldebehandlung eines booleschen Datenpunktelements
Anmerkung: Um eine diskrete Alarmbehandlung für einen boolschen Wert mittels eines ctrl-Skriptes zu setzen (unter Verwendung von dpSet), muss erst die entsprechende Alarmbehandlung des Wertes entfernt und innerhalb des Skriptes neu angelegt werden (vgl. nachfolgendes Beispiel).

Beispiel

rc = dpSetTimedWait(createTime(startTime),

dp + ":_alert_hdl.._type",

DPCONFIG_ALERT_NONBINARYSIGNAL

);

rc = dpSetTimedWait(createTime(startTime),

dp + ":_alert_hdl.1._type", DPDETAIL_RANGETYPE_MATCH,

dp + ":_alert_hdl.2._type", DPDETAIL_RANGETYPE_MATCH,

dp + ":_alert_hdl.1._class", "",

dp + ":_alert_hdl.2._class", alertClass,

dp + ":_alert_hdl.1._text", " GUT/true ",

dp + ":_alert_hdl.2._text", "false",

dp + ":_alert_hdl.1._went_text", "[ GUT/true ]",

dp + ":_alert_hdl.2._went_text", "[false]",

dp + ":_alert_hdl.1._match", "*",

dp + ":_alert_hdl.2._match", "0"

);