Beschreibung
Mit der Anweisung lösen Sie aus dem Anwenderprogramm eines intelligenten Slaves beim zugehörigen DP-Master einen Prozessalarm aus. Das führt zum Start des OB 40 beim DP-Master.
Mit dem Eingangsparameter AL_INFO können Sie die Ursache für den von Ihnen gewünschten Prozessalarm kennzeichnen. Diese Alarmkennung wird an den DP-Master übertragen und kann von Ihnen im OB 40 (Variable OB40_POINT_ADDR) ausgewertet werden.
Der angeforderte Prozessalarm wird durch die Eingangsparameter IOID und LADDR eindeutig festgelegt. Für jeden projektierten Adressbereich im Übergabespeicher können Sie zu einem beliebigen Zeitpunkt genau einen Prozessalarm auslösen.
Arbeitsweise
"DP_PRAL" ist eine asynchron arbeitende Anweisung, d. h. die Bearbeitung erstreckt sich über mehrere Aufrufe. Sie starten die Prozessalarmanforderung, indem Sie "DP_PRAL" mit REQ=1 aufrufen.
Über die Ausgangsparameter RET_VAL und BUSY wird der Zustand des Auftrags angezeigt.
Siehe auch: Unterschied zwischen synchron und asynchron arbeitenden Anweisungen.
Der Auftrag ist abgeschlossen, wenn die Bearbeitung des OB 40 im DP-Master beendet ist.
|
Hinweis Betreiben Sie den DP-Slave als Normslave, ist der Auftrag abgeschlossen, sobald das Diagnosetelegramm vom DP-Master abgeholt wurde. |
Identifikation eines Auftrags
Die Eingangsparameter IOID und LADDR legen einen Auftrag eindeutig fest.
Falls Sie die Anweisung "DP_PRAL" auf einem DP-Slave aufgerufen haben und Sie diese Anweisung erneut aufrufen, bevor der DP-Master den angeforderten Prozessalarm quittiert hat, dann hängt das weitere Verhalten der Anweisung entscheidend davon ab, ob es sich beim erneuten Aufruf um denselben Auftrag handelt: Stimmen die Parameter IOID und LADDR mit einem noch nicht abgeschlossenen Auftrag überein, so wird der Aufruf unabhängig vom Wert des Parameters AL_INFO als Folgeaufruf interpretiert, und in RET_VAL wird der Wert W#16#7002 eingetragen.
Parameter
Die folgende Tabelle zeigt die Parameter der Anweisung "DP_PRAL":
|
Parameter |
Deklaration |
Datentyp |
Speicherbereich |
Beschreibung |
|---|---|---|---|---|
|
REQ |
Input |
BOOL |
E, A, M, D, L |
REQ=1: Prozessalarm auf dem zugehörigen DP-Master auslösen |
|
IOID |
Input |
BYTE |
E, A, M, D, L oder Konstante |
Kennung des Adressbereichs im Übergabespeicher (aus Sicht des DP-Slaves):
Handelt es sich um eine Mischbaugruppe, ist die Bereichskennung der niedrigeren Adresse anzugeben. Bei gleichen Adressen ist B#16#54 anzugeben. |
|
LADDR |
Input |
WORD |
E, A, M, D, L oder Konstante |
Anfangsadresse des Adressbereichs im Übergabespeicher (aus Sicht des DP-Slaves). Handelt es sich um einen Bereich, der zu einer Mischbaugruppe gehört, ist die kleinere der beiden Adressen anzugeben. |
|
AL_INFO |
Input |
DWORD |
E, A, M, D, L oder Konstante |
Alarmkennung Diese wird dem OB 40, der auf dem zugehörigen DP-Master gestartet werden soll, mitgegeben (Variable OB40_POINT_ADDR). Falls Sie den intelligenten Slave an einem Fremdmaster betreiben, müssen Sie im Master das Diagnosetelegramm auswerten. |
|
RET_VAL |
Return |
INT |
E, A, M, D, L |
Tritt während der Bearbeitung der Anweisung ein Fehler auf, enthält der Rückgabewert einen Fehlercode. |
|
BUSY |
Output |
BOOL |
E, A, M, D, L |
BUSY=1: Der ausgelöste Prozessalarm wurde vom DP-Master noch nicht quittiert. |
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 |
Der Auftrag wurde fehlerfrei durchgeführt. |
|
7000 |
Erstaufruf mit REQ=0. Es ist keine Prozessalarmanforderung aktiv; BUSY hat den Wert "0". |
|
7001 |
Erstaufruf mit REQ=1. Eine Prozessalarmanforderung an den DP-Master wurde gestellt; BUSY hat den Wert "1". |
|
7002 |
Zwischenaufruf (REQ irrelevant): Der ausgelöste Prozessalarm wurde vom DP-Master noch nicht quittiert; BUSY hat den Wert "1". |
|
8090 |
Anfangsadresse des Adressbereichs im Übergabespeicher fehlerhaft |
|
8091 |
Alarm durch Projektierung gesperrt. |
|
8093 |
Über das Parameterpaar IOID und LADDR wird eine Baugruppe angesprochen, von der aus eine Prozessalarmanforderung nicht möglich ist. |
|
80B5 |
Aufruf in DP-Master nicht zulässig |
|
80C3 |
Benötigte Betriebsmittel (Speicher usw.) sind momentan belegt. |
|
80C5 |
Dezentrale Peripherie ist momentan nicht verfügbar (z. B. Stationsausfall). |
|
80C8 |
Die Funktion ist im aktuellen Betriebszustand des DP-Masters nicht erlaubt. |
|
8xyy |
allgemeine Fehlerinformation Siehe auch: Fehlerauswertung mit dem Ausgangsparameter RET_VAL |