Beschreibung:
Sie können von der S7-300 / 400 mit X_PUT / X_GET über MPI auf verschiedene S7-200 CPUs zugreifen. Hierbei ist die S7-300 / S7-400 der Master und die S7-200 der Slave.

Bild 01
Bei den S7-200 CPUs der Reihe CPU 22x können Sie mit den Baudraten 19,2kBd und 187,5kBd arbeiten.
Welche Übertragungsgeschwindigkeiten von Ihrer S7-300 / S7-400 CPU an der MPI-Schnittstelle unterstützt werden, erfahren Sie in den technischen Daten der CPU.
Das Handbuch mit den Technischen Daten der S7-300 CPUs finden Sie unter folgender Beitrags-ID: 12996906
Die Handbücher mit den Technischen Daten der S7-400 CPUs finden Sie unter folgenden Beitrags-IDs:
In folgender Tabelle finden Sie Informationen darüber wie viele Verbindungen max. für die S7-Basiskommunikation in den S7-300 CPUs zur Verfügung stehen.
| CPU |
max. Anzahl der Verbindungen für
S7-Basiskommunikation |
| CPU 312, CPU 312C |
2 |
| CPU 313 |
4 |
| CPU 313C, CPU 313C-2DP, CPU 313C-2PtP |
4 |
| CPU 314 |
8 |
| CPU 314C-2DP, CPU 314C-2PtP |
8 |
| CPU 315 |
8 |
| CPU 315-2DP, CPU 315F-2DP |
12 |
| CPU 315-2PN/DP, CPU 315F-2PN/DP |
14 |
| CPU 316 |
8 |
| CPU 316-2DP |
8 |
| CPU 317-2DP, CPU 317F-2DP |
30 |
| CPU 317-2PN/DP, CPU 317F-2PN/DP |
30 |
| CPU 318-2DP |
30 |
| CPU 319-3PN/DP, CPU 319F-3PN/DP |
30 |
| CPU 614 |
8 |
In folgender Tabelle finden Sie Informationen darüber wie viele Verbindungen max. für die S7-Basiskommunikation in den S7-400 CPUs zur Verfügung stehen.
|
CPU |
max. Anzahl der Verbindungen für
S7-Basiskommunikation |
|
CPU 412-1 < FW V5.0 |
14 |
|
CPU 412-1 ab FW V5.0 |
30 |
|
CPU 412-2DP < FW V5.0 |
14 |
|
CPU 412-2DP ab FW V5.0 |
30 |
|
CPU 413-1 |
14 |
|
CPU 413-2DP |
14 |
|
CPU 414-1 |
30 |
|
CPU 414-2DP |
30 |
|
CPU 414-3DP |
30 |
|
CPU 414-3PN/DP |
30 |
|
CPU 416-1 |
42 |
|
CPU 416-2DP, CPU 416F-2DP |
42 |
|
CPU 416-3DP |
42 |
|
CPU 416-3PN/DP, CPU 416F-3PN/DP |
42 |
|
CPU 417-4 |
42 |
Voraussetzungen auf der S7-200 CPU:
-
Stellen Sie die Adresse der S7-200 CPU ein.
-
Legen Sie die zu sendenden Daten in den betreffenden Sendepuffer, bzw. holen Sie die empfangenen Daten aus dem Empfangspuffer.
-
Den Sende- und Empfangspuffer legen Sie in STEP 7 bei der Parametrierung der Systemfunctionen SFC67 "X_PUT" und SFC68 "X_GET" fest.
-
Beachten Sie die Hinweise zum Vernetzen von CPUs im S7-200 Systemhandbuch unter Beitrags-ID: 1109582.
Lesen der Daten aus der S7-200 CPU mit der Systemfunktion SFC67 "X_GET" Zum Lesen der Daten aus der S7-200 CPU verwenden Sie die Systemfunktion SFC67 "X_GET". Diese rufen Sie z.B. im OB1 der S7-300 / S7-400 auf.
In diesem Beispiel werden 10 Byte ab der Adresse 10 aus dem Variablenbereich der S7-200 CPU gelesen. In der S7-300/S7-400 werden die empfangenen 10 Byte Daten im Datenbaustein DB10 ab der Adresse 10 gespeichert.
Die folgende Tabelle enthält eine Übersicht mit den Eingangsparametern der Systemfunktion SFC67 "X_GET".
| Eingangs-parmeter |
Variable |
Beschreibung |
| REQ |
M0.1 |
Der Eingangsparameter REQ (request to activate) ist ein pegelgetriggerter Steuerparameter.
Ein positiver Pegel am M0.1 der S7-300 / S7-400 startet das Lesen der Daten aus der S7-200 |
| CONT |
FALSE |
Der Eingangsparameter CONT (continue) ist ein Steuerparameter mit dem bestimmt wird, ob die Verbindung zum Kommunikationspartner nach Abschluss des Auftrags bestehen bleibt.
CONT=0: Verbindung wird nach Beendigung der Datenübertragung abgebaut
CONT=1: Verbindung bleibt nach Beendigung der Datenübertragung bestehen |
| DEST_ID |
W#16#4 |
MPI-Adresse der S7-200 CPU |
| VAR_ADDR |
P#DB1.DBX 10.0 BYTE 10 |
Referenz auf den Bereich in der Partner-CPU, der gelesen werden soll.
Es werden 10 Byte Daten aus dem Variablenbereich (VB) der S7-200 ab Adresse 10 gelesen. |
Die folgende Tabelle enthält eine Übersicht mit den Ausgangsparametern der Systemfunktion SFC67 "X_GET".
| Ausgangs-parameter |
Variable |
Beschreibung |
| RET_VAL |
MW 2 |
Tritt während der Bearbeitung der Funktion ein Fehler auf, enthält der Rückgabewert den zugehörigen Fehlercode.
Tritt kein Fehler auf, enthält RET_VAL die Länge des in den Empfangsbereich RD kopierten Datenblocks in Byte als positive Zahl. |
| BUSY |
M12.1 |
BUSY=1: Der Empfangsvorgang ist noch nicht abgeschlossen.
BUSY=0: Der Empfangsvorgang ist abgeschlossen bzw. es ist kein Empfangsvorgang aktiv. |
| RD |
P#DB10.DBX 10.0 BYTE 10 |
Referenz auf den Empfangsbereich (receive data area).
Folgende Datentypen sind erlaubt:
BOOL, BYTE, WORD, DWORD, sowie Arrays der genannten Datentypen mit Ausnahme von BOOL.
Der Empfangsbereich RD muss mindestens so lang sein wie der Lesebereich VAR_ADDR beim Kommunikationspartner.
Außerdem müssen die Datentypen bei RD und VAR_ADDR übereinstimmen. |
Schreiben der Daten in die S7-200 CPU mit der Systemfunktion SFC68 "X_PUT" Zum Schreiben der Daten in die S7-200 verwenden Sie die Systemfunktion SFC68 "X_PUT". Diese rufen Sie z.B. im OB1 der S7-300 / S7-400 auf.
In diesem Beispiel werden 10 Byte ab der Adresse 20 in den Variablenbereich der S7-200 CPU geschrieben. In der S7-300/S7-400 sind die 10 Byte Daten, die gesendet werden, im Datenbaustein DB10 ab der Adresse 20 gespeichert.
Die folgende Tabelle enthält eine Übersicht mit den Eingangsparametern der Systemfunktion SFC68 "X_PUT".
|
Eingangs-
parameter |
Variable |
Beschreibung |
|
REQ |
M100.1 |
Der Eingangsparameter REQ (request to activate) ist ein pegelgetriggerter Steuerparameter.
Ein positiver Pegel am M100.1 der S7-300 / S7-400 startet das Schreiben der Daten in die S7-200 |
|
CONT |
FALSE |
Der Eingangsparameter CONT (continue) ist ein Steuerparameter mit dem bestimmt wird, ob die Verbindung zum Kommunikationspartner nach Abschluss des Auftrags bestehen bleibt.
CONT=0: Verbindung wird nach Beendigung der Datenübertragung abgebaut
CONT=1: Verbindung bleibt nach Beendigung der Datenübertragung bestehen |
|
DEST_ID |
W#16#4 |
MPI-Adresse der S7-200 CPU |
|
VAR_ADDR |
P#DB1.DBX 20.0 BYTE 10 |
Referenz auf den Bereich der Partner-CPU, in den geschrieben werden soll.
Es werden 10 Byte Daten in den Variablenbereich (VB) der S7-200 ab Adresse 20 geschrieben. |
Die folgende Tabelle enthält eine Übersicht mit den Ausgangsparametern der Systemfunktion SFC68 "X_PUT".
Ausgangs-
parameter |
Variable |
Beschreibung |
| SD |
P#DB10.DBX 20.0 BYTE 10 |
Referenz auf den Bereich in der eigenen CPU, der die zu versendenden Daten enthält.
Folgende Datentypen sind erlaubt:
BOOL, BYTE, WORD, DWORD, sowie Arrays der genannten Datentypen mit Ausnahme von BOOL.
SD muss die gleiche Länge haben wie der Parameter VAR_ADDR des Kommunikationspartners. Außerdem müssen die Datentypen bei SD und VAR_ADDR übereinstimmen. |
| RET_VAL |
MW102 |
Tritt während der Bearbeitung der Funktion ein Fehler auf, enthält der Rückgabewert den zugehörigen Fehlercode. |
| BUSY |
M112.1 |
BUSY=1: Der Sendevorgang ist noch nicht abgeschlossen.
BUSY=0: Der Sendevorgang ist abgeschlossen bzw. es ist kein Sendevorgang aktiv. |
Weiter Informationen zu den Systemfunktionen SFC67 "X_GET" und SFC68 "X_PUT" finden Sie unter der Beitrags-ID: 1214574.
Anbei steht Ihnen ein Beispielprogramm zur Parametrierung der Systemfunktionen SFC67 "X_GET" und SFC68 "X_PUT" als Download zur Verfügung.
Das Beispielprogramm ist ein STEP 7-Projekt, das die komplette Hardware-Konfiguration inklusive Anwenderprogramm einer S7-300 Station enthält. Das STEP 7-Projekt steht als Download in Form einer ZIP-Datei zur Verfügung.
Extrahieren Sie die Datei "S7_basic_communication.zip" in ein separates Verzeichnis. Das STEP 7-Projekt wird dann automatisch mit allen dazugehörigen Unterverzeichnissen entpackt. Anschließend können Sie das entpackte STEP 7-Projekt mit dem SIMATIC Manager öffnen und bearbeiten.
S7_basic_communication.zip ( 412 KB )
Hinweis:
Bringen Sie die S7-300/S7-400 CPU in den Betriebszustand STOP bevor Sie den Baustein, der die Systemfunktionen SFC67 "X_GET" und SFC68 "X_PUT" aufruft, in die Steuerung laden. Damit werden die Systemfunktionen SFC67 "X_GET" und SFC68 "X_PUT" auf jeden Fall korrekt initialisiert und die Daten werden übertragen.
Wird eine schnellere Datenübertragung verlangt, dann nutzen Sie PROFIBUS DP anstatt der S7-Basiskommunikation über MPI. PROFIBUS DP ist keine verbindungsorientierte Kommunikation.
Wenn Sie PROFIBUS DP nutzen, dann benötigen Sie in der S7-200 ein PROFIBUS-Erweiterungsmodul EM 277. Ausführliche Informationen zum Erweiterungsmodul EM 277 finden Sie im S7-200 Systemhandbuch unter der Beitrags-ID 1109582.
|