SET_ADDR: Netzadresse als eigener iSlave setzen (S7-300) - 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
SET_ADDR: Netzadresse als eigener iSlave setzen

Beschreibung

Über die Anweisung können Sie die DP-Adresse eines iSlave DP-Interface ändern. Die Adressierung wird über die Diagnoseadresse des DP-Interfaces vorgenommen. Für den DP-Master fällt der DP-Slave mit der alten Adresse aus dem Bus und ein DP-Slave mit der neuen Adresse wird in den Bus aufgenommen.

  • Ist die Adresse schon von einer Station im DP-Netzwerk belegt, fallen beide DP-Slaves aus dem Netzwerk.

  • Wird die Adresse ebenfalls als MPI-Adresse für die PG-Verbindung genutzt, wird der Zugang zum Gerät evtl. gesperrt. Die Information, ob die Geräte überhaupt erreichbar sind, wird in dem Dialog "Erreichbare Teilnehmer" angezeigt.

Die Netzwerkadresse wird nicht in den SDB (Systemdatenbaustein) geschrieben und nicht in den Arbeitsspeicher geladen. Beim Übergang der CPU in STOP und bei einem Warmstart bleibt die Netzwerkadresse erhalten. Nach einem Reset oder Kaltstart wird die ursprünglich konfigurierte Adresse verwendet.

Die Anweisung kann nicht für PROFINET IO verwendet werden, da die Ethernetadresse weltweit als disjunkt definiert werden können. Bei einer Verwendung mit PROFINET IO wird der Fehlercode 16#809B ausgegeben.

Arbeitsweise

Die Anweisung "SET_ADDR" ist eine asynchron arbeitende Anweisung, d. h. die Bearbeitung erstreckt sich über mehrere Aufrufe. Sie starten den Auftrag, indem Sie "READ_DBL" mit REQ = 1 aufrufen.

Über die Ausgangsparameter RET_VAL und BUSY wird der Zustand des Auftrags angezeigt.

Parameter

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

Parameter

Deklaration

Datentyp

Speicherbereich

Beschreibung

REQ

Input

BOOL

E, A, M, D, L

REQ=1: Funktionsaufruf

LADDR

Input

WORD

E, A, M, D, L oder Konstante

Logische Basisadresse

ADDR

Input

BYTE

E, A, M, D, L oder Konstante

Neue Teilnehmeradresse

RET_VAL

Return

INT

E, A, M, D, L

Fehlerinformation

BUSY

Output

BOOL

E, A, M, D, L

BUSY=1: Der Auftrag ist noch nicht beendet.

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.

700x

Der Auftrag ist noch nicht beendet. Parameter BUSY=1

8091

Neue Stationsadresse (ADDR) ist ungültig

8092

Station ist keine eigene Slave-Adresse des ISlave

8093

LADDR ist ungültig oder kein Interface

809B

Anweisung kann nicht ausgeführt werden (z. B. ist das Interface kein DP-Slave oder aktiv).

80C3

Ressourcen nicht ausreichend (z. B. mehrfacher Aufruf von Anweisungen mit verschiedenen Parametern).

8xyy

allgemeine Fehlerinformation

Siehe auch: Fehlerauswertung mit dem Ausgangsparameter RET_VAL