SETIO_PART: Prozessabbildbereich ü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
SETIO_PART: Prozessabbildbereich übertragen

Beschreibung

Mit der Anweisung "SETIO_PART" übertragen Sie die Daten aus dem durch OUTPUTS aufgespannten Quellbereich konsistent in einen Teil des zu einem DP-Normslave / PROFINET IO-Device gehörenden Prozessabbildbereichs. "SETIO_PART" ruft dabei die Anweisung "UBLKMOV" auf.

Hinweis

Sie müssen dem OB, in dem "SETIO_PART" aufgerufen wird, ein Teilprozessabbild der Ausgänge zuordnen. Sie müssen weiterhin vor Aufruf von "SETIO_PART" den zugehörigen DP-Normslave bzw. das zugehörige PROFINET IO-Device in dieses Teilprozessabbild der Ausgänge aufnehmen. Falls Ihre CPU keine Teilprozessabbilder kennt oder Sie "SETIO_PART" im OB 1 aufrufen wollen, müssen Sie vor Aufruf von "SETIO_PART" den zugehörigen DP-Normslave bzw. das zugehörige PROFINET IO-Device in das Prozessabbild der Ausgänge aufnehmen.

Über die Parameter OFFSET und LEN legen Sie die zu beschreibende Teilmenge des Prozessabbildbereichs der über ID adressierten Komponente fest.

  • Falls bei der Datenübertragung kein Fehler auftrat, erhält ERROR den Wert FALSE.

  • Falls bei der Datenübertragung ein Fehler auftrat, erhält ERROR den Wert TRUE, und STATUS erhält die Fehlerinformation von "UBLKMOV".

  • Falls der Quellbereich (Parameter OUTPUTS) kleiner ist als LEN, werden so viele Bytes übertragen, wie OUTPUTS enthält. ERROR erhält den Wert FALSE. Falls der Quellbereich größer ist als LEN, werden die ersten LEN Bytes aus OUTPUTS übertragen. ERROR erhält den Wert FALSE.

    Hinweis

    "SETIO_PART" überprüft im Prozessabbild der Ausgänge keine Grenzen zwischen Daten, die zu verschiedenen PROFIBUS-DP- bzw. PROFINET-IO-Komponenten gehören. Sie müssen daher selbst darauf achten, dass der über OFFSET und LEN festgelegte Prozessabbildbereich zu einer Komponente gehört. Das Komponenten übergreifende Schreiben kann für zukünftige Systeme nämlich nicht garantiert werden und gefährdet die Übertragbarkeit auf Systeme anderer Hersteller.

Parameter

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

Parameter

Deklaration

Datentyp

Speicherbereich

Beschreibung

ID

Input

DWORD

E, A, M, D, L oder Konstante

  • low word: logische Adresse der DP-Slave- / PROFINET-IO-Komponente (Baugruppe bzw. Modul)

  • high word: irrelevant

OFFSET

Input

INT

E, A, M, D, L oder Konstante

Nummer des ersten zu beschreibenden Bytes im Prozessabbild der Komponente (kleinstmöglicher Wert: 0)

LEN

Input

INT

E, A, M, D, L oder Konstante

Anzahl der zu schreibenden Bytes

STATUS

Output

DWORD

E, A, M, D, L

enthält die Fehlerinformation von "UBLKMOV" in der Form DW#16#40xxxx00, falls ERROR = TRUE

ERROR

Output

BOOL

E, A, M, D, L

Fehleranzeige:
ERROR = TRUE, falls beim Aufruf von UBLKMOV ein Fehler auftritt.

OUTPUTS

InOut

ANY

E, A, M, D

Quellbereich für die zu schreibenden Daten:

  • Falls der Quellbereich kleiner ist als LEN, werden so viele Bytes übertragen, wie OUTPUTS enthält. ERROR erhält den Wert FALSE.

  • Falls der Quellbereich größer ist als LEN, werden die ersten LEN Bytes aus OUTPUTS übertragen. ERROR erhält den Wert FALSE.

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

Parameter STATUS und ERROR

Siehe Anweisung "UBLKMOV".