Alarme und Zustände
In diesem Kapitel wird die OPC UA-Alarms & Conditions (A&C) Funktionalität des WinCC OA OPC UA-Servers näher beschrieben.
Vorraussetzungen und Einschränkungen
Damit für die Datenpunktelemente eines WinCC OA Projektes Alarme über OPC UA verschickt werden können, müssen serverseitig folgende Voraussetzungen erfüllt sein:
- Die Datenpunktelemente müssen einen Meldebehandlungskonfig (_alert_hdl) parametriert haben.
- Die Datenpunktelemente müssen der Datenpunktgruppe OPCUAAlarm angehören, oder das Datenpunktelement muss mittels CNS View exportiert
werden und den Zugrifslevel
Alarm
aktiviert haben.
Ein OPC UA Client hat mit Ausnahme der Quittierung ausschließlich Lesezugriff auf die OPC UA-Alarme. Eine Parametrierung über den OPC UA Client ist nicht vorgesehen. Die einzige OPC UA Methode, die ein OPC UA Client im OPC UA-Server aufrufen kann, um Alarme zu quittieren, ist Acknowledge(). Alle anderen Methodenaufrufe geben den Fehlercode OpcUa_BadNotSupported zurück.
Unterstützte Alarmtypen und Quittierungsarten
WinCC OA bietet ein sehr umfangreiches Alarmmodell, welches verschiedene Alarmtypen und Quittierungsarten umfasst. Eine konsistente Abbildung aller Kombinationen auf OPC UA ist aktuell nicht möglich. Aufgrund dessen unterstützt der WinCC OAOPC UA-Server nur eine eingeschränkte Anzahl aller Möglichkeiten (diese gelten nur für den Server - für die Matrix für den Client siehe Unterstützte Alarmtypen und Einschränkungen). Diese sind in der folgenden Matrix ersichtlich. Bezüglich der Beschreibung der Alarmtypen bzw. der Quittierungsarten siehe Grundlagen Meldebehandlung und Meldezustände.
Nicht quittierbar | Quittierung löscht | KAM ist quittierbar | KAM oder GING musst quittiert werden | KAM und GING müssen quittiert werden | |
---|---|---|---|---|---|
Binärer Alarm | ✔ | ✔ | ✔ | ✔ | ✔ |
Binärer Alarm (diskret) | ❌ | ❌ | ❌ | ❌ | ❌ |
Binärer Alarm (Impuls) | ✔ | ✔ | ✔ | ✔ | N/A |
Binärer Alarm (diskret, Impuls) | ❌ | ❌ | ❌ | ❌ | N/A |
Alarm kontinuierlicher Werte (2 Bereiche) | ✔ | ✔ | ✔ | ✔ | ✔ |
Alarm diskreter Werte (2 Bereiche) | ✔ | ✔ | ✔ | ✔ | ✔ |
Alarm diskreter Werte (Impuls, 2 Bereiche) | ❌ | ❌ | ❌ | ❌ | N/A |
Alarm kontinuierlicher Werte (n Bereiche) | ✔ | ✔ | ✔ | ✔ | ✔ |
Alarm diskreter Werte (n Bereiche) | ✔ | ✔ | ✔ | ✔ | ✔ |
Alarm diskreter Werte (Impuls, n Bereiche) | ❌ | ❌ | ❌ | ❌ | N/A |
OPC UA-Alarm Model Konformität
WinCC OA besitzt ein recht komplexes und historisch gewachsenen Alarmierungsmodell, welches nicht in allen Konfigurationen mit dem IEC 62862 basierten Alarmierungsmodell für OPC UA konform ist. Um ein OPC UA konformes Alarmierungsmodell zu erhalten, müssen folgende Konfigurationen beachtet werden:
- Der Quittierungsmodus "Quittieren löscht" kann nicht verwendet werden, da dies nicht konform mit der IEC 62862 Norm ist an welche sich das OPC UA-Alarmierungsmodell hält.
- Für die Quittiermodi "KAM oder GING" bzw. "KAM und GING muss quitiert werden" muss die Option "Quittierung alter Alarme" aktiviert werden, da innerhalb des OPC UA Alarmierungsmodells ältere Alarme nicht einfach durch neuere Alarme ersetzt werden dürfen.
- Für OPC UA-Alarme, welche ein automatisches Quittieren verwenden, werden die Quittiermodi "Nicht Quittierbar" und "KAM ist quittierbar" verwendet, da die OPC UA-Alarme bereits beim Auftreten einen "quittierten" Zustand (AckedState: TRUE) haben.
- WinCC OA-Alarme mit den Quittiermodi "Nicht Quittierbar" und "KAM ist quittierbar" werden als automatisch quittierte OPC UA-Alarme modelliert, da diese Alarme bereits einen "quittierten" Zustand (AckedState: TRUE) haben können, wenn sie ausgelöst werden.
Abbildung auf das OPC UA-Alarmmodell
WinCC OA Meldebehandlungen werden in OPC UA als Instanz eines WinCC OA OPC UA-Alarmtyps abgebildet. Die Instanzen des Alarmzustandes sind unterhalb des OPC UA-Server Objektes in der gleichen Hierachie wie die zugehörigen Datenpunktelemente organisiert, und sind damit grundsätzlich über das Browsen von einem OPC UA Client erreichbar. Einzelheiten der WinCC OA Meldebehandlungen werden auf die Alarmtypen nicht abgebildet. D.h. Alarmgrenzen, Alarmklassen und Meldetexte sind für OPC UA Clients nicht sichtbar.
Im OPC UA Adressraum werden für Datenpunktelemente mit einer Meldebehandlung, die mittels OPCUAAlarm Gruppe oder CNS View mit gesetztem "Alarm" Zugriffsbit exportiert wurden, die Elemente EventSource und Conditions angelegt. Diese können auch über Browsen nach Items ermittelt werden.
Alle Änderungen an den WinCC OA Meldebehandlungen werden ohne erforderlichen Neustart am OPC UA-Server nachgezogen.
Die WinCC OA Alarmtypen werden vom OPC UA-Alarmtyp AlarmConditionType abgeleitet. Gemäß OPC UA A&C Spezifikation sind Shelve und Confirm optional, haben keine Entsprechung in WinCC OA und werden daher vom OPC UA A&C Server nicht unterstützt.
Abhängig vom WinCC OA Alarmtyp werden folgende OPC UA-Alarmtypen angelegt:
WinCC OA Alarmbehandlungstyp | OPC UA-Alarmtyp |
---|---|
Binärer Alarm | OffNormalAlarmType |
Multiinstanzalarm kontinuierlicher Werte | PvssContinuousAlarmType |
Multiinstanzalarm diskreter Werte | PvssDiscreteAlarmType |
Summenalarme | TripAlarmType |
Diese OPC UA UA Alarmtypen sind auch im OPC UA Adressraum im Typbaum ersichtlich.
Abbildung von Multiinstanzalarmen
Folgende Abbildung der WinCC OA Alarmtypen findet bei der Verwendung von Multiinstanzalarmen seine Anwendung:
WinCC OA Alarmbehandlungstyp | OPC UA-Alarmtyp |
---|---|
Binärer Multiinstanzalarm | OffNormalAlarmType |
Nicht-binäre Multiinstanzalarme | PvssContinuousAlarmType |