Herunterladen Diese Seite drucken

Siemens SIPROTEC 5 Handbuch Seite 270

Communication protocols
Vorschau ausblenden Andere Handbücher für SIPROTEC 5:

Werbung

PROFINET IO
7.3 Parametrierung IO-Controller
Wird beim Übergang von STOP nach RUN keine Beeinflussung der Ausgänge des SIPROTEC 5-Geräts
gewünscht, dann ist im Ausgangstelegramm an den zugehörigen Bit-Positionen die Zwischenstellung
(Wert 00) auszugeben. Weitere Informationen zur Ausführung von Schalthandlungen finden Sie im Kapitel
7.1.8 Schalthandlungen über PROFINET IO
7.3.2.3
Peripheriezugriffsbefehle
Die S7-CPUs können im CPU-Programm mittels Peripheriezugriffsbefehlen auf die von den angeschlossenen
Geräten über PROFINET IO empfangenen Daten zugreifen oder Daten an diese Geräte schreiben.
Zum Lesen eines Messwertes (Float-Wert, 4 Byte, siehe Kapitel
z.B. der Befehl L PID x genutzt, wobei x die Adresse des Messwertes im Peripherieadressraum der S7-CPU ist.
Zum Lesen von z.B. 5 Messwerten ist die obige Anweisung 5x mit den zugehörigen Adressen auszuführen.
Nach jedem Lesen sind die Werte zu verarbeiten oder zur späteren Bearbeitung im Programm in einen
Datenbaustein zu kopieren, z.B.:
L PID x
T DB10.DBD y etc.
Der von Adresse x gelesene Messwert wird in das Element y des Datenbausteins DB10 geschrieben, unter der
Annahme, dass DB10 ein Datenbaustein mit Einträgen vom Typ REAL ist.
7.3.2.4
Lesen und Schreiben von Daten mit SFC14 und SFC15
Anstatt von Peripheriezugriffsbefehlen können auch die S7-Systemfunktionen SFC14 (DPRD_DAT) und SFC15
(DPWR_DAT) im CPU-Programm zur Datenübertragung genutzt werden. Dies ist für Daten innerhalb eines
E/A-Moduls möglich.
Um z.B. alle 12 Messwerte eines E/A-Moduls Messwerte 12 mit einem Aufruf zu lesen und in einen Datenbau-
stein zu übertragen, gehen Sie wie folgt vor:
Erstellen Sie einen Datenbaustein zur Aufnahme der zu lesenden Daten (mit 12 REAL-Werten).
²
Rufen Sie SFC14 auf:
²
CALL SFC14
LADDR: = W#16#200 // E/A-Modul Adresse, z.B. 512, hexadezimal
RET_VAL: = MW100 // z.B. Merkerwort 100 als Rückgabewert
RECORD: = P#DB10.DBX0.0 BYTE 48 // 12 Werte = 48 Bytes nach z.B. DB10
Enthält der Ziel-Datenbaustein mehr Informationen als nur die 12 Messwerte und beginnen diese nicht
bei Datenbaustein-Byte 0, dann kann auch ab diesem Offset kopiert werden, z.B. mit:
CALL DPRD_DAT
LADDR: = W#16#200
RET_VAL: = MW100
RECORD: = P#DB10.DBX24.0 BYTE 48 // 48 Bytes nach z.B. DB10 ab Byte 24
7.3.2.5
Lesen und Schreiben azyklischer Daten mit SFB52
Das SIPROTEC-IO-Gerät liefert azyklische Datensätze (siehe Kapitel
den folgenden Systemfunktionsbausteinen in der S7 SPS gelesen oder geschrieben werden können:
Lesen von Einheiten-IDs → Lesen mit SFB52 (RDREC)
Das Lesen der Einheiten-IDs eines E/A-Moduls Messwert 12 wird hier an einem Beispiel erläutert.
Der SFB52 arbeitet asynchron, d.h. das Lesen der azyklischen Daten kann sich über mehrere SPS-Anwender-
zyklen erstrecken.
Definieren Sie die Struktur des zu lesenden Datensatzes in einem Datenbaustein, z.B. DB11:
SFB52-Aufruf
Der Datenbaustein DB52 ist für den Aufruf von SFB52 als Instanz-DB erforderlich. Wenn er noch nicht existiert,
werden Sie bei Eingabe des unten aufgeführten Beispiels automatisch abgefragt, ob der DB52 generiert
werden soll.
270
ausführen.
7.1.3.6
7.1.7 Azyklisches Lesen von
SIPROTEC 5, Communication Protocols, Handbuch
Messwerte) vom SIPROTEC 5-Gerät wird
Daten), die mit
C53000-L1800-C055-H, Ausgabe 07.2023

Werbung

loading