PARM_MOD: Datensätze einer Baugruppe übertragen (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
PARM_MOD: Datensätze einer Baugruppe übertragen

Beschreibung

Mit der Anweisung "PARM_MOD" übertragen Sie alle Datensätze einer Baugruppe, die Sie projektiert haben, zur Baugruppe. Dabei ist es ohne Bedeutung, ob die Datensätze statisch oder dynamisch sind.

Parameter

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

Parameter

Deklaration

Datentyp

Speicherbereich

Beschreibung

REQ

Input

BOOL

E, A, M, D, L

REQ= 1: Anforderung zu Schreiben

IOID

Input

BYTE

E, A, M, D, L oder Konstante

Kennung des Adressbereichs:

  • 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

Logische Basisadresse der Baugruppe. Bei einer Mischbaugruppe ist die kleinere der beiden Adressen anzugeben.

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 Schreibvorgang ist noch nicht beendet.

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

Fehlerinformationen

Bei den "echten" Fehlerinformationen (Fehlercodes W#16#8xyz) sind zwei Fälle zu unterscheiden:

  • Temporäre Fehler (Fehlercodes W#16#80A2 bis 80A4, 80Cx):

    Bei dieser Fehlerart ist es möglich, dass sich der Fehler ohne Ihr Zutun behebt, d. h. es ist sinnvoll, dass Sie die Anweisung erneut aufrufen (ggf. mehrfach).

    Beispiel für einen temporären Fehler: Benötigte Betriebsmittel sind momentan belegt (W#16#80C3).

  • Permanente Fehler (Fehlercodes W#16#809x, 80A1, 80Bx, 80Dx):

    Bei dieser Fehlerart kann sich der Fehler nicht ohne Ihr Zutun beheben. Ein erneuter Aufruf der Anweisung ist erst wieder sinnvoll, wenn Sie den Fehler beseitigt haben.

    Beispiel für einen permanenten Fehler: Falsche Länge des zu übertragenden Datensatzes (W#16#80B1).

    Hinweis

    Wenn Sie mit einer der Anweisungen WR_PARM, WR_DPARM oder PARM_MOD Datensätze zu einem DPV1-Slave übertragen und dieser im DPV1-Mode arbeitet, bewertet der DP-Master die vom Slave erhaltene Fehlerinformation wie folgt:

    Liegt die Fehlerinformation in den Bereichen W#16#8000 bis W#16#80FF oder W#16#F000 bis W#16#FFFF, reicht der DP-Master die Fehlerinformation an die ANweisung weiter. Liegt sie außerhalb, gibt er den Wert W#16#80A2 an die Anweisung und suspendiert den Slave.

Anzeigen für die Anweisungen "RD_DPARM", "WR_PARM", "WR_DPARM" und "PARM_MOD"

Parameter RET_VAL

Fehlercode

(W#16#...)

Erläuterung

Einschränkung

0000

kein Fehler

-

7000

Erstaufruf mit REQ=0: keine Datenübertragung aktiv; BUSY hat den Wert 0.

-

7001

Erstaufruf mit REQ=1: Datenübertragung angestoßen; BUSY hat den Wert "1".

Dezentrale Peripherie

7002

Zwischenaufruf (REQ irrelevant): Datenübertragung bereits aktiv; BUSY hat den Wert "1".

Dezentrale Peripherie

8090

Angegebene logische Basisadresse ungültig: Es ist keine Zuordnung im SDB1/SDB2x vorhanden, oder es ist keine Basisadresse.

-

8092

In ANY-Referenz ist eine Typangabe ungleich BYTE angegeben.

Nur bei S7-400 für RD_DPARM und WR_PARM

8093

Für die über LADDR und IOID ausgewählte Baugruppe ist diese Anweisung nicht zulässig. (Zulässig sind S7-300-Baugruppen bei S7‑300, S7-400-Baugruppen bei S7-400, S7-DP-Baugruppen bei S7-300 und S7-400.)

-

80A1

Negative Quittung beim Senden des Datensatzes zur Baugruppe (Baugruppe während des Sendens gezogen oder Baugruppe defekt)

1)

80A2

DP-Protokollfehler bei Layer 2, evtl. Hardware-/Schnittstellenfehler im DP-Slave

Dezentrale Peripherie 1)

80A3

DP-Protokollfehler bei User Interface/User

Dezentrale Peripherie 1)

80A4

Kommunikation am K-Bus gestört

Fehler tritt auf zwischen CPU und externer DP-Anschaltung 1)

80B0

Anweisung für Baugruppentyp nicht möglich, oder die Baugruppe kennt den Datensatz nicht.

1)

80B1

Die Länge des zu übertragenden Datensatzes ist falsch. Bei RD_DPARM: Die Länge des durch RECORD aufgespannten Zielbereichs ist zu klein.

-

80B2

Der projektierte Steckplatz ist nicht belegt.

1)

80B3

Ist-Baugruppentyp ungleich Soll-Baugruppentyp im SDB1

1)

80C1

Die Daten des auf der Baugruppe vorangegangenen Schreibauftrags für denselben Datensatz sind von der Baugruppe noch nicht verarbeitet.

1)

80C2

Die Baugruppe bearbeitet momentan das mögliche Maximum an Aufträgen für eine CPU.

1)

80C3

Benötigte Betriebsmittel (Speicher etc.) sind momentan belegt.

80C4

Interner temporärer Fehler. Auftrag konnte nicht ausgeführt werden.

Wiederholen Sie den Auftrag. Bei häufigem Auftreten dieses Fehlers überprüfen Sie bitte ihren Aufbau auf elektrische Störquellen.

1)

80C5

Dezentrale Peripherie nicht verfügbar oder deaktiviert.

Dezentrale Peripherie 1)

80C6

Datensatzübertragung wurde abgebrochen wegen Prioritätsklassenabbruchs (Wiederanlauf oder Hintergrund)

Dezentrale Peripherie 1)

80D0

Im zugehörigen SDB ist kein Eintrag für die Baugruppe vorhanden.

-

80D1

Die Datensatznummer ist im zugehörigen SDB für die Baugruppe nicht projektiert (Die Datensatznummern >241 werden abgewiesen.).

-

80D2

Die Baugruppe ist laut Baugruppenkennung nicht parametrierbar.

-

80D3

Auf den SDB kann nicht zugegriffen werden, da er nicht vorhanden ist.

-

80D4

SDB-Strukturfehler: SDB-interner Zeiger zeigt außerhalb SDB

nur bei S7-300

80D5

Der Datensatz ist statisch.

Nur bei "WR_PARM"

8xyy

allgemeine Fehlerinformation

Siehe auch: Fehlerauswertung mit dem Ausgangsparameter RET_VAL 

-

1) kommt bei "RD_DPARM" nicht vor