Indirekt (Any-Pointer) auf PEW zugreifen?

thorsten

Level-1
Beiträge
105
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

Versuche gerade über den SFC20 Eingangsdaten einer 300er auf einen DB zu kopieren.
Verwende dafür nen Any Pointer auf den Bereich, nun liegt der Eingangsbereich im Peripheriebereich (Also PEW 300)
Wie muss ich den Pointer beschreiben mit 81 für Eingänge oder mit 80 für Peripherie?
Beides scheint nicht zu funktionieren!

Danke schonmal, Thorsten
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Zu den Daten, die man per Any-Pointer adressieren kann lies mal hier: http://www.sps-forum.de/showthread.php?t=12923

Wer liefert denn deine Peripheriedaten? Wenn es z.Bsp. Daten von einem Profibus-/Profinetslave sind versuch es mal mit dem SFC14 (Konsistente Daten eines DP-Normslaves/PROFINET IO-Devices lesen mit der SFC 14 "DPRD_DAT").
 
Hallo Thorsten,

mit dem SFC 20 kannst Du nicht auf PEW zugreifen. Es funktioniert nur, wenn die Eingänge im PAE liegen. => 81 ist der richtige Speicherbereich.
Was ist in der HW-Konfig bei Größe des Prozessabbildes eingetragen?
Wenn kleiner 300 ist kannst Du die Eingänge auch nicht kopieren. => PAE vergrössern.

Hier noch ein Link zum grossen S:
http://support.automation.siemens.com/WW/view/de/22783999

Grüße
Gebs
 
Danke für die schnellen Antworten,

Also ich habe hier ne IM151 CPU welche über Profibus mit ner 400 kommuniziert.
Das PAE bei der IM151 sind 128 Byte, damit liegt das Byte 300 also im Peripherieeingangsbereich.
Hab nun die Kommunikationsparameter in der HW-Konfig umgestellt und das ganze nach unten auf Byte 70 gelegt. Damit gehts jetzt auch.
Dennoch eigenartig daß man keinen Pointer auf den entsprechenden Peripheriebereich erzeugen kann!

mfg Thorsten
 
Zurück
Oben