DP_PRAL: Prozessalarm aus DP-Normslave auslösen (S7-300, S7-400) - STEP 7

Erweiterte Anweisungen (S7-300, S7-400)

ft:publication_title
Erweiterte Anweisungen (S7-300, S7-400)
Product
STEP 7
Version
V20
Publication date
11/2024
Language
de-DE
DP_PRAL: Prozessalarm aus DP-Normslave auslösen

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):

  • B#16#00: Bit15 von LADDR gibt an, ob Ein- (Bit15=0) oder Ausgangsadresse (Bit15=1) vorliegt.

  • B#16#54 = Peripherie Eingang (PE)

  • B#16#55 = Peripherie Ausgang (PA)

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