TURCV: Daten über Ethernet (UDP) empfangen (S7-300, S7-400) - STEP 7

Open User Communication (S7-300, S7-400)

ft:publication_title
Open User Communication (S7-300, S7-400)
Product
STEP 7
Version
V21
Publication date
11/2025
Language
de-DE
TURCV: Daten über Ethernet (UDP) empfangen

Beschreibung

Die Anweisung "TURCV" empfängt Daten über UDP. Nach erfolgreichem Abschluss von "TURCV" wird Ihnen am Parameter ADDR die Adresse des remoten Partners, also des Senders, zur Verfügung gestellt.

Warnung

Datenübertragung über UDP gemäß RFC 768

Bei der Datenübertragung über UDP gemäß RFC 768 werden die Daten unquittiert und damit ungesichert zum remoten Partner übertragen. D. h., es können Daten verloren gehen, ohne dass dies am Baustein angezeigt wird.

Arbeitsweise

"TURCV" ist eine asynchron arbeitende Anweisung, d. h. die Auftragsbearbeitung erstreckt sich über mehrere Aufrufe. Sie starten den Empfangsauftrag, indem Sie "TURCV" mit EN_R = 1 aufrufen.

Über den Ausgangsparameter BUSY und den Ausgangsparameter STATUS wird der Zustand des Auftrags angezeigt. Dabei entspricht STATUS dem Ausgangsparameter RET_VAL der asynchron arbeitenden Anweisungen

Siehe auch: Unterschied zwischen synchron und asynchron arbeitenden Anweisungen.

In der folgenden Tabelle ist der Zusammenhang zwischen BUSY, NDR und ERROR angegeben. Mit ihrer Hilfe können Sie feststellen, in welchem Zustand sich TURCV aktuell befindet bzw. wann der Empfangsvorgang beendet ist.

BUSY

NDR

ERROR

Beschreibung

TRUE

irrelevant

irrelevant

Der Auftrag ist in Bearbeitung.

FALSE

TRUE

FALSE

Der Auftrag wurde erfolgreich abgeschlossen.

FALSE

FALSE

TRUE

Der Auftrag wurde mit einem Fehler beendet. Die Fehlerursache können Sie dem Parameter STATUS entnehmen.

FALSE

FALSE

FALSE

Der Anweisung wurde kein (neuer) Auftrag erteilt.

Hinweis

Durch die asynchrone Arbeitsweise von "TURCV" sind die Daten im Empfangsbereich erst dann konsistent, wenn der Parameter NDR den Wert TRUE annimmt.

Parameter

Die folgende Tabelle zeigt die Parameter der Anweisung "TURCV":

Parameter

Deklaration

Datentyp

Speicherbereich

Beschreibung

EN_R

Input

BOOL

E, A, M, D, L, T, Z

Steuerparameter enabled to receive: Mit EN_R = 1 wird "TURCV" empfangsbereit. Der Empfangsauftrag wird bearbeitet.

ID

Input

WORD

M, D oder Konstante

Referenz auf die zugehörige Verbindung zwischen Anwenderprogramm und Kommunikationsschicht des Betriebssystems. ID muss identisch sein mit dem zugehörigen Parameter ID in der lokalen Verbindungsbeschreibung.
Wertebereich: W#16#0001 bis W#16#0FFF

LEN

Input

INT

E, A, M, D, L

Länge des Empfangsbereichs in Bytes: 0 (empfohlen) bzw. 1 bis 1472

Siehe auch: Arbeitsweise der Anweisungen zur Open User Communication über Industrial Ethernet

NDR

Output

BOOL

E, A, M, D, L

Zustandsparameter NDR:

  • NDR = 0: Auftrag wurde noch nicht gestartet oder läuft noch

  • NDR = 1: Auftrag wurde erfolgreich abgeschlossen

ERROR

Output

BOOL

E, A, M, D, L

Zustandsparameter ERROR:

  • ERROR=1: Bei der Bearbeitung ist ein Fehler aufgetreten. STATUS liefert detaillierte Auskunft über die Art des Fehlers

BUSY

Output

BOOL

E, A, M, D, L

  • BUSY = 1: Der Auftrag ist noch nicht beendet. Es kann kein neuer Auftrag angestoßen werden.

  • BUSY = 0: Der Auftrag ist beendet.

STATUS

Output

WORD

M, D

Zustandsparameter STATUS: Fehlerinformation

RCVD_LEN

Output

INT

E, A, M, D, L

Anzahl der tatsächlich empfangenen Daten in Bytes

DATA

InOut

ANY

E, A, M, D

Empfangsbereich (Definition siehe Arbeitsweise der Anweisungen zur Open User Communication über Industrial Ethernet)
Die Adresse verweist auf:

  • das Prozessabbild der Eingänge

  • das Prozessabbild der Ausgänge

  • einen Merker

  • einen Datenbaustein

Hinweis: Den Parameter DATA können Sie auf die folgenden beiden Arten angeben:

  • absolut. Bsp.: P#DB13.DBX0.0 Byte 64

  • symbolisch. Bsp.: DB_name.variable

ADDR

InOut

ANY

D

Zeiger auf die Adresse des Senders (z. B. P#DB100.DBX0.0 Byte 8) Siehe auch: Struktur der Adressinformation des remoten Partners bei UDP

Hinweis: Den Parameter ADDR können Sie auf die folgenden beiden Arten angeben:

  • absolut. Bsp.: P#DB13.DBX0.0 Byte 64

  • symbolisch. Bsp.: DB_name.variable

Weitere Informationen zu den gültigen Datentypen finden Sie unter "Übersicht über die gültigen Datentypen".

Parameter ERROR und STATUS

ERROR

STATUS
(W#16#...)

Erläuterung

0

0000

Neue Daten wurden übernommen. Die aktuelle Länge der empfangenen Daten wird in RCVD_LEN angezeigt.

0

7000

Baustein nicht empfangsbereit

0

7001

Baustein ist empfangsbereit, Empfangsauftrag wurde aktiviert

0

7002

Zwischenaufruf, Empfangsauftrag ist in Bearbeitung

Hinweis: In dieser Bearbeitungsphase schreibt "TURCV" Daten in den Empfangsbereich. Deshalb können im Fehlerfall inkonsistente Daten im Empfangsbereich stehen.

1

8085

Parameter LEN ist größer als der größte zulässige Wert, oder Sie haben einen der Parameter LEN oder DATA gegenüber dem Erstaufruf geändert

1

8086

Parameter ID liegt in einem unzulässigen Wertebereich

1

8088

  • Empfangsbereich ist zu klein

  • Wert in LEN ist größer als der durch DATA vorgegebene Empfangsbereich

1

8089

Parameter ADDR zeigt nicht auf einen Datenbaustein

1

80A1

Kommunikationsfehler:

  • Die angegebene Verbindung zwischen Anwenderprogramm und Kommunikationsschicht des Betriebssystems wurde noch nicht aufgebaut.

  • Die angegebene Verbindung zwischen Anwenderprogramm und der Kommunikationsschicht des Betriebssystems wird momentan abgebaut. Ein Empfangsauftrag über diese Verbindung ist nicht möglich.

  • Die Schnittstelle wird neu parametriert.

1

80B3

Die parametrierte Protokollvariante (Parameter connection_type in der Verbindungsbeschreibung) ist nicht UDP. Bitte verwenden Sie "TRCV".

1

80C3

  • Ein Baustein mit dieser ID wird bereits in einer anderen Prioritätsklasse bearbeitet.

  • interner Ressourcenmangel

1

80C4

Temporärer Kommunikationsfehler: Die Schnittstelle wird neu parametriert.

1

8xyy

allgemeine Fehlerinformation

Siehe auch: Fehlerauswertung mit dem Ausgangsparameter RET_VAL