Beschreibung
Die Anweisung ist die Erweiterung von "ALARM" auf acht Signale.
Falls Sie das Verfahren des Quittierungsgetriggerten Meldens nicht aktiviert haben, wird stets eine Meldung generiert, wenn bei mindestens einem Signal ein Signalwechsel erkannt wurde (Ausnahme: Beim Erstaufruf wird stets eine Meldung gesendet.). Für alle acht Signale gibt es eine gemeinsame Meldungsnummer, die am Anzeigegerät in acht Teilmeldungen aufgeteilt wird. Sie können jede Teilmeldung einzeln quittieren oder auch mehrere Teilmeldungen auf einmal.
Über den Ausgangsparameter ACK_STATE können Sie den Quittierungszustand der einzelnen Meldungen in Ihrem Programm weiterverarbeiten. Falls Sie eine Meldung einer "ALARM_8P"-Anweisung sperren oder freigeben, so betrifft das immer die gesamte "ALARM_8P"-Anweisung. Das Sperren und Freigeben einzelner Signale ist nicht möglich.
Pro Instanz von "ALARM_8P" steht ein Meldespeicher mit zwei Speicherplätzen zur Verfügung. Genaueres zur Zwischenspeicherung von Signalwechseln siehe Abschnitt Einführung in die Erzeugung von PLC-Meldungen mit Anweisungen.
Parameter
Die folgende Tabelle zeigt die Parameter der Anweisung "ALARM_8P":
|
Parameter |
Deklaration |
Datentyp |
Speicherbereich |
Beschreibung |
|---|---|---|---|---|
|
EN_R |
Input |
BOOL |
E, A, M, D, L |
Steuerparameter enabled to receive, der bewirkt, dass der Ausgang ACK_STATE beim Aufruf aktualisiert wird (EN_R=1) bzw. nicht aktualisiert wird (EN_R=0). |
|
SIG_i, 1≤i ≤8 |
Input |
BOOL |
E, A, M, D, L |
i-tes zu überwachendes Signal |
|
ID |
Input |
WORD |
E, A, M, D, L oder Konstante |
Datenkanal für Meldungen: W#16#EEEE |
|
EV_ID |
Input |
C_ALARM_8P |
E, A, M, D, L |
Meldungsnummer (nicht erlaubt: 0); EV_ID wird nur beim Erstaufruf ausgewertet. Danach gilt bei jedem Aufruf von "ALARM_8P" mit dem zugehörigen Instanz-DB die beim Erstaufruf verwendete Meldungsnummer. Die Meldungsnummer wird automatisch vergeben. Dadurch ist die Konsistenz der Meldungsnummern gewährleistet. Die Meldungsnummer muss innerhalb Ihres Anwenderprogramms eindeutig sein. |
|
SEVERITY |
Input |
WORD |
E, A, M, D, L oder Konstante |
Gewicht des Ereignisses Mögliche Werte: 0 bis 127 (Wert 0 bedeutet höchstes Gewicht) |
|
DONE |
Output |
BOOL |
E, A, M, D, L |
Zustandsparameter DONE: Meldungsgenerierung abgeschlossen. |
|
ERROR |
Output |
BOOL |
E, A, M, D, L |
Zustandsparameter ERROR |
|
STATUS |
Output |
WORD |
E, A, M, D, L |
Zustandsparameter STATUS: Anzeige einer Fehlerinformation |
|
ACK_STATE |
Output |
WORD |
E, A, M, D, L |
Bitfeld mit dem aktuellen Quittierzustand aller acht Meldungen (1: Ereignis quittiert, 0: Ereignis nicht quittiert):
|
|
SD_j, 1≤ j ≤10 |
InOut |
ANY |
E, A, M, D, T, Z |
j-ter Begleitwert Die Begleitwerte gelten für alle Meldungen. Zulässig sind nur die Datentypen BOOL (nicht erlaubt: Bitfeld), BYTE, CHAR, WORD, INT, DWORD, DINT, REAL, DATE, TOD, TIME, S5TIME, DATE_AND_TIME. Hinweis: Wenn der ANY-Pointer auf einen DB zugreift, ist der DB immer zu spezifizieren (z.B.: P# DB10.DBX5.0 Byte 10). |
Weitere Informationen zu den gültigen Datentypen finden Sie unter "Übersicht über die gültigen Datentypen".
Parameter ERROR und STATUS
Die folgende Tabelle enthält alle für die Anweisung "ALARM_8P" spezifischen Fehlerinformationen, die über die Parameter ERROR und STATUS ausgegeben werden können.
|
ERROR |
STATUS (dezimal) |
Erläuterung |
|---|---|---|
|
0 |
11 |
Meldungsverlust: Der vorangegangene Signalwechsel bzw. die vorangegangene Meldung konnte nicht gesendet werden und wird durch die aktuelle Meldung ersetzt. |
|
0 |
22 |
|
|
0 |
25 |
Die Kommunikation wurde angestoßen. Die Meldung ist in Bearbeitung. |
|
1 |
1 |
Kommunikationsprobleme: Verbindungsabbruch oder keine Anmeldung vorhanden. Bei aktiviertem Quittierungsgetriggerten Melden: temporäre Anzeige, falls keine Anzeigegeräte das Quittierungsgetriggerte Melden beherrschen. |
|
1 |
4 |
Beim Erstaufruf:
|
|
1 |
10 |
Zugriff auf lokalen Anwenderspeicher nicht möglich (z. B. Zugriff auf gelöschten DB) |
|
1 |
12 |
Beim Aufruf der Anweisung wurde:
|
|
1 |
18 |
EV_ID wurde bereits von einem der Anweisungen "NOTIFY", "NOTIFY_8P", "ALARM", "ALARM_8" oder "ALARM_8P" verwendet. |
|
1 |
20 |
Zu wenig Arbeitsspeicher vorhanden. |
|
1 |
21 |
Die Meldung mit der angegebenen EV_ID ist gesperrt. |
|
Hinweis Nach dem ersten Aufruf sind alle Bits des Ausgangs ACK_STATE gesetzt, und die Vergangenheitswerte der Eingänge SIG_i, 1< i < 8, werden zu "0" angenommen. |
Siehe auch