-> Hier kostenlos registrieren
Hallo zusammen,
ich arbeite mit dem TIA-Portal V15.1 und einer Siemens S7-1515-2 PN. Die Schnittstelle X2 der Steuerung ist IO-Device Konfiguriert. Darunter habe ich die beiden Transferbereiche angelegt. Einer zum schreiben (464 Byte) und einer zum lesen (64 Byte) jeweils beginnend ab Hardwareadresse 1000.
Nun habe ich meine zu sendenden Daten in einem Datenbaustein, in einem UDT gesammelt. Unter den PLC-Variablen habe ich eine Variable "SEND" mit dem gleichen UDT-Datentyp angelegt. Startadresse dieser PLC-Variable ist Q1000. Mit einem Move-Befehl schiebe ich die zu senden Daten von der Variable aus dem Datenbaustein auf die PLC-Variable. Das funktioniert auch und der Kunde empfängt meine Daten.
Nun wollte ich das ganze für die zu lesenden Daten andersherum implementieren. Also habe ich eine PLC-Variable "RECV" mit dem UDT "Data_READ" angelegt. Einen Datenbaustein für die lesenden Daten habe ich eingerichtet, dort existiert ebenfalls eine Variable mit dem Datentyp "Data_READ". Nun habe ich einen Move-Block verwendet und nehme meine PLC-Variable (Die vom Kunden beschrieben wird) und schiebe diese Daten in meinen Datenbaustein für die lesenden Variablen. Allerdings alles was ich dort empfange, auch an der Eingangsadresse ab "I1000", ist komplett NULL bzw. "false" aber der Kunde sagt mir, dass er Daten schickt und nicht nur Nullen.
Ich habe dann probiert diesen MOVE zu deaktivieren und die Daten mit dem Baustein "DPRD_DAT" einzulesen. Von der Hardware-ID direkt in den Datenbaustein, allerdings bekomme ich als Return-Value immer den Fehlercode "80A0" was laut Hilfe so viel heißt wie "Beim Zugriff auf die Peripherie wurde ein Zugriffsfehler erkannt." Kann mir jemand sagen, was das für ein Fehler ist und wie ich den lösen kann ? Für mich sieht das so aus, als wäre mein Eingangsperipherieberiech ab I1000 irgendwie schreibgeschützt oder so.
Ich wäre um jede Hilfe dankbar
Dank und vielen Gruß
Fairytail
ich arbeite mit dem TIA-Portal V15.1 und einer Siemens S7-1515-2 PN. Die Schnittstelle X2 der Steuerung ist IO-Device Konfiguriert. Darunter habe ich die beiden Transferbereiche angelegt. Einer zum schreiben (464 Byte) und einer zum lesen (64 Byte) jeweils beginnend ab Hardwareadresse 1000.
Nun habe ich meine zu sendenden Daten in einem Datenbaustein, in einem UDT gesammelt. Unter den PLC-Variablen habe ich eine Variable "SEND" mit dem gleichen UDT-Datentyp angelegt. Startadresse dieser PLC-Variable ist Q1000. Mit einem Move-Befehl schiebe ich die zu senden Daten von der Variable aus dem Datenbaustein auf die PLC-Variable. Das funktioniert auch und der Kunde empfängt meine Daten.
Nun wollte ich das ganze für die zu lesenden Daten andersherum implementieren. Also habe ich eine PLC-Variable "RECV" mit dem UDT "Data_READ" angelegt. Einen Datenbaustein für die lesenden Daten habe ich eingerichtet, dort existiert ebenfalls eine Variable mit dem Datentyp "Data_READ". Nun habe ich einen Move-Block verwendet und nehme meine PLC-Variable (Die vom Kunden beschrieben wird) und schiebe diese Daten in meinen Datenbaustein für die lesenden Variablen. Allerdings alles was ich dort empfange, auch an der Eingangsadresse ab "I1000", ist komplett NULL bzw. "false" aber der Kunde sagt mir, dass er Daten schickt und nicht nur Nullen.
Ich habe dann probiert diesen MOVE zu deaktivieren und die Daten mit dem Baustein "DPRD_DAT" einzulesen. Von der Hardware-ID direkt in den Datenbaustein, allerdings bekomme ich als Return-Value immer den Fehlercode "80A0" was laut Hilfe so viel heißt wie "Beim Zugriff auf die Peripherie wurde ein Zugriffsfehler erkannt." Kann mir jemand sagen, was das für ein Fehler ist und wie ich den lösen kann ? Für mich sieht das so aus, als wäre mein Eingangsperipherieberiech ab I1000 irgendwie schreibgeschützt oder so.
Ich wäre um jede Hilfe dankbar
Dank und vielen Gruß
Fairytail