Beschreibung
Die Anweisung "ALARM_DQ" generiert bei jedem Aufruf eine Meldung, an die Sie einen Begleitwert anhängen können. Darin stimmt sie mit der Anweisung "ALARM_SQ" überein.
Bei der Meldungserzeugung mit "ALARM_DQ" belegt das Betriebssystem für die Dauer eines Signalzyklus eine Systemressource.
Der Signalzyklus dauert bei "ALARM_DQ" vom Aufruf mit SIG=1 bis zum erneuten Aufruf mit SIG=0. Zu dieser Zeitspanne kommt ggf. noch die Zeit bis zur Quittierung des kommenden Signals durch eines der angemeldeten Anzeigegeräte hinzu.
Falls innerhalb des Signalzyklus ein Überladen oder Löschen des meldungserzeugenden Bausteins erfolgt, bleibt die zugehörige Systemressource bis zum nächsten Neustart (Warmstart) belegt.
Die zusätzliche Funktionalität von "ALARM_DQ" gegenüber "ALARM_SQ" besteht darin, dass Sie bei "ALARM_DQ" die belegten Systemressourcen verwalten können.
-
Mit Hilfe von "READ_SI" können Sie Informationen über belegte Systemressourcen auslesen.
-
Mit "DEL_SI" können Sie belegte Systemressourcen wieder freigeben. Dies ist insbesondere bei dauerhaft belegten Systemressourcen von Bedeutung. Eine aktuell belegte Systemressource bleibt z. B. dann bis zum nächsten Neustart (Warmstart) belegt, wenn Sie bei einer Programmänderung einen FB-Aufruf löschen und dieser FB "ALARM_DQ"-Aufrufe enthält. Wenn Sie bei einer Programmänderung einen FB mit "ALARM_DQ"-Aufrufen erneut laden, kann es vorkommen, dass "ALARM_DQ" keine Meldungen mehr erzeugt.
Die Anweisung "ALARM_DQ" hat einen Parameter mehr als die Anweisungen "ALARM_SQ", nämlich den Eingang CMP_ID. Mit ihm ordnen Sie die durch die Anweisungen "ALARM_DQ" erzeugten Meldungen logischen Bereichen zu, z. B. Teilanlagen. Falls Sie die "ALARM_DQ" in einem FB aufrufen, bietet es sich an, CMP_ID mit der Nummer des zugehörigen Instanz-DB zu belegen.
Parameter
Die folgende Tabelle zeigt die Parameter der Anweisung "ALARM_DQ":
|
Parameter |
Deklaration |
Datentyp |
Speicherbereich |
Beschreibung |
|---|---|---|---|---|
|
SIG |
Input |
BOOL |
E, A, M, D, L |
Das meldungsauslösende Signal |
|
ID |
Input |
WORD |
E, A, M, D, L oder Konstante |
Datenkanal für Meldungen: W#16#EEEE |
|
EV_ID |
Input |
C_ALARM_S |
E, A, M, D, L |
Meldungsnummer (nicht erlaubt: 0) |
|
CMP_ID |
Input |
DWORD |
E, A, M, D, L oder Konstante |
component identifier (nicht erlaubt: 0); Kennung zur Identifikation des Teilsystems, dem die zugehörige Meldung zugeordnet ist Empfohlene Werte:
Wenn Sie sich an diese Empfehlung halten, treten keine Konflikte mit von SIEMENS erstellten Programmpaketen auf. |
|
SD |
Input |
ANY |
E, A, M, D, T, Z |
Begleitwert Maximale Länge: 12 Byte Zulässig sind nur die Datentypen BOOL (nicht erlaubt: Bitfeld), BYTE, CHAR, WORD, INT, DWORD, DINT, REAL, DATE, TOD, TIME, S5TIME, DATE_AND_TIME |
|
RET_VAL |
Return |
INT |
E, A, M, D, L |
Anzeigen |
Weitere Informationen zu den gültigen Datentypen finden Sie unter "Übersicht über die gültigen Datentypen".
Parameter RET_VAL
|
Fehlercode (W#16#...) |
Erläuterung |
|---|---|
|
0000 |
Es ist kein Fehler aufgetreten. |
|
0001 |
|
|
0002 |
Warnung: Der letzte freie Meldequittierspeicher wurde belegt. (nur S7-400) |
|
8081 |
Die angegebene EV_ID liegt außerhalb des zulässigen Bereichs. |
|
8082 |
Meldungsverlust, da Ihre CPU keine Ressourcen für die Erzeugung von PLC-Meldungen durch Anweisungen mehr frei hat. |
|
8083 |
Meldungsverlust, da derselbe Signalwechsel bereits vorliegt, aber noch nicht gesendet werden konnte (Signal-Overflow). |
|
8084 |
Beim aktuellen und beim vorangegangenen "ALARM_DQ"-Aufruf hat das meldungsauslösende Signal SIG denselben Wert. |
|
8085 |
Für die angegebene EV_ID liegt keine Anmeldung vor. |
|
8086 |
Ein Aufruf für die angegebene EV_ID ist bereits in einer Prioritätsklasse niedrigerer Priorität in Bearbeitung. |
|
8087 |
Beim ersten Aufruf von "ALARM_DQ" hatte das meldungsauslösende Signal den Wert "0". |
|
8088 |
Die angegebene EV_ID wird bereits von einer anderen Systemressource (ALARM_SQ , ALARM_S , ALARM_D) belegt. |
|
8089 |
Sie haben CMP_ID den Wert "0" zugewiesen. |
|
808A |
CMP_ID passt nicht zu EV_ID |
|
8xyy |
allgemeine Fehlerinformation Siehe auch: Fehlerauswertung mit dem Ausgangsparameter RET_VAL |
Siehe auch