-> Hier kostenlos registrieren
Juchu, endlich habe ich mal eine saubere Kommunikation hinbekommen.
Jaja, ich weiß, für euch hier nix besonderes, aber ich habe mich bisher halt noch nie live damit beschäftigt und somit ist es für mich eben neu.
Hardware: S7-314C-2 DP als DP-Slave konfiguriert.
Eingangsadressbereich E500, Länge 16 Worte , konsistent
Ausgangsadressbereich A500, Länge 16 Worte , konsistent
Daten aus PLS mit SFC 14 wie folgt abgeholt:
CALL SFC 14 // Lese Daten
LADDR :=W#16#1F4 // entspricht 1. PEW-Adresse - hier 500
RET_VAL:=DB2.DBW0 // Status der Übertragung
RECORD :=P#DB3.DBX0.0 BYTE 32 // in DB3 ab DBB0 - 32 Bytes (16 Worte ) übertragen
Daten zum PLS mit SFC 15 wie folgt geschickt:
CALL SFC 15 // Sende Daten
LADDR :=W#16#1F4 // entspricht 1. PAW-Adresse - hier 500
RECORD :=P#DB4.DBX0.0 BYTE 32 // aus DB4 ab DBB0 - 32 Bytes (16 Worte ) übertragen
RET_VAL:=DB2.DBW2 // Status der Übertragung
Alles bestens.
Jetzt kommt der nächste Kunde ( andere Anlage ) und schreibt vor, das alles über DP-DP Koppler laufen soll.
Hardware : DP-DP Koppler ( 6ES7158-0AD01-0XA0 )
"Steckplatz 1" : 64 Worte Eingang ( Adresse E500-627 )
"Steckplatz 2" : 64 Worte Ausgang ( Adresse A500-627 )
Jetzt die Frage : Kann ich diese Adressen auch wie oben ansprechen ?
Zum Beispiel so ?
Daten aus PLS mit SFC 14 wie folgt abholen:
CALL SFC 14 // Lese Daten
LADDR :=W#16#1F4 // entspricht 1. PEW-Adresse - hier 500
RET_VAL:=DB1.DBW350 // Status der Übertragung
RECORD :=P#DB3.DBX0.0 BYTE 256 // in DB3 ab DBB0 - 256 Bytes (64 Worte ) übertragen
zum Beispiel so ? Daten zum PLS mit SFC 15 wie folgt schicken:
CALL SFC 15 // Sende Daten
LADDR :=W#16#1F4 // entspricht 1. PAW-Adresse - hier 500
RECORD :=P#DB4.DBX0.0 BYTE 256 // aus DB4 ab DBB0 - 256 Bytes (64 Worte ) übertragen
RET_VAL:=DB1.DBW352 // Status der Übertragung
Danke fürs lesen und antworten
Gruß Wilhelm
Jaja, ich weiß, für euch hier nix besonderes, aber ich habe mich bisher halt noch nie live damit beschäftigt und somit ist es für mich eben neu.
Hardware: S7-314C-2 DP als DP-Slave konfiguriert.
Eingangsadressbereich E500, Länge 16 Worte , konsistent
Ausgangsadressbereich A500, Länge 16 Worte , konsistent
Daten aus PLS mit SFC 14 wie folgt abgeholt:
CALL SFC 14 // Lese Daten
LADDR :=W#16#1F4 // entspricht 1. PEW-Adresse - hier 500
RET_VAL:=DB2.DBW0 // Status der Übertragung
RECORD :=P#DB3.DBX0.0 BYTE 32 // in DB3 ab DBB0 - 32 Bytes (16 Worte ) übertragen
Daten zum PLS mit SFC 15 wie folgt geschickt:
CALL SFC 15 // Sende Daten
LADDR :=W#16#1F4 // entspricht 1. PAW-Adresse - hier 500
RECORD :=P#DB4.DBX0.0 BYTE 32 // aus DB4 ab DBB0 - 32 Bytes (16 Worte ) übertragen
RET_VAL:=DB2.DBW2 // Status der Übertragung
Alles bestens.
Jetzt kommt der nächste Kunde ( andere Anlage ) und schreibt vor, das alles über DP-DP Koppler laufen soll.
Hardware : DP-DP Koppler ( 6ES7158-0AD01-0XA0 )
"Steckplatz 1" : 64 Worte Eingang ( Adresse E500-627 )
"Steckplatz 2" : 64 Worte Ausgang ( Adresse A500-627 )
Jetzt die Frage : Kann ich diese Adressen auch wie oben ansprechen ?
Zum Beispiel so ?
Daten aus PLS mit SFC 14 wie folgt abholen:
CALL SFC 14 // Lese Daten
LADDR :=W#16#1F4 // entspricht 1. PEW-Adresse - hier 500
RET_VAL:=DB1.DBW350 // Status der Übertragung
RECORD :=P#DB3.DBX0.0 BYTE 256 // in DB3 ab DBB0 - 256 Bytes (64 Worte ) übertragen
zum Beispiel so ? Daten zum PLS mit SFC 15 wie folgt schicken:
CALL SFC 15 // Sende Daten
LADDR :=W#16#1F4 // entspricht 1. PAW-Adresse - hier 500
RECORD :=P#DB4.DBX0.0 BYTE 256 // aus DB4 ab DBB0 - 256 Bytes (64 Worte ) übertragen
RET_VAL:=DB1.DBW352 // Status der Übertragung
Danke fürs lesen und antworten
Gruß Wilhelm