Step 7 Speicherindirekte Adressierung

TimeOUT

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

ich bin gerade dabei mittels speicher-indirekter Adressierung auf das Prozessabbild der SPS zuzugreifen.
Allerdings geht diese immer in STOP und meldet im Diagnosepuffer "Bereichslängenfehler beim Lesen/Schreiben".

Ich verstehe allerdings überhaupt nicht wieso...

Zum Aufbau:
Ich habe ein PROFINET Gerät, welches ein Zählermodul von der Breite eines WORDS zurückliefert.
Dieses Modul ist in der HW-Konfiguration an der E-Adresse 576..577

Ich übergebe an meinen Baustein die Anfangsadresse dieses Moduls und möchte dann den Zählerwert in einer STAT-Variablen ablegen.
Dazu mein Code:

Code:
L     #IO_Module_Address.Counter // In: INT
SLD   3
T     #dAddress_Counter //Temp: DInt

L     EW [#dAddress_Counter]
T     #Counter_intern //Stat:Word

Das ganze habe ich damals auch mal so in einem anderen Projekt umgesetzt und bin mir ziemlich sicher, dass es dort genau so auch funktioniert hat.
Nur jetzt meldet er mir an genau dieser Stelle (L EW[#dAddress_Counter] den Bereichslängenfehler.

Was mache ich falsch?

Viele Grüße
TimeOUT
 
Zurück
Oben