Step 7 Bereichlängenfehler beim Lesen

Vokal12

Level-1
Beiträge
27
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi zusammen,
Im Baugruppenzustand habe ich folgende Meldung:Bereichlängenfehler beim Lesen und beim Anklicken auf "Baustein Öffnen" , es wird diese Zeile gezeigt:
Anzahl := Anzahl + FB1.Stufe[Nummer].Regal[Place].Zeiger;
Anzahl ist als INT initialisiert.
im FB1 geht die Nummer von 1 bis 5 und Regal von 1 bis 100.
ich bin relativ neu in S7 und ich weiß nicht, was ich machen soll, um meinen Fehler aufzuheben.
LG,
Vokal12
 
Naja, dein Zeiger zeigt eben in einen Bereich der nicht existiert. Schau dir mal die WErte "Nummer" und "Place" an ob die zwischen 1 und 5 bzw. 1 und 100 sind....
 
Bereichslängenfehler beim Lesen
Global -DB , Wortzugriff, Zugriffsadresse: 57040
FB-Nummer: 6
Bausteinadresse: 220
Angeforderter OB: Programmierfehler-OB (OB 121)
OB nicht vorhanden oder gesperrt oder nicht startbar im aktuellen Betriebszustand
interner Fehler, kommendes Ereignis
10:04:02.495 05.11.2013
hoffe , bringt was;);)
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Jetzt mach mal den IDB vom FB1 auf und schau mal was bei adresse 57040 liegt.

ist der IDB akuell? ggf neu generieren und nochmal laden. (für den Fall dass die Zugriffsadresse tatsächlich stimmen sollte)

Was für eine CPU hast du überhaupt. Adresse 57040 ist etwas hoch für die kleinen.

Anzahl ist wohl nicht das problem. Sondern das was in Nummer oder Place steht.

mfG René
 
Das spräche jetzt zunächst mal dafür, das dein Instanz-DB des FB1 entweder nicht in der Steuerung ist, oder nicht aktuell.

Welche CPU verwendest du? 64k DBs sind jetzt noch nicht wirklich lange quasi Standard.

Mfg
Manuel
 
im OB1 habe ich call fb1, db1 neu gemacht und geladen.
im DB1 befindet sich keine Adresse 57040, was komisch ist.
Simatic 300(CPU313)
 
Zuviel Werbung?
-> Hier kostenlos registrieren
jo das ist dann der grund. dann steht in "Nummer" oder "Place" schlicht eine zu grosse Zahl drin. Die 313 hat sowieso nicht die Möglichkeit 64k DBs zu halten.

Also die Bildung von Nummer nochmal überprüfen. Also nochmal in Stop überprüfen was in "Nummer" oder "Place" steht.

mfG René
 
Zurück
Oben