SocksWithSandals
Level-1
- Beiträge
- 2
- Reaktionspunkte
- 0
-> Hier kostenlos registrieren
PUT funktioniert, GET nicht
Hallo,
ich habe die Aufgabe bekommen, bei einem bestehenden Projekt, neben einer bereits funktionierenden PUT Verbindung auch noch eine GET Verbindung einzubauen. Ich habe das versucht, so wie ich mir vorgestellt habe, dass es funktinieren sollte, aber der GET Baustein gibt immer Fehler #1 aus. Es handelt sich dabei um zwei S7400 CPUs, die im selben Netzwerk sind. Ich habe schon gegoogelt bzw. mehrfach dieses und das Siemens Support Forum durchforstet, habe aber nichts gefunden oder war zu blöd etwas zu finden das mir hilft.
Ich habe noch nie vorher mit diesen Bausteinen gearbeitet, daher bin ich mir nicht zu 100% sicher ob ich den GET Baustein richtig parametriert habe.
Ich möchte von der CPU2 8 Bytes ab DB2.DBX218.0 auf DB58 ab Byte 70 lesen. Wie oben bereits geschrieben, das Senden der 20 Bytes von CPU1 an CPU2 funktioniert bereits.
Bitte macht mich nicht fertig wegen der Bezeichnungen und Merker. Das werde ich alles nachziehn und ordentlich benennen, wenn das GET funktioniert.
Sieht jemand von euch einen Fehler?
LG
Hallo,
ich habe die Aufgabe bekommen, bei einem bestehenden Projekt, neben einer bereits funktionierenden PUT Verbindung auch noch eine GET Verbindung einzubauen. Ich habe das versucht, so wie ich mir vorgestellt habe, dass es funktinieren sollte, aber der GET Baustein gibt immer Fehler #1 aus. Es handelt sich dabei um zwei S7400 CPUs, die im selben Netzwerk sind. Ich habe schon gegoogelt bzw. mehrfach dieses und das Siemens Support Forum durchforstet, habe aber nichts gefunden oder war zu blöd etwas zu finden das mir hilft.
Ich habe noch nie vorher mit diesen Bausteinen gearbeitet, daher bin ich mir nicht zu 100% sicher ob ich den GET Baustein richtig parametriert habe.
Ich möchte von der CPU2 8 Bytes ab DB2.DBX218.0 auf DB58 ab Byte 70 lesen. Wie oben bereits geschrieben, das Senden der 20 Bytes von CPU1 an CPU2 funktioniert bereits.
Bitte macht mich nicht fertig wegen der Bezeichnungen und Merker. Das werde ich alles nachziehn und ordentlich benennen, wenn das GET funktioniert.
Code:
//Set datatransfer
UN "RTO_COM_Speicher".res_1_1
UN "RTO_COM_Speicher".res_1_2
L S5T#250MS
SE T 44
U T 44
= "RTO_COM_Speicher".res_1_0
//SFB
CALL "PUT" , "DB_PUT_CTP"
REQ :="RTO_COM_Speicher".res_1_0
ID :=W#16#10
DONE :="RTO_COM_Speicher".res_1_1
ERROR :="RTO_COM_Speicher".res_1_2
STATUS:=#Status_send
ADDR_1:=P#DB58.DBX20.0 BYTE 20 //schreibe Datenbereich Partner SPS
ADDR_2:=
ADDR_3:=
ADDR_4:=
SD_1 :=P#DB58.DBX20.0 BYTE 20 //lese Datenbereich auf eigener SPS
SD_2 :=
SD_3 :=
SD_4 :=
//MHO 20200427 / Get signals from RTO 2
UN M 400.1 // "DB_PUT_GET_Komm".RTO2_FA2.GET.OUT_NDR
UN M 400.2 // "DB_PUT_GET_Komm".RTO2_FA2.GET.OUT_ERROR
L S5T#250MS
SE T 50
U T 50
= M 400.0 // "DB_PUT_GET_Komm".RTO2_FA2.GET.IN_REQ
CALL "GET" , "DI_GET_RTO2"
REQ :=M400.0
ID :=W#16#10
NDR :=M400.1
ERROR :=M400.2
STATUS:=#RTO2_GET_STATUS
ADDR_1:=P#DB2.DBX218.0 BYTE 8 //Partner schreibt
ADDR_2:=
ADDR_3:=
ADDR_4:=
RD_1 :=P#DB58.DBX70.0 BYTE 8 //CPU liest
RD_2 :=
RD_3 :=
RD_4 :=
Sieht jemand von euch einen Fehler?
LG
Zuletzt bearbeitet: